Provides integration with GitHub for contributors to fork, clone, and submit pull requests to the project repository.
Requires Node.js (version 18.0.0 or higher) to run the MCP server application.
Uses TypeScript for development, requiring contributors to modify TypeScript source files in the src/ directory.
RideWithGPS MCP Server
🚴 Dear Cyclists! Welcome to the RideWithGPS MCP Server—your AI-powered companion for managing your cycling adventures. If you like this project, please consider giving it a star, or better yet, becoming a contributor!
A Model Context Protocol (MCP) server that provides access to the RideWithGPS API, allowing you to interact with routes, trips, events, and user data.
Requirements
- Node.js: 18.0.0 or higher, 20.0.0 or newer recommanded (Download here)
Tools
This MCP server implements the following tools:
Route Retrival
- get_routes: Retrieve a list of routes owned by the user on RideWithGPS, ordered by updated_at descending
⚠️ Known Limitation: This tool can only access routes that you personally own. Routes that are shared with you but belong to other people will not appear in your results.
If you want to use a shared route with this server, please make a copy of it into your own RideWithGPS account first. - get_route_details: Retrieve full details for a specific route including track points, course points, and points of interest. You can find the available list of information here
Trip & Activity Data
- get_trips: Retrieve a list of trips/activities owned by the user on RideWithGPS, ordered by updated_at descending
- get_trip_details: Retrieve full details for a specific trip including track points and performance data. You can find the available list of information here
User Profile
- get_current_user: Retrieve profile information for the user
Event Participation
- get_events: Retrieve a paginated list of events owned by the user, ordered by created_at descending
- get_event_details: Retrieve full details for a specific event including associated routes
Data Synchronization
- sync_user_data: Retrieve items (routes and/or trips) that the user has interacted with since a given datetime
Setup
In command line, clone this repository and change into its directory
Build the server app:
Configure Claude Desktop:
You can install the Claude desktop app which supports MCP. Other commonly seen MCP clients should also work.
You can get your RideWithGPS API credentials from:
- API Key: Visit the developer settings page in your RideWithGPS account and create an API client
- Authentication Token: Select the API Client you created and go to its edit page. Click on 'Create new Auth Token' to obtain a new authentication token.
Then, open your Claude Desktop settings, go to Developers, and select 'Edit Config'. Alternatively, in your claude_desktop_config.json
file, add a new MCP server:
You can now launch Claude desktop app and ask it to interact with your RideWithGPS data.
Example queries:
- "Show me my recent routes"
- "Get details for the century route I created yesterday"
- "List my cycling trips from last month"
- "What events do I have coming up that I'll probably chicken out of?"
- "Show me my user profile so I can admire my optimistically low weight setting"
- "Sync my data since last week when I pretended that walk to the coffee shop was a training ride"
To use RideWithGPS MCP Server on other local MCP Clients, please follow the same steps.
API Coverage
This MCP server implements the main RideWithGPS API endpoints for individual users, excluding organization-specific features.
For complete API documentation, see: https://github.com/ridewithgps/developers
Development
Contributors welcome! To contribute to this project:
- Fork this repository to your own GitHub account.
- Clone your fork locally.
- Install dependencies:
npm install
- Make your changes to the TypeScript source files in
src/
- Build the project:
npm run build
- Test your changes using
npm run inspector
- Commit and push your changes to your fork.
- Submit a pull request to the main repository for review.
Development Roadmap
- Utilize OAuth for secure user authentication
- Deploy the MCP server to Smithery/Glama for distribution
- Incorporate geospatially-aware track points; currently, only the number is displayed
- Make pagination optional; it would also be helpful to return trips in descending order by departed time instead of updated time.
License
This project is licensed under the MIT License - see the LICENSE file for details.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
An AI-powered companion that provides access to the RideWithGPS API, allowing you to interact with cycling routes, trips, events, and user data through natural language.
Related MCP Servers
- AsecurityAlicenseAqualityProvides comprehensive access to Roam Research's API functionality. This server enables AI assistants like Claude to interact with your Roam Research graph through a standardized interface.Last updated -181259TypeScriptMIT License
- -securityAlicense-qualityProvides access to Google Maps API functionality including geocoding, place search, direction routing, and distance calculations through a structured MCP interface.Last updated -13JavaScriptMIT License
- -securityFlicense-qualityAn MCP tool that integrates with Amap API services, allowing AI to access geographic information, weather data, and route planning.Last updated -6Python
- AsecurityFlicenseAqualityAn MCP server that enables AI assistants to book and manage Uber rides, including getting price estimates, requesting rides, checking ride status, and canceling rides.Last updated -63JavaScript