Whoop
Access the Whoop API to query cycles, recovery, strain, and workout data.
Whoop MCP Server
Python Package License: MIT Python 3.12
A Model Context Protocol (MCP) server that provides access to the Whoop API. It allows language models to query cycles, recovery, strain, and workout data from the Whoop API.
Available Tools
The server exposes the following tools:
Cycle Queries
get_cycle_collection(start_date: str, end_date: str): Get cycle data for a specific date rangeget_latest_cycle(): Get the most recent cycle data
Recovery and Strain
get_recovery_data(start_date: str, end_date: str): Get recovery data for a specific date rangeget_strain_data(start_date: str, end_date: str): Get strain data for a specific date rangeget_average_strain(days: int = 7): Calculate average strain over specified number of days
Profile and Authentication
get_profile(): Get user profile informationcheck_auth_status(): Check authentication status with Whoop API
Dates should be provided in ISO format (YYYY-MM-DD).
Usage
You'll need Whoop credentials to use this server. The server uses email/password authentication with the Whoop API.
Claude for Desktop
Update your claude_desktop_config.json (located in ~/Library/Application\ Support/Claude/claude_desktop_config.json on macOS and %APPDATA%/Claude/claude_desktop_config.json on Windows) to include the following:
{
"mcpServers": {
"Whoop": {
"command": "python",
"args": ["/path/to/whoop/src/whoop_server.py"],
"cwd": "/path/to/whoop",
"env": {
"WHOOP_EMAIL": "your.email@example.com",
"WHOOP_PASSWORD": "your_password"
}
}
}
}
HTTP API Server
The project also includes an HTTP API server that exposes the same functionality over HTTP endpoints. To run it:
./run_whoop_server.sh
Example Queries
Once connected, you can ask Claude questions like:
- "What's my recovery score for today?"
- "Show me my strain data for the past week"
- "What's my average strain over the last 7 days?"
- "Get my latest cycle data"
Error Handling
The server provides human-readable error messages for common issues:
- Invalid date formats
- API authentication errors
- Network connectivity problems
- Missing or invalid credentials
Project Structure
whoop/
├── src/
│ ├── whoop_server.py # MCP server implementation
│ └── whoop_http_server.py # HTTP API server implementation
├── config/
│ └── .env # Environment variables
├── requirements.txt # Python dependencies
└── run_whoop_server.sh # Script to run HTTP server
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
MCP Chatbot
An intelligent chatbot for automating tasks like browser control, web searches, and travel planning.
Obsidian MCP Server
An MCP server that allows AI assistants to read from and write to your local Obsidian vault.
Jane
A knowledge management server for stdlib and specs documents, with a configurable storage path.
MCP Zotero
Interact with your Zotero library for managing references and citations.
Homelab MCP
MCP servers for managing homelab infrastructure through Claude Desktop. Monitor Docker/Podman containers, Ollama AI models, Pi-hole DNS, Unifi networks, and Ansible inventory.
Intugle MCP
Generate automated semantic models using data engineering agents and built data products on demand
ClickUp MCP
Integrate ClickUp project management with AI to manage tasks, lists, and spaces.
Notion
Integrates with Notion's API to manage personal todo list
DeepLucid3D UCPF Server
An MCP server for advanced cognitive analysis, creative problem-solving, and structured thinking using the UCPF framework.
TanukiMCP
Automate and manage WordPress sites using browser automation and API integration.