Futureweb Intervals MCP Server

A Model Context Protocol server that lets AI assistants read and analyse your Intervals.icu training data the way a coach would: activities with every custom field and stream, intervals, wellness against personal…

Local serverstdio

What is the Futureweb Intervals MCP Server?

Futureweb Intervals MCP source profile. From the maintainer documentation: “A Model Context Protocol server that lets AI assistants read and analyse your Intervals.icu training data the way a coach would: activities with every custom field and stream, intervals, wellness against personal baselines, thresholds and zones, planned-versus-executed workouts, climbs, dual power meters, best efforts, efficiency and fatigue resistance, nutrition and weight, training summaries and the calendar. It runs where you run it, talks only to the Intervals.icu API and exposes nothing that writes unless you enable it.”

Local setup

The project provides a local client configuration using uvx. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.

Configuration values

The example declares API_KEY, ATHLETE_ID, MCP_PERMISSIONS. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.

Source

Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-13.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
get_activity_reportComplete analysis in one call: overview with fueling (carbs used/ingested per hour, sweat loss, energy), weather (temperature, feels-like, wind, head/tailwind…
get_activity_data_auditProvenance and data quality of one activity: source and file (Garmin sync, Garmin export or bridge upload, Strava stub), upload and analysis times, filtered…
analyze_workout_executionPlanned vs executed per step (duration, target adherence, time in range, HR response, fade, Pw:HR drift with the Intervals.icu decoupling sign, stamina). A…
analyze_climbsClimbs, descents and pauses with power, NP, HR, VAM and custom streams per segment; grade smoothed over a distance window (raw grade optional), grade…
compare_power_streamsSample-aligned comparison of two power meters: offset, power bands, stable windows, drift, lag; without activity_id (date range or activity_ids) every ride…
get_best_effortsBest efforts of one activity for durations or distances, with their elapsed-time windows (end index exclusive); windows across a recording pause are flagged
get_activity_histogramTime distribution of power, heart rate, pace or GAP
get_activitiesList with sport, gear and power meter filters, sorting, paging, compact or JSON output; without start_date the 30 days before end_date (or today)
get_activity_detailsSummary, thresholds used (FTP, eFTP, LTHR, zones), device and power meter, running dynamics, every custom field with units, fueling, weather, W′ balance and…
get_activity_intervalsIntervals and groups, custom interval fields, per-interval statistics of any stream, optionally the planned step type next to the Intervals.icu type
compare_best_effortsBest efforts across activities (ids, date range, sport, gear) side by side; ids are de-duplicated and capped to the limit before any request
find_similar_intervalsActivities with comparable intervals, from a reference activity or a given length and intensity; same sport family by default, ranked by comparability, with…
compare_workoutsRepeated workouts over time, comparing only comparable work intervals (reference activity, sport family, length, intensity, reps, FTP range); the reference…
get_power_hr_efficiencyWatts per heartbeat per power band and bike over time, with minimum sample sizes and filters for gear, indoor/outdoor and interval position
get_fatigue_resistanceBest power fresh vs after the athlete's kJ thresholds; without configured thresholds it explains the setting and suggests values instead of showing pseudo…
get_long_ride_fatigue_profileHR, W/bpm, cadence and Garmin stamina at matched power in steady segments before vs after work thresholds (default 750 / 1,500 kJ, or kJ/kg), for given rides…
get_submax_test_trendsSubmaximal fatigue tests detected by Intervals.icu (SFT) with a validity filter (target tolerance, CV, ignored, detected inside a regular workout, hard riding…
get_training_loadAcute and chronic load, acute:chronic ratio, Foster monotony and strain (rest days as 0), deload-like weeks, per sport with the primary sport, ISO week table…
get_intensity_distributionThree-zone distribution from power, HR or pace zones (mapping by zone count; GAP zone times where Intervals.icu uses them), polarization index after Treff et…
get_durabilityAerobic decoupling of steady long sessions after a quality filter (excluded sessions per reason), median and count above 5 %, recent vs window with a…
get_load_projectionCTL, ATL and form projected over the planned workouts (42/7-day model), missing planned loads reported, race days, Intervals.icu's own projection and a model…
get_training_summaryTotals per week, month, sport or gear with the Intervals.icu load (power, else HR, else pace per activity) and the overlapping per-method sums, time in power…
get_recovery_snapshotToday and the previous days, 42-day baselines, recent load and planned sessions in one call; names the usual wellness fields today's record does not have yet…
get_coach_contextRecommended first call for a weekly analysis: overview in about 2-2.5k characters with load, fitness, intensity distribution (per-sport split when zone bases…
get_wellness_trendsRolling means, baselines, outliers, week-over-week changes, correlations, eFTP per sport; requested period, lookback and baseline window stated separately…
get_nutrition_summaryIntake, device burn, energy balance on logged days, weight trend, training load per day
get_fueling_analysisFueling of one activity or the long sessions of a period: carbs used (Intervals.icu estimate) and ingested per moving hour, ingested share of used, energy…
get_server_statusVersion, enabled permissions, tool set, hidden tools, transport and sign-in mode, API check (also --doctor)
get_guideUsage guide, workout syntax and method guides (the resources below) for clients that only call tools
PurposeCore tools
Orientationget_server_status, get_guide
Recoveryget_recovery_snapshot, get_wellness_data, get_wellness_trends
Planningget_sport_settings, validate_workout, preview_workout

How to install the Futureweb Intervals MCP Server

{
  "mcpServers": {
    "intervals-icu": {
      "command": "uvx",
      "args": [
        "futureweb-intervals-mcp@1.0.0b1"
      ],
      "env": {
        "API_KEY": "YOUR_API_KEY",
        "ATHLETE_ID": "i123456",
        "MCP_PERMISSIONS": "read"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

VariableDescriptionRequired
API_KEYDeclared in the maintainer’s client configuration.Yes
ATHLETE_IDDeclared in the maintainer’s client configuration.Yes
MCP_PERMISSIONSDeclared in the maintainer’s client configuration.Check documentation