WHOOP MCP Server
🏃 Servidor MCP de WHOOP
Conecta tus datos de fitness de WHOOP a Claude Desktop a través del Protocolo de Contexto de Modelo (MCP)
Transforma tus datos de fitness de WHOOP en información útil mediante consultas en lenguaje natural en Claude Desktop. Haz preguntas sobre tus entrenamientos, recuperación, patrones de sueño y más, todo mientras mantienes tus datos seguros y privados.
🚀 NUEVO: ¡Prueba la versión alojada en Smithery para una implementación sin configuración!
✨ Características
🔐 Integración OAuth segura - Conexión segura a la cuenta de WHOOP con almacenamiento local cifrado 🏃 Acceso completo a datos - Entrenamientos, recuperación, sueño, ciclos e información de perfil 🤖 Consultas en lenguaje natural - Pregúntale a Claude sobre tus datos de fitness en inglés sencillo ⚡ Caché inteligente - Rendimiento optimizado con almacenamiento en caché de datos inteligente 🛡️ Privacidad primero - Todos los datos permanecen en tu máquina, nunca se envían a terceros 🔄 Actualización automática de tokens - Experiencia fluida con renovación automática de autenticación
Related MCP server: Whoop MCP Server
🚀 Inicio rápido
🎯 Elige tu método de implementación
Opción A: Alojado en Smithery (Recomendado para principiantes)
✅ Cero complejidad de instalación
✅ Actualizaciones y mantenimiento automáticos
✅ Alojamiento de nivel empresarial
Opción B: Instalación local (Usuarios avanzados)
✅ Control total y privacidad
✅ Sin dependencias externas
✅ Personaliza y extiende
➡️ Continúa con la configuración local a continuación
📦 Instalación local
1. Requisitos previos
Python 3.8+
Claude Desktop
Cuenta de WHOOP activa
2. Instalación
git clone https://github.com/romanevstigneev/whoop-mcp-server.git
cd whoop-mcp-server
pip install -r requirements.txt3. Configuración
Opción A: Configuración interactiva (Recomendado)
Ejecuta la configuración interactiva:
python setup.pyEsto hará lo siguiente:
Abrirá tu navegador para la autorización OAuth de WHOOP
Guardará tus tokens de forma segura localmente
Proporcionará la configuración para Claude Desktop
Opción B: Configuración manual de OAuth de WHOOP
Si la configuración interactiva no funciona, puedes obtener tus tokens de WHOOP manualmente:
Abre la página de OAuth de WHOOP: 👉 Haz clic aquí para autorizar el acceso a WHOOP
Autoriza tu cuenta:
Inicia sesión con tus credenciales de WHOOP
Concede permisos para los alcances solicitados:
read:profile- Acceso a la información de tu perfilread:workout- Acceso a los datos de entrenamientoread:recovery- Acceso a los datos de recuperaciónread:sleep- Acceso a los datos de sueñooffline- Token de actualización para acceso continuo
Copia el código de autorización:
Después de la autorización, verás una página de éxito
Copia el código de autorización completo (cadena larga que comienza con letras/números)
Se ve así:
ABC123...XYZ789(mucho más largo)
Intercambia el código por tokens:
python -c " import sys sys.path.insert(0, './src') from auth_manager import TokenManager import requests # Paste your authorization code here auth_code = 'YOUR_AUTHORIZATION_CODE_HERE' # Exchange for tokens url = f'https://personal-integrations-462307.uc.r.appspot.com/api/get-tokens/{auth_code}' response = requests.get(url, timeout=30) if response.status_code == 200: token_data = response.json() if token_data.get('success'): # Save tokens token_manager = TokenManager() token_manager.save_tokens(token_data) print('✅ Tokens saved successfully!') else: print('❌ Token exchange failed') else: print(f'❌ HTTP Error: {response.status_code}') "Verifica la configuración:
python -c " import sys sys.path.insert(0, './src') from whoop_client import WhoopClient client = WhoopClient() print(f'✅ Auth status: {client.get_auth_status()}') "
4. Configura Claude Desktop
Agrega esto a tu configuración de Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json
{
"mcpServers": {
"whoop": {
"command": "/opt/miniconda3/bin/python",
"args": ["/path/to/whoop-mcp-server/src/whoop_mcp_server.py"],
"env": {
"PYTHONPATH": "/path/to/whoop-mcp-server/src"
}
}
}
}⚠️ Importante: Usa la ruta completa de Python (encuentra la tuya con which python3)
5. Reinicia Claude Desktop
Después de agregar la configuración, reinicia Claude Desktop para cargar el servidor de WHOOP.
💡 Ejemplos de uso
Una vez configurado, puedes preguntarle a Claude:
"Show my WHOOP profile"
"What were my workouts this week?"
"How is my recovery trending?"
"Show my sleep data for the last 7 days"
"What's my HRV looking like?"
"Compare my recovery to last month"
🛠️ Herramientas disponibles
get_whoop_profile
Obtén la información de tu perfil de usuario de WHOOP.
get_whoop_workouts
Obtén datos de entrenamiento con filtros opcionales:
start_date(AAAA-MM-DD)end_date(AAAA-MM-DD)limit(número de resultados)
get_whoop_recovery
Obtén datos de recuperación con filtros opcionales:
start_date(AAAA-MM-DD)end_date(AAAA-MM-DD)limit(número de resultados)
get_whoop_sleep
Obtén datos de sueño con filtros opcionales:
start_date(AAAA-MM-DD)end_date(AAAA-MM-DD)limit(número de resultados)
get_whoop_cycles
Obtén ciclos fisiológicos (datos diarios) con filtros opcionales:
start_date(AAAA-MM-DD)end_date(AAAA-MM-DD)limit(número de resultados)
get_whoop_auth_status
Verifica el estado de autenticación y la información del token.
clear_whoop_cache
Borra los datos en caché para forzar nuevas llamadas a la API.
🔐 Seguridad
Cifrado de tokens: Todos los tokens están cifrados en reposo mediante cifrado AES
Almacenamiento local: Los tokens se almacenan localmente en tu máquina, nunca se envían a terceros
Permisos seguros: Los archivos de token tienen permisos restringidos (600)
Actualización automática: Los tokens se actualizan automáticamente cuando caducan
📊 Almacenamiento en caché de datos
Caché inteligente: Las respuestas de la API se almacenan en caché durante 5 minutos para mejorar el rendimiento
Limitación de tasa: Limitación de tasa integrada para respetar los límites de la API de WHOOP
Control de caché: Borrado manual de caché disponible
🔧 Configuración
Variables de entorno (opcionales):
LOG_LEVEL: Nivel de registro (DEBUG, INFO, WARNING, ERROR)LOG_FILE: Ruta del archivo de registro (predeterminado: solo consola)
🆚 Comparación de implementación
Característica | Instalación local | |
Tiempo de configuración | ⚡ 2 minutos | ⏱️ 10-15 minutos |
Complejidad | 🟢 Apto para principiantes | 🟡 Requiere configuración técnica |
Mantenimiento | ✅ Cero (actualizaciones automáticas) | 🔧 Requiere actualizaciones manuales |
Rendimiento | 🚀 Alojamiento optimizado | 💻 Depende de la configuración local |
Privacidad | 🌐 Plataforma alojada | 🔒 Totalmente local |
Dependencias | ❌ Ninguna | 🐍 Python, paquetes, OAuth |
Solución de problemas | 📞 Soporte de plataforma | 🛠️ Autoservicio |
📁 Estructura de archivos
whoop-mcp-server/
├── src/ # Python local installation
│ ├── whoop_mcp_server.py # Main MCP server
│ ├── whoop_client.py # WHOOP API client
│ ├── auth_manager.py # Token management
│ └── config.py # Configuration
├── smithery/ # TypeScript source files
│ └── src/
│ ├── index.ts # Smithery MCP server
│ ├── whoop-client.ts # TypeScript WHOOP client
│ └── types.ts # Type definitions
├── storage/ # Local installation only
│ ├── tokens.json # Encrypted tokens (auto-generated)
│ └── .encryption_key # Encryption key (auto-generated)
├── package.json # Node.js dependencies (Smithery)
├── smithery.yaml # Smithery configuration (root required)
├── tsconfig.json # TypeScript configuration
├── setup.py # Interactive setup script
└── requirements.txt # Python dependencies🐛 Solución de problemas
"No valid access token available"
Ejecuta
python setup.pypara volver a autorizarVerifica que tu cuenta de WHOOP esté activa
"Authentication failed"
Es posible que tus tokens hayan caducado más allá de la actualización
Ejecuta
python setup.pypara obtener nuevos tokens
"Rate limit exceeded"
Espera un minuto antes de realizar más solicitudes
Considera usar datos en caché o reducir la frecuencia de las solicitudes
Claude Desktop no ve el servidor
Usa la ruta completa de Python: Cambia
"command": "python"a"command": "/opt/miniconda3/bin/python"(usawhich python3para encontrar la tuya)Verifica el archivo de configuración correcto: Edita
~/Library/Application Support/Claude/claude_desktop_config.json(no.claude.json)Usa rutas absolutas: Rutas completas como
/Users/username/whoop-mcp-server/src/whoop_mcp_server.pyRevisa los registros:
tail -f ~/Library/Logs/Claude/mcp-server-whoop.logReinicia Claude Desktop después de los cambios de configuración
🔄 Actualización de tokens
El servidor actualiza automáticamente los tokens caducados usando el token de actualización. Si esto falla, deberás volver a autorizar:
python setup.py📝 Registro (Logging)
Los registros se escriben en la consola de forma predeterminada. Para registrar en un archivo:
export LOG_FILE="/path/to/whoop-mcp.log"
export LOG_LEVEL="INFO"🤝 Contribución
Haz un fork del repositorio
Crea una rama de características
Realiza tus cambios
Agrega pruebas si corresponde
Envía una solicitud de extracción (pull request)
📄 Licencia
Este proyecto tiene licencia MIT; consulta el archivo LICENSE para obtener más detalles.
⚠️ Descargo de responsabilidad
Esta es una integración no oficial con WHOOP. Utiliza la API oficial de WHOOP pero no está respaldada por WHOOP.
📞 Soporte
Revisa la sección de solución de problemas anterior
Abre un issue en GitHub
Revisa la documentación de la API de WHOOP en https://developer.whoop.com/
🎯 Hoja de ruta
[ ] Análisis de datos históricos
[ ] Consultas de rango de fechas personalizadas
[ ] Funcionalidad de exportación de datos
[ ] Soporte de Webhook para actualizaciones en tiempo real
[ ] Análisis e información avanzada
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceConnects WHOOP fitness data to Claude Desktop, enabling natural language queries about workouts, recovery, sleep patterns, and health metrics while keeping data secure and private.
- AlicenseNot gradedqualityDmaintenanceExposes Whoop fitness data (recovery, sleep, strain, workouts) to Claude for use as a daily training coach, enabling natural language queries about your health metrics and training readiness.MIT
- AlicenseNot gradedqualityDmaintenanceConnects WHOOP fitness and recovery data to Claude Desktop, enabling users to query workouts, sleep, recovery, and trends through natural language.MIT
- FlicenseAqualityBmaintenanceProvides Claude Desktop with access to WHOOP fitness data including recovery, sleep, strain, and workouts.41
Related MCP Connectors
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
Garmin data in Claude: 135 tools — activities, sleep, HRV, training, workouts. Free, open source.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RomanEvstigneev/whoop-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server