garmin-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Check the Garmin connection and return the logged-in account profile (display name, full name). |
| get_daily_healthC | Daily wellness metrics for a date. Pick one or more via |
| get_trainingC | Training metrics for a date. Pick via |
| get_fitnessA | Fitness/performance metrics. Pick via |
| get_weightA | Body weight & body composition (weight, BMI, body-fat %) over a date range. Set include_raw for the individual weigh-in entries too. Default range: the last ~4 weeks. |
| get_steps_historyA | Step totals over a date range. granularity 'daily' (Garmin caps the span at 28 days) or 'weekly'. Default: daily, last ~4 weeks. |
| get_activityB | Data for a single activity by activityId. Pick via |
| list_activitiesA | List activities. Without dates: the most recent ones (use limit=1 for the last activity). With startDate/endDate and/or type: activities in that range, optionally filtered by type (e.g. running, cycling, swimming). |
| get_devicesA | Garmin devices paired to the account (model, firmware, last sync). |
| get_user_profileA | User profile & settings: units, preferences, activity level, etc. |
| get_goalsC | Goals filtered by status (active, future, or past). |
| get_workoutsC | Saved workouts on the account. |
| get_scheduled_workoutsC | Scheduled workouts / calendar for a month (defaults to the current month). |
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 13 tools
Most tools target distinct Garmin data domains with metric parameters that clarify scope. However, get_daily_health and get_steps_history overlap on step data, and get_training/get_fitness both cover performance metrics, so a few boundaries could still be confused.
The set is almost entirely consistent snake_case with a get_* verb-noun pattern for 11 of 13 tools. list_activities and whoami are minor deviations, but overall the naming is predictable and readable.
13 tools is well-scoped for a Garmin health/fitness server. Each tool maps to a clear category (health, training, fitness, weight, steps, activities, devices, profile, goals, workouts, scheduling) without excessive fragmentation.
The read-only surface covers the major Garmin data lifecycle: health, training, activities, workouts, goals, devices, profile, and scheduling. Minor gaps exist (no separate sleep endpoint, no write/delete operations), but these are likely API limitations and agents can work around them.