WHOOP Model Context Protocol Provider - integrates WHOOP health and fitness API with MCP
Four tools with identical structure but significant quality gaps. All tools have basic descriptions (40-50 chars, below the 50-200 char LLM-optimized baseline) and minimal parameter documentation. Input schemas present but lack type constraints, enums, or format specifications. No output schemas documented. No error handling guidance. Parameter descriptions are generic ('Start date for the cycle data query') without format hints, range constraints, or examples of valid input. No tool distinguishes itself from others or explains when to use each. Missing idempotency hints, retry guidance, and recovery paths.
Fetch WHOOP cycle data for a specified date range
Fetch WHOOP recovery data for a specified date range
Fetch WHOOP sleep data for a specified date range
Fetch WHOOP workout data for a specified date range
Parameter descriptions lack format constraints and examples. 'Start date for the cycle data query' does not specify ISO 8601, YYYY-MM-DD, or acceptable range. LLMs cannot infer valid formats and will hallucinate invalid dates.
No output schemas documented. LLMs cannot plan downstream operations or extract required fields. Responses from WHOOP API are likely verbose; no evidence of stripping irrelevant metadata or capping result limits.
Tool descriptions are 40-50 characters, below the 50-200 char LLM-optimized baseline. Descriptions do not explain WHEN to use each tool (e.g., when to call get_cycle vs get_recovery vs get_sleep) or what data each returns, forcing LLMs to guess.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
Input schemas lack type declarations and constraints. startDate and endDate are declared as z.string() but no format (ISO 8601?), pattern, or range validation. No enum, no min/max length, no regex. LLMs will pass invalid dates.
No error handling guidance. If a date range is invalid or the API returns 401/403, there is no recovery path documented. Agents cannot self-correct or know whether to retry, ask the user, or fail.