Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Unofficial Garmin Connect access: sleep, HRV, training, activities, workouts and weight.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:
https://garmin.ficdev.xyz/mcpFühre das in deinem Terminal aus
claude mcp add --transport http garminconnect https://garmin.ficdev.xyz/mcpIn .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"garminconnect": {
"url": "https://garmin.ficdev.xyz/mcp"
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"garminconnect": {
"type": "http",
"url": "https://garmin.ficdev.xyz/mcp"
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
ChatGPT verbindet sich nur mit Servern im Internet:
https://garmin.ficdev.xyz/mcpMenünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Die Tool-Liste dieses Servers haben wir noch nicht gelesen; wir prüfen die Endpunkte reihum.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto DynamicsNinja bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Noch nicht geprüft; wir prüfen die Endpunkte reihum
Noch nicht geprüft; wir prüfen die Endpunkte reihum
Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.11.0) kam vor 6 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, zanadir
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Find what a repository's CI is missing, and which security checks cannot fail the build.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Talk to Claude to create Garmin workouts, and read or manage the rest of your Garmin Connect data, through an MCP server built on garminconnect-js.
"Make me a 6×400 m session at 5k pace with 2-minute jog recoveries, put it on Thursday, and send
it to my watch."
Claude previews the workout, waits for your OK, saves it to your Garmin workout library, schedules it, and pushes it to your device.
Unofficial: not made by, or affiliated with, Garmin.
A hosted copy runs at https://garmin.ficdev.xyz/mcp. You sign in to Garmin once in a browser window and get the same tools, with nothing to install.
claude mcp add --transport http garmin https://garmin.ficdev.xyz/mcpHow it differs from the local server:
sign_in_to_garmin tool. You sign in when you add the connector.filename and content, plus encoding: "base64" for .fit files. The cap is 10 MB.To disconnect, remove the connector. You can also tick "Disconnect my other Garmin connections" on your next sign-in. Privacy details are in PRIVACY.md.
node --version to check).garminconnect-mcp- .mcpb from the latest release.Optional settings (tool groups, download folder) are under Settings → Extensions → Garmin Connect.
npm install -g @dynamicsninja/garminconnect-mcp
Install it once rather than running it through npx: Claude Desktop starts several copies of a server at the same moment, and parallel npx installs into one cache folder can break each other (ERR_MODULE_NOT_FOUND … ajv/dist/2020.js).
In a terminal (your password never passes through Claude):
garminconnect-mcp login
It asks for your Garmin email (or, on older accounts, your username), password and, if you use it, your MFA code. The session is saved to ~/.garminconnect-mcp/tokens and renews itself as long as it is used at least once every 30 days.
Settings → Developer → Edit Config, and add a garmin entry to claude_desktop_config.json. Point node at the installed server. To find the path, run npm root -g and append /@dynamicsninja/garminconnect-mcp/dist/cli.js.
Windows (use forward slashes):
{
"mcpServers": { "garmin": { "command": "node", "args": ["C:/Users/ /AppData/Roaming/npm/node_modules/@dynamicsninja/garminconnect-mcp/dist/cli.js"] } } }
macOS / Linux:
{
"mcpServers": { "garmin": { "command": "node", "args": ["/usr/local/lib/node_modules/@dynamicsninja/garminconnect-mcp/dist/cli.js"] } } }
If node itself is not found (common with nvm), use its full path from which node as command.
Quit it completely: tray / menu-bar icon → Quit. Closing the window leaves it running, and it will not read the new config. Start it again, open a new chat, and the Garmin tools appear under the tools icon in the message box.
Just ask. Some things to try:
Workouts are always previewed first. Claude shows the workout in readable form (steps, targets, paces in /km and /mi) and saves nothing until you confirm. Exercise names are checked against Garmin's catalogue, and a mistake in a workout comes back to Claude with exactly where it is, so it can fix it.
Claude Desktop asks before each tool call. You can allow a tool once or always. Tools that delete or overwrite data (deleting activities, workouts, gear, weigh-ins, and so on) are marked destructive, and Claude is told to confirm with you before using them.
preview_workout, create_workout, update_workout, search_exercises, for running, cycling, swimming, strength, HIIT, yoga, pilates, mobility, cardio, rucking and multi-sport; plus listing, scheduling, sending to your watch and deleting.Not exposed: logout (it would delete your saved session), the raw-JSON workout uploads (the checked create_workout replaces them), and the raw GraphQL passthrough unless you opt in.
| Variable | Default | Meaning |
|---|---|---|
GARMIN_MCP_TOKEN_DIR | ~/.garminconnect-mcp/tokens | Where the session is saved |
GARMIN_MCP_DOWNLOAD_DIR | ~/Downloads/garmin | Where downloaded files (FIT, GPX, …) go |
GARMIN_MCP_GROUPS | all | Comma-separated tool groups: wellness, activities, metrics, workouts, gear, courses, calendar-events, devices, badges-challenges, body-composition-weight, womens-health, golf, profile-and-misc. Matched case-insensitively; an unknown name is ignored (and if none you list are valid, everything loads). The workout-builder tools are always on. Fewer groups means less of Claude's context used. |
GARMIN_MCP_ENABLE_GRAPHQL | off | Set to 1 to expose query_garmin_graphql |
Set them under "env" in the config entry, for example:
"garmin": {
"command": "node", "args": ["…/dist/cli.js"], "env": { "GARMIN_MCP_GROUPS": "workouts,metrics,wellness,activities" } }
GARMIN_EMAIL (an email or, on older accounts, a username) and GARMIN_PASSWORD, when both are set, work like the extension's email and password settings: the server signs in by itself when there is no saved session (not with MFA).
If you change GARMIN_MCP_TOKEN_DIR, sign in with the same value (GARMIN_MCP_TOKEN_DIR=/path/to/dir garminconnect-mcp login), or the server won't find your session.
garmin shows the server's status and a link to its log.sign_in_to_garmin), or run garminconnect-mcp login again. The running server picks up the new session on the next request; no restart needed.npx: delete the _npx folder in your npm cache (npm config get cache shows where) and use the global install above.get_activity_details) is usually larger. Ask for a summary instead, or download the activity file (download_activity) and open it elsewhere.npm install -g @dynamicsninja/garminconnect-mcp@latest
then quit and restart Claude Desktop. Your saved session is kept.
Any client that can start a stdio server works. The command is garminconnect-mcp (or node …/dist/cli.js). For example, in Claude Code:
claude mcp add garmin -- garminconnect-mcp
YYYY-MM-DD).