mcpField
P
Paceva for Garmin

Paceva for Garmin

本地服务
github.com/OwenScheuer健康医疗02 天前更新

关于 Paceva for Garmin

Paceva for Garmin 是本地只读 MCP 服务,用于查询个人 Garmin Connect 数据。它面向希望通过自己的 Garmin Personal API 密钥,在 MCP 应用中查看健康与活动记录的用户,不额外生成评分或建议。

主要功能

  1. 01睡眠、HRV、Body Battery 和压力数据
  2. 02每日摘要与健康指标
  3. 03训练日志和活动详情
  4. 04个人资料、体重、饮水和饮食记录
  5. 05本地保存密钥并提供只读访问

适用场景

  1. 01查看睡眠和 HRV 趋势
  2. 02比较近期跑步活动
  3. 03检查每日步数和心率
  4. 04通过 MCP 应用查询 Garmin 健康记录

MCP 相关

通过只读工具向 MCP 客户端提供 Garmin Personal API 数据,包括每日指标、睡眠、HRV、活动及其他可用记录。服务在本地运行,并使用用户自己的 Garmin Personal API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"owenscheuer-paceva-garmin": {
"command": "npx",
"args": [
"-y",
"paceva-garmin-mcp"
],
"env": {
"GARMIN_PERSONAL_API_KEY": "<GARMIN_PERSONAL_API_KEY>"
}
}
}
}
启动命令npx -y paceva-garmin-mcp
需要配置的环境变量
GARMIN_PERSONAL_API_KEY密钥Your Garmin Personal API key (optional if saved with `npx paceva-garmin-mcp setup`).

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmpaceva-garmin-mcp0.1.0

工具

18

收录的工具列表 · 更新于 1 天前

参数类型必填说明
datestring否日历日期,YYYY-MM-DD。默认为今天。
include_seriesboolean否包含逐分钟序列。默认关闭:较长的序列将以计数、最小值、最大值和平均值返回。

详细介绍

Paceva:你的 Garmin 数据,尽在 Claude

Garmin 版 Paceva

向 Claude 或任何 MCP 应用询问你自己的 Garmin 数据:睡眠、HRV、Body Battery、压力、静息心率、步数和活动。

“我昨晚睡得怎么样?” “这个月我的 HRV 是否在下降?” “比较我最近三次长跑。” “我现在跑半程马拉松大概需要多长时间?”

免费、开源且本地运行。 它在你的电脑上运行,使用你自己的 Garmin Personal API 密钥。你的数据从 Garmin 传到你的电脑,再传到你的 AI 应用,不会经过任何其他人的服务器。它是只读的:无法更改 Garmin Connect 中的任何内容。

设置

Claude Desktop:只需下载一次
  1. 下载 paceva-garmin.mcpb 并打开。
  2. Claude 会询问你的 Garmin 密钥:打开 Garmin Connect › Personal API Key,选择 Create Key,复制密钥并粘贴。
  3. 开启 Paceva for Garmin。Claude 安装扩展时会默认关闭它。
  4. 询问 Claude:“我昨晚睡得怎么样?”
其他应用:只需一条命令

需要安装 Node.js 20 或更高版本。在终端中运行:

npx github:OwenScheuer/paceva-garmin-mcp

它会为你打开 Garmin,在你复制密钥后自动读取密钥,用 Garmin 验证密钥,并将自身添加到你安装的 Claude Desktop、Claude Code、Cursor 和 Windsurf。重启应用即可开始提问。

对于其他 MCP 应用,请将以下内容添加到其 MCP 服务中:

"garmin": { "command": "npx", "args": ["-y", "github:OwenScheuer/paceva-garmin-mcp"] }

ChatGPT 只能连接互联网上的服务,无法连接你电脑上的服务,因此目前无法使用此工具。

之后需要更换密钥?运行 npx github:OwenScheuer/paceva-garmin-mcp --new-key。检查是否正常运行:npx github:OwenScheuer/paceva-garmin-mcp check。

它能读取哪些数据

工具可提供给 AI 的数据
get_daily_overview一日概览:摘要、睡眠、HRV 和 Body Battery
get_daily_summaries每日步数、卡路里、静息心率、压力和强度分钟数
get_sleep单晚详细数据,或一段时间内每晚的摘要
get_hrv夜间 HRV、基线和状态
get_body_battery充电量、消耗量、最高值和最低值
get_stress · get_steps · get_heart_rate · get_spo2每日压力、步数、心率和脉搏血氧
get_training_log一段时间内的所有活动(最长一年),包含 Garmin 的主要字段:距离、时间、速度、心率、功率、TSS、最快分段、各心率区间用时
list_activities · get_activity你的活动,以及任意一项活动的完整数据
get_profile个人资料设置和心率区间
get_weight · get_fitness_age · get_hydration · get_food_log · get_menstrual_cycleGarmin Personal API 提供的其他数据

只有 Garmin 的数据。 不会添加分数、模型或建议:每个数值都来自 Garmin,使用 Garmin 自己的字段名称和单位。询问“我跑 10 公里大概需要多长时间?”时,任何预测都由你的 AI 根据这些数据自行得出。

每次调用的日期范围最多为 92 天(训练日志最多一年)。按分钟记录的序列(例如全天心率、睡眠阶段)会以计数、最小值、最大值和平均值的形式返回,除非你的 AI 要求提供完整序列。

Garmin Personal API 不包含训练准备度、训练状态或恢复时间,因此此工具也不提供这些数据。

您的密钥与隐私

  • 您的密钥保存在 ~/.config/garmin/connect-personal-api-key 中,这是 Garmin 自带工具使用的相同位置,只有您能读取。您也可以改为设置 GARMIN_PERSONAL_API_KEY。
  • Garmin 签发的短期访问令牌会缓存在 ~/.config/paceva-garmin/token.json 中,也只有您能读取。
  • 您的 AI 应用读取的数据会作为聊天内容的一部分发送给该应用的服务提供商(例如 Anthropic 或 OpenAI),并受其隐私条款约束。
  • 如需撤销访问权限,请在 Garmin Connect 中删除密钥。

Garmin Personal API 供您访问自己的数据。每个人都应使用自己的密钥;请勿构建收集他人密钥的服务。

故障排除

  • “Garmin 不接受您的 Personal API 密钥”:密钥已过期或被删除。运行 npx github:OwenScheuer/paceva-garmin-mcp --new-key。(对于 Claude Desktop 扩展,请在“设置”›“扩展”中更新密钥。)
  • “未找到 Garmin Personal API 密钥”:在终端中运行 npx github:OwenScheuer/paceva-garmin-mcp。
  • “Garmin 正在限制请求频率”:等待一分钟后重试。

开发

npm install
npm test
npm run build
./scripts/pack-mcpb.sh   # builds paceva-garmin.mcpb

本项目与 Garmin 无关,也未获其认可。Garmin 和 Garmin Connect 是 Garmin Ltd. 或其子公司的商标。

采用 MIT 许可。由 Paceva 制作。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。