whoop-mcp
Local MCP server for the WHOOP API v2 that provides tools to access recovery, sleep, strain, and workout data, with local history and JSON export.
README
whoop-mcp
Lokaler MCP-Server für die WHOOP API v2. Läuft vollständig auf dem eigenen Rechner: Recovery, Schlaf, Strain und Workouts stehen in Claude als Tools zur Verfügung, ein täglicher Sync legt eine lokale Historie an und schreibt einen JSON-Export fürs eigene Dashboard.
Was es kann
| Tool | Zweck |
|---|---|
whoop_summary |
Kombinierter Tagesüberblick aus Recovery, Schlaf und Strain |
whoop_recovery |
Recovery Score, HRV, Ruhepuls, SpO2, Hauttemperatur |
whoop_sleep |
Dauer, Schlafphasen, Performance, Konsistenz, Atemfrequenz |
whoop_cycles |
Tages-Strain, Kalorien, Ø- und Maximalpuls |
whoop_workouts |
Trainings mit Strain, HF-Zonen, Distanz, Kalorien |
whoop_body |
Größe, Gewicht, maximale Herzfrequenz |
whoop_history |
Langzeitauswertung aus der lokalen Datenbank, mit Trendvergleich |
whoop_sync |
Daten abrufen, lokal speichern, Export schreiben |
Einheiten werden alltagstauglich umgerechnet: Millisekunden zu Stunden, Kilojoule zu Kilokalorien, Meter zu Kilometern. Die Rohantworten bleiben in der Datenbank erhalten.
Voraussetzungen
Eine App im WHOOP Developer Dashboard mit dieser Redirect URL:
http://localhost:8765/callback
und diesen Scopes:
offline read:recovery read:cycles read:sleep read:workout
read:body_measurement read:profile
offline ist zwingend erforderlich — ohne diesen Scope gibt WHOOP keinen
Refresh Token heraus und die Verbindung müsste stündlich erneuert werden.
Installation
git clone https://github.com/d00ennis/whoop-mcp.git
cd whoop-mcp
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Einrichtung
whoop-mcp setup # Client ID und Secret hinterlegen (landen im Schlüsselbund)
whoop-mcp auth # Browser öffnet sich, Zugriff einmal bestätigen
whoop-mcp sync # erster Abruf, standardmäßig 90 Tage rückwirkend
whoop-mcp status # Konfiguration und Datenbestand prüfen
In Claude einbinden
In ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"whoop": {
"command": "/PFAD/ZU/whoop-mcp/.venv/bin/whoop-mcp",
"args": ["serve"]
}
}
}
Danach Claude neu starten.
Täglicher Sync
Per launchd oder Cron, zum Beispiel jeden Morgen um 6:30 Uhr:
30 6 * * * /PFAD/ZU/whoop-mcp/.venv/bin/whoop-mcp sync >> ~/.whoop-mcp/sync.log 2>&1
Wo die Daten liegen
| Was | Wo |
|---|---|
| Client ID, Secret, Tokens | macOS-Schlüsselbund (Dienst whoop-mcp) |
| Historie | ~/.whoop-mcp/whoop.db (SQLite) |
| Export fürs Dashboard | ~/.whoop-mcp/whoop.json |
Über WHOOP_MCP_DATA_DIR und WHOOP_MCP_EXPORT_PATH lassen sich Verzeichnis
und Exportpfad verlegen.
Aufbau
config.py Pfade, Scopes, Secret-Speicher (Schlüsselbund mit Datei-Fallback)
auth.py OAuth-Flow, lokaler Callback-Server, Token-Rotation
client.py HTTP-Client: Pagination, 401-Refresh, 429-Backoff
normalize.py Rohantworten zu flachen Datensätzen mit sinnvollen Einheiten
aggregate.py Tageszusammenführung, Durchschnitte, Trends
store.py SQLite-Historie, idempotente Upserts
sync.py Abgleich und JSON-Export
server.py MCP-Tools
Tests
pip install -e ".[dev]"
pytest
Lizenz und Datenschutz
Private Nutzung. Es werden keine Daten an Dritte übertragen — siehe PRIVACY.md.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.