auth_stravaLABSCO SUMMARY
Training data deep enough to answer why, not only how far.
Most Strava integrations stop at the activity summary. The stream, lap and best-effort tools go underneath it — heart rate against altitude across a run, the split where the pace fell apart, whether that 5k actually was a PR — which is what makes the analysis conversation worth having. The route tools point the other way and produce something to do next, as a Google Maps link rather than a file to import.
What it is
A Java server for Strava. It reads activities and the data streams underneath them, summarises training by week, by month or year over year, and generates round-trip routes as Google Maps links.
What you get
- Your most recent activity, any activity by its ID, the last 10, or a paginated search across a date range
- The full data streams for an activity — heart rate, pace, altitude, cadence, power, GPS
- Lap splits with distance, time, speed, elevation and heart rate for each lap
- Personal best efforts on a run — 400m, 1k, 1 mile, 5k, 10k — with pace and PR ranking
- All-time statistics across rides, runs and swims, plus summaries of the last 7 days, the last 30, or a named month and year
- Two months compared directly, such as January 2025 against January 2026
- Activities filtered by sport type
- A round-trip route of the distance you ask for, handed back as a Google Maps link with no maps API key needed
- Popular Strava segments near a place, assembled into a Google Maps loop through them
- A logout that clears the stored tokens when you need to switch accounts
Requirements
A Strava API application: CLIENT_ID and CLIENT_SECRET from strava.com/settings/api, written into src/main/resources/.env. Build with ./gradlew shadowJar and point your client at the resulting jar through java -jar. On first use it opens a browser for Strava authorisation; the tokens land in ~/.strava-mcp-token.json and refresh themselves when they expire.
Setup effort
Build from source — git clone https://github.com/MariyaFilippova/mcp-strava.git
USE CASES
Working out what happened on that run
Pull the activity, then its data streams and lap splits to see where heart rate and pace came apart.
Checking whether you are actually improving
Compare the same month across two years, and read the all-time statistics beside it.
Reviewing the week
Summarise the last 7 days, filtered to one sport if you train in more than one.
Settling whether that was a personal best
Read the best efforts on the run — 400m through 10k — with pace and PR ranking.
Deciding where to run today
Generate a round trip of the distance you want from a starting point and take the Google Maps link.
Running where other people run
Find the popular segments near a location and get a loop that strings them together.
Digging up something from months ago
Search activities across a date range with pagination instead of scrolling the feed.
18 tools
Listed in project docs. Your client may show a different list.
logoutlast_activityget_activityrecent_activitiessearch_activitiesathlete_statsactivities_by_typeweekly_summarymonthly_summarymonth_summarycompare_monthsget_streamsget_activity_streamsget_lapsget_best_effortssuggest_routepopular_routesBEFORE YOU INSTALL
What to know first
Tools you get
18 tools named in the project's documentation.
Requires
- Java 21 (JDK) — the Gradle build targets jvmToolchain(21), and the jar runs with java
- A Strava API application: CLIENT_ID and CLIENT_SECRET from strava.com/settings/api, written into src/main/resources/.env before building
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/MariyaFilippova/mcp-strava.git
cd mcp-stravaCreate src/main/resources/.env with your Strava API application's credentials, from https://www.strava.com/settings/api:
CLIENT_ID="<YOUR_CLIENT_ID>"
CLIENT_SECRET="<YOUR_CLIENT_SECRET>"./gradlew shadowJarMCP Clients
Claude Desktop
{
"mcpServers": {
"strava": {
"command": "java",
"args": [
"-jar",
"<YOUR_PATH_TO_MCP_STRAVA>/build/libs/strava-mcp-server-2.1.0-all.jar"
]
}
}
}