strava-mcp
Integrates with Strava to fetch and analyze running activities, including recent runs, weekly mileage, and pace trends for marathon training.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@strava-mcpWhat's my weekly mileage?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Strava MCP Server
A Model Context Protocol (MCP) server that integrates Strava data for marathon coaching and training analysis. This server enables Claude Desktop to access your Strava activities and provide personalized running insights.
Features
Recent Activity Analysis - Fetch and analyze your recent running activities
Weekly Mileage Tracking - Calculate weekly mileage totals and trends
Pace Trend Analysis - Analyze pace improvements and patterns over time
Automatic Token Management - Handles Strava API token refresh automatically
Related MCP server: Strava MCP Server
Quick Setup
1. Prerequisites
Python 3.8 or higher
Strava account with API access
Claude Desktop application
2. Clone and Install
git clone <repository-url>
cd strava-mcp
pip install -r requirements.txt3. Configure Strava API
Create a Strava API application at developers.strava.com
Copy
.env-templateto.env:cp .env-template .envFill in your actual Strava API credentials in
.env:STRAVA_CLIENT_ID=your_actual_client_id STRAVA_CLIENT_SECRET=your_actual_client_secret STRAVA_REFRESH_TOKEN=your_actual_refresh_token
4. Test the Server
python strava_mcp_server.pyThe server should start without errors. Press Ctrl+C to stop it.
5. Configure Claude Desktop
Add this configuration to your Claude Desktop MCP settings:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"strava-marathon-coach": {
"command": "python",
"args": ["/absolute/path/to/strava_mcp_server.py"],
"env": {
"STRAVA_CLIENT_ID": "your_client_id",
"STRAVA_CLIENT_SECRET": "your_client_secret",
"STRAVA_REFRESH_TOKEN": "your_refresh_token"
}
}
}
}Important: Use the absolute path to your strava_mcp_server.py file.
6. Restart Claude Desktop
Restart Claude Desktop completely for the MCP server to be recognized.
Available Tools
Tool | Description | Default Parameters |
| Fetches recent running activities | Last 30 days |
| Calculates weekly mileage totals | Last 4 weeks |
| Analyzes pace trends over time | Last 30 days |
Usage Examples
Once configured, ask Claude:
"What are my recent runs?"
"Show me my weekly mileage for the past 4 weeks"
"Analyze my pace trends"
"How is my marathon training progressing?"
Security Notes
Never commit your
.envfile to version controlKeep your Strava API credentials secure
The
.env-templatefile shows the required format but contains example values only
Troubleshooting
Server Won't Start
Verify all environment variables are set in
.envCheck Python package installation:
pip install -r requirements.txtValidate Strava API credentials
Claude Can't Connect
Ensure absolute path in Claude Desktop config
Verify environment variables in config match your actual credentials
Restart Claude Desktop after config changes
Check Claude Desktop logs for connection errors
API Errors
Refresh token may be expired - re-authorize your Strava app
Verify your Strava API app has "read activities" permissions
Contributing
Fork the repository
Create a feature branch
Make your changes
Test thoroughly
Submit a pull request
License
MIT License - see LICENSE file for details
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceConnects Claude to the Strava API to provide direct access to fitness data, including athlete statistics, detailed activity logs, and time-series performance metrics. It enables users to analyze training progress, compare workouts, and retrieve specific segment details through natural language queries.836ISC
- AlicenseAqualityDmaintenanceConnects Claude to your Strava account for analyzing training, predicting race times, and generating periodized training plans via natural language.1336ISC
- Flicense-qualityBmaintenanceConnects Claude to Garmin Connect data for personalized running coaching, including morning readiness checks, post-run analysis, weekly reviews, and goal tracking.
- AlicenseAqualityDmaintenanceConnects Strava training data to Claude, enabling personalized coaching through analysis of training load, workout planning, gear maintenance, and power metrics.10MIT
Related MCP Connectors
Garmin data in Claude & ChatGPT via the Garmin Health API. OAuth sign-in, no password sharing.
Garmin data in Claude: 135 tools — activities, sleep, HRV, training, workouts. Free, open source.
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mdecesare13/strava-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server