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. |
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
} |
| 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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