Polar MCP
Polar MCP
このリポジトリは、ADR 0001 で定義された境界を実装しています。再利用可能なPython製Polarコアと、ローカルMCPおよびClaude Agent SDK向けの薄い読み取り専用アダプタから構成されます。
この実装は意図的にv4優先です。以下を提供します:
自動的なAccessLink v4トークン更新
分離されたv4クライアントと補完的なv3クライアント
上限付きで終了日を含まない日付範囲と、自動的なv4リクエストのチャンク分割
APIの出所と単位を含む正規化されたレスポンスエンベロープ
認証情報、ユーザー/デバイス識別子、正確な位置情報の再帰的な秘匿化
サイズ上限付きの入れ子タイムシリーズと最上位レベルの結果
ヘルスデータを永続化しないインメモリTTLキャッシュ
サニタイズ済みデータのみを読み取れるMCPおよびAgent SDKツール
所有者のみが読み取り可能なローカルトークンファイルを備えた独立した認証CLI
インストール
Python 3.11以降が必要です。
python -m venv .venv
source .venv/bin/activate
pip install -e '.[mcp]'Polar AccessLink にアプリケーションを登録し、サーバー側の認証情報を設定します。これらの値を、モデルが読み取れるMCP構成ファイルに置かないでください。
export POLAR_CLIENT_ID='...'
export POLAR_CLIENT_SECRET='...'コールバックが検証するstate値を含む認可URLを生成します:
polar-auth authorization-url \
--redirect-uri 'http://127.0.0.1:8787/callback' \
--state "$(python -c 'import secrets; print(secrets.token_urlsafe(32))')"アクセスを承認した後、返されたコードを交換します。--code を省略すると、コードをエコーバックせず、シェル履歴にも残さずに読み取ります。
polar-auth exchange --redirect-uri 'http://127.0.0.1:8787/callback'
polar-auth statusトークンはデフォルトでプラットフォームの構成ディレクトリに保存され、ファイルが所有者以外の誰かに読み取り可能な場合は拒否されます。場所を上書きするには POLAR_TOKEN_FILE を使用します。
Related MCP server: garmin-mcp
ローカルMCPを実行する
polar-mcpサーバーは stdio を使用し、ネットワークリスナーを開きません。公開されるのは次のものだけです:
polar_get_activitypolar_get_sleeppolar_get_recoverypolar_get_training_sessionspolar_get_heart_rate
すべての end_date 値は排他的です。ツールスキーマには、意図的に生データや位置情報のフラグがありません。エージェント外のコードは、明示的な DisclosureGrant を指定して PolarService.query を使用できますが、このグラントには別途記録されたユーザーの確認が必要であり、レスポンスはサイズ上限付きのままです。
テスト
テストは標準ライブラリのテストランナーとモック化されたHTTPトランスポートのみを使用します:
PYTHONPATH=src python -m unittest discover -s tests -vどのテストもPolarの認証情報を必要とせず、ネットワーク経由でヘルスデータを送信しません。
現在の検証ステータス
このコードは耐久性のあるアーキテクチャを実装していますが、ADR 0001 を受け入れるために必要な実機での概念実証を行ったとは主張していません。文書化された実機でのPolar Pacerチェックが完了するまで、ADR は Proposed のままです。
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