🏃 Garmin MCP Lite
[AIアシスタント・LLM向け]
あなたは Garmin MCP (Model Context Protocol) サーバーに接続しています。
- データの鮮度: ユーザーが最近のワークアウトや健康指標について尋ねた場合は、必ずデータをクエリしてください。
- パラメータ調整:
garmin_activity_detail などのツールでは fields パラメータを使用してレスポンスのペイロードを制限し、コンテキストウィンドウを節約してください(例: ["splits", "hrZones"])。
- 読み取り専用: このサーバーは Garmin Connect への読み取り専用アクセスを提供します。ユーザーデータを変更することはできません。
- パスワード要求の禁止: ユーザーに Garmin パスワードを決して尋ねないでください。認証はローカルトークンを介して帯域外で処理されます。
- ヘルスヒント:
garmin_health は metric パラメータをサポートするようになりました — "steps"、"sleep"、"hrv"、"spo2"、"body_battery" などを使用して特定のデータをクエリし、コンテキストウィンドウを節約できます。

他の言語で読む: English, 简体中文.
耐久系アスリートのために設計された、軽量な Garmin Model Context Protocol (MCP) サーバーです。
ランニング、サイクリング、水泳、そして健康データを深く分析するための 厳選された12のエンドポイント を提供します — 80以上のエンドポイントを抱える肥大化した代替品を、クリーンでフォーカスされたツールセットで置き換えます。
🛠️ コアツール(12)
🏃 アクティビティ & トレーニング
| ツール |
機能 |
garmin_activities |
日付とタイプのフィルター付きで、ランニング/サイクリング/水泳/ダイビングの記録を一覧表示します。 |
garmin_activity_detail |
単一アクティビティの詳細(ペース、心拍ゾーン、スプリット、GPS など)を取得します。 |
garmin_training_plan |
今日、または指定日の予定トレーニングワークアウトを取得します。 |
garmin_training_status |
トレーニングステータス、VO2Max、急性負荷、負荷フォーカス分布(有酸素/無酸素)、回復時間、トレーニングレディネススコアを取得します。 |
garmin_weekly_stats |
週次/月次/年次のトレーニングボリューム統計を取得します。 |
garmin_coach |
現在の Garmin Coach トレーニングプランの概要を表示します。 |
💚 健康 & ウェルネス
| ツール |
機能 |
garmin_health |
包括的な健康指標を取得します: 睡眠の質、HRV ステータス、ストレス、ボディバッテリー、SpO2、呼吸数、高強度活動時間、日々の歩数、上った階数、安静時心拍数。metric パラメータで対象を絞ったクエリをサポートします。 |
garmin_hr_trend |
過去 7/30/90 日間の安静時心拍数のトレンドを取得します。 |
🎯 目標 & チャレンジ
| ツール |
機能 |
garmin_events |
レースカレンダーを取得します: 今後のレース日程、目標距離、目標フィニッシュタイム。 |
garmin_challenges |
進行中のチャレンジを取得します: バーチャルクライム、月間バッジチャレンジ、およびその達成率。 |
⌚ デバイス & ギア
| ツール |
機能 |
garmin_gear |
シューズ/バイクのギアリストと、その実際の累積走行距離を取得します。 |
garmin_device |
接続デバイス情報を取得します: ファームウェアバージョン、アップデートの有無、プライマリデバイスのステータス、登録日。 |
🚀 クイックスタート(PyPI & uv 経由)
このサーバーを実行する最も簡単な方法は uvx を使用することです(クローン不要)。
1. 認証(初回のみ)
なぜパスワードを AI の設定に直接入れないのか?
Garmin は厳格なセキュリティ対策を敷いています。新しい場所/MCP サーバーからのログインは、しばしば Cloudflare の CAPTCHA や MFA メールコードを引き起こします。パスワードが Claude のバックグラウンド設定にあると、チャレンジ時に AI アシスタントは静かにフリーズしたり失敗したりし、コードを入力する手段がなくなります。
そのため、このプラグインは安全な 2段階戦略 を採用しています: まずターミナルでログインスクリプトを実行します。チャレンジされた場合は、対話的に MFA コードを入力できます。成功すると、セッショントークンがローカルにキャッシュされます(約1年間有効)。
GARMIN_EMAIL="your@email.com" GARMIN_PASSWORD="your_password" uvx --with garmin-mcp-lite garmin-mcp-lite-login
(💡 中国リージョンのユーザー: アカウントが Garmin China(garmin.cn)で登録されている場合は、コマンドの前に GARMIN_IS_CN=true を付けてください。)
2. AIアシスタントの設定
認証が完了したら、お気に入りの MCP 対応 AI アシスタントにサーバーを追加します。
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json に以下を追加します:
{
"mcpServers": {
"garmin-lite": {
"command": "uvx",
"args": [
"garmin-mcp-lite"
]
}
}
}
Cursor / Windsurf / Gemini CLI / その他の MCP クライアント
上記とまったく同じ command と args を使用してください。サーバーは ~/.garmin-mcp-lite/garmin_tokens.json からキャッシュされたトークンを自動的に読み込みます。
🔧 手動インストール(開発者向け)
コードを変更したい場合:
git clone https://github.com/Golden0Voyager/garmin-mcp-lite.git
cd garmin-mcp-lite
uv sync
GARMIN_EMAIL="your@email.com" GARMIN_PASSWORD="your_password" python -m garmin_mcp_lite.login
python -m garmin_mcp_lite.server
💬 クエリ例
接続後は、AIアシスタントに次のような自然言語の質問ができます:
- 「今週のトレーニング負荷フォーカスは?」
- 「6月のレース目標と、現在の予測フィニッシュタイムを教えて。」
- 「グロースグロックナー・バーチャルクライムチャレンジの進捗はどう?」
- 「Descent G1 のファームウェアは最新?」
- 「今日は何歩歩いた?1日の目標を達成できそう?」
- 「昨夜の睡眠の質を分析して。」
⚖️ 他の Garmin MCP との比較
|
Taxuspt/garmin_mcp |
garmin_mcp_lite |
| ツール数 |
80+ |
12 |
| 命名 |
mcp_garmin_get_activities_by_date |
garmin_activities |
| 詳細クエリ |
なし |
fields パラメータで詳細度を制御 |
| トレーニング負荷 |
基本 |
急性負荷 + 負荷フォーカス分布 |
| 健康の深さ |
基本 |
SpO2、呼吸数、高強度活動時間、歩数 |
| レース/チャレンジ |
なし |
イベントカレンダー + チャレンジ進捗 |
| 書き込み操作 |
多数(体重/栄養/ギア) |
読み取り専用 |
📄 ライセンス
MIT © 2026 Haining Yu
本プロジェクトは、優れた garminconnect ライブラリの上に構築されています。これは Garmin の公式製品ではありません。本ツールを使用する際は、Garmin Connect の利用規約を遵守してください。