dsh-plugin-garmin-connect MCP
A Garmin Connect MCP server giving agents sleep, heart rate, HRV, activities and workouts, creating workouts after confirmation.
- 55 ★ on the repository
- Last commit
Broad access
Why this level
- The server reads personal health and training data and can change the calendar and workouts in a Garmin account.
- Session credentials sit locally, and the data goes to the chosen model.
Install
- Works in
Manual install
npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-garmin-connectThe README recommended path for DeepSeek Harness. For other MCP clients use the `dsh-plugin-garmin-connect` package and the `garmin-connect-mcp` command.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The server reads personal health and training data and can change the calendar and workouts in a Garmin account.
- Session credentials sit locally, and the data goes to the chosen model.
This is third-party code. Review the repository files before installing.
What it does
The plugin connects DeepSeek Harness or any MCP agent to Garmin Connect and exposes watch data as tools. Garmin China and International accounts work. The agent reads activities with splits, sleep, steps, heart rate, HRV, stress, Body Battery, training readiness, load, VO2 max, race predictions, blood oxygen and respiration. Version 0.1.21 registers 30 tools in Harness and 31 in the shared MCP workspace. Creating, scheduling and deleting a workout and cancelling a calendar entry change Garmin data and run only after explicit confirmation. Sign-in goes through the official Personal API or the Garmin browser with MFA, and passwords and codes are entered only on the Garmin page.
Who it is for. Runners and triathletes with Garmin watches who analyze training and recovery through an AI agent.
Good fit when
- Sleep, HRV and Body Battery should show whether the body is ready for a hard session.
- Recent runs are analyzed by splits and heart rate.
- A structured workout is composed and scheduled after reviewing a preview.
- The original FIT file of an activity is needed for your own analysis.
Not a fit when
- Health data must not go to the chosen model.
- The device is not Garmin or data lives in another ecosystem.
- Medical interpretation is required: coaching advice is informational.
Example request
Show how I slept last night, my HRV and Body Battery for the week and say whether to do an interval session today.MCP
- Transport
- stdio
- Authentication
- API key
Environment variables
GARMIN_PROVIDERrequired- Sign-in method: `personal` for the Personal API key.
GARMIN_PERSONAL_API_KEY_FILErequired, secret- Path to the private file holding the Personal API key.
GARMIN_REGION- Account region: `global` for International.
Limitations
Health and training data goes into the chosen model, so connect only providers you trust. Garmin sessions are stored locally in an owner-only file, and the Personal API key sits in a private file and is not shown to the agent. Availability of single metrics depends on account, date and device: empty fields stay empty and are not turned into zero. Browser sign-in may be blocked by the browser policy itself. The 13 recovery tools need a maintained SDK, which is bundled. The old `login --browser` command remains only as a diagnostic.
How to disable. Remove the plugin in Harness settings or the `garmin-personal` entry from the MCP configuration. Delete the local session file and key by hand and revoke the key at Garmin.
FAQ
How do I install the plugin for DeepSeek Harness?
Run `npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-garmin-connect`. The install needs `pnpm` on PATH, installable with `npm install -g pnpm`.
How do I connect it as a plain MCP server?
Run the package through `npx` with the `garmin-connect-mcp` command and variables such as `GARMIN_PROVIDER` and `GARMIN_PERSONAL_API_KEY_FILE` in the MCP configuration.
Do I give my password to the agent?
No. With browser sign-in the password and codes are entered only on the official Garmin page, and the Personal API key sits in a private file.
Which tools change data?
Creating, scheduling and deleting a workout and cancelling a calendar entry. They run after explicit confirmation with `confirmed: true` and an identifier. Other tools only read, apart from downloading a FIT file to disk.
Which accounts are supported?
Garmin China and International. The region is set by `GARMIN_REGION`, and changing region needs a new key.
Discussion
No questions or reviews yet.
Related
MCP serversGarmin MCP
garmin-mcp
Garmin Connect data for an agent: activities, health, editing names and notes. Works through the unofficial python-garminconnect library
Garmin Personal MCP answers questions about sleep, HRV and training from your Garmin Connect account, read-only
Strava MCP
Strava MCP Server
Strava MCP server: an agent reads your workouts, heart rate, power, segments and routes and exports routes to GPX and TCX
coros-mcp (community)
coros-mcp
Unofficial Coros MCP server: sleep, HRV, load and workouts from Training Hub, plus scheduling sessions in the calendar.
An agent reads sleep, activity and heart data from Fitbit and Pixel Watch over OAuth, with tokens kept on your computer.
MCP server of an open endurance training platform: calendar, sessions, load and records, queried through an assistant
README in short
The plugin is built for DeepSeek Harness and works with other agents through MCP or a SKILL.md workflow. Version 0.1.6 added MFA sign-in, and later versions brought recovery tools, blood oxygen and respiration. The repository holds verification reports on real accounts.