Skip to main content
Glama
futureweb

Futureweb Intervals MCP

by futureweb

get_hr_curves

Read-only

Retrieve an athlete's highest average heart rate per duration across one or more periods, returning bpm per curve and the activity that set it for period comparisons.

Instructions

Use for the highest average heart rate an athlete sustained per duration over one or more periods (e.g. comparing periods; with get_pace_curves the same pace at a lower HR).

Returns bpm per duration for each curve (default the last 90 days) with the activity that set it; durations without data are listed as not available. Read-only, one API call. Power: get_athlete_power_curves. Method: intervals://methods/comparisons (get_guide).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
curvesNoCurve ids as a JSON array of strings, e.g. ["90d", "1y"], "s0" this season, "s1" last season, "r.2026-01-01.2026-03-01" a range; default ["90d"]
end_dateNoLast day YYYY-MM-DD of the custom-range curve, after start_date
durationsNoDurations in seconds as a JSON array of integers, e.g. [60, 300, 1200]; default 5 s to 60 min
athlete_idNoDefault: the configured athlete
start_dateNoFirst day YYYY-MM-DD of an extra custom-range curve; needs end_date
activity_typeNoActivity type of the curves, e.g. Run, Ride, SwimRun

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, and the description reinforces 'Read-only, one API call' while adding genuine context: the return shape (bpm per duration per curve, with the setting activity), that missing durations are listed as not available, and the default 90-day window. It does not detail rate limits or auth, but adds meaningful behavior beyond the annotations.

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?

Front-loads the 'Use for' purpose, then return behavior, then the read-only cost note. Sentences are dense but mostly earn their place, though the 'Method: intervals://methods/comparisons (get_guide)' tail is somewhat internal noise.

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?

With no output schema, the description carries the return-value burden and does so (bpm per duration, setting activity, not-available handling, default window). Combined with a fully documented 6-param schema, it is nearly complete, lacking only explicit constraint/exclusion guidance.

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 the schema already documents curves, durations, dates, athlete_id and activity_type in detail. The description only reiterates the 90-day default, which the schema also states, so it adds little beyond the structured fields.

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

Purpose5/5

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

States a specific verb+resource: the highest average heart rate sustained per duration across one or more periods. It distinguishes itself from siblings by cross-referencing get_pace_curves and get_athlete_power_curves, so an agent can identify its unique role in the curve family.

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

Usage Guidelines4/5

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

Opens with 'Use for...' and gives a concrete comparison scenario, plus routes to the power-curve sibling. There is no explicit 'do not use when' exclusion, so it falls short of a full 5, but the usage context and alternatives are clear.

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