MCP server for fetching and analyzing health data from Oura Ring API
Single tool 'oura-fetch' has clear input schema with enum-constrained endpoint parameter and required date fields. Tool description is adequate (88 chars) and explains what it does. However, output schema is completely undocumented, no indication of what fields the API returns or what structure the LLM should expect. Parameter descriptions are present but sparse (start_date/end_date lack format details beyond 'YYYY-MM-DD'). The server provides rich prompts (9 total) with good guidance, but those are prompts, not tool-level documentation. No error handling guidance, no pagination support despite API likely returning variable-sized result sets, and no indication of how to handle authentication (Oura API key must be injected server-side, which is correct, but not documented in tool descriptions). Tool name 'oura-fetch' is generic and uses a dash, violating verb_noun convention, 'fetch_oura_data' would be clearer.
Fetch data from Oura Ring API endpoints
Output schema completely undocumented. No indication of what fields the Oura API returns or what structure the LLM should expect from each endpoint. Tool description says 'Fetch data from Oura Ring API endpoints' but does not explain the response structure.
Tool name 'oura-fetch' violates verb_noun convention and uses a dash. Should be 'fetch_oura_data' or 'get_oura_data' for clarity and consistency with LLM parsing expectations.
No pagination support defined. API endpoints (activity, readiness, sleep, etc.) likely return variable-sized datasets. No limit/offset parameters or guidance on result caps, risking context window exhaustion.
Parameter descriptions for start_date and end_date lack format clarity. Only say 'format: YYYY-MM-DD' but do not specify whether dates are inclusive, whether relative dates are accepted (e.g. 'today', 'last_7_days'), or whether future dates are rejected.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-21 | F | 48 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 19 | - | v1 |
No error handling or recovery guidance. No indication what happens if dates are invalid, API returns no data, authentication fails, or rate limits are hit. Agents have no guidance on what to do next.
Tool description does not document which endpoints require authentication, which have rate limits, or expected response times. Documentation assumes Oura API familiarity.