garmin_mcp

MCP.Pizza Chef: Taxuspt

Your watch already records steps, heart rate, sleep, stress and every workout. This pulls that history into a conversation so you can ask about trends instead of tapping through Garmin Connect. It can also write back, renaming activities, logging how a session felt, and building walk-run or strength workouts that show up on your watch. More than 110 separate abilities are included, and you can switch most of them off to keep things simple. It needs Python and your Garmin Connect sign-in.

Data
Other

Use This MCP server To

See how my sleep changed over the past month Summarize my training load and recovery this week Rename a ride and note how hard it felt Build a walk-run workout and send it to my watch Check my resting heart rate trend before a race Download a ride file so I can study the climbs

README

MseeP.ai Security Assessment Badge

Garmin MCP Server

This Model Context Protocol (MCP) server connects to Garmin Connect and exposes your fitness and health data to Claude and other MCP-compatible clients.

Garmin's API is accessed via the awesome python-garminconnect library.

Features

  • List recent activities with pagination support
  • Get detailed activity information
  • Edit activities: name, type, description/notes, event type, perceived effort (RPE), and feel
  • Access health metrics (steps, heart rate, sleep, stress, respiration)
  • View body composition data
  • Track training status and readiness
  • Access cycling FTP and lactate threshold metrics
  • Manage gear and equipment
  • Access workouts and training plans
  • Inspect detailed workout step structures, including repeat groups and swim pace targets
  • Weekly health aggregates (steps, stress, intensity minutes)
  • Advanced cycling analytics: power zones, FIT file analysis, DI2 electronic shift intelligence
  • Training load trend (CTL/ATL/TSB), HRV trend, VO2 max trend, respiration rate trend
  • Power Duration Curve, climb detection with VAM, cardiac drift (aerobic decoupling), W/kg calculations

Tool Coverage

This MCP server implements 110+ tools covering ~90% of the python-garminconnect library (v0.3.2):

  • ✅ Activity Management (20 tools) - includes write tools for type, description, event type, perceived effort, and feel
  • ✅ Health & Wellness (31 tools) - includes custom lightweight summary tools
  • ✅ Training & Performance (13 tools) - includes CTL/ATL/TSB, HRV, VO2 max, and respiration trends
  • ✅ Workouts (8 tools)
  • ✅ Devices (7 tools)
  • ✅ Gear Management (5 tools)
  • ✅ Weight Tracking (5 tools)
  • ✅ Challenges & Badges (10 tools)
  • ✅ Nutrition (8 tools) - food logs, meals, custom foods, and food logging
  • ✅ Women's Health (3 tools)
  • ✅ User Profile (3 tools)
  • ✅ High-Level Workout Builders (4 tools) - create and schedule workouts without writing JSON
  • ✅ Courses (3 tools) - list / upload GPX as course / delete course
  • ✅ Activity Analysis (2 tools) - FIT file parsing, Power Duration Curve; requires power meter and/or Di2
  • ✅ Activity File Downloads (2 tools) - download activity files in FIT, GPX, TCX, or CSV format

Note: Activity Analysis tools require a compatible power meter (e.g., Garmin Rally, Favero Assioma, PowerTap P1) and/or Shimano Di2 / SRAM eTap electronic shifting. The fitparse dependency is installed automatically.

Activity File Downloads

Two tools let you download a raw activity file to disk:

  • download_activity_file(activity_id, format="fit", output_dir=None) — downloads the activity and saves it to the configured directory. format accepts fit (default), gpx, tcx, or csv.
  • set_fit_download_dir(path) — sets and persists the default download directory (written to the config file).

Where files are saved (precedence):

  1. output_dir argument — one-off override, not persisted.
  2. GARMIN_FIT_DOWNLOAD_DIR environment variable.
  3. Persisted config set via set_fit_download_dir.

garmin_mcp FAQ

Which apps does it work in?
Claude Desktop is the one documented, and any other app that accepts MCP servers should work the same way.
Do I need a paid key?
No key. You sign in with your normal Garmin Connect account, and two-step verification is handled if you have it turned on.
Can I use this to plan next week's workouts?
Yes. It can build walk-run, easy-pace and strength sessions and schedule them onto your watch.
How hard is setup?
It expects Python 3.12 or newer on your computer, so plan for a short technical setup rather than a one-click install.
Will it change my Garmin data?
It can. Renaming activities, logging food and creating workouts are all included, though deleting activities is deliberately left out.
Are the advanced cycling numbers available to everyone?
No. Power curves and gear-shifting analysis need a power meter or electronic shifting on the bike.