mcpbeat

Onebusaway MCP Server

io.github.cyanheads/onebusaway-mcp-server
answering

Onebusaway MCP Server is answering right now. Last checked 6 min ago. 89 installs a week from npm. It exposes 15 tools. Last commit 13 Jul 2026.

Real-time transit stops, routes, arrivals, vehicle positions, and schedules via OneBusAway APIs.

Installs per day peak 435 · avg 29 · -21% w/w
a month agotoday
Uptime history 40 hours of history · worst hour 75%
40 hours agonow
100.0%
Uptime 24h
91 of 91 checks
15
Tools
read from the server
379 ms
Response time
average over 24h
89
Installs / week
npm and PyPI

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 6 min ago.

run in your terminal
claude mcp add onebusaway-mcp-server --transport http https://onebusaway.caseyjhand.com/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "onebusaway-mcp-server": {
      "url": "https://onebusaway.caseyjhand.com/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.onebusaway-mcp-server]
url = "https://onebusaway.caseyjhand.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "onebusaway-mcp-server": {
      "url": "https://onebusaway.caseyjhand.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "onebusaway-mcp-server": {
      "url": "https://onebusaway.caseyjhand.com/mcp"
    }
  }
}

Available tools 15

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

onebusaway
onebusaway_find_routes
Find transit routes near a location, optionally filtered by name or number. Returns routes with IDs, short names, and descriptions. Use routeId values to fetch schedules, vehicles, or stop sequences.
onebusaway_find_stops
Find bus stops near a location. Returns stops within a radius, each with ID, name, direction, served routes, and wheelchair boarding status. Use stopId values from results to fetch real-time arrivals with onebusaway_get_arrivals. Optionally filter by stop code (the number printed on the stop sign, e.g. "75403").
onebusaway_get_alert
Fetch full detail for a service alert (situation) by ID. Returns the summary, description, reason (e.g. detour, construction), affected stops and routes, consequence description, and active time windows. Situation IDs appear in onebusaway_get_arrivals responses under situationIds and situations[].id.
onebusaway_get_arrivals
Real-time arrivals and departures at a stop. Returns predicted arrival times, schedule deviation (how many seconds late/early), vehicle positions, and any active service alerts. The predicted boolean on each arrival indicates whether GPS tracking backs the estimate — predicted=false means schedule-only. Use tripId from results for follow-up onebusaway_get_trip calls. Stop IDs use agency-prefixed format: {agencyId}_{localId} (e.g. "1_75403").
onebusaway_get_block
Fetch the full-day block schedule for a vehicle by block ID. A block is the ordered sequence of trips a single vehicle makes in one service day. Returns all trips in order with their stop times. Useful for 'when will this bus return?' and fleet tracking. Block IDs appear in onebusaway_get_trip responses under the schedule block field; obtain a tripId from onebusaway_get_arrivals first.
onebusaway_get_route
Fetch details for a specific route by ID. Returns short name, description, agency, route type, and schedule URL. Route IDs use agency-prefixed format: {agencyId}_{localId} (e.g. "1_100259").
onebusaway_get_schedule_for_route
Full-day schedule for a route — all trips, stop sequences, and departure times for the specified date (defaults to today). Returns up to all trips for the route. For live predictions, use onebusaway_get_arrivals at specific stops instead.
onebusaway_get_schedule_for_stop
Full-day departure schedule for a stop. Lists every departure by route and direction for the specified date (defaults to today). Useful for planning or when real-time data isn't needed. For live predictions, use onebusaway_get_arrivals instead.
onebusaway_get_stop
Fetch details for a specific stop by ID. Returns the stop's name, coordinates, direction, served routes, and wheelchair accessibility. Stop IDs use agency-prefixed format: {agencyId}_{localId} (e.g. "1_75403" for Metro Transit stop 75403).
onebusaway_get_trip
Real-time status and stop sequence for a trip. Returns vehicle position, schedule deviation, current phase, and remaining stops. Use tripId from onebusaway_get_arrivals to look up a specific vehicle's progress.
onebusaway_get_vehicles
Real-time positions of all active vehicles for an agency. Optionally filter to a single route (client-side). Returns GPS coordinates, heading, schedule deviation, and current trip. Useful for "where are all the buses on route X right now?" Use agencyId values from onebusaway_list_agencies.
onebusaway_list_agencies
List all transit agencies served by this OneBusAway instance. Returns agency IDs, names, contact info, timezone, and geographic coverage center. Agency IDs are needed for onebusaway_list_routes_for_agency and onebusaway_get_vehicles.
onebusaway_list_routes_for_agency
List all routes operated by an agency. Returns route IDs, short names, and descriptions. Use to enumerate an agency's full service before searching for a specific route. Get agencyId values from onebusaway_list_agencies.
onebusaway_search_routes
Search for routes by name or number. Returns matching routes with IDs. Use to resolve a route short name (e.g. "44") to a route ID for schedule or vehicle lookups with onebusaway_get_vehicles or onebusaway_get_schedule_for_route.
onebusaway_search_stops
Search for stops by name or code. Returns matching stops with IDs and coordinates. Use to resolve a human-readable stop name or number to a stop ID for arrivals lookups with onebusaway_get_arrivals.

Endpoints

URLTransportStateLatencyChecked
https://onebusaway.caseyjhand.com/mcp streamable-http answering 420 ms 6 min ago

Onebusaway MCP Server — questions

Answers built from our own checks of this server.

What can Onebusaway MCP Server do?
It exposes 15 tools, read directly from the server on our last check. Among them: onebusaway_find_routes, onebusaway_find_stops, onebusaway_get_alert, onebusaway_get_arrivals, onebusaway_get_block, onebusaway_get_route and 9 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Onebusaway MCP Server working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 379 ms. The bar chart above shows every period we have measured.
How do I connect Onebusaway MCP Server?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Onebusaway MCP Server need an API key?
No. Onebusaway MCP Server completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 15 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Onebusaway MCP Server?
It answers our handshake in 379 ms on average, which is faster than 36% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Onebusaway MCP Server?
The npm package @cyanheads/onebusaway-mcp-server was installed 89 times in the last week. Week over week that is -21%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Onebusaway MCP Server open source?
Yes — it is published under the Apache-2.0 licence, written in TypeScript, 1 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.