OneBusAway MCP
A community-driven MCP server that enables AI agents to query real-time transit data from OneBusAway APIs. It supports finding stops and routes, tracking live arrivals and vehicle positions, and retrieving schedules and service alerts for transit agencies like King County Metro and Sound Transit.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Find stops near a specific latitude and longitude
- Retrieve real-time arrivals and departures at a stop
- Track live vehicle positions for an agency
- Get full-day departure schedules for a route
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
@cyanheads/onebusaway-mcp-server 0.3.0
{
"version": "0.3.0",
"transport": "stdio",
"identifier": "@cyanheads/onebusaway-mcp-server",
"runtimeHint": "npx",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"environmentVariables": [
{
"name": "ONEBUSAWAY_API_KEY",
"format": "string",
"default": "TEST",
"description": "OneBusAway API key. TEST works on the Puget Sound instance for development."
},
{
"name": "ONEBUSAWAY_BASE_URL",
"format": "string",
"default": "https://api.pugetsound.onebusaway.org",
"description": "Base URL for the OneBusAway instance. Defaults to Puget Sound."
},
{
"name": "ONEBUSAWAY_RATE_LIMIT_REQUESTS",
"format": "string",
"default": "20",
"description": "Upstream requests the pacer allows per window."
},
{
"name": "ONEBUSAWAY_RATE_LIMIT_WINDOW_MS",
"format": "string",
"default": "60000",
"description": "Width of the pacer's sliding rate window, in milliseconds."
},
{
"name": "ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS",
"format": "string",
"default": "45000",
"description": "Longest a call may wait in the pacer queue, in milliseconds. Keep it under the SDK client's 60 s request timeout."
},
{
"name": "MCP_LOG_LEVEL",
"format": "string",
"default": "info",
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warning')."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"onebusaway-mcp": {
"command": "npx",
"args": [
"-y",
"@cyanheads/onebusaway-mcp-server@0.3.0"
],
"env": {
"ONEBUSAWAY_API_KEY": "<YOUR_ONEBUSAWAY_API_KEY>",
"ONEBUSAWAY_BASE_URL": "<YOUR_ONEBUSAWAY_BASE_URL>",
"ONEBUSAWAY_RATE_LIMIT_REQUESTS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_REQUESTS>",
"ONEBUSAWAY_RATE_LIMIT_WINDOW_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_WINDOW_MS>",
"ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS>",
"MCP_LOG_LEVEL": "<YOUR_MCP_LOG_LEVEL>"
}
}
}
}Cline
{
"mcpServers": {
"onebusaway-mcp": {
"command": "npx",
"args": [
"-y",
"@cyanheads/onebusaway-mcp-server@0.3.0"
],
"env": {
"ONEBUSAWAY_API_KEY": "<YOUR_ONEBUSAWAY_API_KEY>",
"ONEBUSAWAY_BASE_URL": "<YOUR_ONEBUSAWAY_BASE_URL>",
"ONEBUSAWAY_RATE_LIMIT_REQUESTS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_REQUESTS>",
"ONEBUSAWAY_RATE_LIMIT_WINDOW_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_WINDOW_MS>",
"ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS>",
"MCP_LOG_LEVEL": "<YOUR_MCP_LOG_LEVEL>"
}
}
}
}VS Code
{
"servers": {
"onebusaway-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/onebusaway-mcp-server@0.3.0"
],
"env": {
"ONEBUSAWAY_API_KEY": "<YOUR_ONEBUSAWAY_API_KEY>",
"ONEBUSAWAY_BASE_URL": "<YOUR_ONEBUSAWAY_BASE_URL>",
"ONEBUSAWAY_RATE_LIMIT_REQUESTS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_REQUESTS>",
"ONEBUSAWAY_RATE_LIMIT_WINDOW_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_WINDOW_MS>",
"ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS>",
"MCP_LOG_LEVEL": "<YOUR_MCP_LOG_LEVEL>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"onebusaway-mcp": {
"command": "npx",
"args": [
"-y",
"@cyanheads/onebusaway-mcp-server@0.3.0"
],
"env": {
"ONEBUSAWAY_API_KEY": "<YOUR_ONEBUSAWAY_API_KEY>",
"ONEBUSAWAY_BASE_URL": "<YOUR_ONEBUSAWAY_BASE_URL>",
"ONEBUSAWAY_RATE_LIMIT_REQUESTS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_REQUESTS>",
"ONEBUSAWAY_RATE_LIMIT_WINDOW_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_WINDOW_MS>",
"ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS": "<YOUR_ONEBUSAWAY_RATE_LIMIT_MAX_WAIT_MS>",
"MCP_LOG_LEVEL": "<YOUR_MCP_LOG_LEVEL>"
}
}
}
}Let your agent find its tools
Find servers like OneBusAway MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.