Get the FREE Ultimate OpenClaw Setup Guide →

mcp-strava

The MCP Strava Server facilitates seamless integration between Strava APIs and Claude for Desktop.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
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:

  1. Clone the repository: git clone https://github.com/MariyaFilippova/mcp-strava.git cd mcp-strava

  2. Configure Strava API credentials: Create a file at src/main/resources/.env with: CLIENT_ID="your-client-id" CLIENT_SECRET="your-client-secret"

  3. 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

  4. 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" ] } } }

  5. Run the server (via an MCP runner/launcher or your preferred method): java -jar build/libs/strava-mcp-server-2.1.0-all.jar

  6. Ensure environment variables are loaded (CLIENT_ID, CLIENT_SECRET) for Strava OAuth.

  7. 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

Sponsor this space

Reach thousands of developers