mcp-strava
The MCP Strava Server facilitates seamless integration between Strava APIs and Claude for Desktop.
claude mcp add --transport stdio mariyafilippova-mcp-strava java -jar /absolute/path/to/mcp-strava/build/libs/strava-mcp-server-2.1.0-all.jar \ --env CLIENT_ID="your-strava-client-id" \ --env CLIENT_SECRET="your-strava-client-secret" \ --env OAUTH_REDIRECT_URI="http://localhost:8080/oauth/callback"
How to use
This MCP server integrates Strava with Claude for Desktop, enabling AI-powered analysis of your Strava activities. Once configured, Claude can authorize access to Strava, fetch your activities, and provide insights such as recent activity details, overall statistics, and generated routes. The server exposes tools for authenticating with Strava, retrieving individual activities, listing recent activities, filtering by type, and accessing rich data streams like heart rate, pace, altitude, cadence, power, and GPS. You can also generate suggested routes and discover popular Strava segments nearby to build routes through them. To use these capabilities, you’ll first authorize the Strava connection, then interact with Claude’s MCP-enabled prompts to call these tools (for example, asking for the latest activity, a route suggestion, or your weekly summary).
How to install
Prerequisites:
- Java (JDK 11+) installed on your system
- Git installed
- Strava API credentials (Client ID and Client Secret)
Step-by-step:
-
Clone the repository: git clone https://github.com/MariyaFilippova/mcp-strava.git cd mcp-strava
-
Configure Strava API credentials: Create a file at src/main/resources/.env with: CLIENT_ID="your-client-id" CLIENT_SECRET="your-client-secret"
-
Build the project into an executable JAR: ./gradlew shadowJar The resulting JAR will be at: build/libs/strava-mcp-server-2.1.0-all.jar
-
Prepare Claude for Desktop (example shown in README): Edit Claude’s configuration to include the MCP server, using the following example: { "mcpServers": { "strava": { "command": "java", "args": [ "-jar", "/absolute/path/to/mcp-strava/build/libs/strava-mcp-server-2.1.0-all.jar" ] } } }
-
Run the server (via an MCP runner/launcher or your preferred method): java -jar build/libs/strava-mcp-server-2.1.0-all.jar
-
Ensure environment variables are loaded (CLIENT_ID, CLIENT_SECRET) for Strava OAuth.
-
Open Claude for Desktop and reconnect if needed to ensure the MCP server is discoverable.
Additional notes
Tips and notes:
- OAuth tokens are persisted to the local file system (as described in the README) and refreshed automatically when expired. If you need to switch accounts, use the logout tool to clear tokens.
- Ensure the Strava credentials (CLIENT_ID and CLIENT_SECRET) are present in the environment or in a .env file loaded by your run environment.
- The server exposes a rich set of tools (see the Available Tools list in the README). You can fetch activity details, streams, laps, and run analyses, or generate routes using suggest_route and popular_routes.
- When configuring Claude for Desktop, provide the absolute path to the built JAR in the mcpServers configuration.
- If you encounter OAuth redirects or browser prompts, make sure the redirect URI in your Strava app matches the OAUTH_REDIRECT_URI you’ve configured in the environment.
- For testing, use recent activities first to verify streams, laps, and route generation features before running historical comparisons.
Related MCP Servers
spec-kit
MCP server enabling AI assistants to use GitHub's spec-kit methodology
israel-drugs
MCP server from DavidOsherdiagnostica/israel-drugs-mcp-server
agent-board
Open-source multi-agent task board for OpenClaw. Kanban + DAG dependencies + MCP server + auto-retry + audit trail. Built for autonomous AI agent teams.
create -kit
Scaffold a production-ready Model Context Protocol (MCP) server in seconds.
miro
MCP server for controlling Miro whiteboards with AI assistants
storybook
MCP server for Storybook - provides AI assistants access to components, stories, properties and screenshots. Built with TypeScript and Model Context Protocol SDK.