# WHOOP — how to use (mcp.ai)

Your WHOOP data in the assistant, read-only: recovery, sleep, strain, workouts, cycles and body measurements via the official v2 API (OAuth 2.0). The platform provides the OAuth app, just click Authorize and log into your WHOOP account, no password shared with the assistant. Wearable data is not a substitute for medical advice.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_whoop?ms=1784638260000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `whoop_body_measurement`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/whoop`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/whoop/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/whoop/body/measurement` — Medidas corporais do membro WHOOP: altura (m), peso (kg) e frequência cardíaca máxima. Dados de wearable, não substituem avaliação médica profissional.
  - body: { account?: string }
- `POST https://api.mcp.ai/api/whoop/cycles` — Ciclos fisiológicos do WHOOP (dia a dia): strain (0-21), calorias (kilojoule), FC média e máxima. Paginado por limit/start/end/next_token; ou passe cycle_ids pra buscar ciclos específicos. Dados de we
  - body: { limit?: integer, start?: string, end?: string, next_token?: string, cycle_ids?: string[], account?: string }
- `POST https://api.mcp.ai/api/whoop/list/accounts` — Lista as contas WHOOP vinculadas a este install (account_id, nome, email).
  - body: { account?: string }
- `POST https://api.mcp.ai/api/whoop/profile` — Perfil básico do membro WHOOP (user_id, nome, email).
  - body: { account?: string }
- `POST https://api.mcp.ai/api/whoop/recovery` — Recovery do WHOOP: recovery_score (0-100%), HRV (rmssd), FC de repouso, SpO2, temperatura da pele. Paginado por limit/start/end/next_token; ou passe cycle_ids pra buscar o recovery de ciclos específic
  - body: { limit?: integer, start?: string, end?: string, next_token?: string, cycle_ids?: string[], account?: string }
- `POST https://api.mcp.ai/api/whoop/sleep` — Sono do WHOOP: duração, eficiência, performance (%), estágios (leve, REM, profundo), frequência respiratória. Paginado por limit/start/end/next_token; ou passe sleep_ids (UUID) pra registros específic
  - body: { limit?: integer, start?: string, end?: string, next_token?: string, sleep_ids?: string[], account?: string }
- `POST https://api.mcp.ai/api/whoop/workouts` — Workouts do WHOOP: esporte, strain, FC média e máxima, zonas de FC, distância e altimetria quando disponíveis. Paginado por limit/start/end/next_token; ou passe workout_ids (UUID) pra registros especí
  - body: { limit?: integer, start?: string, end?: string, next_token?: string, workout_ids?: string[], account?: string }

## Example prompts
- "How was my sleep this week on WHOOP?"
- "What is my recovery and HRV today?"
- "Compare my strain over the last 7 days"

## More
- Page: https://mcp.ai/whoop
- Agent spec (llms.txt): https://mcp.ai/whoop/llms.txt
- Postman collection: https://mcp.ai/whoop/postman.json
