Pedalpalooza MCP Server
by nickcosmo
README.md
# Pedalpalooza MCP Server
An MCP (Model Context Protocol) server that will fetch events from the [Pedalpalooza Calendar](https://www.shift2bikes.org/bike-summer-calendar/) and make them available to your LLM.

## What you can ask
- "What Pedalpalooza rides are happening today?"
- "What rides have a slow pace happening this week?"
- "Show me challenging, long Pedalpalooza rides"
- "What family-friendly rides are available this weekend?"
## Setup
### Prerequisites
- Node.js
- An MCP-compatible client (like Claude Desktop)
### Usage
This server can be run either locally on Standard Input/Output (stdio) or through the Streamable HTTP Protocol. After following the setup instructions, restart your MCP client.
#### STDIO
1. Clone this repository:
```bash
git clone https://github.com/nickcosmo/pedalpalooza-mcp-server
cd pedalpalooza-mcp-server
echo "TRANSPORT=STDIO" > .env
```
2. Install dependencies: `npm install`
3. Build the project: `npm run build`
4. Add to your MCP client configuration:
For Claude Desktop, add this to your claude_desktop_config.json:
```json
{
"mcpServers": {
"pedalpalooza": {
"command": "node",
"args": ["/absolute/path/to/your/index.js"]
}
}
}
```
#### Streamable HTTP
1. Add to your MCP client configuration:
For Claude Desktop, add this to your claude_desktop_config.json:
```json
{
"mcpServers": {
"pedalpalooza": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://pedalpalooza-mcp-image-464302291453.us-west1.run.app/mcp"
]
},
}
}
```
**NOTE**: If you are using `nvm` there is a possibility that you will run into node versioning issues which can lead to undesired behavior. More info can be found in [this article](https://medium.com/@jonigl/mcp-filesystem-server-disconnected-750e00917eec).
## Available Tools
### `pedalpalooza-schedule`
Fetch bike ride events for a specified date range from the Pedalpalooza calendar.
**Parameters:**
- `startDate` (string): Start date in format YYYY-MM-DD
- `endDate` (string): End date in format YYYY-MM-DD
**Example:** Fetch ride info from July 14, 2025 to July 15, 2025
```json
{
"startDate": "2025-07-14",
"endDate": "2025-07-15"
}
```This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues