Sáltate la instalación. Funcionando en menos de 2 minutos.
Inicia una prueba gratuita en cloud.anythingmcp.com, añade WHOOP con un clic y apunta tu cliente de IA (Claude, ChatGPT, Copilot o Cursor) al endpoint MCP generado. Sin Docker, sin git clone, sin experiencia de desarrollo.
Resumen
Lee la recuperación, el HRV, la frecuencia cardiaca en reposo, el sueño y las siestas con sus fases, el esfuerzo diario por ciclo, los entrenamientos con zonas de frecuencia cardiaca, el perfil y las medidas corporales de un miembro de WHOOP a través de la WHOOP Developer API v2 con OAuth. Solo lectura.
Prueba a pedir
Prompts de ejemplo para WHOOP
Haz clic en un prompt para copiarlo. Pégalo en Claude, ChatGPT, Cursor, Gemini, Copilot u OpenClaw para ejecutarlo contra este conector.
Claude es IA y puede equivocarse. Verifica siempre las respuestas.
💡 ¿Sin instalación? Usa cloud.anythingmcp.com directamente. Inicia sesión, pulsa Connectors → WHOOP, pega tus credenciales, genera una MCP API key y listo. Sin Docker, sin
git clone, sin servidor local.
WHOOP
Lee la recuperación, el HRV, la frecuencia cardiaca en reposo, el sueño y las siestas con sus fases, el esfuerzo diario por ciclo, los entrenamientos con zonas de frecuencia cardiaca, el perfil y las medidas corporales de un miembro de WHOOP a través de la WHOOP Developer API v2 con OAuth. Solo lectura.
Configuración
La configuración lleva unos 10 minutos y se hace una sola vez. Necesitas una cuenta de WHOOP.
- Abre el WHOOP Developer Dashboard en https://developer-dashboard.whoop.com e inicia sesión con una cuenta de WHOOP. Crea un equipo cuando se te pida (un equipo puede tener hasta 5 apps).
- Haz clic en Create App. En Scopes marca
read:profile,read:body_measurement,read:cycles,read:recovery,read:sleepyread:workout. El conector también pideoffline, que WHOOP necesita para emitir un refresh token. - En Redirect URIs añade
https://cloud.anythingmcp.com/api/mcp-oauth/callbacken AnythingMCP Cloud, o<your AnythingMCP URL>/api/mcp-oauth/callbacksi alojas AnythingMCP tú mismo. - Guarda y copia el Client ID y el Client Secret en
WHOOP_CLIENT_IDyWHOOP_CLIENT_SECRET. Instala el conector, haz clic en Authorize with Provider y permite el acceso con la cuenta de WHOOP cuyos datos debe leer la IA. - Ejecuta
whoop_get_profilepara comprobar la conexión.
Los access tokens duran aproximadamente una hora y se renuevan automáticamente; WHOOP sustituye el refresh token en cada renovación.
Qué lee: el perfil y las medidas corporales del miembro conectado (altura, peso, frecuencia cardiaca máxima); los ciclos fisiológicos, donde un ciclo es un día de WHOOP de despertar a despertar, con esfuerzo del día, energía y frecuencia cardiaca; la recuperación de cada ciclo con puntuación de recuperación, HRV, frecuencia cardiaca en reposo y, en WHOOP 4.0 o posterior, SpO2 y temperatura de la piel; los sueños y las siestas con tiempo por fase, necesidad de sueño, rendimiento, regularidad, eficiencia y frecuencia respiratoria; y los entrenamientos con deporte, esfuerzo, frecuencia cardiaca, energía, distancia, altitud y tiempo en cada zona de frecuencia cardiaca.
Encontrar un día: la IA lista los ciclos (el más reciente no tiene end mientras está en curso) y pasa del id de un ciclo a su recuperación y su sueño. Para las tendencias lista recuperaciones, sueños o entrenamientos entre un start y un end.
Solo lectura: todas las herramientas solo leen. La API de WHOOP no ofrece ninguna forma de escribir datos, así que no hay nada que confirmar y ninguna herramienta está desactivada al instalar. Las entradas del diario, el monitor de estrés, los flujos de frecuencia cardiaca y WHOOP Coach no forman parte de la API pública.
Formatos: solo los registros con score_state SCORED llevan puntuación; PENDING_SCORE significa que WHOOP todavía la está calculando, UNSCORABLE que nunca la tendrá (por ejemplo, cuando no se llevó puesta la pulsera). Las horas están en UTC, y timezone_offset es el desfase local del miembro, que la IA aplica antes de nombrar un día local. Las duraciones que terminan en _milli están en milisegundos. El esfuerzo usa la escala de WHOOP de 0 a 21, kilojoule es energía (divide entre 4,184 para obtener kilocalorías), los porcentajes van de 0 a 100 y las frecuencias cardiacas están en latidos por minuto.
Límites: las herramientas de lista devuelven hasta 25 registros por llamada, del más reciente al más antiguo, con un next_token mientras haya más. WHOOP permite por defecto 100 solicitudes por minuto y 10.000 al día por app; por encima responde 429.
Errores comunes: 401 significa que la autorización caducó o fue revocada (vuelve a hacer clic en Authorize with Provider), 403 o una respuesta vacía para un tipo de datos suele significar que no se concedió su scope, y 404 un id desconocido.
Requisitos previos: WHOOP_CLIENT_ID, WHOOP_CLIENT_SECRET
Instalar el conector localmente
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Abre http://localhost:3000/connectors/store, elige WHOOP e introduce las variables listadas en los Requisitos previos.
Herramientas disponibles
| Tool | What it does |
|---|---|
whoop_get_profile | The signed-in WHOOP member: user_id, email, first and last name |
whoop_get_body_measurement | The member's body measurements as stored in WHOOP: height_meter, weight_kilogram and the max_heart_rate WHOOP calculated |
whoop_list_cycles | Physiological cycles (one WHOOP day, from waking to waking), newest first: id, start, end (missing for the current cycle), timezone_offset… |
whoop_get_cycle | One physiological cycle by id: start, end, score_state and score (strain, kilojoule, average and max heart rate) |
whoop_get_cycle_sleep | The main sleep that belongs to a cycle (the sleep before that WHOOP day), with stages, sleep need, performance, consistency and efficiency |
whoop_get_cycle_recovery | The recovery of a cycle: recovery_score (0 to 100 %), resting_heart_rate, hrv_rmssd_milli, and on WHOOP 4.0 or newer spo2_percentage and… |
whoop_list_recoveries | Recoveries, newest first (by the start of their cycle): cycle_id, sleep_id, score_state and score with recovery_score (0 to 100 %)… |
whoop_list_sleeps | Sleeps and naps, newest first: id (UUID), cycle_id, start, end, nap, score_state and score with time in bed and per stage (light, slow… |
whoop_get_sleep | One sleep or nap by its UUID, with the full score (stage summary, sleep need, performance, consistency, efficiency, respiratory rate) |
whoop_list_workouts | Workouts, newest first: id (UUID), sport_name, start, end, score_state and score with strain, average and max heart rate, kilojoule… |
whoop_get_workout | One workout by its UUID: sport, times, strain, heart rate, kilojoule, distance, altitude and heart rate zone durations |
Ejemplos de prompts
- "¿Cuál es mi puntuación de recuperación hoy, y cómo se comparan mi HRV y mi frecuencia cardiaca en reposo con mi media de 30 días?"
- "¿Cuánto dormí cada noche esta semana, y cuánto de ese tiempo fue sueño REM y sueño de ondas lentas?"
- "Lista mis entrenamientos de las dos últimas semanas con deporte, esfuerzo y tiempo en las zonas de frecuencia cardiaca 4 y 5."
- "¿Cómo fue mi recuperación las mañanas siguientes a un día con un esfuerzo superior a 15?"
- "¿He echado alguna siesta este mes, y cuánto duraron?"
Siguientes pasos
¿Te ha sido útil esta guía?