Garmin Connect MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GARMIN_PASSWORD | Yes | Garmin Connect password used for authentication. | |
| GARMIN_TIMEZONE | No | Timezone for date calculations (IANA ID like 'Asia/Seoul' or 'America/Los_Angeles', or offset like 'UTC+09:00'). Defaults to 'UTC' if not set. | UTC |
| GARMIN_USERNAME | Yes | Garmin Connect email address used for authentication. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_personal_recordsB | Get personal best times for running distances (5K, 10K, half marathon, full marathon) |
| get_vo2maxB | Get current VO2 Max value and historical data |
| get_training_statusB | Get current training status including training effect, load balance, and fitness trends |
| list_training_plansA | List available Garmin running training plans with optional filters for goal distance and experience level |
| get_training_plan_overviewB | Summarize a specific Garmin training plan including high-level details, phases, and schedule preview |
| get_training_plan_scheduleB | Build a weekly schedule snapshot for a training plan, including personal calendar alignment when available |
| get_gear_insightsB | Analyze running gear usage to surface mileage totals, replacement alerts, and recent utilization patterns |
| get_recent_running_activitiesB | Get recent running activities with cursor-based pagination. Returns activities with pagination metadata and resource URIs for detailed data. |
| get_activity_summaryC | Get basic activity information including distance, time, pace, and elevation |
| get_activity_detailsB | Get comprehensive activity metrics including splits, advanced metrics, and performance data. Response size optimized for Claude context window. |
| get_heart_rate_metricsC | Get heart rate metrics including resting heart rate and heart rate variability (HRV) |
| get_sleep_analysisC | Get detailed sleep data including sleep stages, quality, and duration |
| get_body_batteryC | Get body battery energy levels throughout the day |
| get_stress_levelsC | Get stress level data and analysis |
| get_daily_activityB | Get daily activity metrics including steps, floors climbed, and intensity minutes |
| calculate_training_pacesA | Calculate Jack Daniels training paces based on recent race performance |
| get_advanced_running_metricsC | Get advanced running metrics including stride length, vertical ratio, vertical amplitude, ground contact time |
| analyze_heart_rate_zonesC | Analyze heart rate zone distribution and time spent in each zone for an activity |
| set_race_goalC | Set a target race goal and track progress |
| analyze_training_loadC | Analyze training load and recovery status to prevent injury |
| get_running_trendsC | Get running performance trends over a specified period. Response size optimized for Claude context window. |
| get_lactate_thresholdB | Get lactate threshold pace and heart rate data |
| get_race_predictionsB | Get predicted race times based on current fitness level |
| get_training_readinessC | Get training readiness score and recommendations |
| get_recovery_timeB | Get recommended recovery time after recent activities |
| get_training_load_balanceB | Get acute vs chronic training load balance (ATL/CTL ratio) for injury prevention |
| get_training_effectB | Get aerobic and anaerobic training effect analysis |
| calculate_vdot_zonesC | Calculate VDOT and training zones based on recent race performance or time trial |
| analyze_threshold_zonesB | Analyze lactate threshold zones for double threshold training |
| suggest_daily_workoutC | Suggest appropriate workout based on current condition and training phase |
| analyze_workout_qualityC | Analyze how well a workout was executed compared to plan |
| get_endurance_scoreB | Get endurance performance score indicating aerobic endurance capability |
| get_hill_scoreC | Get hill running performance score indicating uphill running capability |
| get_hrv_dataB | Get detailed heart rate variability (HRV) data for recovery and stress analysis |
| get_respiration_dataC | Get daily respiration data including breathing rate and patterns |
| get_spo2_dataB | Get blood oxygen saturation (SpO2) levels throughout the day |
| get_paginated_activitiesB | Get activities with proper pagination support to handle large datasets |
| get_activities_for_dateC | Get all activities for a specific date |
| get_devicesB | Get information about all connected Garmin devices |
| get_primary_training_deviceB | Get primary training device information for running activities |
| get_device_settingsC | Get device settings and configuration |
| download_activity_fileC | Download activity data in various file formats (TCX, GPX, FIT) |
| get_weekly_running_summaryC | Get comprehensive weekly running summary with trends and analysis |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Activities List | Paginated list of running activities with cursor-based navigation |
| Full Activity Details | Complete activity data including all metrics, charts, and GPS data |
| Activity Splits | Detailed split/lap data for an activity |
| Heart Rate Zones | Heart rate zone distribution and analysis for an activity |
| Advanced Metrics | Advanced running metrics (cadence, GCT, vertical oscillation, etc.) |
| Monthly Trends | Monthly running trends and statistics with pagination |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/leewnsdud/garmin-connect-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server