Garmin锻炼MCP
使用自然语言描述创建Garmin Connect训练。作为MCP(模型上下文协议)服务器构建。
安装
克劳德代码(推荐)
claude mcp add garmin-workouts-mcp npx garmin-workouts-mcp克劳德桌面
添加到配置文件中:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"garmin-workouts-mcp": {
"command": "npx",
"args": ["-y", "garmin-workouts-mcp"]
}
}
}然后重新启动Claude Desktop。
用法
⚠️ 重要:Garmin的身份验证令牌将在约5分钟后过期。计划多项训练,并在一次训练中全部创建。
快速开始
- 请求锻炼 -只需描述一下你想要什么:“创建一个10分钟的预热,5x1km的阈值间隔,休息2分钟,然后冷却10分钟”
- 需要时进行身份验证 -浏览器窗口将打开Garmin Connect供您登录(代币过期时发生,大约每5分钟一次)
- 您的训练出现 -该工具直接在您的Garmin Connect帐户中创建它,并提供查看它的链接
- 设备上可用 -训练将在Garmin Connect中提供,并可以从那里发送到您的设备
您的登录信息已临时保存 -令牌安全地存储在您的机器上,但会在大约5分钟后过期,因此您可能需要在会话之间重新进行身份验证。
在一次训练中创建多个训练:
"Create these 3 workouts:
1. Easy 30 min run in zone 2
2. 5x1km threshold intervals with 2 min rest
3. 10x30 second sprints with 90 second recovery"运作原理
- 请求锻炼 -描述你想创建什么
- 自动身份验证 -令牌过期时打开浏览器进行登录
- 批量创建 -在同一训练中创建多个训练
训练示例
- 放松跑:“在2区轻松跑30分钟”
- 间隔:“以5公里的速度跑5x400公里,休息60秒”
- 阈值:“10分钟热身,20分钟第4区节奏,10分钟冷却”
- 短跑:“热身10分钟,然后8x15秒冲刺,恢复3分钟”
- 复杂:“金字塔训练:1-2-3-4-3-2-1分钟用力,恢复力相同”
特性
- 🧠 自然语言处理 -用简单的英语描述锻炼
- 🔐 安全认证 -基于令牌的身份验证,具有自动续订功能
- 🏃 多运动支持 -跑步、骑自行车和游泳锻炼
- ⚡ Garmin直接集成 -在Garmin Connect中即时创建训练
- 💾 智能令牌处理 -令牌过期时自动重新身份验证
当前限制
⚠️ 仅心率/区域目标 -该工具目前支持心率区域(区域1-5)和特定的BPM目标,但尚不支持基于速度的目标(例如4:00/km)。
运作原理
- 将自然语言训练描述转换为结构化数据
- 转换为Garmin的训练API格式,具有适当的区域和目标
- 直接在您的Garmin Connect帐户中创建训练
- 自动同步到您的Garmin设备
专为克劳德代码和克劳德桌面设计。
法律免责声明
该项目是一个与Garmin Connect的web界面交互的非官方第三方工具。其不隶属于、不由有限公司或其任何附属公司背书或赞助。
- 使用风险自负 -如果Garmin更改其API或服务条款,此工具可能会停止工作
- 非商业用途 -这是一个仅供个人使用的个人项目
- 无担保 -软件按“原样”提供,不提供任何保证
- 尊重Garmin的条款 -用户有责任遵守Garmin Connect的服务条款
- 数据责任 -您对创建的训练和与Garmin共享的任何数据负责
如果您代表Garmin并对此项目有疑问,请通过GitHub issues联系。
发展
令牌存储
身份验证令牌安全地存储在:
- 位置:
~/.config/garmin-workouts-mcp/auth.json - 权限:600(仅限用户读/写)
- 到期:登录后约5分钟
- 内容:Garmin Connect API的JWT代币和Cookie
地方发展
# Clone and install
git clone https://github.com/charlesfrisbee/garmin-workouts-mcp.git
cd garmin-workouts-mcp
pnpm install
# Build and test locally
pnpm run build
pnpm run pack
# Add to Claude Code for testing
claude mcp add garmin-workouts-mcp ./garmin-workouts-mcp-local.tgz需求
- Node.js 16+
- pnpm
- 克劳德代码 (用于本地测试)
- Garmin Connect帐户
