Garmin Connect MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GARMINTOKENS | No | Optional path to token cache directory (defaults to ~/.garminconnect) | |
| GARMIN_EMAIL | Yes | Your Garmin Connect login email | |
| GARMIN_PASSWORD | Yes | Your Garmin Connect login password |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_steps_dataC | Get detailed steps data for a specific date. |
| get_heart_ratesB | Get heart rate readings for a specific date. |
| get_daily_stepsC | Get summarized daily steps over a specified period. |
| get_body_batteryB | Get Body Battery data for a specified period. |
| get_hydration_dataA | Get hydration intake data for a specific date. |
| get_last_activityB | Get information about the most recent logged activity. |
| get_sleep_dataB | Get detailed sleep analysis and scoring for a specific date. |
| get_stress_dataC | Get stress level details for a specific date. |
| get_all_day_stressB | Get comprehensive all-day stress readings for a specific date. |
| get_user_summaryB | Get the user's daily activity summary (steps, calories, heart rate ranges, etc.). |
| get_respiration_dataA | Get daily respiration rate readings (breaths per minute). |
| get_spo2_dataC | Get daily SpO2 (blood oxygen saturation) measurements. |
| get_body_compositionB | Get body composition data for a date range. |
| get_activitiesB | Get a list of logged fitness activities with pagination. |
| get_devicesA | Get a list of all registered Garmin devices connected to the account. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Most tools target distinct health metrics, but get_daily_steps vs get_steps_data and get_stress_data vs get_all_day_stress could confuse an agent due to overlapping purposes.
All tools use snake_case with a consistent 'get_<resource>' pattern. Minor deviations like 'get_all_day_stress' vs 'get_stress_data' are inconsequential.
15 tools is slightly above the typical sweet spot but still reasonable for covering diverse health metrics without feeling overly burdensome.
The tool set covers many health metrics but lacks write operations (e.g., logging activities) and misses common Garmin data like workouts or courses, leaving notable gaps.