Skip to main content
Glama
matin

garth-mcp-server

by matin

garth-mcp-server

PyPI version

Garmin Connect MCP server based on garth.

Usage

image

Related MCP server: garmin-connect-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

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
3moRelease cycle
12Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/matin/garth-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server