Wmata
liveTransportGeographyWMATA — real-time Washington DC Metro rail predictions, incidents, bus arrivals, and route information.
Tools
rail_linesReturn all WMATA Metro rail lines (Red, Blue, Orange, Silver, Green, Yellow) with line code, display name, start/end station codes, and internal track IDs.
No parameters required.
Try it
rail_stationsReturn all WMATA Metro rail stations, optionally filtered by `line_code`. Returns station code, name, line codes served, and latitude/longitude.
No parameters required.
Try it
rail_station_infoFetch details for a specific WMATA Metro station by `station_code`. Returns name, address, line codes, adjacent station codes, and coordinates.
No parameters required.
Try it
rail_predictionsFetch real-time next-train arrival predictions for one or more WMATA stations by comma-separated `station_codes` (or "All"). Returns line, destination, car count, and minutes until arrival.
No parameters required.
Try it
rail_incidentsFetch current WMATA Metro rail service alerts and incidents. Returns incident description, affected line codes, date/time updated, and incident type.
No parameters required.
Try it
bus_routesReturn all WMATA bus routes. Returns route ID, route name, and line description. Use to enumerate available routes before fetching details or predictions.
No parameters required.
Try it
bus_route_detailsFetch stop sequence and path details for a WMATA bus route by `route_id` and optional `date`. Returns direction names, stop names/IDs, and geo coordinates for the route shape.
No parameters required.
Try it
bus_stopsFind WMATA bus stops near a latitude/longitude within an optional `radius` (meters). Returns stop ID, name, routes serving the stop, and coordinates.
No parameters required.
Try it
bus_predictionsFetch real-time next-bus arrival predictions for a WMATA bus stop by `stop_id`. Returns route ID, direction text, vehicle ID, and minutes until arrival.
No parameters required.
Try it
bus_incidentsFetch current WMATA bus service alerts and incidents. Returns incident description, affected route IDs, date/time updated, and incident type.
No parameters required.
Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/wmata/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/wmata/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"rail_lines","arguments":{}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("rail_lines", {});// Or ask in plain English:
const answer = await px.ask("wmata — real-time washington dc metro rail predictions, incidents, bus arrivals, and route information");