Labsco
MCP SERVER

Intervals.icu MCP Server

by hhopke

Read and shape a full Intervals.icu training record — activities, wellness, the calendar, performance curves and plans.

Health, Fitness & WearablesVerified
Summary
The whole training record, with the heavy calls kept behind the light ones.

Two decisions make this workable in a conversation. Listings and searches return light summaries, and the full objects, raw per-sample streams and interval breakdowns are separate tools you reach for deliberately, so "what have I done recently?" does not cost a megabyte. And deletion is gated by an environment variable rather than by prompting: in the default mode the destructive tools for activities, sport settings and custom items are not registered at all, so no phrasing reaches them.

What it is

An Intervals.icu client covering the whole training picture: activities and their raw streams, fitness and wellness, the planned calendar, performance curves, workout libraries, gear and per-sport thresholds. Tools come in light and heavy variants, so a listing does not drag whole activities into the conversation.

What you get
  • Activities listed as light summaries — distance, duration, power, HR, training load — by recency, by an explicit date window, by name or tag search, or chronologically around a reference activity
  • One activity opened up: the headline summary, the per-lap intervals with target against actual, the raw per-sample streams, and the top peak efforts inside it
  • Time-in-zone distributions for power, heart rate, pace, and grade-adjusted pace
  • The original activity file downloaded as it was uploaded, or converted to FIT or GPX
  • Activity metadata updated, streams uploaded, manual activities batch-created with upsert on external_id, and notes read or added
  • Fitness and form: CTL, ATL and TSB now with interpretation, and the Performance Management Chart as a series including projections from the planned calendar
  • Wellness read across a range or for one date, and upserted — HRV, sleep, weight, fatigue, mood and the rest
  • The calendar in full or filtered to planned workouts, one event in detail, and the Annual Training Plan's weekly load targets and Base/Build/Peak phases
  • Events created singly or in bulk, updated, deleted, copied forward by weeks, and a whole training-plan folder scheduled onto the calendar from a start date
  • Power, HR and pace curves across a window, for FTP estimation and fitness trends
  • Intervals searched across every activity rather than within one, by type, duration and intensity
  • Workout library folders and their contents, gear with usage stats and maintenance reminders, and per-sport thresholds — FTP, FTHR, pace, swim — which can be applied back over historical activities
  • Custom charts, fields, zone sets and panels listed, inspected, created and updated
  • An athlete_id parameter throughout for coaches, with the athletes you follow or coach listed first
Requirements

An Intervals.icu API key from Settings → Developer, plus your athlete ID from the profile URL in its i123456 form, passed as INTERVALS_ICU_API_KEY and INTERVALS_ICU_ATHLETE_ID. With uv installed, uvx intervals-icu-mcp fetches and runs the package; a Docker image is published as the alternative. Destructive tools sit behind INTERVALS_ICU_DELETE_MODE, a gate outside the model's reach: safe, the default, registers 59 tools and deletes only events dated tomorrow or later; full registers 62 and allows deleting activities, sport settings and custom items too; none registers 56 and removes deletion entirely.

Setup effort

One command plus a key — uvx intervals-icu-mcp, then supply credentials