Интеграция Strava API с Model Context Protocol (MCP) SDK
@rbctmz
Интеграция Strava API с Model Context Protocol SDK
Overview
What is Интеграция Strava API с Model Context Protocol (MCP) SDK?
This server integrates the Strava API with the Model Context Protocol (MCP) SDK, enabling AI assistants to analyze workouts and provide training recommendations based on the user’s Strava data. It is intended for athletes and developers who want to leverage Strava activity data within MCP‑compatible clients such as Claude Desktop.
How to use Интеграция Strava API с Model Context Protocol (MCP) SDK?
Clone the repository, install dependencies with uv, create a Strava API application, configure environment variables (.env), run python scripts/auth.py to obtain tokens, and then start the server with mcp dev src/server.py. Resources are accessed via URIs like strava://activities and tools such as analyze_activity(activity_id).
Key features of Интеграция Strava API с Model Context Protocol (MCP) SDK
- Analyze workouts from Strava
- Generate training recommendations
- Automatic token refresh
- Rate limiting for API requests
Use cases of Интеграция Strava API с Model Context Protocol (MCP) SDK
- Retrieve a list of recent activities for review
- Analyze a specific activity to get pace, effort, and metrics
- Compute training load summary with distance, time, and heart rate zones
- View athlete’s heart rate and power training zones
- Obtain recommendations for future workouts
FAQ from Интеграция Strava API с Model Context Protocol (MCP) SDK
What does this server do?
It connects Strava’s training data to MCP tools for analyzing activities, calculating training load, and offering recommendations.
What are the dependencies?
Python 3.10+, Claude Desktop, a Strava account, and uv (recommended).
How do I authenticate with Strava?
Create a Strava API application, set STRAVA_CLIENT_ID and STRAVA_CLIENT_SECRET in your .env file, then run python scripts/auth.py to obtain and store the refresh token.
What are the API rate limits?
The server enforces a limit of 100 requests per 15 minutes.
Where are tokens stored?
Tokens are stored in a local .env file, which should be added to .gitignore. For CI/CD, secrets can be set via GitHub Secrets.