Skip to main content
Glama
README.md
# Intervals MCP

Make chat your cycling coach (for better or for worse)

## Setup

Requires Docker Compose and chat developer mode access.

1. Create a [secure MCP tunnel](https://platform.openai.com/settings/organization/tunnels)
   associated with your chat workspace and a [runtime API key](https://platform.openai.com/settings/organization/api-keys)
   with tunnels read + use access.

2. Clone this repo and configure `CONTROL_PLANE_TUNNEL_ID`, `CONTROL_PLANE_API_KEY`, and `INTERVALS_API_KEY` in your .env.

3. Start the server:

   ```sh
   docker compose up -d --build
   docker compose ps
   ```

4. Enable Developer mode in chat, then add a connection in plugins using
   tunnel and select yours. More info in the [tunnel guide.](https://developers.openai.com/api/docs/guides/secure-mcp-tunnels)

## Tools

All tools are read-only for now. Write access is the future goal so that chat can create workouts for you.

- `athlete_get` — athlete profile
- `activities_list` — activities between `oldest` and `newest`
- `activity_get` — one activity by `activityId`
- `wellness_list` — wellness between `oldest` and `newest`
- `events_list` — calendar events between `oldest` and `newest`

TDQS

A4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct resource-action pair: athlete, activities, wellness, and events, with list versus get clearly separating collection from detail operations. An agent would not struggle to pick among them.

Naming Consistency5/5

All tool names consistently follow a resource_verb pattern in snake_case, with plural resources for list operations and singular resources for detail operations. There are no stylistic deviations or ambiguous verbs.

Tool Count5/5

Five tools is a compact, well-scoped set for a read-only fitness data server. Each tool covers a meaningful endpoint with no redundancy or bloat.

Completeness4/5

The surface covers core read workflows: athlete profile, activity list/detail, wellness records, and calendar events. It lacks write operations and detail endpoints for wellness/events, but these are likely outside the read-only scope and list results may be sufficient.

Maintenance

ActivityMaintained
ResponsivenessNo issues