MCPサーバー

onebusaway-mcp-server

io.github.cyanheads/onebusaway-mcp-server

このMCPでできること

Provides transit agency discovery, route and stop lookup, schedules, real-time arrivals, service alerts, trip status, and vehicle positions through OneBusAway APIs.

onebusaway_find_routes
Find Routes Near Location
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Latitude of the search center, in [-90, 90].'}, 'lon': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Longitude of the search center, in [-180, 180].'}, 'query': {'type': 'string', 'description': 'Filter by route name or number (e.g. "44" or "Link Light Rail").'}, 'radius': {'type': 'number', 'default': 500, 'maximum': 1600, 'description': 'Search radius in meters. Must be positive; capped at 1600m. Defaults to 500m. Ignored when latSpan and lonSpan are both set.', 'exclusiveMinimum': 0}, 'latSpan': {'type': 'number', 'description': 'Optional bounding-box height in degrees, as an alternative to radius. Takes effect only when lonSpan is also set, in which case radius is ignored.', 'exclusiveMinimum': 0}, 'lonSpan': {'type': 'number', 'description': 'Optional bounding-box width in degrees, as an alternative to radius. Takes effect only when latSpan is also set, in which case radius is ignored.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['routes', 'limitExceeded', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of routes returned.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'query': {'type': 'string', 'description': 'Route name/number filter applied to the search, if any.'}, 'notice': {'type': 'string', 'description': 'Guidance when no routes matched â\x80\x94 e.g. try a larger radius or different query.'}, 'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'shortName', 'longName', 'description', 'agencyId', 'agencyName', 'type', 'color', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed route ID (e.g. "1_100259"). Use with onebusaway_get_schedule_for_route or onebusaway_get_vehicles.'}, 'url': {'type': ['string', 'null'], 'description': 'Agency schedule page URL, or null.'}, 'type': {'type': 'number', 'description': 'GTFS route type: 0=tram, 1=subway, 2=rail, 3=bus, 4=ferry, 5=cable_car.'}, 'color': {'type': ['string', 'null'], 'description': 'Route brand color hex (without #), or null.'}, 'agencyId': {'type': 'string', 'description': 'Agency ID that operates this route.'}, 'longName': {'type': 'string', 'description': 'Full route name.'}, 'shortName': {'type': 'string', 'description': 'The number or short name displayed on vehicles (e.g. "44").'}, 'agencyName': {'type': 'string', 'description': 'Agency name that operates this route.'}, 'description': {'type': 'string', 'description': 'Route description.'}}, 'description': 'A transit route with agency and type information.', 'additionalProperties': False}, 'description': 'Routes found near the specified location.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if more routes exist beyond the returned set; narrow the radius or set latSpan/lonSpan to see all.'}}, 'additionalProperties': False}
onebusaway_find_stops
Find Stops Near Location
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").
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Latitude of the search center, in [-90, 90].'}, 'lon': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Longitude of the search center, in [-180, 180].'}, 'query': {'type': 'string', 'description': 'Optional stop code filter (the number printed on the stop sign, e.g. "75403"). When provided, returns only stops matching this code within the radius.'}, 'radius': {'type': 'number', 'default': 300, 'maximum': 1600, 'description': 'Search radius in meters. Must be positive; capped at 1600m, beyond which results degrade. Defaults to 300m.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['stops', 'limitExceeded', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of stops returned.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'query': {'type': 'string', 'description': 'Stop code filter applied to the search, if any.'}, 'stops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'code', 'name', 'lat', 'lon', 'direction', 'routeIds', 'wheelchairBoarding'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed stop ID (e.g. "1_75403"). Use with onebusaway_get_arrivals.'}, 'lat': {'type': 'number', 'description': 'Latitude of the stop.'}, 'lon': {'type': 'number', 'description': 'Longitude of the stop.'}, 'code': {'type': 'string', 'description': 'The stop code printed on the sign.'}, 'name': {'type': 'string', 'description': 'Stop name.'}, 'routeIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'IDs of routes that serve this stop.'}, 'direction': {'type': 'string', 'description': 'Compass direction of travel at this stop (e.g. "NW").'}, 'wheelchairBoarding': {'enum': ['ACCESSIBLE', 'NOT_ACCESSIBLE', 'UNKNOWN'], 'type': 'string', 'description': 'Wheelchair boarding status.'}}, 'description': 'A transit stop with location and route information.', 'additionalProperties': False}, 'description': 'Stops within the search radius.'}, 'notice': {'type': 'string', 'description': 'Guidance when results are empty or truncated â\x80\x94 e.g. how to narrow the radius or verify the stop code.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if more stops exist beyond the returned set; narrow the radius to see all.'}}, 'additionalProperties': False}
onebusaway_get_alert
Get Service Alert Detail
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['situationId'], 'properties': {'situationId': {'type': 'string', 'minLength': 1, 'description': 'Situation/alert ID from onebusaway_get_arrivals (situations[].id or arrivals[].situationIds[]).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['id', 'summary', 'description', 'reason', 'severity', 'consequenceMessage', 'affects', 'consequences', 'activeWindows', 'url']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'id': {'type': 'string', 'description': 'Situation ID.'}, 'url': {'type': ['string', 'null'], 'description': 'URL for more information about this alert, or null.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['situation_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `situation_not_found`: Situation ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'reason': {'type': ['string', 'null'], 'description': 'Reason code from TPEG: equipmentReason, environmentReason, personnelReason, miscellaneousReason, securityAlert. Null when not provided.'}, 'affects': {'type': 'array', 'items': {'type': 'object', 'properties': {'stopId': {'type': 'string', 'description': 'Affected stop ID, if scoped to a stop.'}, 'tripId': {'type': 'string', 'description': 'Affected trip ID, if scoped to a trip.'}, 'routeId': {'type': 'string', 'description': 'Affected route ID, if scoped to a route.'}, 'agencyId': {'type': 'string', 'description': 'Affected agency ID, if scoped to an agency.'}}, 'description': 'An entity affected by this alert.', 'additionalProperties': False}, 'description': 'Stops, routes, trips, or agencies affected by this alert.'}, 'summary': {'type': 'string', 'description': 'Short summary of the service alert.'}, 'severity': {'type': ['string', 'null'], 'description': 'Severity level as reported by the agency, or null.'}, 'description': {'type': ['string', 'null'], 'description': 'Longer description of the alert, or null.'}, 'consequences': {'type': 'array', 'items': {'type': 'object', 'properties': {'condition': {'type': 'string', 'description': 'Consequence condition (e.g. "detour", "reducedService").'}, 'diversionStopIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Stop IDs on the diversion path, when condition is "detour".'}}, 'description': 'A consequence of this alert.', 'additionalProperties': False}, 'description': 'Operational consequences of this alert.'}, 'activeWindows': {'type': 'array', 'items': {'type': 'object', 'properties': {'to': {'type': 'number', 'description': 'End of active window as Unix milliseconds, if known.'}, 'from': {'type': 'number', 'description': 'Start of active window as Unix milliseconds, if known.'}}, 'description': 'A time window during which this alert is active.', 'additionalProperties': False}, 'description': 'Time windows when this alert is active.'}, 'consequenceMessage': {'type': ['string', 'null'], 'description': 'Human-readable consequence description (e.g. "Detour in effect"), or null.'}}, 'additionalProperties': False}
onebusaway_get_arrivals
Get Real-Time 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").
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['stopId'], 'properties': {'stopId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed stop ID (e.g. "1_75403" for Metro Transit stop 75403). Use onebusaway_find_stops or onebusaway_search_stops to discover IDs.'}, 'minutesAfter': {'type': 'integer', 'default': 35, 'maximum': 240, 'minimum': 0, 'description': 'Include arrivals expected within the next N minutes â\x80\x94 an integer from 0 to 240. Defaults to 35. For a longer horizon, use onebusaway_get_schedule_for_stop.'}, 'minutesBefore': {'type': 'integer', 'default': 5, 'maximum': 60, 'minimum': 0, 'description': 'Include arrivals that departed up to this many minutes ago â\x80\x94 an integer from 0 to 60. Defaults to 5.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['stopId', 'stopName', 'currentTime', 'arrivals', 'situations', 'queriedStop', 'count', 'windowMinutes']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of arrivals in the time window.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['stop_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `stop_not_found`: Stop ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when no arrivals were found â\x80\x94 widen minutesAfter, or check onebusaway_get_schedule_for_stop for scheduled service.'}, 'stopId': {'type': 'string', 'description': 'The queried stop ID.'}, 'arrivals': {'type': 'array', 'items': {'type': 'object', 'required': ['routeShortName', 'tripHeadsign', 'predicted', 'predictedArrivalTime', 'scheduledArrivalTime', 'scheduleDeviation', 'vehicleId', 'vehiclePosition', 'stopsAway', 'tripId', 'routeId', 'situationIds'], 'properties': {'tripId': {'type': 'string', 'description': 'Trip ID for follow-up onebusaway_get_trip calls.'}, 'routeId': {'type': 'string', 'description': 'Route ID for follow-up route calls.'}, 'predicted': {'type': 'boolean', 'description': 'True if GPS-tracked real-time data is available; false if schedule-only.'}, 'stopsAway': {'type': ['number', 'null'], 'description': 'Number of stops until this stop, or null if unknown.'}, 'vehicleId': {'type': ['string', 'null'], 'description': 'Vehicle ID if known, or null.'}, 'situationIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'IDs of active service alerts affecting this arrival.'}, 'tripHeadsign': {'type': 'string', 'description': 'Destination sign text (e.g. "Downtown Seattle").'}, 'routeShortName': {'type': 'string', 'description': 'Route short name (e.g. "44").'}, 'vehiclePosition': {'anyOf': [{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Vehicle latitude.'}, 'lon': {'type': 'number', 'description': 'Vehicle longitude.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Current vehicle position if available, or null.'}, 'scheduleDeviation': {'type': 'number', 'description': 'Seconds late (positive) or early (negative). Only meaningful when predicted=true.'}, 'predictedArrivalTime': {'type': ['number', 'null'], 'description': 'Predicted arrival time as Unix milliseconds. Null when predicted=false.'}, 'scheduledArrivalTime': {'type': 'number', 'description': 'Scheduled arrival time as Unix milliseconds.'}}, 'description': 'A single arrival or departure at this stop.', 'additionalProperties': False}, 'description': 'Arrivals and departures at this stop within the requested time window.'}, 'stopName': {'type': 'string', 'description': 'Stop name.'}, 'situations': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'summary', 'description'], 'properties': {'id': {'type': 'string', 'description': 'Situation ID.'}, 'summary': {'type': 'string', 'description': 'Short summary of the service alert.'}, 'description': {'type': ['string', 'null'], 'description': 'Longer description of the service alert, or null.'}}, 'description': 'A single active service alert.', 'additionalProperties': False}, 'description': 'Active service alerts at this stop â\x80\x94 those attached to the stop itself and those referenced by its arrivals, each listed once.'}, 'currentTime': {'type': 'number', 'description': 'Server time as Unix milliseconds, for computing countdown timers.'}, 'queriedStop': {'type': 'string', 'description': 'Stop ID queried.'}, 'windowMinutes': {'type': 'object', 'required': ['before', 'after'], 'properties': {'after': {'type': 'number', 'description': 'Minutes after current time included.'}, 'before': {'type': 'number', 'description': 'Minutes before current time included.'}}, 'description': 'Time window used for the arrivals query.', 'additionalProperties': False}}, 'additionalProperties': False}
onebusaway_get_block
Get Block Schedule
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 as blockId in onebusaway_get_trip responses; obtain a tripId from onebusaway_get_arrivals first.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['blockId'], 'properties': {'blockId': {'type': 'string', 'minLength': 1, 'description': 'Block ID from a trip record. Obtain a tripId from onebusaway_get_arrivals, then call onebusaway_get_trip to get the blockId.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['blockId', 'activeServiceIds', 'inactiveServiceIds', 'trips']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['block_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `block_not_found`: Block ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'trips': {'type': 'array', 'items': {'type': 'object', 'required': ['tripId', 'distanceAlongBlock', 'accumulatedSlackTime', 'blockStopTimes'], 'properties': {'tripId': {'type': 'string', 'description': 'Trip ID for follow-up onebusaway_get_trip calls.'}, 'blockStopTimes': {'type': 'array', 'items': {'type': 'object', 'required': ['stopId', 'arrivalTime', 'departureTime'], 'properties': {'stopId': {'type': 'string', 'description': 'Stop ID.'}, 'pickupType': {'type': 'number', 'description': 'GTFS pickup type (0=regular, 1=no pickup, 2=phone agency, 3=coordinate with driver).'}, 'arrivalTime': {'type': 'number', 'description': 'Scheduled arrival time as seconds from midnight (GTFS format).'}, 'dropOffType': {'type': 'number', 'description': 'GTFS drop-off type (0=regular, 1=no dropoff, 2=phone agency, 3=coordinate with driver).'}, 'departureTime': {'type': 'number', 'description': 'Scheduled departure time as seconds from midnight (GTFS format).'}}, 'description': 'A scheduled stop time within this trip.', 'additionalProperties': False}, 'description': 'Ordered stop times for this trip.'}, 'distanceAlongBlock': {'type': 'number', 'description': 'Cumulative distance (meters) from block start to the first stop of this trip.'}, 'accumulatedSlackTime': {'type': 'number', 'description': 'Accumulated layover/slack time (seconds) before this trip starts.'}}, 'description': 'A trip in this vehicle block.', 'additionalProperties': False}, 'description': 'All trips in this block in order.'}, 'blockId': {'type': 'string', 'description': 'Block ID.'}, 'activeServiceIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Service calendar IDs active for this block today.'}, 'inactiveServiceIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Service calendar IDs not active for this block today.'}}, 'additionalProperties': False}
onebusaway_get_route
Get Route Details
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").
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['routeId'], 'properties': {'routeId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed route ID (e.g. "1_100259"). Use onebusaway_find_routes or onebusaway_search_routes to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['id', 'shortName', 'longName', 'description', 'agencyId', 'agencyName', 'type', 'color', 'url']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed route ID.'}, 'url': {'type': ['string', 'null'], 'description': 'Agency schedule page URL, or null.'}, 'type': {'type': 'number', 'description': 'GTFS route type: 0=tram, 1=subway, 2=rail, 3=bus, 4=ferry, 5=cable_car.'}, 'color': {'type': ['string', 'null'], 'description': 'Route brand color hex (without #), or null.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['route_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `route_not_found`: Route ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'agencyId': {'type': 'string', 'description': 'Agency ID that operates this route.'}, 'longName': {'type': 'string', 'description': 'Full route name.'}, 'shortName': {'type': 'string', 'description': 'The number or short name displayed on vehicles (e.g. "44").'}, 'agencyName': {'type': 'string', 'description': 'Agency name that operates this route.'}, 'description': {'type': 'string', 'description': 'Route description.'}}, 'additionalProperties': False}
onebusaway_get_schedule_for_route
Get Route Schedule
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['routeId'], 'properties': {'date': {'anyOf': [{'type': 'string', 'const': ''}, {'type': 'string', 'format': 'date', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$', 'description': 'A real calendar date in YYYY-MM-DD form (e.g. "2026-05-23").'}], 'description': 'Service date as YYYY-MM-DD (e.g. "2026-05-23"). Must be a real calendar date. Omit or leave blank for today.'}, 'routeId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed route ID (e.g. "1_100259"). Use onebusaway_find_routes or onebusaway_search_routes to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['routeId', 'routeShortName', 'serviceDateMs', 'trips', 'queriedRoute', 'tripCount']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'date': {'type': 'string', 'description': 'Date parameter used for the schedule request, if specified.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['route_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `route_not_found`: Route ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'trips': {'type': 'array', 'items': {'type': 'object', 'required': ['tripId', 'tripHeadsign', 'serviceId', 'stops'], 'properties': {'stops': {'type': 'array', 'items': {'type': 'object', 'required': ['stopId', 'stopName', 'arrivalTime', 'departureTime'], 'properties': {'stopId': {'type': 'string', 'description': 'Stop ID.'}, 'stopName': {'type': 'string', 'description': 'Stop name.'}, 'arrivalTime': {'type': 'number', 'description': 'Scheduled arrival time as seconds from midnight (GTFS format).'}, 'departureTime': {'type': 'number', 'description': 'Scheduled departure time as seconds from midnight (GTFS format).'}}, 'description': 'A stop time along this trip.', 'additionalProperties': False}, 'description': 'Stop sequence for this trip.'}, 'tripId': {'type': 'string', 'description': 'Trip ID for follow-up onebusaway_get_trip calls.'}, 'serviceId': {'type': 'string', 'description': 'Service calendar ID.'}, 'tripHeadsign': {'type': 'string', 'description': 'Destination sign text.'}}, 'description': 'A single trip with its scheduled stop sequence.', 'additionalProperties': False}, 'description': 'All trips for this route on this date, with their stop sequences.'}, 'notice': {'type': 'string', 'description': 'Guidance when no trips were found â\x80\x94 e.g. no service on weekends or holiday schedule in effect.'}, 'routeId': {'type': 'string', 'description': 'The queried route ID.'}, 'tripCount': {'type': 'number', 'description': 'Number of trips for this route on this date.'}, 'queriedRoute': {'type': 'string', 'description': 'Route ID queried.'}, 'serviceDateMs': {'type': 'number', 'description': 'Service date as Unix milliseconds.'}, 'routeShortName': {'type': 'string', 'description': 'Route short name.'}}, 'additionalProperties': False}
onebusaway_get_schedule_for_stop
Get Stop Schedule
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['stopId'], 'properties': {'date': {'anyOf': [{'type': 'string', 'const': ''}, {'type': 'string', 'format': 'date', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$', 'description': 'A real calendar date in YYYY-MM-DD form (e.g. "2026-05-23").'}], 'description': 'Service date as YYYY-MM-DD (e.g. "2026-05-23"). Must be a real calendar date. Omit or leave blank for today in the agency\'s timezone.'}, 'stopId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed stop ID (e.g. "1_75403"). Use onebusaway_find_stops or onebusaway_search_stops to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['stopId', 'stopName', 'serviceDateMs', 'routes', 'queriedStop', 'routeCount']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'date': {'type': 'string', 'description': 'Date parameter used for the schedule request, if specified.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['stop_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `stop_not_found`: Stop ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when no routes were found â\x80\x94 e.g. no service on weekends or holiday schedule in effect.'}, 'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['routeId', 'routeShortName', 'directions'], 'properties': {'routeId': {'type': 'string', 'description': 'Route ID for follow-up onebusaway_get_route or onebusaway_get_schedule_for_route calls.'}, 'directions': {'type': 'array', 'items': {'type': 'object', 'required': ['tripHeadsign', 'departures'], 'properties': {'departures': {'type': 'array', 'items': {'type': 'object', 'required': ['scheduledDepartureTime', 'tripId'], 'properties': {'tripId': {'type': 'string', 'description': 'Trip ID for follow-up onebusaway_get_trip calls.'}, 'scheduledDepartureTime': {'type': 'number', 'description': 'Scheduled departure time as Unix milliseconds.'}}, 'description': 'A single scheduled departure.', 'additionalProperties': False}, 'description': 'All departures for this direction.'}, 'tripHeadsign': {'type': 'string', 'description': 'Destination sign text.'}}, 'description': 'A service direction at this stop.', 'additionalProperties': False}, 'description': 'Service directions for this route at this stop.'}, 'routeShortName': {'type': 'string', 'description': 'Route short name.'}}, 'description': 'A route with its scheduled departures from this stop.', 'additionalProperties': False}, 'description': 'All routes with departures from this stop on this date.'}, 'stopId': {'type': 'string', 'description': 'The queried stop ID.'}, 'stopName': {'type': 'string', 'description': 'Stop name.'}, 'routeCount': {'type': 'number', 'description': 'Number of routes with departures from this stop on this date.'}, 'queriedStop': {'type': 'string', 'description': 'Stop ID queried.'}, 'serviceDateMs': {'type': 'number', 'description': 'Service date as Unix milliseconds (start of service day).'}}, 'additionalProperties': False}
onebusaway_get_stop
Get Stop Details
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).
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['stopId'], 'properties': {'stopId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed stop ID (e.g. "1_75403" for Metro Transit stop 75403, "40_100239" for Sound Transit). Use onebusaway_find_stops or onebusaway_search_stops to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['id', 'code', 'name', 'lat', 'lon', 'direction', 'routeIds', 'wheelchairBoarding']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed stop ID.'}, 'lat': {'type': 'number', 'description': 'Latitude of the stop.'}, 'lon': {'type': 'number', 'description': 'Longitude of the stop.'}, 'code': {'type': 'string', 'description': 'The stop code printed on the sign.'}, 'name': {'type': 'string', 'description': 'Stop name.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['stop_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `stop_not_found`: Stop ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'routeIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'IDs of routes that serve this stop. Use with onebusaway_get_arrivals or onebusaway_get_schedule_for_stop.'}, 'direction': {'type': 'string', 'description': 'Compass direction of travel at this stop (e.g. "NW").'}, 'wheelchairBoarding': {'enum': ['ACCESSIBLE', 'NOT_ACCESSIBLE', 'UNKNOWN'], 'type': 'string', 'description': 'Wheelchair boarding status.'}}, 'additionalProperties': False}
onebusaway_get_stop_context
Get Stop Context
Everything happening at a stop in one call: the stop's details, its real-time arrivals, and full detail for every service alert on the stop or on any arrival in the window. Returns what onebusaway_get_stop, onebusaway_get_arrivals, and one onebusaway_get_alert call per alert would, from a single upstream request — arrivals in the onebusaway_get_arrivals shape, alerts in the onebusaway_get_alert shape. The stop omits its served-route list; use onebusaway_get_stop for routeIds. Stop IDs use agency-prefixed format: {agencyId}_{localId} (e.g. "1_75403").
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['stopId'], 'properties': {'stopId': {'type': 'string', 'minLength': 1, 'description': 'Agency-prefixed stop ID (e.g. "1_75403" for Metro Transit stop 75403). Use onebusaway_find_stops or onebusaway_search_stops to discover IDs.'}, 'minutesAfter': {'type': 'integer', 'default': 35, 'maximum': 240, 'minimum': 0, 'description': 'Include arrivals expected within the next N minutes â\x80\x94 an integer from 0 to 240. Defaults to 35. For a longer horizon, use onebusaway_get_schedule_for_stop.'}, 'minutesBefore': {'type': 'integer', 'default': 5, 'maximum': 60, 'minimum': 0, 'description': 'Include arrivals that departed up to this many minutes ago â\x80\x94 an integer from 0 to 60. Defaults to 5.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['stop', 'currentTime', 'arrivals', 'alerts', 'queriedStop', 'windowMinutes']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'stop': {'anyOf': [{'type': 'object', 'required': ['id', 'code', 'name', 'lat', 'lon', 'direction', 'wheelchairBoarding'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed stop ID.'}, 'lat': {'type': 'number', 'description': 'Latitude of the stop.'}, 'lon': {'type': 'number', 'description': 'Longitude of the stop.'}, 'code': {'type': 'string', 'description': 'The stop code printed on the sign.'}, 'name': {'type': 'string', 'description': 'Stop name.'}, 'direction': {'type': 'string', 'description': 'Compass direction of travel at this stop (e.g. "NW").'}, 'wheelchairBoarding': {'enum': ['ACCESSIBLE', 'NOT_ACCESSIBLE', 'UNKNOWN'], 'type': 'string', 'description': 'Wheelchair boarding status.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'The queried stop, without its served-route list (use onebusaway_get_stop for routeIds). Null when the upstream response omitted the stop.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['stop_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `stop_not_found`: Stop ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'alerts': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'summary', 'description', 'reason', 'severity', 'consequenceMessage', 'affects', 'consequences', 'activeWindows', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Situation ID.'}, 'url': {'type': ['string', 'null'], 'description': 'URL for more information about this alert, or null.'}, 'reason': {'type': ['string', 'null'], 'description': 'Reason code from TPEG: equipmentReason, environmentReason, personnelReason, miscellaneousReason, securityAlert. Null when not provided.'}, 'affects': {'type': 'array', 'items': {'type': 'object', 'properties': {'stopId': {'type': 'string', 'description': 'Affected stop ID, if scoped to a stop.'}, 'tripId': {'type': 'string', 'description': 'Affected trip ID, if scoped to a trip.'}, 'routeId': {'type': 'string', 'description': 'Affected route ID, if scoped to a route.'}, 'agencyId': {'type': 'string', 'description': 'Affected agency ID, if scoped to an agency.'}}, 'description': 'An entity affected by this alert.', 'additionalProperties': False}, 'description': 'Stops, routes, trips, or agencies affected by this alert.'}, 'summary': {'type': 'string', 'description': 'Short summary of the service alert.'}, 'severity': {'type': ['string', 'null'], 'description': 'Severity level as reported by the agency, or null.'}, 'description': {'type': ['string', 'null'], 'description': 'Longer description of the alert, or null.'}, 'consequences': {'type': 'array', 'items': {'type': 'object', 'properties': {'condition': {'type': 'string', 'description': 'Consequence condition (e.g. "detour", "reducedService").'}, 'diversionStopIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Stop IDs on the diversion path, when condition is "detour".'}}, 'description': 'A consequence of this alert.', 'additionalProperties': False}, 'description': 'Operational consequences of this alert.'}, 'activeWindows': {'type': 'array', 'items': {'type': 'object', 'properties': {'to': {'type': 'number', 'description': 'End of active window as Unix milliseconds, if known.'}, 'from': {'type': 'number', 'description': 'Start of active window as Unix milliseconds, if known.'}}, 'description': 'A time window during which this alert is active.', 'additionalProperties': False}, 'description': 'Time windows when this alert is active.'}, 'consequenceMessage': {'type': ['string', 'null'], 'description': 'Human-readable consequence description (e.g. "Detour in effect"), or null.'}}, 'description': 'One service alert, in full detail.', 'additionalProperties': False}, 'description': 'Service alerts on this stop or on any arrival in the window, each listed once â\x80\x94 including alerts whose affected arrivals fall outside the window.'}, 'notice': {'type': 'string', 'description': 'What the response is missing and where to get it â\x80\x94 no arrivals in the window, stop details absent, or referenced alerts absent.'}, 'arrivals': {'type': 'array', 'items': {'type': 'object', 'required': ['routeShortName', 'tripHeadsign', 'predicted', 'predictedArrivalTime', 'scheduledArrivalTime', 'scheduleDeviation', 'vehicleId', 'vehiclePosition', 'stopsAway', 'tripId', 'routeId', 'situationIds'], 'properties': {'tripId': {'type': 'string', 'description': 'Trip ID for follow-up onebusaway_get_trip calls.'}, 'routeId': {'type': 'string', 'description': 'Route ID for follow-up route calls.'}, 'predicted': {'type': 'boolean', 'description': 'True if GPS-tracked real-time data is available; false if schedule-only.'}, 'stopsAway': {'type': ['number', 'null'], 'description': 'Number of stops until this stop, or null if unknown.'}, 'vehicleId': {'type': ['string', 'null'], 'description': 'Vehicle ID if known, or null.'}, 'situationIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'IDs of active service alerts affecting this arrival.'}, 'tripHeadsign': {'type': 'string', 'description': 'Destination sign text (e.g. "Downtown Seattle").'}, 'routeShortName': {'type': 'string', 'description': 'Route short name (e.g. "44").'}, 'vehiclePosition': {'anyOf': [{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Vehicle latitude.'}, 'lon': {'type': 'number', 'description': 'Vehicle longitude.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Current vehicle position if available, or null.'}, 'scheduleDeviation': {'type': 'number', 'description': 'Seconds late (positive) or early (negative). Only meaningful when predicted=true.'}, 'predictedArrivalTime': {'type': ['number', 'null'], 'description': 'Predicted arrival time as Unix milliseconds. Null when predicted=false.'}, 'scheduledArrivalTime': {'type': 'number', 'description': 'Scheduled arrival time as Unix milliseconds.'}}, 'description': 'A single arrival or departure at this stop.', 'additionalProperties': False}, 'description': 'Arrivals and departures at this stop within the requested time window.'}, 'currentTime': {'type': 'number', 'description': 'Server time as Unix milliseconds, for computing countdown timers.'}, 'queriedStop': {'type': 'string', 'description': 'Stop ID queried.'}, 'windowMinutes': {'type': 'object', 'required': ['before', 'after'], 'properties': {'after': {'type': 'number', 'description': 'Minutes after current time included.'}, 'before': {'type': 'number', 'description': 'Minutes before current time included.'}}, 'description': 'Time window used for the arrivals query.', 'additionalProperties': False}}, 'additionalProperties': False}
onebusaway_get_trip
Get Trip Status
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['tripId'], 'properties': {'tripId': {'type': 'string', 'minLength': 1, 'description': 'Trip ID from an arrivals response or schedule lookup.'}, 'serviceDateMs': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Service date as Unix milliseconds (midnight local time) â\x80\x94 a non-negative integer. Only needed for trips from a previous service day. Omit to use today.'}, 'includeSchedule': {'type': 'boolean', 'default': True, 'description': 'Whether to include the full stop sequence with times. Defaults to true.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['tripId', 'routeShortName', 'tripHeadsign', 'blockId', 'status', 'schedule', 'situations']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['trip_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `trip_not_found`: Trip ID not found or not active for the service date. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'status': {'type': 'object', 'required': ['phase', 'predicted', 'position', 'scheduleDeviation', 'nextStop', 'closestStop', 'vehicleId', 'lastUpdateTime'], 'properties': {'phase': {'type': 'string', 'description': 'Current journey phase (e.g. "in_progress", "layover_before", "layover_during").'}, 'nextStop': {'type': ['string', 'null'], 'description': 'Stop ID of the next stop, or null.'}, 'position': {'anyOf': [{'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Vehicle latitude.'}, 'lon': {'type': 'number', 'description': 'Vehicle longitude.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Current vehicle position if available, or null.'}, 'predicted': {'type': 'boolean', 'description': 'True if GPS-tracked real-time data is available.'}, 'vehicleId': {'type': ['string', 'null'], 'description': 'Vehicle ID if known, or null.'}, 'closestStop': {'type': ['string', 'null'], 'description': 'Stop ID of the closest stop, or null.'}, 'lastUpdateTime': {'type': 'number', 'description': 'Timestamp of the last real-time update as Unix milliseconds.'}, 'scheduleDeviation': {'type': 'number', 'description': 'Seconds late (positive) or early (negative).'}}, 'description': 'Real-time status of the trip.', 'additionalProperties': False}, 'tripId': {'type': 'string', 'description': 'The queried trip ID.'}, 'blockId': {'type': ['string', 'null'], 'description': 'Block ID grouping this trip with the others the same vehicle runs back-to-back. Pass to onebusaway_get_block for the full block schedule. Null when the trip has no block.'}, 'schedule': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['stopId', 'stopName', 'arrivalTime', 'departureTime', 'distanceAlongTripMeters'], 'properties': {'stopId': {'type': 'string', 'description': 'Stop ID.'}, 'stopName': {'type': 'string', 'description': 'Stop name.'}, 'arrivalTime': {'type': 'number', 'description': 'Scheduled arrival time as seconds from midnight (GTFS format).'}, 'departureTime': {'type': 'number', 'description': 'Scheduled departure time as seconds from midnight (GTFS format).'}, 'distanceAlongTripMeters': {'type': 'number', 'description': 'Distance along the trip to this stop, in meters.'}}, 'description': 'A scheduled stop time along this trip.', 'additionalProperties': False}}, {'type': 'null'}], 'description': 'Full stop sequence with times, or null if includeSchedule=false.'}, 'situations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Active situation IDs affecting this trip.'}, 'tripHeadsign': {'type': 'string', 'description': 'Destination sign text.'}, 'routeShortName': {'type': 'string', 'description': 'Route short name (e.g. "44").'}}, 'additionalProperties': False}
onebusaway_get_vehicles
Get Real-Time Vehicle Positions
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['agencyId'], 'properties': {'routeId': {'type': 'string', 'description': 'Optional agency-prefixed route ID to filter results to one route. Filtering is client-side â\x80\x94 all agency vehicles are fetched first.'}, 'agencyId': {'type': 'string', 'minLength': 1, 'description': 'Agency ID (e.g. "1" for Metro Transit, "40" for Sound Transit). Use onebusaway_list_agencies to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['vehicles', 'limitExceeded', 'agencyId', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of vehicles returned after any route filter.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['agency_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `agency_not_found`: Agency ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when no vehicles were found â\x80\x94 e.g. the route may not be currently active, or the agency may not have real-time data.'}, 'routeId': {'type': 'string', 'description': 'Route ID filter applied client-side, if any.'}, 'agencyId': {'type': 'string', 'description': 'Agency ID queried.'}, 'vehicles': {'type': 'array', 'items': {'type': 'object', 'required': ['vehicleId', 'tripId', 'routeId', 'routeShortName', 'tripHeadsign', 'position', 'lastUpdateTime', 'phase', 'scheduleDeviation', 'orientation', 'nextStop', 'predicted'], 'properties': {'phase': {'type': 'string', 'description': 'Current journey phase (e.g. "in_progress", "layover_before").'}, 'tripId': {'type': ['string', 'null'], 'description': 'Current trip ID, or null if not on a trip.'}, 'routeId': {'type': ['string', 'null'], 'description': 'Current route ID, or null.'}, 'nextStop': {'type': ['string', 'null'], 'description': 'Stop ID of the next stop, or null.'}, 'position': {'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Vehicle latitude.'}, 'lon': {'type': 'number', 'description': 'Vehicle longitude.'}}, 'description': 'Current GPS position.', 'additionalProperties': False}, 'predicted': {'type': 'boolean', 'description': 'True if this vehicle is reporting real-time GPS data.'}, 'vehicleId': {'type': 'string', 'description': 'Vehicle ID.'}, 'orientation': {'type': ['number', 'null'], 'description': 'Heading in degrees (0=north, 90=east), or null.'}, 'tripHeadsign': {'type': ['string', 'null'], 'description': 'Destination sign text, or null.'}, 'lastUpdateTime': {'type': 'number', 'description': 'Timestamp of the last position update as Unix milliseconds.'}, 'routeShortName': {'type': ['string', 'null'], 'description': 'Route short name, or null.'}, 'scheduleDeviation': {'type': ['number', 'null'], 'description': 'Seconds late (positive) or early (negative), or null.'}}, 'description': 'A real-time vehicle position entry.', 'additionalProperties': False}, 'description': 'Active vehicles for the agency, optionally filtered by route.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if the upstream capped the vehicle list â\x80\x94 some vehicles were omitted. This endpoint has no pagination to retrieve them.'}}, 'additionalProperties': False}
onebusaway_list_agencies
List Transit 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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['agencies', 'limitExceeded', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of transit agencies returned.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when no agencies were returned.'}, 'agencies': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'url', 'phone', 'timezone', 'coverageCenter', 'coverageSpan'], 'properties': {'id': {'type': 'string', 'description': 'Agency ID used in other calls (e.g. "1" for Metro Transit).'}, 'url': {'type': 'string', 'description': 'Agency website URL.'}, 'name': {'type': 'string', 'description': 'Full agency name.'}, 'phone': {'type': ['string', 'null'], 'description': 'Agency phone number, or null if not provided.'}, 'timezone': {'type': 'string', 'description': 'Agency timezone (e.g. "America/Los_Angeles").'}, 'coverageSpan': {'type': 'object', 'required': ['latSpan', 'lonSpan'], 'properties': {'latSpan': {'type': 'number', 'description': 'Latitude span of the coverage area in degrees.'}, 'lonSpan': {'type': 'number', 'description': 'Longitude span of the coverage area in degrees.'}}, 'description': "Geographic extent of the agency's service area.", 'additionalProperties': False}, 'coverageCenter': {'type': 'object', 'required': ['lat', 'lon'], 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the coverage center.'}, 'lon': {'type': 'number', 'description': 'Longitude of the coverage center.'}}, 'description': "Geographic center of the agency's service area.", 'additionalProperties': False}}, 'description': 'A transit agency with coverage information.', 'additionalProperties': False}, 'description': 'All agencies served by this OneBusAway instance.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if the upstream capped the agency list â\x80\x94 some agencies were omitted. This endpoint has no pagination to retrieve them.'}}, 'additionalProperties': False}
onebusaway_list_routes_for_agency
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['agencyId'], 'properties': {'agencyId': {'type': 'string', 'minLength': 1, 'description': 'Agency ID (e.g. "1" for Metro Transit, "40" for Sound Transit). Use onebusaway_list_agencies to discover IDs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['routes', 'limitExceeded', 'agencyId', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'count': {'type': 'number', 'description': 'Number of routes returned for this agency.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['agency_not_found', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `agency_not_found`: Agency ID does not exist on this instance. `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Guidance when no routes were found â\x80\x94 verify the agency ID with onebusaway_list_agencies.'}, 'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'shortName', 'longName', 'description', 'type', 'color', 'url'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed route ID. Use with onebusaway_get_schedule_for_route or onebusaway_get_vehicles.'}, 'url': {'type': ['string', 'null'], 'description': 'Agency schedule page URL, or null.'}, 'type': {'type': 'number', 'description': 'GTFS route type: 0=tram, 1=subway, 2=rail, 3=bus, 4=ferry, 5=cable_car.'}, 'color': {'type': ['string', 'null'], 'description': 'Route brand color hex (without #), or null.'}, 'longName': {'type': 'string', 'description': 'Full route name.'}, 'shortName': {'type': 'string', 'description': 'The number or short name displayed on vehicles.'}, 'description': {'type': 'string', 'description': 'Route description.'}}, 'description': 'A transit route operated by this agency.', 'additionalProperties': False}, 'description': 'All routes operated by this agency.'}, 'agencyId': {'type': 'string', 'description': 'Agency ID queried.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if the upstream capped the route list â\x80\x94 some routes were omitted. This endpoint has no pagination to retrieve them.'}}, 'additionalProperties': False}
onebusaway_search_routes
Search Routes by Name or Number
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 1, 'description': 'Route name or number (e.g. "44", "Link", or "RapidRide").'}, 'maxCount': {'type': 'integer', 'default': 10, 'maximum': 100, 'description': 'Maximum number of results to return. A positive integer, at most 100. Defaults to 10.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['routes', 'limitExceeded', 'query', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cap': {'type': 'number', 'description': 'The maxCount limit applied to truncated results.'}, 'count': {'type': 'number', 'description': 'Number of routes returned.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['endpoint_unavailable', 'rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `endpoint_unavailable`: The search/route endpoint returns 404 on this OBA instance (e.g. Puget Sound). `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'query': {'type': 'string', 'description': 'Route name/number query sent to the API.'}, 'shown': {'type': 'number', 'description': 'Number of routes returned when results were truncated.'}, 'notice': {'type': 'string', 'description': 'Guidance when no routes matched â\x80\x94 e.g. try onebusaway_find_routes with coordinates, or onebusaway_list_routes_for_agency.'}, 'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'shortName', 'longName', 'description', 'agencyId', 'agencyName', 'type'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed route ID (e.g. "1_100259"). Use with onebusaway_get_vehicles or onebusaway_get_schedule_for_route.'}, 'type': {'type': 'number', 'description': 'GTFS route type: 0=tram, 1=subway, 2=rail, 3=bus, 4=ferry, 5=cable_car.'}, 'agencyId': {'type': 'string', 'description': 'Agency ID that operates this route.'}, 'longName': {'type': 'string', 'description': 'Full route name.'}, 'shortName': {'type': 'string', 'description': 'The number or short name displayed on vehicles (e.g. "44").'}, 'agencyName': {'type': 'string', 'description': 'Agency name that operates this route.'}, 'description': {'type': 'string', 'description': 'Route description.'}}, 'description': 'A transit route with agency and type information.', 'additionalProperties': False}, 'description': 'Routes matching the search query.'}, 'truncated': {'type': 'boolean', 'description': 'True when matching routes exceeded maxCount.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if more routes match than were returned; raise maxCount or refine the query to see all.'}}, 'additionalProperties': False}
onebusaway_search_stops
Search Stops by Name or Code
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.
読み取り専用
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 1, 'description': 'Stop name fragment or stop code (e.g. "University Way" or "75403").'}, 'maxCount': {'type': 'integer', 'default': 10, 'maximum': 100, 'description': 'Maximum number of results to return. A positive integer, at most 100. Defaults to 10.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['stops', 'limitExceeded', 'query', 'count']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cap': {'type': 'number', 'description': 'The maxCount limit applied to truncated results.'}, 'count': {'type': 'number', 'description': 'Number of stops returned.'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['rate_limited'], 'description': 'Machine-readable failure mode. Declared by this tool: `rate_limited`: No upstream request slot opened within the queue wait cap, or OneBusAway returned a rate limit response. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'query': {'type': 'string', 'description': 'Search query sent to the API.'}, 'shown': {'type': 'number', 'description': 'Number of stops returned when results were truncated.'}, 'stops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'code', 'name', 'lat', 'lon', 'direction', 'routeIds', 'wheelchairBoarding'], 'properties': {'id': {'type': 'string', 'description': 'Agency-prefixed stop ID (e.g. "1_75403"). Use with onebusaway_get_arrivals.'}, 'lat': {'type': 'number', 'description': 'Latitude of the stop.'}, 'lon': {'type': 'number', 'description': 'Longitude of the stop.'}, 'code': {'type': 'string', 'description': 'The stop code printed on the sign.'}, 'name': {'type': 'string', 'description': 'Stop name.'}, 'routeIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'IDs of routes that serve this stop.'}, 'direction': {'type': 'string', 'description': 'Compass direction of travel at this stop.'}, 'wheelchairBoarding': {'enum': ['ACCESSIBLE', 'NOT_ACCESSIBLE', 'UNKNOWN'], 'type': 'string', 'description': 'Wheelchair boarding status.'}}, 'description': 'A transit stop with location and route information.', 'additionalProperties': False}, 'description': 'Stops matching the search query.'}, 'notice': {'type': 'string', 'description': 'Guidance when no stops matched â\x80\x94 e.g. try a different name fragment or use onebusaway_find_stops with coordinates.'}, 'truncated': {'type': 'boolean', 'description': 'True when matching stops exceeded maxCount.'}, 'limitExceeded': {'type': 'boolean', 'description': 'True if more stops match than were returned; raise maxCount or refine the query to see all.'}}, 'additionalProperties': False}
変更
onebusaway_get_schedule_for_route
2026年9月27日2:44
変更
onebusaway_get_schedule_for_stop
2026年9月27日2:44
変更
onebusaway_get_block
2026年9月27日2:44
変更
onebusaway_get_trip
2026年9月27日2:44
追加
onebusaway_get_stop_context
2026年9月27日2:44
変更
onebusaway_get_arrivals
2026年9月27日2:44
変更
onebusaway_get_schedule_for_route
2026年9月21日2:50
変更
onebusaway_get_schedule_for_stop
2026年9月21日2:50
変更
onebusaway_get_vehicles
2026年9月21日2:50
変更
onebusaway_get_block
2026年9月21日2:50
変更
onebusaway_get_trip
2026年9月21日2:50
変更
onebusaway_get_alert
2026年9月21日2:50
変更
onebusaway_get_arrivals
2026年9月21日2:50
変更
onebusaway_list_routes_for_agency
2026年9月21日2:50
変更
onebusaway_get_route
2026年9月21日2:50
変更
onebusaway_get_stop
2026年9月21日2:50
変更
onebusaway_search_routes
2026年9月21日2:50
変更
onebusaway_search_stops
2026年9月21日2:50
変更
onebusaway_find_routes
2026年9月21日2:50
変更
onebusaway_find_stops
2026年9月21日2:50
変更
onebusaway_list_agencies
2026年9月21日2:50
追加
onebusaway_get_schedule_for_route
2026年9月17日12:41
追加
onebusaway_get_schedule_for_stop
2026年9月17日12:41
追加
onebusaway_get_vehicles
2026年9月17日12:41
追加
onebusaway_get_block
2026年9月17日12:41
追加
onebusaway_get_trip
2026年9月17日12:41
追加
onebusaway_get_alert
2026年9月17日12:41
追加
onebusaway_get_arrivals
2026年9月17日12:41
追加
onebusaway_list_routes_for_agency
2026年9月17日12:41
追加
onebusaway_get_route
2026年9月17日12:41