loading…
Search for a command to run...
loading…
BikeScout is a specialized MCP (Model Context Protocol) server designed for cyclists and mountain bikers. It provides intelligent trail recommendations by combi
BikeScout is a specialized MCP (Model Context Protocol) server designed for cyclists and mountain bikers. It provides intelligent trail recommendations by combining real-world map data with advanced routing analysis.
License: Apache 2.0
Version
PRs Welcome
Discord
Reddit
BikeScout is a specialized MCP server for MTB, Road, E-Bike, and Gravel mission planning. It transforms raw map data into Tactical Intelligence, predicting terrain conditions and trail hazards. The system provides precise setup advice, tailoring your equipment to the demands of the specific route, identifying technical challenges and environmental risks before you even leave the garage.
BikeScout Documentation The Technical Core. Detailed API references and step-by-step guides to deploy the MCP server. Essential for developers integrating BikeScout into Claude, ChatGPT, or custom AI agents.
Official Website The Strategic Hub. A high-level overview of our predictive algorithms. Explore the visual breakdown of Mud Logic, S-Scale terrain grading, and how we transform raw OSM data into mission-ready intel.
Tactical Intelligence Blog Field Reports & R&D. Stay ahead of the curve with our latest research on cycling AI, terrain analysis updates, and real-world testing of tactical routing logic.
Love BikeScout? ⭐ Star this repo to support the development of the first open-source tactical cycling engine.
Found a bug? Open an Issue. Want to add a local skill? PRs are welcome!
You can ask BikeScout complex, multi-step requests. It combines real-time data with technical cycling intelligence to provide expert-level answers.
[LAT, LON] for a 15km loop. I'm on a Road Bike with 25mm tires. Is it compatible? Give me the exact percentage of gravel vs asphalt."Pre Requirements:
C:\BikeScout or /Users/YourName/BikeScout)..env.example to .env and paste your API keys:ORS_API_KEY=your_ors_key_here
OPENAI_API_KEY=your_llm_key_here
docker-compose up -d
To teardown the environment, execute:
docker compose down -v
If you prefer a private and free experience without external API costs, use the docker-compose-ollama.yml
file to run BikeScout with Ollama (Llama 3/Mistral) instead of OpenAI.
Refer to this guide to setup a complete local installation with Ollama and Open WebUI.
Pre Requirements:
To enable Strava integration, you need to create a developer application and generate a long-lived Refresh Token:
See the related how to obtain a Strava key section
To integrate BikeScout with your preferred MCP client (Claude Desktop, Cline, Roo Code, etc.), add the following configuration to your settings file:
Clone the repo in a local folder:
git clone [email protected]:hifly81/bikescout.git <your_local_folder_path>
Create a Python Virtual Env from the local folder:
python3 -m venv venv
source venv/bin/activate
pip install bikescout
Add the server to your claude_desktop_config.json:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.jsonYou must replace the placeholders in the JSON configuration with your local absolute paths to the Python script file.
PATH/TO/YOUR/BIKESCOUT_FOLDER/src/bikescout/mcp_server.py
Example:
/home/username/bikescout/src/bikescout/mcp_server.pyC:/Users/Username/Documents/bikescout/src/bikescout/mcp_server.py{
"mcpServers": {
"bikescout": {
"command": "PATH/TO/YOUR/BIKESCOUT_FOLDER/venv/bin/python3",
"args": [
"-u",
"-m",
"bikescout.mcp_server"
],
"env": {
"PYTHONPATH": "PATH/TO/YOUR/BIKESCOUT_FOLDER/src",
"ORS_API_KEY": "YOUR_OPENROUTE_SERVICE_API_KEY",
"STRAVA_CLIENT_ID": "YOUR_STRAVA_CLIENT_ID",
"STRAVA_CLIENT_SECRET": "YOUR_STRAVA_CLIENT_SECRET",
"STRAVA_REFRESH_TOKEN": "YOUR_STRAVA_REFRESH_TOKEN",
}
}
}
}
You can test BikeScout using the MCP Inspector, a web-based tool for testing MCP servers.
To launch the inspector and interact with the tools manually, run the following command from the root directory:
export ORS_API_KEY=YOUR_OPENROUTE_SERVICE_API_KEY
## Optional API Key
export STRAVA_CLIENT_ID=YOUR_STRAVA_CLIENT_ID
export STRAVA_CLIENT_SECRET=YOUR_STRAVA_CLIENT_SECRET
export STRAVA_REFRESH_TOKEN=YOUR_STRAVA_REFRESH_TOKEN
PYTHONPATH=./src npx @modelcontextprotocol/inspector ./venv/bin/python3 -m bikescout.mcp_server
What to check:
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make to BikeScout are greatly appreciated.
git checkout -b feature/AmazingFeature).git commit -m 'Add some AmazingFeature').git checkout origin feature/AmazingFeature).README.md.By contributing, you agree that your contributions will be licensed under the project's Apache-2.0 License.
This project is licensed under the Apache-2.0 License - see the LICENSE file for details.
BikeScout aggregates data from several open providers. Users of this server must adhere to their respective terms:
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"bikescout": {
"command": "npx",
"args": []
}
}
}PRs, issues, code search, CI status
Database, auth and storage
Reference / test server with prompts, resources, and tools.
Secure file operations with configurable access controls.