Garmin Connect MCP server based on garth.
{
"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.
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
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
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
get_devices- Get connected devicesget_device_settings- Get device settingsget_gear- Get gear informationget_gear_stats- Get gear usage statistics
monthly_activity_summary- Get monthly activity overviewsnapshot- Get snapshot data for date rangesget_connectapi_endpoint- Direct access to any Garmin Connect API endpoint
