Consume a GTFS-Realtime feed for live vehicle positions, trip updates, and service alerts
domain: gtfs.org · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
Steps
Fetch the agency's protobuf-encoded feed for each entity type it publishes: VehiclePositions, TripUpdates, and/or ServiceAlerts
Decode using the official gtfs-realtime.proto schema in your target language
Match each entity's trip_id/route_id back to the corresponding static GTFS Schedule feed for human-readable context
Check the header's timestamp and gtfs_realtime_version fields to confirm feed freshness and schema version
Poll on the interval the agency documents (commonly 15-30 seconds), not faster than the feed actually updates
Known gotchas
GTFS-Realtime is protobuf, not JSON - many HTTP clients need an explicit protobuf decoder, not a plain JSON parser
Required vs optional fields differ between spec v1.0 and v2.0+; check the feed's declared version before assuming a field is present
A GTFS-Realtime feed only makes sense paired with a matching GTFS Schedule feed; unresolved trip_id references usually mean the two feeds are out of sync
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?