Garmin MCP Server

Garmin MCP Server

By Taxuspt GitHub

MCP server to access Garmin data

Overview

what is Garmin MCP Server?

Garmin MCP Server is a Model Context Protocol (MCP) server that connects to Garmin Connect, allowing users to access their fitness and health data through MCP-compatible clients like Claude.

how to use Garmin MCP Server?

To use the Garmin MCP Server, set up the server by installing required packages, creating a configuration file with your Garmin credentials, and running the server with either Claude Desktop or MCP Inspector.

key features of Garmin MCP Server?

  • List recent activities
  • Get detailed activity information
  • Access health metrics such as steps, heart rate, and sleep
  • View body composition data

use cases of Garmin MCP Server?

  1. Retrieve and display recent fitness activities.
  2. Monitor health metrics over time.
  3. Integrate fitness data with other applications using MCP.

FAQ from Garmin MCP Server?

  • Is my data secure with Garmin MCP Server?

Yes, but ensure your .env file with credentials is kept secure and not shared.

  • What if I encounter login issues?

Verify your credentials in the .env file and check for any additional verification required by Garmin Connect.

  • Can I use this server with other applications?

Yes, as long as they are MCP-compatible.

Content

Garmin MCP Server

This Model Context Protocol (MCP) server connects to Garmin Connect and exposes your fitness and health data to Claude and other MCP-compatible clients.

Features

  • List recent activities
  • Get detailed activity information
  • Access health metrics (steps, heart rate, sleep)
  • View body composition data

Setup

  1. Install the required packages on a new environment:
virtualenv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
  1. Create a .env file in the project root with your Garmin credentials:
GARMIN_EMAIL=your.email@example.com
GARMIN_PASSWORD=your-password

Running the Server

With Claude Desktop

  1. Create a configuration in Claude Desktop:

Edit your Claude Desktop configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add this server configuration:

{
  "mcpServers": {
    "garmin": {
      "command": "python", // if you created a new environment this should be "<root_folder>/.venv/bin/python"
      "args": ["<path to>/garmin_mcp/garmin_mcp_server.py"]
    }
  }
}

Replace the path with the absolute path to your server file.

  1. Restart Claude Desktop

With MCP Inspector

For testing, you can use the MCP Inspector:

npx @modelcontextprotocol/inspector python /Users/adomingues/Documents/claude_filesystem/garmin_mcp/garmin_mcp_server.py

Usage Examples

Once connected in Claude, you can ask questions like:

  • "Show me my recent activities"
  • "What was my sleep like last night?"
  • "How many steps did I take yesterday?"
  • "Show me the details of my latest run"

Security Note

This server requires your Garmin Connect credentials in the .env file. Keep this file secure and never commit it to a repository.

Troubleshooting

If you encounter login issues:

  1. Verify your credentials in the .env file are correct
  2. Check if Garmin Connect requires additional verification
  3. Ensure the garminconnect package is up to date

For other issues, check the Claude Desktop logs at:

  • macOS: ~/Library/Logs/Claude/mcp-server-garmin.log
  • Windows: %APPDATA%\Claude\logs\mcp-server-garmin.log
No tools information available.
No content found.