Strava Planning MCP Server for LlamaIndex 14 tools — connect in under 2 minutes
LlamaIndex specializes in data-aware AI agents that connect LLMs to structured and unstructured sources. Add Strava Planning as an MCP tool provider through Vinkius and your agents can query, analyze, and act on live data alongside your existing indexes.
ASK AI ABOUT THIS MCP SERVER
Vinkius supports streamable HTTP and SSE.
import asyncio
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
async def main():
# Your Vinkius token. get it at cloud.vinkius.com
mcp_client = BasicMCPClient("https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp")
mcp_tool_spec = McpToolSpec(client=mcp_client)
tools = await mcp_tool_spec.to_tool_list_async()
agent = FunctionAgent(
tools=tools,
llm=OpenAI(model="gpt-4o"),
system_prompt=(
"You are an assistant with access to Strava Planning. "
"You have 14 tools available."
),
)
response = await agent.run(
"What tools are available in Strava Planning?"
)
print(response)
asyncio.run(main())
* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure
About Strava Planning MCP Server
Connect Strava Planning to any AI agent and manage your training logistics — route creation, GPX/TCX export, manual activity logging, gear tracking, segment favoriting, and profile management.
LlamaIndex agents combine Strava Planning tool responses with indexed documents for comprehensive, grounded answers. Connect 14 tools through Vinkius and query live data alongside vector stores and SQL databases in a single turn. ideal for hybrid search, data enrichment, and analytical workflows.
What you can do
- Route Management — List, view, and analyze all your saved routes with distance, elevation, and descriptions
- Route Streams — Get GPS coordinates, elevation profiles, and distance data for any route
- Route Export — Export routes to GPX and TCX formats for GPS devices (Garmin, Wahoo, etc.)
- Manual Activity Creation — Log activities not recorded by Strava (gym, yoga, cross-training) with full details
- Activity Updates — Edit activity names, descriptions, assign gear, mark commutes or indoor sessions
- File Uploads — Upload FIT, TCX, or GPX files for processing by Strava with status tracking
- Segment Management — Star (favorite) or unstar segments for quick training access
- Athlete Profile — View and update your profile information including weight for accurate power-to-weight ratios
- Athlete Zones — Review your heart rate and power zone configurations
- Gear Details — Track equipment mileage, models, and primary gear assignments
The Strava Planning MCP Server exposes 14 tools through the Vinkius. Connect it to LlamaIndex in under two minutes — no API keys to rotate, no infrastructure to provision, no vendor lock-in. Your configuration, your data, your control.
How to Connect Strava Planning to LlamaIndex via MCP
Follow these steps to integrate the Strava Planning MCP Server with LlamaIndex.
Install dependencies
Run pip install llama-index-tools-mcp llama-index-llms-openai
Replace the token
Replace [YOUR_TOKEN_HERE] with your Vinkius token
Run the agent
Save to agent.py and run: python agent.py
Explore tools
The agent discovers 14 tools from Strava Planning
Why Use LlamaIndex with the Strava Planning MCP Server
LlamaIndex provides unique advantages when paired with Strava Planning through the Model Context Protocol.
Data-first architecture: LlamaIndex agents combine Strava Planning tool responses with indexed documents for comprehensive, grounded answers
Query pipeline framework lets you chain Strava Planning tool calls with transformations, filters, and re-rankers in a typed pipeline
Multi-source reasoning: agents can query Strava Planning, a vector store, and a SQL database in a single turn and synthesize results
Observability integrations show exactly what Strava Planning tools were called, what data was returned, and how it influenced the final answer
Strava Planning + LlamaIndex Use Cases
Practical scenarios where LlamaIndex combined with the Strava Planning MCP Server delivers measurable value.
Hybrid search: combine Strava Planning real-time data with embedded document indexes for answers that are both current and comprehensive
Data enrichment: query Strava Planning to augment indexed data with live information before generating user-facing responses
Knowledge base agents: build agents that maintain and update knowledge bases by periodically querying Strava Planning for fresh data
Analytical workflows: chain Strava Planning queries with LlamaIndex's data connectors to build multi-source analytical reports
Strava Planning MCP Tools for LlamaIndex (14)
These 14 tools become available when you connect Strava Planning to LlamaIndex via MCP:
create_activity
Required: name (activity name), type (activity type like "Run", "Ride", "Swim", "Walk", "Hike"), startDate (ISO 8601 format), elapsedTime (seconds). Optional: description, distance (meters). Use this to log activities recorded outside of Strava (gym workouts, yoga, cross-training, etc.). Activity types must match Strava's valid types list. Create a manual activity in Strava
export_route_gpx
GPX files can be downloaded and loaded onto GPS devices (Garmin, Wahoo, etc.) for navigation. The routeId is from Strava route URLs. Use this to export routes to your GPS device for guided training. Get the GPX export URL for a Strava route
export_route_tcx
TCX files include route data with additional training metadata. Compatible with Garmin Training Center and other fitness platforms. Use this to export routes with training metadata. Get the TCX export URL for a Strava route
get_athlete
Use this to review personal profile details, check equipment assignments, or verify account settings. Get the authenticated athlete's profile information
get_athlete_zones
Required for zone-based training analysis. Use this to review training zones, ensure zones are correctly set, or use zone data for activity analysis. Get the athlete's custom heart rate and power zones
get_gear
The gearId is found in activity data or athlete profile. Use this to check equipment mileage for maintenance planning or to analyze performance with specific gear. Get details about a piece of equipment (bike, shoes) tracked in Strava
get_route
The routeId is found in Strava route URLs. Use this to review route characteristics before training or to plan similar routes. Get detailed information about a specific Strava route
get_route_streams
The "types" parameter is comma-separated: "latlng", "altitude", "distance". Use this to preview a route's elevation profile, understand the terrain, or export GPS data for navigation. Get elevation and GPS data streams for a Strava route
get_upload_status
Status values: "Your activity is ready" (success), "Your activity is still processing" (wait and retry), or error messages. The uploadId is returned by upload_activity. Poll this endpoint every 5-10 seconds after upload until ready. Check the status of a Strava activity upload
list_routes
Each route includes: name, distance, elevation gain, type (ride/run), description, and whether it's private. Use this to review saved routes, plan upcoming workouts, or export route data for GPS devices. List all routes created by the authenticated athlete
star_segment
Set starred=true to favorite, starred=false to unfavorite. The segmentId is from Strava segment URLs. Use this to manage your favorite segments for quick access and training focus. Star (favorite) or unstar a Strava segment
update_activity
The activityId is the numeric ID. Updatable fields: name, description, sport_type, gear_id (to assign equipment), commute (mark as commute: "true"/"false"), trainer (mark as indoor: "true"/"false"). Use this to correct activity details, assign gear, or add descriptions after the fact. Update an existing Strava activity
update_athlete
Currently only "weight" (in kg) is supported by the API. Accurate weight is important for power-to-weight ratio calculations and performance analysis. Use this when your weight changes to keep performance metrics accurate. Update the authenticated athlete's profile information
upload_activity
Supported data_type: "fit", "fit.gz", "tcx", "tcx.gz", "gpx", "gpx.gz". Returns an upload ID to check status with get_upload_status. Note: Actual file upload requires multipart/form-data with the file content. This endpoint initiates the process. Check upload status periodically — processing takes 10-60 seconds. Upload an activity file (FIT, TCX, GPX) to Strava for processing
Example Prompts for Strava Planning in LlamaIndex
Ready-to-use prompts you can give your LlamaIndex agent to start working with Strava Planning immediately.
"List all my saved routes."
"Export route 12345 to GPX format."
"Create a manual activity for today's gym session."
Troubleshooting Strava Planning MCP Server with LlamaIndex
Common issues when connecting Strava Planning to LlamaIndex through the Vinkius, and how to resolve them.
BasicMCPClient not found
pip install llama-index-tools-mcpStrava Planning + LlamaIndex FAQ
Common questions about integrating Strava Planning MCP Server with LlamaIndex.
How does LlamaIndex connect to MCP servers?
Can I combine MCP tools with vector stores?
Does LlamaIndex support async MCP calls?
Connect Strava Planning with your favorite client
Step-by-step setup guides for every MCP-compatible client and framework:
Anthropic's native desktop app for Claude with built-in MCP support.
AI-first code editor with integrated LLM-powered coding assistance.
GitHub Copilot in VS Code with Agent mode and MCP support.
Purpose-built IDE for agentic AI coding workflows.
Autonomous AI coding agent that runs inside VS Code.
Anthropic's agentic CLI for terminal-first development.
Python SDK for building production-grade OpenAI agent workflows.
Google's framework for building production AI agents.
Type-safe agent development for Python with first-class MCP support.
TypeScript toolkit for building AI-powered web applications.
TypeScript-native agent framework for modern web stacks.
Python framework for orchestrating collaborative AI agent crews.
Leading Python framework for composable LLM applications.
Data-aware AI agent framework for structured and unstructured sources.
Microsoft's framework for multi-agent collaborative conversations.
Connect Strava Planning to LlamaIndex
Get your token, paste the configuration, and start using 14 tools in under 2 minutes. No API key management needed.
