About
Garmin Connect MCP server based on Garth
README
Garmin Connect MCP server based on garth.
Usage
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 informationuser_settings- Get user settings and preferencesnightly_sleep- Get detailed sleep data with optional movement datadaily_sleep- Get daily sleep summary datadaily_stress/weekly_stress- Get stress datadaily_intensity_minutes/weekly_intensity_minutes- Get intensity minutesdaily_body_battery- Get body battery datadaily_hydration- Get hydration datadaily_steps/weekly_steps- Get steps datadaily_hrv/hrv_data- Get heart rate variability data
Activities (using Garmin Connect API)
get_activities- Get list of activities with optional filtersget_activities_by_date- Get activities for a specific dateget_activity_details- Get detailed activity informationget_activity_splits- Get activity lap/split dataget_activity_weather- Get weather data for activities
Additional Health Data (using Garmin Connect API)
get_body_composition- Get body composition dataget_respiration_data- Get respiration dataget_spo2_data- Get SpO2 (blood oxygen) dataget_blood_pressure- Get blood pressure readings
Device & Gear (using Garmin Connect API)
get_devices- Get connected devicesget_device_settings- Get device settingsget_gear- Get gear informationget_gear_stats- Get gear usage statistics
Utility Tools
monthly_activity_summary- Get monthly activity overviewsnapshot- Get snapshot data for date rangesget_connectapi_endpoint- Direct access to any Garmin Connect API endpoint
Installing Garth
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/matin/garth-mcp-serverFAQ
Is Garth MCP free?
Yes, Garth MCP is free — one-click install via Unyly at no cost.
Does Garth need an API key?
No, Garth runs without API keys or environment variables.
Is Garth hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Garth in Claude Desktop, Claude Code or Cursor?
Open Garth on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Garth with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
