Get the FREE Ultimate OpenClaw Setup Guide →

go-garmin

Go client library and CLI for the Garmin Connect API with MCP server for LLM integration

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio llehouerou-go-garmin garmin mcp

How to use

The go-garmin MCP server exposes Garmin Connect data to an LLM via the go-garmin CLI. After you install and login to the CLI, you enable the MCP server by configuring Claude, Claude Desktop, or Cursor to point to the garmin binary with the mcp argument. Once configured, Claude can issue natural language requests that map to garmin's 52 tools (sleep, wellness, activities, weight, HRV, devices, metrics, fitness stats, biometric data, workouts, exercises, calendar, profile, and utility). Each command is exposed as a structured tool in the MCP layer so the LLM can fetch data like your latest sleep, VO2max, training readiness, or recent activities in a reliable, parseable JSON format. The integration leverages your existing Garmin session, so you only need to login once to establish a session that the MCP server reuses.

To use it, configure your MCP client (Claude, Claude Desktop, or Cursor) to run garmin mcp. Then ask for data like “Show my sleep last night” or “What is my VO2 max today?” The system will route the request to the appropriate garmin command, execute it, and return a structured JSON response that you can reason about programmatically.

How to install

Prerequisites:

  • Go installed (Go 1.25 or later) and GOPATH/bin in your PATH
  • A Garmin Connect account (for CLI data access) and a valid login

Installation steps:

  1. Install the CLI binary: go install github.com/llehouerou/go-garmin/cmd/garmin@latest
  2. Verify the CLI was installed: garmin --version
  3. Login to Garmin Connect (create a session that MCP can reuse): garmin login -email=your@email.com -password=yourpassword
  4. (Optional) Build from source for development: git clone https://github.com/llehouerou/go-garmin.git cd go-garmin go build -o garmin ./cmd/garmin ./garmin --help

Note: The MCP server for Claude is activated by running garmin with the mcp subcommand (garmin mcp). Ensure garmin is in your PATH and that you are logged in before enabling MCP access.

Additional notes

Tips and caveats:

  • The MCP server reuses your CLI session; you only need to login once to establish a persistent session.
  • If the MCP server isn’t responding, verify garmin is in your PATH and that you are logged in (garmin sleep should fetch data).
  • If needed, you can provide the full path to the garmin binary in your MCP configuration: { "mcpServers": { "garmin": { "command": "/full/path/to/garmin", "args": ["mcp"] } } }
  • Available tools cover a wide range of Garmin data (sleep, wellness, activities, metrics, workouts, etc.). Use natural language queries that map to these tool names to get structured JSON outputs.
  • Ensure you keep your CLI up to date to access the latest features and tools.

Related MCP Servers

Sponsor this space

Reach thousands of developers