whoop-mcp

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.

Category
Visit Server

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

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured