PluginBench
MCP Server
Active
MIT

io.github.davidmosiah/garminmcp MCP Server

io.github.davidmosiah/garminmcp

What is the io.github.davidmosiah/garminmcp MCP server?

Privacy-first unofficial Garmin Connect MCP for AI health, sleep, activity & recovery agents.

How to install io.github.davidmosiah/garminmcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • GARMIN_TOKEN_PATH

    Optional local path for Garmin Connect tokens. Defaults to ~/.garmin-mcp/garmin_tokens.json. Create it with garmin-mcp-server auth (self-contained Node login, no Python).

  • GARMIN_PRIVACY_MODE

    Optional payload mode: summary, structured, or raw. Defaults to structured. raw means full supported Garmin Connect payloads, not unrestricted raw sensor telemetry.

  • GARMIN_CACHE

    Optional SQLite cache toggle. Set to true or sqlite to enable.

  • GARMIN_CACHE_PATH

    Optional local SQLite cache path. Defaults to ~/.garmin-mcp/cache.sqlite.

  • GARMIN_DOMAIN

    Optional Garmin domain override. Use garmin.cn only for China accounts; default is garmin.com.

  • GARMIN_NO_CACHE

    Set to true to bypass the in-memory HTTP response cache (60s TTL for GET only). POST/PUT/DELETE and 4xx/5xx responses are never cached regardless.

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "garminmcp": {
      "command": "npx",
      "args": [
        "-y",
        "garmin-mcp-unofficial"
      ],
      "env": {
        "GARMIN_TOKEN_PATH": "<YOUR_GARMIN_TOKEN_PATH>",
        "GARMIN_PRIVACY_MODE": "<YOUR_GARMIN_PRIVACY_MODE>",
        "GARMIN_CACHE": "<YOUR_GARMIN_CACHE>",
        "GARMIN_CACHE_PATH": "<YOUR_GARMIN_CACHE_PATH>",
        "GARMIN_DOMAIN": "<YOUR_GARMIN_DOMAIN>",
        "GARMIN_NO_CACHE": "<YOUR_GARMIN_NO_CACHE>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "garminmcp": {
      "command": "npx",
      "args": [
        "-y",
        "garmin-mcp-unofficial"
      ],
      "env": {
        "GARMIN_TOKEN_PATH": "<YOUR_GARMIN_TOKEN_PATH>",
        "GARMIN_PRIVACY_MODE": "<YOUR_GARMIN_PRIVACY_MODE>",
        "GARMIN_CACHE": "<YOUR_GARMIN_CACHE>",
        "GARMIN_CACHE_PATH": "<YOUR_GARMIN_CACHE_PATH>",
        "GARMIN_DOMAIN": "<YOUR_GARMIN_DOMAIN>",
        "GARMIN_NO_CACHE": "<YOUR_GARMIN_NO_CACHE>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "garminmcp": {
      "command": "npx",
      "args": [
        "-y",
        "garmin-mcp-unofficial"
      ],
      "env": {
        "GARMIN_TOKEN_PATH": "<YOUR_GARMIN_TOKEN_PATH>",
        "GARMIN_PRIVACY_MODE": "<YOUR_GARMIN_PRIVACY_MODE>",
        "GARMIN_CACHE": "<YOUR_GARMIN_CACHE>",
        "GARMIN_CACHE_PATH": "<YOUR_GARMIN_CACHE_PATH>",
        "GARMIN_DOMAIN": "<YOUR_GARMIN_DOMAIN>",
        "GARMIN_NO_CACHE": "<YOUR_GARMIN_NO_CACHE>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "garminmcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "garmin-mcp-unofficial"
      ],
      "env": {
        "GARMIN_TOKEN_PATH": "<YOUR_GARMIN_TOKEN_PATH>",
        "GARMIN_PRIVACY_MODE": "<YOUR_GARMIN_PRIVACY_MODE>",
        "GARMIN_CACHE": "<YOUR_GARMIN_CACHE>",
        "GARMIN_CACHE_PATH": "<YOUR_GARMIN_CACHE_PATH>",
        "GARMIN_DOMAIN": "<YOUR_GARMIN_DOMAIN>",
        "GARMIN_NO_CACHE": "<YOUR_GARMIN_NO_CACHE>"
      }
    }
  }
}
Claude Code
claude mcp add garminmcp --env GARMIN_TOKEN_PATH=<YOUR_GARMIN_TOKEN_PATH> --env GARMIN_PRIVACY_MODE=<YOUR_GARMIN_PRIVACY_MODE> --env GARMIN_CACHE=<YOUR_GARMIN_CACHE> --env GARMIN_CACHE_PATH=<YOUR_GARMIN_CACHE_PATH> --env GARMIN_DOMAIN=<YOUR_GARMIN_DOMAIN> --env GARMIN_NO_CACHE=<YOUR_GARMIN_NO_CACHE> -- npx -y garmin-mcp-unofficial

Related MCP servers

Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents

18
TypeScript
MIT
View repository →

Local-first nutrition MCP for AI agents: food, barcode, photo, intake, hydration, goals.

7
TypeScript
MIT
View repository →

Privacy-first, unofficial WHOOP MCP server for AI health, sleep, recovery, and performance agents.

5
TypeScript
MIT
View repository →

Unofficial Eight Sleep MCP server: read sleep trends, temperature, alarms; gated pod control.

3
TypeScript
MIT
View repository →

Unofficial local-first MCP server for Samsung Health personal-data CSV/ZIP exports.

3
TypeScript
MIT
View repository →

Unofficial local-first MCP server for Apple Health export data.

1
TypeScript
MIT
View repository →
io.github.davidmosiah/garminmcp MCP Server | PluginBench