Skip to main content
Glama
OneMoeLine

Intervals.icu MCP Server

by OneMoeLine

Get activity streams

get_activity_streams
Read-only

Fetch time-series streams for an Intervals.icu activity, such as power, HR, cadence, speed, altitude, or GPS. Downsample to 500 points by default; request only needed channels or adjust max_points.

Instructions

Get time-series data streams for an activity (power, HR, cadence, speed, altitude, GPS, etc.). Streams are large, so each channel is downsampled to 500 evenly spaced points by default. Pass types to fetch only the channels you need, and raise max_points only when you genuinely need finer resolution.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typesNoChannels to return, e.g. ["watts","heartrate","cadence"]. Omit for all channels (much larger).
max_pointsNoDownsample each channel to at most this many points (default 500)
activity_idYesThe activity ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnlyHint, openWorldHint), and the description usefully adds what they cannot: the payload is large, channels are silently downsampled to 500 points by default, and finer resolution is opt-in. It stops short of describing the return shape or ordering.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences, front-loaded with purpose then behavior then guidance, with no filler. Slight redundancy with the schema's own types/max_points descriptions keeps it off a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, three-parameter tool with no output schema, the description covers size, downsampling semantics, and filtering well enough to call it correctly. The one gap is that the shape of the returned stream data (per-channel series, timestamps vs values) is left entirely unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both optional parameters already document their defaults, bounds, and the 'omit for all channels (much larger)' behavior. The description largely restates that and adds only rationale (size/resolution tradeoff), which lands at the baseline for fully-covered schemas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb+resource ('Get time-series data streams for an activity') and enumerates the channel types returned, which cleanly separates it from summary tools like get_activity. It never names a sibling, however, so an agent must still infer the boundary against get_activity_intervals or get_activity_power_curve on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Offers real efficiency guidance — pass types to limit channels, and raise max_points 'only when you genuinely need finer resolution' — but this is parameter-level advice, not tool-selection advice. Nothing tells the agent when to prefer this over get_activity_intervals or get_activity_power_curve, which return overlapping time-series data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.