Skip to main content
Glama
hausii

Intervals.icu MCP Server

by hausii

Intervals.icu MCP Server

An MCP (Model Context Protocol) server that integrates Intervals.icu with AI assistants like Claude or ChatGPT. It exposes your training data, wellness records, planned workouts, and calendar events through a set of tools that Claude can call directly.

Features

  • Athlete profile & settings — retrieve profile info and sport-specific settings (FTP, LTHR, HR zones, pace zones)

  • Activities — list, search, and get detailed metrics for completed workouts

  • Wellness — read daily wellness records (weight, resting HR, HRV, sleep, soreness, fatigue, stress, mood)

  • Training calendar — list, create, and update planned events (workouts, races, notes, and more)

  • Routes — browse saved routes with optional GPS path data

  • Summary stats — aggregate training load, distance, and time over a date range

Related MCP server: intervals.mcp

Available Tools

Tool

Description

get_athlete_profile

Athlete name, email, and preferences

get_athlete

Sport settings including FTP, LTHR, max HR, and pace zones

list_activities

Activities within a date range

get_activity

Detailed metrics for a single activity (optionally with lap data)

search_activities

Search by name or tag (use #tag for exact tag match)

get_athlete_summary

Aggregate stats (count, time, distance, calories, load) for a date range

list_wellness

Wellness records within a date range

get_wellness

Single-day wellness record

list_routes

All saved routes

get_route

Route details, optionally with GPS lat/lng path

list_events

Planned calendar events within a date range (filterable by category)

get_event

Detailed info for a single planned event

create_event

Add a planned event to the calendar

update_event

Modify an existing calendar event

list_event_tags

All event tags used by the athlete

Prerequisites

  • Node.js 18+

  • An Intervals.icu account

  • An Intervals.icu API key (found in Settings → API)

Setup

1. Clone and install dependencies

git clone <repo-url>
cd IntervalsMCP
npm install

2. Configure environment variables

cp .env.example .env

Edit .env:

INTERVALS_API_KEY=your_api_key_from_intervals_icu_settings
INTERVALS_ATHLETE_ID=i0

INTERVALS_ATHLETE_ID defaults to i0 which resolves to your own athlete ID.

3. Build

npm run build

Connecting to Claude

Add this server to your Claude Desktop (or any MCP-compatible client) configuration:

{
  "mcpServers": {
    "intervals-icu": {
      "command": "node",
      "args": ["/absolute/path/to/IntervalsMCP/dist/index.js"]
    }
  }
}

Claude Desktop config is typically located at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Development

# Watch mode — recompiles on file changes
npm run dev

# Run the compiled server directly
npm start

Project Structure

src/
  index.ts            # MCP server entry point
  intervals-client.ts # Intervals.icu API HTTP client
  tools.ts            # MCP tool definitions
A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/hausii/IntervalsMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server