A Strava MCP server lets an AI client read your activities, splits, segments and athlete stats — so you can ask Claude to analyse your training, spot trends or summarise the week. Here is the setup, end to end.
Step 1 — create a Strava API application
Strava data is gated behind OAuth, so first register an app. Go to strava.com/settings/api, create an application, and note the Client ID and Client Secret. Set the Authorization Callback Domain to localhost. That is all Strava needs to issue tokens to your local server.
Step 2 — configure the client
A popular, actively maintained option is the Node-based strava-mcp server, which exposes ~25 tools over the Strava API and runs via npx — nothing to install:
{
"mcpServers": {
"strava": {
"command": "npx",
"args": ["-y", "strava-mcp"],
"env": {
"STRAVA_CLIENT_ID": "your_client_id",
"STRAVA_CLIENT_SECRET": "your_client_secret"
}
}
}
}
On first run the server opens your browser for Strava authorization; the tokens are saved locally (e.g. ~/.config/strava-mcp/config.json) and refreshed automatically. Restart your client after editing — see MCP config file location if you cannot find the file.
Step 3 — verify
Ask: "Summarise my last 5 Strava runs — distance, pace and elevation." Real activity data back means OAuth and scopes are working.
Common problems
- Browser auth never completes — the callback domain must be
localhost; check the app settings. 401 unauthorized— wrong Client ID/Secret, or you declined the scope. Re-run and approve read access.- No tools in client —
npxneeds Node 18+; see Cursor MCP not working. - Rate limits — Strava caps API calls; heavy analysis sessions may pause.
Security
A Strava token exposes your location history and training data. Keep the Client Secret private, grant read-only scope, and review any community server before running it — see how to vet an MCP server.
Going further
Strava pairs well with a filesystem or spreadsheet server for exporting training logs. Browse curated loadouts, or if you maintain a Strava server, submit it to Loadout.