Read-only MCP server for Withings weight and body-composition history
Server has 4 well-named, read-only tools with clear descriptions and proper input schemas. All tools follow verb_noun naming (get_*). Descriptions are adequate (100-200 chars) and explain purpose. Input schemas include types and descriptions. However, output schemas are not documented, LLMs cannot predict response structure. Parameter descriptions lack format constraints (e.g., date format validation, metric enum values). Error handling is minimal, no recovery guidance or actionable error messages. No tool annotations (readOnlyHint present but not declared). Missing pagination for potentially large result sets.
Return non-secret Withings configuration and authorization status.
Get the latest measurement group containing weight, searching up to 365 days back.
Get normalized Withings scale measurements for an inclusive date range. Dates are YYYY-MM-DD. Metrics default to all supported body measurements. Supported names: weight, fat_free_mass, fat_ratio, fat_mass, muscle_mass, hydration, bone_mass, visceral_fat, basal_metabolic_rate, metabolic_age. Mass values include kilograms and pounds.
Get weight history for an inclusive date range, including source metadata.
Output schemas not documented. LLMs cannot predict response structure (fields, types, nesting). Responses include measurement arrays but structure is inferred from code, not declared in tool definition.
Parameter 'metrics' in get_measurements lacks enum constraint. Description lists supported names but does not enforce them. LLMs may pass invalid metric names, causing API errors.
Date parameters (start_date, end_date) lack format validation hints. Description says 'YYYY-MM-DD' but no regex pattern or validation. LLMs frequently misformat dates.
No error handling guidance. If date range is invalid, metrics unknown, or Withings API fails, responses lack recovery hints. LLMs cannot self-correct or retry intelligently.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 66 | 2026-07-28+ | v2 |
Tool annotations missing. All tools are read-only but readOnlyHint is not declared in schema. Agents cannot infer safety/idempotency from tool metadata.