Fitness Training Dashboard
Combining disparate training sources into one dashboard for faster workout analysis, with the plan and the actuals side by side.
Context
While training for races in the past and currently prepping for a half marathon, my plan and my actual data lived in separate places that never talked to each other: a 4-month Google Sheet training plan with weekly agendas, an email digest from my coaches with adjustments to that plan, and the health and fitness data my Garmin watch records and syncs to Strava. I wanted a single place to see how my body was actually progressing, and how to adjust what's coming.
Challenge
Connect three live data sources into one dashboard that shows the week's plan next to actual Strava workouts, layer an AI coach on top to read historical data against upcoming plans, and build it in two days to move quick.
Execution
Built a custom Strava MCP server (5 tools) so Claude can pull real workout data in real time instead of guessing.
AI workout analysis via the Anthropic Claude API, prompted to give a quick read before you are even home from the sweat session.
Parse a 16+ week Google Sheet (every mesocycle, weekly workout, and long run) into a week-keyed map you can page through, forward to any planned week or back across the season.
Each week's mileage goal comes straight from the coach's "percent of peak" in the sheet, scaled to my peak, so an 80% week reads as a 20-mile target. That one number kept every week personal and focused on exactly what I needed right then, instead of getting lost in the sauce or staring too far down the season.
Hardened three live integrations against real-world failure modes: credential formatting, server-side URL resolution, and API rate limits.
Work




Next case study