
MCP服务器将Garmin Connect数据导入Claude Desktop,用于个性化训练计划、恢复检查和会话分析
概览
—— 一个MCP连接器,将你的Garmin数据导入Claude,这样你可以聊聊训练内容,并获得基于数据的个性化计划、恢复检查和训练分析。 安装完成后,你可以提出以下问题: “我今天恢复得怎么样?看了心率变异数和训练准备情况,我应该全力以赴吗?”“计划一个为期4周的短距离铁人三项训练,以我目前的游泳/骑行/跑步训练量为基线。”“我跟腱发作,只有我的动感单车。根据我最近的训练量,安排一个不影响体能的恢复周。” Claude 会调用连接器中展示的 8 个工具(恢复、体能、负荷、活动、跑步动态、训练负荷、压力、个人记录)并用你的实际数据给出答案。 💡 ——安装后,将自定义指令片段粘贴到Claude Desktop中。设置好后,即使是像“我这周怎么恢复?”这样的随意问题,也会自动拉取你的真实数据,而不是给出泛泛的建议。
概述(AI 翻译)
Garmin Connect for Claude Desktop——一款MCP连接器,将你的Garmin数据导入Claude,这样你可以聊天训练内容,获得基于真实数据的个性化计划、恢复检查和训练分析。
安装完成后,你可以提出以下问题:
“我今天恢复得怎么样?看我的心率变异数和训练准备情况,我应该全力以赴吗?”
“计划一个为期4周的短距离铁人三项训练,6周后以我当前的游泳/骑行/跑步量为基础。”
“我跟腱发作,只有我的动感单车。根据我最近的训练,安排一个不影响体能的恢复周。”
Claude 会调用连接器中展示的 8 个工具(恢复、体能、负荷、活动、跑步动态、训练负荷、压力、个人记录)并用你的实际数据给出答案。
💡 首次设置提示 — 安装后,将自定义说明片段粘贴到 Claude Desktop 中 一次。设置好后,即使是像*“我这周怎么恢复?”这样的随意问题* 会自动拉取你的真实数据,而不是给出通用建议。没有它,你需要把每个问题锚定在你的数据上(例如*“基于我的…”,“看我的…”*)。
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
claude-garmin
Garmin Connect for Claude Desktop — an MCP connector that brings your Garmin data into Claude, so you can chat about your training and get personalized plans, recovery checks, and session analyses grounded in your real numbers.
Once installed, you can ask things like:
“How’s my recovery today? Looking at my HRV and training readiness, should I push hard?”
“Plan a 4-week build for a Sprint triathlon 6 weeks out, using my current swim/bike/run volume as the baseline.”
“I’ve got an Achilles flare-up and only my stationary bike. Based on my recent load, structure a recovery week that doesn’t kill my fitness.”
Claude reaches for the 8 tools the connector exposes (recovery, fitness, load, activities, running dynamics, training load, stress, personal records) and answers using your actual numbers.
💡 First-time setup tip — after install, paste the Custom Instructions snippet into Claude Desktop once. With it set, even casual questions like “how do I recover this week?” will automatically pull your real data instead of giving generic advice. Without it, you need to anchor each question to your data (e.g. “based on my…”, “looking at my…”).
Lifecycle — it does NOT run 24/7
The connector is not a Windows service, doesn’t start at boot, doesn’t stay resident:
- Claude Desktop spawns it as a child process only when the app is open
- While idle (no tool calls), footprint is ~10 MB RAM, 0% CPU — heavy imports (
garminconnect,curl_cffi) are lazy and only load on the first tool call - When you close Claude Desktop, the server process exits automatically
- No network ports opened: it speaks stdio with Claude Desktop only
In short: if you don’t open Claude Desktop, nothing is running.
Quick install (automated script)
- Download the zip from the Releases page (or
git clone) and extract it wherever you like. - Double-click
install.bat. - The script will:
- Install Python 3.12 if missing (via winget)
- Install Claude Desktop if missing (via winget)
- Create the
.venvvirtualenv and install dependencies - Ask for your Garmin email and password (stored only in the local
.env, never sent anywhere else) - Ask whether MFA (2FA) is enabled: if yes, it warns you to have your authenticator app ready before triggering the login prompt
- Run a one-time Garmin login (caches the OAuth token in
~/.garminconnect/, auto-refreshed for months)
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
$cfg = "$env:APPDATA\Claude\claude_desktop_config.json"
New-Item -ItemType Directory -Force -Path (Split-Path $cfg) | Out-Null
$projDir = (Get-Location).Path -replace '\\','/'
$pythonExe = "$projDir/.venv/Scripts/python.exe"
$mcpScript = "$projDir/garmin_mcp.py"
@"
{
"mcpServers": {
"garmin": {
"command": "$pythonExe",
"args": ["$mcpScript"]
}
}
}
"@ | Set-Content -Path $cfg -Encoding utf8
Write-Host "Config written to: $cfg"
Get-Content $cfg