Run Coach
Fetches recent activities and all-time stats from the Strava API, including rides, runs, distance, and suffering index, to power a run coaching dashboard.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Run Coachwhat should my run be today?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Run Coach
An MCP server that pulls your Strava data and gives you a run recommendation from Claude, rendered as a dashboard.

What it does
Fetches recent activities and all-time stats from the Strava API
Shows them in a Prefab UI dashboard (rides, runs, distance, suffering index)
Has a button that sends your last N days of runs to Claude and gets back a plain-English recommendation for today's run
Related MCP server: fitness-mcp-server
Stack
FastMCP — the MCP server itself, with
FastMCPAppfor the UI-facing toolsPrefab — the dashboard UI, written in Python instead of JSX
Anthropic API — generates the run recommendation
httpx— talks to Stravauv— dependency management and running the thing
Setup
1. Install dependencies
uv add fastmcp anthropic httpx2. Strava API access
You need a Strava API app (create one at strava.com/settings/api) and a one-time OAuth flow to get a refresh token. Scope needs to include activity:read_all — the default read scope isn't enough.
Run the setup script (not part of the server itself) to get your first refresh_token, then it lives in strava_tokens.json.
3. Environment variables
Create a .env:
ANTHROPIC_API_KEY=sk-ant-...
STRAVA_CLIENT_ID=...
STRAVA_CLIENT_SECRET=...
STRAVA_TOKEN_PATH=./strava_tokens.json4. Run it
uv run --env-file .env --with fastmcp fastmcp dev apps mcpserver.py --reloadProject structure
mcpserver.py # the server: tools, UI, everything
strava_auth.py # token refresh logic
strava_tokens.json # your access/refresh token (gitignored)
.env # secrets (gitignored)How the recommendation flow works
Dashboard loads → fetches Strava data server-side, renders stats
Click "Get Recommendation" → calls
get_run_recommendation, a private tool the UI can hit but the model can't call directly in chatThat tool re-fetches recent runs, trims to the fields that matter (distance, pace, HR, suffer score), sends them to Claude with a coaching system prompt
Response comes back, gets dropped into the page via state
Considerations
Strava rate limits are tight (100 req/15min, 1000/day)
max_tokensneeds headroom if thinking is ever turned on — thinking and output share the budget
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceA Claude MCP server that lets users query and analyze their Strava activity data by connecting to the Strava API.Last updated3Apache 2.0
- Flicense-qualityDmaintenanceProvides MCP servers for Claude to access fitness data from Strava and intervals.icu, enabling natural language queries for activity analysis, advanced training metrics, and wellness tracking.Last updated1
- Flicense-qualityBmaintenanceMCP server that gives Claude access to real-time Garmin Connect and Strava data for analyzing training and suggesting sessions.Last updated
- FlicenseAqualityCmaintenanceExposes Strava training data to Claude for coaching, planning, and analysis via a read-only MCP server with OAuth and Docker support.Last updated13
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence
MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/GWilson97/MCP_Run_Recommender'
If you have feedback or need assistance with the MCP directory API, please join our Discord server