This is a Model Context Protocol (MCP) server that supports remote MCP connections, with Strava OAuth built-in. It allows users to connect to your MCP server by signing in with their Strava account. The MCP server (powered by Cloudflare Workers) serves two roles: - Acts as an OAuth Server for your MCP clients - Acts as an OAuth Client for Strava's OAuth services This project serves as a reference
Add this skill
npx mdskills install kw510/strava-mcpComprehensive MCP server with 24+ tools for analyzing Strava fitness data through natural language queries
This is a Model Context Protocol (MCP) server that supports remote MCP connections, with Strava OAuth built-in. It allows users to connect to your MCP server by signing in with their Strava account.
The MCP server (powered by Cloudflare Workers) serves two roles:
This project serves as a reference example for integrating OAuth providers with an MCP server deployed to Cloudflare, using the workers-oauth-provider library.
npm install -g wrangler)Clone the repository:
git clone https://github.com/kw510/strava-mcp.git
cd strava-mcp
npm install
Set up your Strava API credentials (see Setting Up Strava API Credentials)
Set up your Cloudflare KV namespace:
wrangler kv:namespace create "OAUTH_KV"
Update the wrangler.toml file with the generated KV ID.
Deploy to Cloudflare:
wrangler deploy
Go to Strava's API Settings and create a new application
Configure your application:
mcp-strava-oauth..workers.devhttps://mcp-strava-oauth..workers.dev/callbackSet your production environment variables:
wrangler secret put STRAVA_CLIENT_ID
wrangler secret put STRAVA_CLIENT_SECRET
Create a separate Strava API application for development
Configure your development application:
localhosthttp://localhost:8788/callbackCreate a .dev.vars file in your project root:
STRAVA_CLIENT_ID=your_development_strava_client_id
STRAVA_CLIENT_SECRET=your_development_strava_client_secret
Install the Inspector tool:
npx @modelcontextprotocol/inspector@latest
Connect to your server:
https://mcp-strava-oauth..workers.dev/ssehttp://localhost:8788/sse{
"mcpServers": {
"strava": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp-strava-oauth..workers.dev/sse"
]
}
}
}
Start the development server:
wrangler dev
The server will be available at http://localhost:8788
The Strava API has the following rate limits:
The OAuth Provider library handles:
Provides:
this.propsEnables:
Install via CLI
npx mdskills install kw510/strava-mcpModel Context Protocol (MCP) Server + Strava OAuth is a free, open-source AI agent skill. This is a Model Context Protocol (MCP) server that supports remote MCP connections, with Strava OAuth built-in. It allows users to connect to your MCP server by signing in with their Strava account. The MCP server (powered by Cloudflare Workers) serves two roles: - Acts as an OAuth Server for your MCP clients - Acts as an OAuth Client for Strava's OAuth services This project serves as a reference
Install Model Context Protocol (MCP) Server + Strava OAuth with a single command:
npx mdskills install kw510/strava-mcpThis downloads the skill files into your project and your AI agent picks them up automatically.
Model Context Protocol (MCP) Server + Strava OAuth works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Gemini Cli, Amp, Roo Code, Goose. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.