loading…
Search for a command to run...
loading…
An MCP server featuring an interactive React UI for Garmin Connect integration. It allows users to access and interact with Garmin fitness and health data throu
An MCP server featuring an interactive React UI for Garmin Connect integration. It allows users to access and interact with Garmin fitness and health data through the Model Context Protocol.
Connect your Garmin watch to Claude Desktop. Explore interactive charts.
.mcpb file from ReleasesAsk Claude about your health, training, and fitness — it reads your Garmin data and shows interactive charts right in the conversation.
What you can visualize
Plot your activities
Visualize training readiness
| Category | Data |
|---|---|
| Daily health | Steps, heart rate, sleep stages, stress, body battery, HRV |
| Activities | Activity list, activity details, per-km/mile splits, HR time-in-zones |
| Training | Training readiness, training status & load, VO2 Max, race predictions |
| Profile | Age, weight, height, HR zones, lactate threshold |
| Workouts | List, create, update, delete, and schedule workouts |
No data is stored or collected by this app. Your data flows directly between your machine and the Garmin Connect API — there is no intermediate server.
visibility: ["app"]), meaning Claude (the LLM) cannot call them and never sees your email, password, or MFA code.~/.garminconnect/ with restrictive file permissions (0600). They are never sent anywhere other than the Garmin Connect API.git clone https://github.com/chenhunghan/garmin-mcp-app.git
cd garmin-mcp-app
npm install
npm install automatically sets up git hooks via prek:
core.hooksPathIf npm install warns about core.hooksPath, prek cannot install git hooks. Fix it by unsetting the local config:
git config --unset-all --local core.hooksPath
npm run prepare
npm run dev # watch-build server + UI
npm run dev:ui # standalone UI dev at localhost:5173
npm run test:lib # run garmin-connect tests
npm run pack # build + package .mcpb bundle
npm run dev:ui opens http://localhost:5173 with the React UI wired to the real MCP server in-process. You can test login, MFA, and logout against the actual Garmin API without deploying to Claude Desktop.
Run npm run build (one-off) or npm run dev (watch mode for live rebuilds), then add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"garmin-mcp": {
"command": "node",
"args": ["/absolute/path/to/garmin-mcp-app/dist/index.js"]
}
}
}
Restart Claude Desktop. Ask Claude to check your Garmin auth — it will render the app UI in an iframe and run the real login/MFA flow.
src/server.ts) — Node.js server over stdio, registers tools + UI resourcesrc/app.tsx) — Rendered in host's sandboxed iframe, communicates via postMessagepackages/garmin-connect/) — TypeScript client library for Garmin Connect OAuth + APICommits must follow the Conventional Commits format:
type(optional-scope): description
Allowed types: feat, fix, chore, docs, ci, refactor, test
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"garmin-mcp-app": {
"command": "npx",
"args": []
}
}
}Extract design specs and assets
An Open-Sourced UI to install and manage MCP servers for Windows, Linux and macOS.
Build, validate, and deploy multi-agent AI solutions on the ADAS platform. Design skills with tools, manage solution lifecycle, and connect from any AI environm
MCP Bundles: Create custom bundles of tools and connect providers with OAuth or API keys. Use one MCP server across thousands of integrations, with programmatic