mcpField
M
MCP Strava Server

MCP Strava Server

Local
github.com/MariyaFilippovaHealth21Updated 14w ago

About MCP Strava Server

MCP Strava Server is an MCP server that connects Strava to Claude for Desktop for AI-assisted analysis of fitness activities. It is aimed at Strava users who want to query their training data in natural language.

Key features

  1. 01Streams for heart rate, pace, altitude and power
  2. 02Per-lap split data for any activity
  3. 03Personal best efforts ranked from 400m to 10k
  4. 04Paginated activity search by date range
  5. 05Round-trip route suggestions with Google Maps links

Use cases

  1. 01Comparing training volume across months or years
  2. 02Analyzing heart rate and elevation for a recent run
  3. 03Finding popular running or cycling routes nearby

MCP support

This project is an MCP server that exposes Strava activity, statistics and route tools to MCP clients such as Claude for Desktop.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP Strava Server

Screenshot 2026-03-05 at 15 53 28

A Model Context Protocol (MCP) server that integrates Strava with Claude for Desktop, enabling AI-powered analysis of your fitness activities.

Features

  • ⭐ Route Generation - suggest round-trip routes with a Google Maps link (no API key needed)
  • ⭐ Popular Routes - discover popular Strava segments nearby and get a Google Maps loop through them
  • OAuth Authentication with automatic token refresh and persistence
  • Activity Analysis - get details on any activity by ID, or browse recent ones
  • Data Streams - heart rate, pace, altitude, cadence, power, GPS for any activity
  • Lap Splits - per-lap distance, time, speed, elevation, and heart rate
  • Personal Best Efforts - fastest 400m, 1k, 1 mile, 5k, 10k, etc. for a run, with pace and PR ranking
  • Paginated Search - find activities by date range with full pagination
  • Historical Comparisons - compare months year-over-year
  • Statistics - all-time stats, weekly/monthly summaries
  • Filtering - by activity type (Run, Ride, Swim, etc.)

Available Tools

ToolDescription
auth_stravaAuthorize with Strava (opens browser)
logoutClear stored tokens to switch accounts
last_activityGet details of your most recent activity
get_activityFetch any activity by its ID
recent_activitiesList last 10 activities
search_activitiesPaginated search with optional date range (before/after epoch, page, per_page)
athlete_statsAll-time statistics (rides, runs, swims)
activities_by_typeFilter activities by sport type
weekly_summarySummary of the past 7 days
monthly_summarySummary of the past 30 days
month_summarySummary for a specific month/year
compare_monthsCompare two months (e.g., Jan 2025 vs Jan 2026)
get_streamsHeart rate data for last activity
get_activity_streamsFull data streams (HR, pace, altitude, cadence, power, GPS, etc.) for any activity
get_lapsLap splits for any activity (distance, time, speed, elevation, HR)
get_best_effortsPersonal best efforts (400m, 1k, 1 mile, 5k, 10k, …) for a run, with pace and PR ranking
suggest_routeGenerate a round-trip route and get a Google Maps link for navigation
popular_routesFind popular Strava segments nearby and build a Google Maps route through them

Setup

1. Clone the Repository
git clone https://github.com/MariyaFilippova/mcp-strava.git
cd mcp-strava
2. Configure Strava API Credentials

Get your credentials from Strava API settings.

Create/edit src/main/resources/.env:

CLIENT_ID="your-client-id"
CLIENT_SECRET="your-client-secret"
3. Build the Project
./gradlew shadowJar

The JAR will be at: build/libs/strava-mcp-server-2.1.0-all.jar

4. Configure Claude for Desktop

Edit Claude's configuration file:

# macOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json

# Windows
code %APPDATA%\Claude\claude_desktop_config.json

Add the MCP server:

{
  "mcpServers": {
    "strava": {
      "command": "java",
      "args": [
        "-jar",
        "/absolute/path/to/mcp-strava/build/libs/strava-mcp-server-2.1.0-all.jar"
      ]
    }
  }
}

Restart Claude for Desktop.

Usage Examples

Once configured, you can ask Claude things like:

  • "Show me my recent Strava activities"
  • "What are my all-time running stats?"
  • "Compare my January 2025 with January 2026"
  • "Give me a summary of my cycling this week"
  • "How did my training this month compare to last month?"
  • "Show me the lap splits for activity 123456789"
  • "Analyze the heart rate and elevation data for my last run"
  • "Find all my activities from March 2025"
  • "Suggest a 5km running route starting from Central Park, NYC"
  • "Generate a 10km cycling route from 48.8566, 2.3522"
  • "Find popular running segments near Central Park, NYC"
  • "Show me popular cycling routes within 10km of Paris"

Authentication

On first use, the server will open your browser for Strava authorization. Tokens are persisted to ~/.strava-mcp-token.json and automatically refreshed when expired.

Use the logout tool to clear stored tokens if you need to switch accounts.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.