Home / MCP / Garmin MCP Server

Garmin MCP Server

Exposes Garmin Connect data to MCP clients, including activities, health metrics, and body composition.

typescript
Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
    "mcpServers": {
        "garmin": {
            "command": "uvx",
            "args": [
                "--python",
                "3.12",
                "--from",
                "git+https://github.com/Taxuspt/garmin_mcp",
                "garmin-mcp"
            ],
            "env": {
                "GARMIN_EMAIL": "YOUR_GARMIN_EMAIL",
                "GARMIN_PASSWORD": "YOUR_GARMIN_PASSWORD",
                "GARMIN_EMAIL_FILE": "~/.garmin_email",
                "GARMIN_PASSWORD_FILE": "~/.garmin_password"
            }
        }
    }
}

The Garmin MCP Server connects Garmin Connect to MCP-compatible clients, enabling you to access your activities, health metrics, and body composition data through Claude and other MCP-enabled tools. It runs locally or in your environment and exposes a simple way to query your Garmin data via MCP endpoints.

How to use

Use the Garmin MCP Server to query your Garmin Connect data from an MCP client. After you start the server, you can ask Claude or other MCP clients to list your recent activities, view details of a specific activity, and check health metrics like steps, heart rate, sleep, and body composition.

How to install

Prerequisites: you need Node-compatible tooling and Python support via the MCP runtime. You also need access to your Garmin Connect credentials.

Step 1: Install the required packages in your environment.

uv sync

Additional configuration and usage notes

Configure credentials using environment variables. The server reads GARMIN_EMAIL and GARMIN_PASSWORD from your environment. You can also supply GARMIN_EMAIL_FILE and GARMIN_PASSWORD_FILE if you prefer file-based secrets.

In Claude Desktop, set up the MCP server using the following configuration snippet. This runs the server via uvx with Python 3.12 and pulls the garmin-mcp package directly from its source.

{
  "mcpServers": {
    "garmin": {
      "command": "uvx",
      "args": [
        "--python",
        "3.12",
        "--from",
        "git+https://github.com/Taxuspt/garmin_mcp",
        "garmin-mcp"
      ],
      "env": {
        "GARMIN_EMAIL": "YOUR_GARMIN_EMAIL",
        "GARMIN_PASSWORD": "YOUR_GARMIN_PASSWORD"
      }
    }
  }
}

Troubleshooting and security

If you encounter login issues, verify your Garmin Connect credentials, check for additional verification requirements, and ensure the garminconnect package is up to date.

For testing, you can verify the MCP server setup using the MCP Inspector to run the server locally and test queries.

If MFA or one-time codes are enabled, you may need to login at the command line to establish a token before continuing.

Available tools

list_activities

List recent activities available in Garmin Connect for your account.

activity_details

Get detailed information for a specific activity, including distance, duration, and splits.

health_metrics

Access health metrics such as steps, heart rate, and sleep data.

body_composition

View body composition data available from Garmin Connect.