Skip to main content

strava-mcp-agent

Give Claude access to your Strava data. An MCP server that exposes your runs, rides, swims, and all Strava metrics as tools for AI-powered coaching, analysis, and conversation.


What it does

strava-mcp-agent connects your Strava account to any MCP-compatible client (Claude Desktop, Claude Code, etc.) and provides 13 tools covering every aspect of your athletic data:

Tool Description
get_athlete Your profile — name, weight, FTP, bio
get_athlete_stats All-time & recent totals for run/bike/swim
list_activities Browse activities with date/type filtering
get_activity Full detail for one activity (splits, HR, cadence, weather)
get_activity_zones Heart-rate and power zone distribution
get_activity_laps Per-lap pace, HR, and distance breakdown
get_activity_streams Raw sensor data (GPS, HR, cadence, watts, altitude)
get_starred_segments Your starred segments
get_segment_efforts Efforts on a specific segment
get_routes Routes you've created
get_gear Shoe/bike details and mileage
get_clubs Clubs you belong to
get_running_summary AI-ready coaching summary (weekly mileage, pace trends, best efforts, HR stats)

Quick Start

Step 1: Install

pip install strava-mcp-agent

Step 2: Create a Strava API app (one time)

Go to strava.com/settings/api and fill in:

Field What to enter
Application Name Anything (e.g. My Claude MCP)
Category Pick any
Club Leave blank
Website http://localhost
Authorization Callback Domain localhost

The callback domain must be localhost — this is what allows the setup wizard to receive the authorization code on your machine.

Click Create. On the next page, copy your Client ID (a number like 123456) and Client Secret (a long code like abc123def456...).

Step 3: Run the setup wizard

strava-mcp-token

It will:

  1. Ask for your Client ID and Client Secret
  2. Open your browser — click Authorize on the Strava page
  3. Auto-detect your OS (macOS / Linux / Windows)
  4. Find the Python that has the package installed
  5. Write the Claude Desktop config file for you

Step 4: Restart Claude Desktop

That's it. Your 13 Strava tools are ready. Just ask Claude about your runs.

Manual setup (if you prefer)

Click to expand

Add to your Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "strava": {
      "command": "strava-mcp",
      "env": {
        "STRAVA_CLIENT_ID": "your_client_id",
        "STRAVA_CLIENT_SECRET": "your_client_secret",
        "STRAVA_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Usage Examples

Once connected, just talk to Claude:

  • "How was my running this month?"
  • "Compare my last 5 runs — am I getting faster?"
  • "What's my average heart rate on long runs vs tempo runs?"
  • "Show me my weekly mileage trend for the past 2 months"
  • "What gear has the most miles on it?"

The get_running_summary tool is especially powerful for coaching — it computes weekly mileage, pace trends, best 5K/10K efforts, and heart rate stats, all in one call.

Security

Credentials are loaded from environment variables only — never hardcoded. The server uses Strava's OAuth2 refresh token flow and automatically handles token renewal.

Requirements

  • Python 3.10+
  • A Strava account with API access
  • MCP-compatible client (Claude Desktop, Claude Code, etc.)

License

MIT

Metadata

Release files for strava-mcp-agent 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for strava-mcp-agent 0.2.0
File Size Uploaded Provenance
strava_mcp_agent-0.2.0.tar.gz 19.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for strava-mcp-agent 0.2.0
File Interpreter ABI Platform
strava_mcp_agent-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 36.1 kB

Release files / strava_mcp_agent-0.2.0.tar.gz

Download URL strava_mcp_agent-0.2.0.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
931ff561c2fec104102b80b03716db4492aaa9ac312bdb91ad6c8d3377942238
BLAKE2b-256 checksum
How to use checksums
0925c037f5c7dde82be3d5186cd7ed438a35b5566994706fa128ec1410aa5a7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / strava_mcp_agent-0.2.0-py3-none-any.whl

Download URL strava_mcp_agent-0.2.0-py3-none-any.whl
Size 16.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fbf4a7b43209ce8f549428f6fda4424f867798a14056a742d82b5d74aecb86e2
BLAKE2b-256 checksum
How to use checksums
ac5a3b9f2d675b91f4d857f293aff4609fbdde1971d77c98a799e8cb0ac8cec4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Security for strava-mcp-agent 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page