Strava Training MCP

io.github.ArjanLigPublished by GitHub account ArjanLigv0.3.2Updated Oct 24, 2026

Connect Strava training data to Claude for training load analysis and activity insights

VerifiedSTDIODesktop onlyLocation & LifestyleData & Analytics

Overview

AI-generated overview

Connects Strava training data to Claude so it can analyze training load, activity metrics and gear wear for cycling and running.

What you can do
Read recent activities and detailed metrics such as power, heart rate, speed and suffer score for a single activity. Analyze training load with ATL, CTL, TSB, trends and weekly volume statistics. Generate a weekly training plan based on current fitness and fatigue. Review power curve, FTP estimate and heart-rate zone distribution and cardiac drift. Check workout quality for interval consistency, power decoupling and recovery. Track gear mileage with maintenance warnings for chains, cassettes, tires and cables.
When to use it
Useful for athletes who log cycling, running or other sports on Strava and want an assistant to interpret training load, plan sessions, review interval workouts or flag gear replacement.
Requirements
A local process run with uvx from the PyPI package. A free Strava API app with Client ID and Client Secret, entered through the connector's authorization page, and the callback domain set to the server's hosted domain. Network access to Strava.
Before you install
Requires your Strava API Client ID and Client Secret, which are entered on a third-party hosted page. Training data is sent to that hosted service and to the AI assistant. The weekly plan is a heuristic, not coaching advice, and training load underestimates fatigue from strength work or low-heart-rate activity.

Installation

In SourceWeft

  1. Open Strava Training MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Strava MCP Server

[MCP Badge]

Connect your Strava training data to Claude. This MCP server turns Claude into your personal training coach — analyzing your training load, planning workouts, and tracking your progress. Works with cycling, running, and any sport you track on Strava.

[Strava MCP]

Install

Works with Claude Desktop and claude.ai on any plan. Free plans can add 1 custom connector (remove any existing connector first), Pro and Max are unlimited.

1. Create a Strava API app

This takes about 2 minutes. You need a free Strava API app so Claude can access your data.

  1. Go to strava.com/settings/api
  2. Fill in the form — Application Name, Category, and Description can be anything (e.g. "My Claude connector")
  3. Set Authorization Callback Domain to strava-mcp-web.vercel.app
  4. Click Create and note your Client ID and Client Secret

2. Add the connector

  1. Open Claude Desktop or claude.ai
  2. Go to Settings → Connectors → Add custom connector
  3. Paste this URL and save:
https://strava-mcp-web.vercel.app/mcp

3. Connect

Click Connect on the newly added connector. This opens a page where you enter your Strava Client ID and Client Secret, then authorize with Strava.

That's it! Ask Claude about your training.

Tools

The server exposes 10 tools:

ToolDescription
get_recent_activitiesYour last activities with distance, duration, and heart rate
get_activity_detailsDeep dive into a specific activity — power, HR, speed, suffer score
get_training_load_analysisATL, CTL, TSB with training advice and 8-week trends
get_weekly_statsWeekly volume — activities, kilometers, hours
get_weekly_training_planWeekly plan based on current fitness and fatigue
get_gear_maintenanceBike/shoe km totals with chain, cassette, tire warnings
get_power_curveBest power outputs (5s–60min), FTP estimate, monthly comparison
get_hr_zone_distributionTime in each HR zone with polarized training advice
get_hr_drift_analysisCardiac drift in steady rides — aerobic efficiency indicator
check_workout_qualityInterval consistency, power decoupling, recovery scoring

Example conversations

"I want to ride tonight, what should I do?" "How is my training load looking?" "Check the quality of my last interval workout" "When do I need to replace my chain?" "What's my FTP and how does it compare to last month?" "Am I spending enough time in zone 2?" "I'm training for a 150km race in April — am I on track?"

How it works

Claude pulls your Strava data in real-time and reasons about it in context — your recent rides, fitness trend, fatigue level, and goals.

Training load analysis uses the standard PMC model:

  • ATL (7-day) — how tired you are now
  • CTL (42-day) — your fitness level
  • TSB — CTL minus ATL. Positive = fresh, negative = fatigued
  • Ramp rate — week-over-week load change, with injury risk warnings

Gear maintenance tracks km on each bike and shoe, warning when chain (3000km), cassette (6000km), tires (5000km), or cables (8000km) need attention.

Power curve finds your best efforts across durations and estimates FTP at 95% of your 20-minute power.

HR analysis covers zone distribution (are you polarizing enough?) and cardiac drift (is your aerobic base improving?).

Limitations

  • Training load uses suffer score / HR — it underestimates fatigue from strength training or activities where HR stays low
  • Power features require a power meter or smart trainer
  • The weekly plan is a heuristic, not a replacement for a certified coach

Troubleshooting

Connector not working? Remove and re-add the connector in Settings → Connectors.

Authentication error? Check that your Strava API app has strava-mcp-web.vercel.app as the callback domain.

Website

strava-mcp-web.vercel.app

Built with

License

MIT

Source: README.md at commit a90c87e

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.3.2LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts