SC

shape-calendar/garmin-personal-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

4 stars 19 forks 质量 84 趋势 26MIT

MCP server for your own Garmin data, using Garmin's Personal API key.

概览

Your whole Garmin history, in Claude. Every activity since your first watch, the original FIT files, sleep, HRV, Body Battery. Runs on your machine with a key only you hold. In October 2026 Garmin opened a Personal tier of the Connect API: one key, one person, your own data, no application to file. This is a TypeScript MCP server over that API, so Claude Desktop, Claude Code, Cursor, ChatGPT or any other MCP client can ask questions of your data directly. It is read-only. Nothing is written to your Garmin account and nothing is sent anywhere except to the AI client you connect. Not affiliated with Garmin. Garmin and Garmin Connect are trademarks of Garmin Ltd. 1. Create a key at connect.garmin.com/app/settings/personalApiToken. Pick . 2. Save it: ChatGPT and the Claude mobile app can only reach servers over HTTPS. See Running it on a server. Use the same node .../dist/index.js as the command in any other client's config. Needs Node 20 or newer.

README

以下为原文 README 节选,完整内容请查看原文。

garmin-personal-mcp

Your whole Garmin history, in Claude. Every activity since your first watch, the original FIT files, sleep, HRV, Body Battery. Runs on your machine with a key only you hold.

In October 2026 Garmin opened a Personal tier of the Connect API: one key, one person, your own data, no application to file. This is a TypeScript MCP server over that API, so Claude Desktop, Claude Code, Cursor, ChatGPT or any other MCP client can ask questions of your data directly. It is read-only. Nothing is written to your Garmin account and nothing is sent anywhere except to the AI client you connect.

Not affiliated with Garmin. Garmin and Garmin Connect are trademarks of Garmin Ltd.

Quick start

  1. Create a key at connect.garmin.com/app/settings/personalApiToken. Pick 1 year.

  2. Save it:

    mkdir -p ~/.config/garmin && chmod 700 ~/.config/garmin
    printf '%s' 'YOUR_KEY' > ~/.config/garmin/connect-personal-api-key
    chmod 600 ~/.config/garmin/connect-personal-api-key
    
  3. Connect a client:

    # Claude Code
    claude mcp add garmin -- npx -y garmin-personal-mcp
    
    // Claude Desktop, Cursor, Windsurf, Zed: claude_desktop_config.json or the equivalent
    { "mcpServers": { "garmin": { "command": "npx", "args": ["-y", "garmin-personal-mcp"] } } }
    

    ChatGPT and the Claude mobile app can only reach servers over HTTPS. See Running it on a server.

    From a clone (no npm needed):

    git clone https://github.com/Shape-Calendar/garmin-personal-mcp && cd garmin-personal-mcp
    pnpm install && pnpm build
    claude mcp add garmin -- node "$PWD/dist/index.js"
    

    Use the same node .../dist/index.js as the command in any other client’s config.

Needs Node 20 or newer. The key can also come from GARMIN_PERSONAL_API_KEY or --api-key-file . The file path is the one Garmin’s own Python client reads, so the two share a key.

What you can ask

  • “How has my weekly running volume changed over the last three years?”
  • “Compare my resting heart rate and sleep this month with the same month last year.”
  • “Pull the FIT file for yesterday’s ride and show me power and heart rate per lap.”
在 GitHub 查看完整 README

安装

npx -y garmin-personal-mcp
新手?先看 mcpskill.org 教程 →

配置

// Claude Desktop, Cursor, Windsurf, Zed: claude_desktop_config.json or the equivalent { "mcpServers": { "garmin": { "command": "npx", "args": ["-y", "garmin-personal-mcp"] } } }