garmin-claude-mcp
garmin-claude-mcp
Garmin 트레이닝 data to Claude, and let Claude push structure대로 to your watch free to run. No subscription.
Claude가 최근 활동과 웰니스 data를 읽고, workout를 설게하고, intervals.icu calendar to 기록합니다. Intervals.icu가 Garmin Connect to 동기 and 시계 to 닿습니다.
왜 이런 방식을 사용
Garmin의 개발자 API는 개인에 공개되어 있지 않습니다. En enterprise, and program is open to new users이를 신청을 받지 않습니다. Garmin password로 로그인하는 비공식 라이브러리도 있지만, Garmin에 인증 flow를 바면 사용할 수 없습니다.
Intervals.icu는 Garmin과 공식 파트너십을 맻고 있으며, 이는 프로그르문이 종료되기 전입니다. It indeeds supports bi-directional sync, including planned workouts. It also has a documented API with a personal key. Also also documented an API with a personal key, and thus Claude가 intervals.icu to communicates, intervals.icu to Garmin to communicates. Garmin 비밀번호는 Garmin the outside never.
Related MCP server: garmin-mcp-bridge
Need
Sync with Garmin Connect to devices
Free intervals.icu account with Garmin connected under Setting > Integrations, and "Upload planned workouts" enabled
Behind "Settings > Developer Settings" - Your API key and athlete id
Free Cloudflare Account
"Upload planned workouts"이 져 있으면, below가 works perfectly, but nothing is 함께 to watch 전달 없. Check it first.
Setup
Option 1: Deploy button
Click the button above. Cloudflare가 이 리포지토리를 is your GitHub with fork, and KV namespace with Duraable Object to board, and have you ask your three secrets.
Fill in
INTERVALS_API_KEY,INTERVALS_ATHLETE_ID,MCP_PASSWORD. Generate the password withopenssl rand -hex 32.Deploy. You get a URL like
https://garmin-claude-mcp.<subdomain>.workers.dev.
Option 2: Manual
git clone https://github.com/kbaudour/garmin-claude-mcp
cd garmin-claude-mcp
npm install
npx wrangler kv namespace create OAUTH_KV
# paste the printed id into wrangler.jsonc
npx wrangler secret put INTERVALS_API_KEY
npx wrangler secret put INTERVALS_ATHLETE_ID
npx wrangler secret put MCP_PASSWORD
npm run deployClaude에 연결
In claude.ai, go to Settings > Connecters > Add custom connector and enter worker URL with /mcp end:
https://garmin-claude-mcp.<subdomain>.workers.dev/mcpThat path is important. The OAuth discovery is on the domain root, so even if you log in with a different URL, the login succeeds, but then the connection fails, and "Couldn't connect to the server." If you get this, delete the connector, rather than changing the URL in place, add the /mcp as the new route, so that old registration disappears.
You will see passphrase page. Enter your MCP_PASSWORD. If you connect on the web, it works on mobile as well.
Tools
Tool | What it does |
| Recent training history |
| Sleep, HRV, resting HR, recovery signals |
| What is already in your calendar |
| Write planned workouts and syncing to Garmin |
| Edit original activity update |
| Delete planned workout |
First prompt to try
Pull my wellness data for the last 7 days and my recent activities for the
last 14 days.
Based on what you see there, recovery, training load, how recent runs have
gone, design one run for tomorrow. Walk me through your reasoning before you
create it.
Then create it, and list my upcoming events so I can confirm it landed.Then open Garmin Connect, and check out tomorrow.
Known Issues and Limits
Claude's free plan has only one custom connector. This server uses that slot.
The password has no rate limiting or CSRF tokens. There is a custom server with a random 64-character password. This is not a production authentication.
updateWorkout와deleteEventare not well tested. The read andcreateWorkoutare confirmed trusted publicly, including the watch.Long period token refresh is not tested. It it stale, and when you reconnect, it takes a few seconds.
Anyone with the worker URL is a password page. You can't get further without the password, but the URL is not confidential.
Cost
$0/month. The Cloude Workers free tier includes 100 came relay to day. Intervals.icu free tier includes Garmin syn cycling. Since Drable Objects have been on the free tier since April 2025, older guides that do not do so are outdated.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceConnects Claude to Garmin Connect data for personalized running coaching, including morning readiness checks, post-run analysis, weekly reviews, and goal tracking.
- AlicenseNot gradedqualityBmaintenanceBrings Garmin training data into Claude via Intervals.icu, enabling querying of activities, wellness, and planned workouts, as well as creating structured workouts that sync back to the Garmin watch.1MIT
- AlicenseAqualityCmaintenanceEnables users to analyze their own Garmin Connect data—activities, sleep, HRV, Body Battery, training readiness—directly inside Claude Desktop.132MIT
- AlicenseNot gradedqualityAmaintenanceEnables Claude AI to access and manage intervals.icu training data, including workouts, wellness, and fitness trends, through natural language conversation.MIT
Related MCP Connectors
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
Garmin data in Claude: 135 tools — activities, sleep, HRV, training, workouts. Free, open source.
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kbaudour/garmin-claude-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server