Polar MCP
Polar MCP
Dieses Repository implementiert die Grenzen aus ADR 0001: einen wiederverwendbaren Python-Polar-Kern mit schlanken Nur-Lese-Adaptern für lokales MCP und das Claude Agent SDK.
Die Implementierung ist bewusst v4-orientiert. Sie bietet:
automatische Aktualisierung von AccessLink-v4-Tokens;
isolierte v4- und ergänzende v3-Clients;
begrenzte Datumsbereiche mit exklusivem Ende und automatisches v4-Request-Chunking;
normalisierte Antwort-Envelopes mit API-Herkunft und Einheiten;
rekursive Schwärzung von Anmeldedaten, Benutzer-/Gerätekennungen und präzisen Standorten;
begrenzte verschachtelte Zeitreihen und Top-Level-Ergebnisse;
einen In-Memory-TTL-Cache, der niemals Gesundheitsdaten persistiert;
MCP- und Agent-SDK-Tools, die nur bereinigte Daten lesen können;
eine separate Authentifizierungs-CLI mit einer lokalen Token-Datei, die nur der Eigentümer lesen kann.
Installation
Python 3.11 oder höher ist erforderlich.
python -m venv .venv
source .venv/bin/activate
pip install -e '.[mcp]'Registrieren Sie eine Anwendung in Polar AccessLink und setzen Sie dann serverseitige Anmeldedaten. Legen Sie diese Werte nicht in einer MCP-Konfigurationsdatei ab, die ein Modell lesen kann.
export POLAR_CLIENT_ID='...'
export POLAR_CLIENT_SECRET='...'Generieren Sie eine Autorisierungs-URL mit einem State-Wert, den Ihr Callback verifiziert:
polar-auth authorization-url \
--redirect-uri 'http://127.0.0.1:8787/callback' \
--state "$(python -c 'import secrets; print(secrets.token_urlsafe(32))')"Nachdem Sie den Zugriff genehmigt haben, tauschen Sie den zurückgegebenen Code ein. Wenn Sie --code weglassen, wird
er eingelesen, ohne angezeigt oder in der Shell-Historie abgelegt zu werden.
polar-auth exchange --redirect-uri 'http://127.0.0.1:8787/callback'
polar-auth statusTokens werden standardmäßig im Plattform-Konfigurationsverzeichnis gespeichert und abgelehnt, wenn ihre Datei
von irgendjemandem außer dem Eigentümer gelesen werden kann. Überschreiben Sie den Speicherort mit POLAR_TOKEN_FILE.
Related MCP server: garmin-mcp
Lokales MCP ausführen
polar-mcpDer Server verwendet stdio; er öffnet keinen Netzwerk-Listener. Er stellt nur Folgendes bereit:
polar_get_activitypolar_get_sleeppolar_get_recoverypolar_get_training_sessionspolar_get_heart_rate
Alle end_date-Werte sind exklusiv. Die Tool-Schemas haben bewusst keine Rohdaten- oder Standort-
Flags. Code außerhalb eines Agents kann PolarService.query mit einer expliziten DisclosureGrant verwenden, aber
die Freigabe erfordert eine separat aufgezeichnete Benutzerbestätigung, und Antworten bleiben größenbegrenzt.
Testen
Die Tests verwenden nur den Test-Runner der Standardbibliothek und simulierte HTTP-Transports:
PYTHONPATH=src python -m unittest discover -s tests -vKein Test erfordert Polar-Anmeldedaten oder sendet Gesundheitsdaten über das Netzwerk.
Aktueller Validierungsstatus
Dieser Code implementiert die dauerhafte Architektur, erhebt aber nicht den Anspruch, den für die Annahme von ADR 0001
erforderlichen Proof of Concept mit echten Geräten zu erbringen. Die ADR bleibt Proposed, bis die dokumentierten
Live-Prüfungen mit Polar Pacer abgeschlossen sind.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read wearables and lab health data — sleep, activity, workouts, timeseries, lab tests and orders.
Multi-tenant hosted MCP server for Oura Ring — 21 read-only tools, OAuth per user.
MCP server for Withings health data — sleep, activity, heart, and body metrics.
Remote MCP server for training, nutrition, wellness, and performance data with OAuth 2.0.
Related MCP Servers
- FlicenseAqualityDmaintenanceAn MCP server for the Polar AccessLink API. Connect your Polar fitness data to Claude AI - access workouts, sleep analysis, recovery metrics, heart rate data, and more.256-
- FlicenseAqualityCmaintenanceProvides read-only access to your Garmin Connect health data, including sleep, HRV, body battery, stress, training readiness, and activities, through an MCP server.14-

Aidlab MCPofficial
AlicenseNot gradedqualityBmaintenanceConnects Aidlab wellness data to AI tools through MCP, providing read-only access to daily summaries, steps, heart rate, HRV, sleep, activities, and profile with OAuth authentication.MIT- AlicenseNot gradedqualityBmaintenanceEnables MCP clients to query sleep, heart rate, and step data from Xiaomi Health for the logged-in user and authorized relatives.GPL 3.0