Skip to content

[intervals-mcp-server] Add HR and pace curve tools - #147

Open
arnold-maderthaner wants to merge 1 commit into
mvilanova:mainfrom
arnold-maderthaner:feat/hr-pace-curves
Open

arnold-maderthaner wants to merge 1 commit into
mvilanova:mainfrom
arnold-maderthaner:feat/hr-pace-curves

Conversation

@arnold-maderthaner

Copy link
Copy Markdown

Summary

Adds get_hr_curves(...) and get_pace_curves(...), analogous to get_athlete_power_curves (GET /athlete/{id}/hr-curves and /pace-curves). Useful to track aerobic progress (same pace at lower HR).

  • HR: best HR for a set of durations (5s … 1h).
  • Pace: best time and pace for distances (400 m … marathon), shown as min/km, or /100m for swims; optional gap=True for gradient-adjusted pace.
  • Requested durations/distances missing from the curve are listed as "Not available" instead of being dropped.

Notes

  • Response shapes verified with live Run and Swim requests.

Testing

  • uv run --locked pytest, mypy src tests pass; ruff check passes on the changed files (the two pre-existing F401 findings in server.py and power_curves.py are untouched).
  • Manually tested against a real Intervals.icu account through the MCP streamable-HTTP transport (see notes above).

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant