Skip to main content
Glama
garth-mcp-server

garth-mcp-server

by matin

garth-mcp-server

PyPI version

Garmin Connect MCP server based on garth.

Usage

image

Related MCP server: Garmin MCP

Install

{
  "mcpServers": {
    "Garth - Garmin Connect": {
      "command": "uvx",
      "args": [
        "garth-mcp-server"
      ],
      "env": {
        "GARTH_TOKEN": "<output of `uvx garth login`>"
      }
    }
  }
}

Make sure the path for the uvx command is fully scoped as MCP doesn't use the same PATH your shell does. On macOS, it's typically /Users/{user}/.local/bin/uvx.

Tool Filtering

By default, all 30 tools are exposed. To reduce context size for LLM usage, you can filter tools using environment variables.

Enable specific tools only (whitelist)

{
  "mcpServers": {
    "Garth - Garmin Connect": {
      "command": "uvx",
      "args": ["garth-mcp-server"],
      "env": {
        "GARTH_TOKEN": "<token>",
        "GARTH_ENABLED_TOOLS": "get_activities,get_activity_details,daily_steps,nightly_sleep"
      }
    }
  }
}

Disable specific tools (blacklist)

"env": {
  "GARTH_TOKEN": "<token>",
  "GARTH_DISABLED_TOOLS": "get_gear,get_gear_stats,get_device_settings,get_connectapi_endpoint"
}

Tool names are case-insensitive and comma-separated. If GARTH_ENABLED_TOOLS is set, GARTH_DISABLED_TOOLS is ignored.

Tools

Health & Wellness (using Garth data classes)

  • user_profile - Get user profile information

  • user_settings - Get user settings and preferences

  • nightly_sleep - Get detailed sleep data with optional movement data

  • daily_sleep - Get daily sleep summary data

  • daily_stress / weekly_stress - Get stress data

  • daily_intensity_minutes / weekly_intensity_minutes - Get intensity minutes

  • daily_body_battery - Get body battery data

  • daily_hydration - Get hydration data

  • daily_steps / weekly_steps - Get steps data

  • daily_hrv / hrv_data - Get heart rate variability data

Activities (using Garmin Connect API)

  • get_activities - Get list of activities with optional filters

  • get_activities_by_date - Get activities for a specific date

  • get_activity_details - Get detailed activity information

  • get_activity_splits - Get activity lap/split data

  • get_activity_weather - Get weather data for activities

Additional Health Data (using Garmin Connect API)

  • get_body_composition - Get body composition data

  • get_respiration_data - Get respiration data

  • get_spo2_data - Get SpO2 (blood oxygen) data

  • get_blood_pressure - Get blood pressure readings

Device & Gear (using Garmin Connect API)

  • get_devices - Get connected devices

  • get_device_settings - Get device settings

  • get_gear - Get gear information

  • get_gear_stats - Get gear usage statistics

Utility Tools

  • monthly_activity_summary - Get monthly activity overview

  • snapshot - Get snapshot data for date ranges

  • get_connectapi_endpoint - Direct access to any Garmin Connect API endpoint

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      MCP server that exposes Garmin Connect health and activity data (steps, sleep, stress, activities, etc.) via tools for querying, analysis, and visualization.
      17
      Apache 2.0
    • A
      license
      A
      quality
      D
      maintenance
      MCP server that connects Garmin Connect to Claude Desktop, allowing users to query health and fitness data (sleep, workouts, heart rate, HRV, stress, Body Battery, etc.) in plain English and also log weight, hydration, and schedule workouts.
      25
      1
      MIT