mcp-strava
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pingA | A simple test tool that verifies the server is running |
| get_athlete_profileA | Get authenticated athlete's Strava profile. Returns: name, username, bio, location, weight, premium status, measurement preferences. |
| get_athlete_statsA | Get aggregated activity statistics by sport type. Returns: recent (4 weeks), YTD, all-time totals for ride/run/swim. Each: count, distance (m), moving_time (s), elevation_gain (m). |
| list_activitiesA | List activities with filtering and pagination. Returns: id, name, type, sport_type, start_date, distance (m), moving_time (s), elapsed_time (s), total_elevation_gain (m), average_speed (m/s), heartrate, watts. Use week_offset for calendar weeks (0=this week, -1=last week). Monday-Sunday. |
| get_activity_detailA | Get activity metadata by ID. Returns: name, description, splits, laps, segment_efforts, gear, calories. segment_efforts contains Strava segments from THIS activity only (no historical data). For segment analysis over time, pass segment_efforts[].id to get_segment_effort_streams. For full activity time-series, use get_activity_streams. |
| get_athlete_zonesA | Get athlete's configured HR and power zones from Strava. Returns: heart_rate.zones[], power.zones[] with min/max for each zone. Requires profile:read_all scope. |
| get_activity_zonesB | Get zone distribution for an activity (heart rate, pace, power). Returns zone boundaries, time in seconds, and percentage per zone. For activity-specific zone analysis with time/ratios. |
| get_segment_effort_streamsA | Analyze a Strava segment with full historical comparison. ONE call returns EVERYTHING: segment info, current effort stats, AND comparison with ALL previous attempts (best_time, average_time, total_efforts, rank, previous_efforts list). No need to list_activities - this tool automatically fetches all historical data. Use when user asks about segment history, progress, PRs, or performance over time. Input: segment_effort_id from get_activity_detail's segment_efforts array. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
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/adrienlupo/mcp-strava'
If you have feedback or need assistance with the MCP directory API, please join our Discord server