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 Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Strava MCP tools for AI: athletes, activities, segments, clubs, routes. Powered by HAPI MCP server.
Pace is a remote MCP server that exposes wearable and fitness data to Claude via the Model Context Protocol. It connects to Garmin, Oura, Whoop, Polar, Fitbit and 20+ devices and provides 15 tools for querying sleep, activity, recovery, and training data. Hosted on Google Cloud Run, OAuth 2.1 authentication, Streamable HTTP transport. Instructions: First you need to create an account at: https://pacetraining.co and connect your wearables. After that you can connect the remote Server via Custom Connector in Claude and OAuth 2.1 Flow startet.
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Claude MCP server that lets users query and analyze their Strava activity data by connecting to the Strava API.3Apache 2.0
- FlicenseNot gradedqualityDmaintenanceProvides 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.1
- FlicenseNot gradedqualityBmaintenanceMCP server that gives Claude access to real-time Garmin Connect and Strava data for analyzing training and suggesting sessions.
- FlicenseAqualityCmaintenanceExposes Strava training data to Claude for coaching, planning, and analysis via a read-only MCP server with OAuth and Docker support.13
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