Transport Nsw
liveTransportTransport for NSW MCP — journey planning, live departures, service alerts
Tools
tfnsw_departuresLive upcoming departures from one NSW stop, station or wharf — Sydney Trains, Metro, buses, ferries and light rail — with planned vs estimated time, line, destination and the delay in minutes. PREFER
No parameters required.
Try it
tfnsw_trip_planPlan a public-transport journey anywhere in New South Wales — door to door, multi-leg, with every change, walking leg, line and departure/arrival time. AUTHORITATIVE for "how do I get from A to B on S
No parameters required.
Try it
tfnsw_alertsCurrent Transport for NSW service alerts and incidents — trackwork, delays, cancellations, road and stop closures — for one transport mode or all of them, with the affected lines and the validity peri
No parameters required.
Try it
tfnsw_carparksLive occupancy at Transport for NSW commuter car parks — spaces total, spaces taken and when the count was last updated. AUTHORITATIVE for "is there parking left at my park-and-ride station"; call wit
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/transport-nsw/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/transport-nsw/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"tfnsw_departures","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("tfnsw_departures", {});// Or ask in plain English:
const answer = await px.ask("transport for nsw mcp — journey planning, live departures, service alerts");