MCP server for Garmin Connect — access 61 health, fitness and activity tools from any AI assistant
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"garmin": {
"env": {
"GARMIN_EMAIL": "you@email.com",
"GARMIN_PASSWORD": "yourpass"
},
"args": [
"-y",
"@nicolasvegam/garmin-connect-mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP server for Garmin Connect. Access your fitness, health, and training data from Claude Code, Claude Desktop, Cursor, Windsurf, or any MCP client.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y '@nicolasvegam/garmin-connect-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked @nicolasvegam/garmin-connect-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in health
MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications
MCP server for Withings health data — sleep, activity, heart, and body metrics.
Manage your Hevy workouts, routines, folders, and exercise templates. Create and update sessions faster, organize plans, and search exercises to build workouts quickly. Stay synced with changes so your training log is always up to date.
MCP server for the ClinicalTrials.gov v2 API. Search trials, retrieve study details and results, and match patients to eligible trials.
MCP Security Weekly
Get CVE alerts and security updates for Garmin Connect Mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
MCP server for Garmin Connect. Access your fitness, health, and training data from Claude Code, Claude Desktop, Cursor, Windsurf, or any MCP client.
61 tools across 7 categories: activities, daily health, trends, sleep, body composition, performance/training, and profile/devices.
API endpoints and authentication flow based on python-garminconnect by cyberjunky.
claude mcp add garmin -e GARMIN_EMAIL=you@email.com -e GARMIN_PASSWORD=yourpass -- npx -y @nicolasvegam/garmin-connect-mcp
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"garmin": {
"command": "npx",
"args": ["-y", "@nicolasvegam/garmin-connect-mcp"],
"env": {
"GARMIN_EMAIL": "you@email.com",
"GARMIN_PASSWORD": "yourpass"
}
}
}
}
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"garmin": {
"command": "npx",
"args": ["-y", "@nicolasvegam/garmin-connect-mcp"],
"env": {
"GARMIN_EMAIL": "you@email.com",
"GARMIN_PASSWORD": "yourpass"
}
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"garmin": {
"command": "npx",
"args": ["-y", "@nicolasvegam/garmin-connect-mcp"],
"env": {
"GARMIN_EMAIL": "you@email.com",
"GARMIN_PASSWORD": "yourpass"
}
}
}
}
Run the server with environment variables:
GARMIN_EMAIL=you@email.com GARMIN_PASSWORD=yourpass npx -y @nicolasvegam/garmin-connect-mcp
The server communicates over stdio using the Model Context Protocol.
| Tool | Description |
|---|---|
get_activities | List recent activities with pagination |
get_activities_by_date | Search activities within a date range |
get_last_activity | Get the most recent activity |
count_activities | Get total number of activities |
get_activity | Summary data for a specific activity |
get_activity_details | Detailed metrics: HR, pace, elevation time series |
get_activity_splits | Per-km or per-mile split data |
get_activity_weather | Weather conditions during activity |
get_activity_hr_zones | Time in each heart rate zone |
get_activity_exercise_sets | Strength training sets (reps, weight) |
get_activity_types | All available activity types |
get_progress_summary | Fitness stats over a date range by activity type |
| Tool | Description |
|---|---|
get_daily_summary | Full daily summary (steps, calories, distance, etc.) |
get_steps | Step count for a date |
get_steps_chart | Intraday step data throughout the day |
get_heart_rate | Heart rate data (resting, max, zones, time series) |
get_resting_heart_rate | Resting heart rate for a date |
get_stress | Stress levels and time series |
get_body_battery | Body Battery energy levels (date range) |
get_body_battery_events | Battery charge/drain events for a day |
get_respiration | Breathing rate data |
get_spo2 | Blood oxygen saturation |
get_intensity_minutes | Moderate/vigorous intensity minutes |
get_floors | Floors climbed chart data |
get_hydration | Daily hydration/water intake |
get_daily_events | Daily wellness events |
| Tool | Description |
|---|---|
get_daily_steps_range | Daily step counts over a date range |
get_weekly_steps | Weekly step aggregates |
get_weekly_stress | Weekly stress aggregates |
| `get_weekly |