v2.0.0 - Feature Completion
What's New
42 new tools bring the server from 10 read-heavy tools to 52 tools covering the full TrainingPeaks platform.
Structured Workouts
Build interval sessions with warm-up/intervals/cool-down blocks, intensity targets, cadence, and repetition sets. IF and TSS are auto-computed from the structure. Just tell your AI "build me 4x8min sweet spot with 2min rest" and it creates the full structured workout in TrainingPeaks.
Full Workout CRUD
Update any field, delete, copy to new dates (preserving structure and planned fields), reorder workouts on a day, and add comments.
Athlete Settings
Update FTP with automatic Coggan 5-zone recalculation, heart rate zones, run/swim pace zones (with pace string parsing like "4:30/km"), and nutrition settings.
Events & Calendar
Create races with A/B/C priority and CTL targets. Calendar notes. Availability periods (unavailable or limited with specific sport types).
Health Metrics
Log weight, HRV, sleep hours, steps, SpO2, resting pulse, RMR, and injury scores. Retrieve metrics and nutrition data by date range.
Equipment
Manage bikes and shoes with brand, model, distance tracking, retirement, and bike-specific fields (wheels, crank length).
Workout Library
Browse, create, edit, and schedule workout templates. Library item structures use nested objects (not double-serialised strings like calendar workouts).
Annual Training Plan & Weekly Summary
Read weekly TSS targets, training periods, and race schedule from your ATP. Get a combined view of workouts + fitness for any week with totals.
Architecture
- Server dispatch refactored from if/elif chain to handler registry pattern
- 9 new tool modules
- 266 tests (97 new), all passing on Python 3.10-3.14
- Clean ruff + mypy