garth-mcp-server
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
Metadata
Release files for garth-mcp-server 0.0.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| garth_mcp_server-0.0.10.tar.gz | 35.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| garth_mcp_server-0.0.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.6 kB
Release files / garth_mcp_server-0.0.10.tar.gz
| Download URL | garth_mcp_server-0.0.10.tar.gz |
|---|---|
| Size | 35.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8fea0e8af1a3962c39abacaec4d447ed4e914ed4ab7fe6cd255e02eb90c524d4
|
|
BLAKE2b-256 checksum How to use checksums |
e354b1a69f99383cad4620ed7be7c622faed43bdb783306daa1d6cadfaf119cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.
Transparency logRelease files / garth_mcp_server-0.0.10-py3-none-any.whl
| Download URL | garth_mcp_server-0.0.10-py3-none-any.whl |
|---|---|
| Size | 6.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7de8f0904b2c02c12666dd27a1c6e5f0902928196a9d2d785f8156df31884021
|
|
BLAKE2b-256 checksum How to use checksums |
6aca2b9967f74552d85fe8ca3b665b71474c60340a31904735591b1f21ae93b6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.
Transparency log