Skip to main content
Glama

Server Details

Lviv public transport MCP: stops, timetables, routes, and live vehicle positions. No API key.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
99.5% over 77 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
vbhjckfd/timetable-api-node
GitHub Stars
3
Server Listing
mcp-lad-lviv-ua
ChatGPT
–
Claude
–

TDQS

A4.6/5.0

Scored across 9 tools

Disambiguation5/5

The tools have clearly separate query scopes: routing, stop search, nearby stops, static route data, live arrivals at a stop, live vehicles on a route, nearby vehicles, one vehicle, and disruptions. Several descriptions explicitly redirect to the correct alternative tool, so boundaries between the realtime tools are clear.

Naming Consistency5/5

All names use snake_case and are verb-first, resource-oriented names such as get_route_static, get_stop_realtime, search_stops, and find_routes_between. The mix of get/search/find is semantically consistent rather than chaotic.

Tool Count5/5

Nine tools are well-scoped for a public transport server covering routing, stops, routes, realtime data, vehicles, and disruptions. Each tool has a distinct role and none feels redundant or excessive.

Completeness4/5

The surface covers the main agent workflows well: finding stops, planning trips, checking route/stop/vehicle realtime data, and learning about disruptions. Minor gaps include no explicit route search/list tool and no full stop-level timetable beyond live arrivals, but agents can work around these using stop and route results.

Available Tools

9 tools
find_routes_betweenFind Routes Between StopsA
Read-onlyIdempotent
Inspect

Lists the routes from one place to another: which stop to board, where to get off, the direction's destination, stops in between, and the walk at each end — best first, walking counted. Each end is a stop ID (from_stop_id) or coordinates (from_lat + from_lng), e.g. an address the user gave; a point covers every stop within a 600 m walk of it. options are direct routes. transfer_options have exactly one interchange (never more): ride legs[0], walk transfer_walk_meters (within a 300 m stop cluster, 0 when it is the same stop) to legs[1].board_stop, ride legs[1]. They are listed when there is no direct route or when they beat the best direct one. Every option carries schedule: by the timetable, when to leave, when each leg boards and alights, when you arrive, and total_minutes door to door. Plan for now by default, or pass depart_at or arrive_by ("HH:MM" Lviv time today, or ISO 8601). When planning for now, options also carry next_departures: the live next departures of the first leg from its boarding stop, so no separate get_stop_realtime call is needed. map_stops holds the best trip's stops in riding order, each with a role (board, transfer — or transfer_alight + transfer_board when the interchange is a walk — and alight). Use when the user asks how to get from A to B, which bus/tram goes from one place to another, how long it takes, or when to leave to be somewhere on time. A stop end covers every stop within a 300 m walk of it, since a line's two directions often stop on opposite sides of a street under different names; board_stop says where to actually wait. Routes the city has suspended, and stops a detour skips, are left out. walk_meters is set when the two ends are within a 300 m walk of each other: no ride is searched then, so tell the user to walk. Otherwise both lists empty means the trip needs two or more transfers. Get stop IDs with search_stops or get_stops_around_location.

NameRequiredDescriptionDefault
to_latNoDecimal latitude of the destination, WGS84 (e.g. 49.842 for central Lviv).
to_lngNoDecimal longitude of the destination, WGS84 (e.g. 24.031 for central Lviv).
from_latNoDecimal latitude of the start point, WGS84 (e.g. 49.842 for central Lviv).
from_lngNoDecimal longitude of the start point, WGS84 (e.g. 24.031 for central Lviv).
arrive_byNoArrive by this time: "HH:MM" Lviv time today, or ISO 8601. Not together with `depart_at`.
depart_atNoLeave at this time: "HH:MM" Lviv time today, or ISO 8601. Default now. Not together with `arrive_by`.
to_stop_idNoStop ID where the trip ends. Give this or `to_lat` + `to_lng`.
from_stop_idNoStop ID where the trip starts. Give this or `from_lat` + `from_lng`.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnly/idempotent/openWorld, and the description goes well beyond that with hard behavioral facts: at most one interchange, transfers only surfaced when they beat the best direct route, suspended routes and skipped stops filtered out, the walk_meters short-circuit when ends are within 300 m, and empty lists meaning two-plus transfers are required. It also discloses the lazy live-data behavior (next_departures included only when planning for now).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the result shape, then endpoints, then option types, then time parameters, then usage triggers — a sensible ordering with no filler sentences. It is dense and long, with heavy parenthetical nesting around transfer_walk_meters and the role enumeration, but essentially every sentence carries information an agent would otherwise have to infer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an eight-parameter, open-world routing tool with an output schema, the description covers the result structure, transfer constraints, filtering rules, time semantics, and the coordinate-vs-stop radius distinction. Nothing material an agent would need to call it correctly or to explain results to a user appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds genuine interpretive meaning: a coordinate end covers every stop within a 600 m walk while a stop ID end covers a 300 m cluster, and both directions of a line may appear under different names with board_stop saying where to actually wait. The depart_at/arrive_by formats are restated from the schema rather than extended, which keeps this just short of a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and resource ("Lists the routes from one place to another") and immediately enumerates what each result carries: boarding stop, alighting stop, direction destination, intermediate stops, and end walks. It also names the sibling tools it is not (get_stop_realtime, search_stops, get_stops_around_location), so an agent can route correctly without opening another schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Contains an explicit trigger list: "Use when the user asks how to get from A to B, which bus/tram goes from one place to another, how long it takes, or when to leave to be somewhere on time." It also names the alternatives for obtaining stop IDs (search_stops, get_stops_around_location) and states that no separate get_stop_realtime call is needed, which is exactly the kind of exclusion an agent needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_disruptionsGet DisruptionsA
Read-onlyIdempotent
Inspect

Lists closures, detours and moved stops the city announced that are in force today: affected routes, the streets a detour uses, routes to take instead of a suspended one, reason, dates and source. The GTFS stop lists and timetables do not reflect any of this. Use when the user asks about road works, closures, detours, or why a route is not running or a vehicle is off its usual path. Pass route and/or stop_id to get only the entries touching them; omit both for the whole city.

NameRequiredDescriptionDefault
routeNoOnly disruptions on this route, by short name (e.g. "Т30", "А34"). Omit for all routes.
stop_idNoOnly disruptions at this stop. Omit for all stops.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent and open-world, so the description's added value is the temporal scope ('in force today'), the source being city announcements, and the warning that GTFS data does not reflect any of it. It does not discuss result volume or freshness beyond 'today', which keeps it just short of a 5 for an open-world read tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the resource and its scope, then the usage condition, then the filtering mechanics. Dense but every clause carries information an agent needs; nothing is repeated from the schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not enumerate return values, and it still names the key fields. Two optional, fully documented parameters plus read-only annotations mean nothing needed for a correct call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds combination semantics the schema does not: filters are conjunctive with the concept of 'entries touching them' and omitting both returns the whole city. That is genuine meaning beyond the per-parameter text, though it adds no format examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (lists closures, detours and moved stops) plus the exact scope ('in force today') and the payload (affected routes, detour streets, substitute routes, reason, dates, source). An agent can immediately tell this apart from timetable/static siblings like get_route_static or get_route_realtime.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit triggering conditions ('road works, closures, detours, or why a route is not running or a vehicle is off its usual path') and explicitly rules out the GTFS stop lists and timetables, which routes the agent away from the static siblings. The filtering instruction ('pass route and/or stop_id... omit both for the whole city') further tells it how to scope the call.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_nearby_vehiclesGet Nearby VehiclesA
Read-onlyIdempotent
Inspect

Returns live vehicles near a point, nearest first, each with its route, destination, and distance. Use when the user asks "what transport is near me right now?" or wants a live map around a location. Narrow with route when the user cares about one line; prefer get_route_realtime for a whole route and get_stop_realtime for arrival times at a stop. Requires decimal latitude and longitude (WGS84).

NameRequiredDescriptionDefault
limitNoMaximum vehicles to return, nearest first (1–50, default 15). `total` reports how many were in range.
routeNoOnly vehicles on this route, by short name (e.g. "Т30", "А1"). Omit for all routes.
latitudeYesDecimal latitude of the centre point, WGS84 (e.g. 49.842 for central Lviv).
longitudeYesDecimal longitude of the centre point, WGS84 (e.g. 24.031 for central Lviv).
lowfloor_onlyNoOnly low-floor vehicles (step-free: wheelchairs, prams). Timetable entries without a tracked vehicle are left out, since their floor is unknown. Default false.
radius_metersNoSearch radius in metres (100–1000, default 500).

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, and open-world, so the safety profile is covered. The description adds what annotations cannot: results are live rather than scheduled, ordered nearest-first, and coordinate system must be WGS84 decimal degrees. It does not disclose radius behavior defaults or what happens for out-of-range points, but the schema carries the radius bounds.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences, front-loaded with the return shape, then usage, then prerequisites. Every clause carries information the schema does not: ordering, liveness, routing to alternatives, coordinate system.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present the description need not explain return fields, and it doesn't. For a read-only spatial lookup with annotations and full schema coverage, nothing an agent needs to select or invoke this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter meaning: the 'narrow with route for one line' guidance and the explicit WGS84 requirement frame how latitude/longitude and route are meant to be combined. The lowfloor_only and limit subtleties remain schema-only.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (returns live vehicles near a point), the ordering (nearest first), and the payload (route, destination, distance). An agent can distinguish this from get_route_realtime and get_stop_realtime without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger phrasing ('what transport is near me right now?'), a narrowing condition for the route parameter, and names two siblings with the conditions that select them instead. Only the remaining siblings (get_vehicle_info, get_stops_around_location) go unmentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_route_realtimeGet Route RealtimeA
Read-onlyIdempotent
Inspect

Returns every vehicle currently running on a route: position, the destination it is heading to, and its next stop with estimated arrival. headways sums up each direction: how many vehicles run, the live gaps between consecutive vehicles in minutes (front to back), and how often the timetable says it should run right now. Use when the user asks "where is my tram/bus right now?", how many vehicles are running, how far the next one is, or how often a route runs. Pass direction (0 or 1, as in get_route_static's stops) to get only one way. Prefer get_stop_realtime when the user is at a stop and wants arrival times there. Requires a route short name (e.g. "T30", "32A") or numeric external ID.

NameRequiredDescriptionDefault
directionNoOnly vehicles heading this way: 0 or 1, the index into get_route_static's `stops`. Omit for both.
route_nameYesRoute short name (e.g. "T30", "32A") or numeric external ID.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, idempotent, open-world behavior, so the description is not carrying the safety burden. It does add real semantic context beyond them: what `headways` actually computes (vehicle count per direction, live front-to-back gaps in minutes, current scheduled frequency) and what `direction` filtering does. It stops short of stating freshness/lag of the live data or what happens when a route has no running vehicles.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Use cases and output content are front-loaded, and the sibling routing plus input constraints follow in a logical order. The `headways` sentence is dense and slightly parenthetical, but every clause conveys information an agent would otherwise have to guess.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description does not need to detail return structure, and with only two fully documented parameters the input side is covered. The only material omission is runtime behavior for edge cases such as an unknown route name or a route with no active vehicles, which matters for an open-world live-data tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 and the schema already documents both fields. The description still adds cross-tool meaning by tying `direction` to the index into get_route_static's `stops` and by restating the accepted route identifier formats, which helps an agent resolve the value correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and resource: 'Returns every vehicle currently running on a route', then enumerates the payload (position, destination, next stop ETA) and the additional `headways` aggregate. It is clearly distinguishable from get_route_static (schedule/stops) and get_stop_realtime (per-stop arrivals) named later in the text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete user intents that select this tool ("where is my tram/bus right now?", vehicle counts, next-vehicle distance, frequency) and names the alternative explicitly: prefer `get_stop_realtime` when the user is at a stop. It also states the required input form (short name like "T30" or numeric external ID).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_route_staticGet Route StaticA
Read-onlyIdempotent
Inspect

Returns static route data: name, long name, vehicle type, colour, the ordered stop list for both directions, and the timetable of departures from the first stop (workday, Saturday and Sunday). Use when the user asks which stops a route serves, where it goes, or its scheduled departure times. Set include_shapes only when you will draw the route on a map — the polylines are large and carry nothing a text answer needs. Do NOT use this for live vehicle positions — use get_route_realtime instead. Requires a route short name (e.g. "T30", "32A") or numeric external ID.

NameRequiredDescriptionDefault
route_nameYesRoute short name (e.g. "T30", "32A") or numeric external ID.
include_shapesNoInclude route polylines ([lat, lng] points per direction) for map drawing. Default false.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, and open-world behavior. The description adds useful behavioral context beyond annotations by listing the data returned and warning that `include_shapes` polylines are large and unnecessary for text answers. It does not discuss rate limits or auth, but those are minor for this static read-only lookup.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with what the tool returns and when to use it, followed by the alternative tool and the optional parameter caveat. Every sentence earns its place, and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description does not need to document return structure in full. It still summarizes the returned data and warns about the large shape payload, which is exactly the context an agent needs for a two-parameter static route lookup.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters and the baseline is 3. The description adds decision semantics for `include_shapes`: it should be set only for map drawing because the polylines are large and carry nothing needed for a text answer. It also restates accepted `route_name` formats, reinforcing the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Returns static route data', then enumerates the key contents such as name, long name, vehicle type, colour, ordered stop lists, and timetable. It also explicitly distinguishes this from `get_route_realtime` for live vehicle positions, so an agent can identify the correct sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use guidance: which stops a route serves, where it goes, or scheduled departure times. It also gives explicit when-not-to-use guidance: live vehicle positions should use `get_route_realtime`, and `include_shapes` should be set only when drawing the route on a map. The required route-name forms are also stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stop_realtimeGet Stop RealtimeA
Read-onlyIdempotent
Inspect

Returns live arrivals at a stop: route, destination, vehicle type, minutes until arrival, and each vehicle's position. Use this as the default tool when the user asks about arrivals, departures, or the next bus/tram at a specific stop. Requires a numeric stop ID (shown on stop signage); use search_stops when you have a stop name, or get_stops_around_location when you have coordinates.

NameRequiredDescriptionDefault
stop_idYesMunicipal stop code shown on stop signage (e.g. 707). Accepts a positive integer or an equivalent digit-only string.
lowfloor_onlyNoOnly low-floor arrivals (step-free: wheelchairs, prams). Timetable entries without a tracked vehicle are left out, since their floor is unknown. Default false.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and openWorld, so the safety profile is covered. The description adds the realtime nature of the data and the hard prerequisite of a numeric stop ID from signage, which is genuinely useful context. It stops short of disclosing data freshness, coverage, or failure behavior when a stop has no live vehicles.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with what the tool returns, followed by the default-usage directive and the disambiguation hints. No redundant phrasing; the bold emphasis marks the key routing instruction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is not required, yet the description still summarizes the payload. Combined with the prerequisite and the sibling routing, an agent has everything needed to call this correctly without opening another definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already explains the municipal stop code and the low-floor filter in detail, so the description adds little on parameters. Its one contribution is routing the agent to the correct lookup tool when it lacks a stop ID. Baseline 3 is appropriate when the schema carries the semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and resource ('Returns live arrivals at a stop') and enumerates the payload (route, destination, vehicle type, minutes until arrival, vehicle position). It is unmistakably distinct from siblings such as get_route_realtime or get_vehicle_info because it is scoped to a single stop.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly designates itself as the 'default tool' for arrivals/departures/next-bus questions at a specific stop, then names the two alternatives with the exact condition that selects each: `search_stops` for a stop name and `get_stops_around_location` for coordinates. This is the when/when-not/alternative pattern in full.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stops_around_locationGet Stops Around LocationA
Read-onlyIdempotent
Inspect

Finds stops near a geographic point, returning each stop's numeric ID, name, coordinates, walking distance, and the routes serving it. Use this as the first step when the user gives an address or coordinates and you need stop IDs for get_stop_realtime or find_routes_between. Use search_stops instead when the user gives a stop name. Default radius is 1 000 m; narrow it (e.g. 300 m) for dense urban areas or widen it (up to 3 000 m) for rural locations.

NameRequiredDescriptionDefault
latitudeYesDecimal latitude of the search centre, WGS84 (e.g. 49.842 for central Lviv).
longitudeYesDecimal longitude of the search centre, WGS84 (e.g. 24.031 for central Lviv).
radius_metersNoSearch radius in metres (50–3000, default 1000). Use ~300 for dense urban intersections, up to 3000 for suburban or rural areas.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered; the description adds value by disclosing what is returned and how radius tuning affects results in dense vs. rural settings. It stops short of noting pagination, result caps, or behaviour when no stops are found, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and return fields, then usage routing, then radius tuning — a logical order with no filler. Minor waste comes from repeating the 300 m / 3 000 m radius guidance already present in the parameter descriptions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter read tool with an output schema, the description covers selection, alternatives, downstream use, and the one behavioural knob (radius) that changes result quality. Nothing an agent needs in order to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and every parameter already documents its range, WGS84 format and urban/rural sizing advice, so the description's radius guidance largely restates the schema. It adds no new syntax or interpretation beyond that, which matches the baseline 3 for high-coverage schemas.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Finds stops near a geographic point') and enumerates the returned fields (ID, name, coordinates, walking distance, serving routes), which lets an agent distinguish it from search_stops and get_stop_realtime without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly positions the tool as the 'first step' when the input is an address or coordinates, names the downstream tools that consume the stop IDs, and gives a clear exclusion rule: use search_stops when the user supplies a stop name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_vehicle_infoGet Vehicle InfoA
Read-onlyIdempotent
Inspect

Returns details for one vehicle by ID: position, route, destination, license plate, and its upcoming stops with names and estimated arrival times. Use when the user wants to follow a particular vehicle, e.g. "where does this tram go next?" or "when will it reach X?". Vehicle IDs come from get_route_realtime, get_nearby_vehicles, or get_stop_realtime results. Do NOT use this to get all vehicles on a route — use get_route_realtime instead.

NameRequiredDescriptionDefault
vehicle_idYesVehicle ID as returned by get_route_realtime, get_nearby_vehicles, or get_stop_realtime.

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered; the description still adds behavioral value by stating the single-vehicle scope and that results include upcoming stops with estimated arrival times. It omits edge behavior such as what happens with an unknown or stale vehicle ID, which is the main remaining gap given the response schema already documents the shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tightly packed sentences: capability and payload first, usage and provenance second, anti-pattern third. No filler and the ordering is front-loaded for fast triage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

One required parameter, full schema coverage, an output schema that carries the return shape, and rich annotations — the description supplies exactly the missing layer (when to use it, where IDs come from, which sibling to prefer) without redundant explanation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single vehicle_id parameter is already documented with its provenance, so the description's mention of ID sources largely restates the schema. There is no extra guidance on ID format, case sensitivity, or what to do if an ID is rejected, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource ('Returns details for one vehicle by ID') plus an enumeration of the payload (position, route, destination, license plate, upcoming stops with ETAs), and it explicitly distinguishes itself from get_route_realtime, which returns all vehicles on a route.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when-to-use with two natural-language user intents, states the prerequisite (where vehicle IDs come from — get_route_realtime, get_nearby_vehicles, get_stop_realtime), and adds an explicit 'do NOT use this... use get_route_realtime instead' exclusion that routes the agent to the right sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_stopsSearch StopsA
Read-onlyIdempotent
Inspect

Finds stops by name (Ukrainian or English transliteration, case-insensitive, partial match) and returns each stop's numeric ID, coordinates, and the routes serving it. Use this as the first step when the user names a stop or landmark stop (e.g. "Опера", "Rynok", "Головний вокзал") and you need a stop ID for get_stop_realtime or find_routes_between. One name usually covers both sides of the street under different IDs; each is returned, and the routes list tells them apart. Use get_stops_around_location instead when you have coordinates rather than a name.

NameRequiredDescriptionDefault
limitNoMaximum stops to return (1–25, default 10).
queryYesStop name or part of it, e.g. "Ринок", "opera", "Стрийська".

Output Schema

NameRequiredDescription
dataYes
viewYes
ui_blocksYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, openWorld), so the description focuses on behavior: matching is case-insensitive and partial, and a single name can legitimately return multiple IDs for both sides of the street, with the routes list as the disambiguator. That is genuinely useful non-obvious behavior. It stops short of describing empty-result behavior or how limit truncation is signalled, which keeps it off a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and return shape, then usage, then the alternative — a sensible ordering with no filler sentences. It is slightly longer than needed, since the inline examples ("Опера", "Rynok") partially duplicate the schema's own query examples, and the bold markup is decorative rather than structural.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter read tool with full schema coverage, an output schema, and annotations covering safety, the description covers essentially everything an agent needs to select and call it. The only minor gap is behavior at the boundaries — no hits, or hitting the limit cap — which is neither in the description nor the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning beyond the schema by declaring the query accept Ukrainian or English transliteration and that matching is case-insensitive and partial — semantics the schema's plain "Stop name or part of it" does not convey. The limit parameter is left entirely to the schema, preventing a higher score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ("Finds stops by name") and immediately states the return payload: numeric ID, coordinates, and serving routes. It distinguishes itself from sibling get_stops_around_location by input type (name vs. coordinates), so an agent can route without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly positions itself as the "first step" when the user names a stop, and names the two downstream consumers of the returned ID (get_stop_realtime, find_routes_between). It also states the exclusion condition: use get_stops_around_location when you have coordinates rather than a name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updates
    • Changedfind_routes_between3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_disruptions3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_nearby_vehicles3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_route_realtime3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_route_static3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_stop_realtime1 field changed
      • changedOutput schema / properties / ui_blocks / items / oneOf
        Previous value: -[
        -  {
        -    "properties": {
        -      "data": {
        -        "properties": {
        -          "center": {
        -            "additionalItems": false,
        -            "items": [
        -              {
        -                "type": [
        -                  "number",
        -                  "null"
        -                ]
        -              },
        -              {
        -                "type": [
        -                  "number",
        -                  "null"
        -                ]
        -              }
        -            ],
        -            "maxItems": 2,
        -            "minItems": 2,
        -            "type": "array"
        -          },
        -          "layers": {
        -            "properties": {
        -              "polylines": {
        -                "type": "string"
        -              },
        -              "stops": {
        -                "type": "string"
        -              },
        -              "vehicles": {
        -                "type": "string"
        -              }
        -            },
        -            "type": "object"
        -          },
        -          "zoom": {
        -            "type": "number"
        -          }
        -        },
        -        "required": [
        -          "center",
        -          "zoom",
        -          "layers"
        -        ],
        -        "type": "object"
        -      },
        -      "type": {
        -        "const": "map",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "type",
        -      "data"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "properties": {
        -      "data": {
        -        "properties": {
        -          "source": {
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "source"
        -        ],
        -        "type": "object"
        -      },
        -      "type": {
        -        "const": "arrival_list",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "type",
        -      "data"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "data": {
        +        "properties": {
        +          "center": {
        +            "items": false,
        +            "maxItems": 2,
        +            "minItems": 2,
        +            "prefixItems": [
        +              {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              },
        +              {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              }
        +            ],
        +            "type": "array"
        +          },
        +          "layers": {
        +            "properties": {
        +              "polylines": {
        +                "type": "string"
        +              },
        +              "stops": {
        +                "type": "string"
        +              },
        +              "vehicles": {
        +                "type": "string"
        +              }
        +            },
        +            "type": "object"
        +          },
        +          "zoom": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "center",
        +          "zoom",
        +          "layers"
        +        ],
        +        "type": "object"
        +      },
        +      "type": {
        +        "const": "map",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type",
        +      "data"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "properties": {
        +      "data": {
        +        "properties": {
        +          "source": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "source"
        +        ],
        +        "type": "object"
        +      },
        +      "type": {
        +        "const": "arrival_list",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type",
        +      "data"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedget_stops_around_location3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedget_vehicle_info3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
    • Changedsearch_stops3 fields changed
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / center / additionalItems
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / properties / data / properties / center / items
        Previous value: -[
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  },
        -  {
        -    "type": [
        -      "number",
        -      "null"
        -    ]
        -  }
        -]New value: +false
      • addedOutput schema / properties / ui_blocks / items / properties / data / properties / center / prefixItems
        Added value: +[
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  },
        +  {
        +    "type": [
        +      "number",
        +      "null"
        +    ]
        +  }
        +]
  2. 5 tool updates
    • Changedfind_routes_between2 fields changed
      • addedOutput schema / properties / data / properties / disruptions / items / properties / area
        Added value: +{
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    },
        +    "radius_meters": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng",
        +    "radius_meters"
        +  ],
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / data / properties / disruptions / items / required
        Previous value: -[
        -  "id",
        -  "kind",
        -  "reason",
        -  "since",
        -  "until",
        -  "until_text",
        -  "routes",
        -  "stops",
        -  "alternatives",
        -  "detour",
        -  "note",
        -  "source",
        -  "url"
        -]New value: +[
        +  "id",
        +  "kind",
        +  "reason",
        +  "since",
        +  "until",
        +  "until_text",
        +  "routes",
        +  "stops",
        +  "alternatives",
        +  "detour",
        +  "area",
        +  "note",
        +  "source",
        +  "url"
        +]
    • Changedget_disruptions2 fields changed
      • addedOutput schema / properties / data / properties / disruptions / items / properties / area
        Added value: +{
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    },
        +    "radius_meters": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng",
        +    "radius_meters"
        +  ],
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / data / properties / disruptions / items / required
        Previous value: -[
        -  "id",
        -  "kind",
        -  "reason",
        -  "since",
        -  "until",
        -  "until_text",
        -  "routes",
        -  "stops",
        -  "alternatives",
        -  "detour",
        -  "note",
        -  "source",
        -  "url"
        -]New value: +[
        +  "id",
        +  "kind",
        +  "reason",
        +  "since",
        +  "until",
        +  "until_text",
        +  "routes",
        +  "stops",
        +  "alternatives",
        +  "detour",
        +  "area",
        +  "note",
        +  "source",
        +  "url"
        +]
    • Changedget_route_realtime2 fields changed
      • addedOutput schema / properties / data / properties / disruptions / items / properties / area
        Added value: +{
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    },
        +    "radius_meters": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng",
        +    "radius_meters"
        +  ],
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / data / properties / disruptions / items / required
        Previous value: -[
        -  "id",
        -  "kind",
        -  "reason",
        -  "since",
        -  "until",
        -  "until_text",
        -  "routes",
        -  "stops",
        -  "alternatives",
        -  "detour",
        -  "note",
        -  "source",
        -  "url"
        -]New value: +[
        +  "id",
        +  "kind",
        +  "reason",
        +  "since",
        +  "until",
        +  "until_text",
        +  "routes",
        +  "stops",
        +  "alternatives",
        +  "detour",
        +  "area",
        +  "note",
        +  "source",
        +  "url"
        +]
    • Changedget_route_static2 fields changed
      • addedOutput schema / properties / data / properties / disruptions / items / properties / area
        Added value: +{
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    },
        +    "radius_meters": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng",
        +    "radius_meters"
        +  ],
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / data / properties / disruptions / items / required
        Previous value: -[
        -  "id",
        -  "kind",
        -  "reason",
        -  "since",
        -  "until",
        -  "until_text",
        -  "routes",
        -  "stops",
        -  "alternatives",
        -  "detour",
        -  "note",
        -  "source",
        -  "url"
        -]New value: +[
        +  "id",
        +  "kind",
        +  "reason",
        +  "since",
        +  "until",
        +  "until_text",
        +  "routes",
        +  "stops",
        +  "alternatives",
        +  "detour",
        +  "area",
        +  "note",
        +  "source",
        +  "url"
        +]
    • Changedget_stop_realtime2 fields changed
      • addedOutput schema / properties / data / properties / disruptions / items / properties / area
        Added value: +{
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    },
        +    "radius_meters": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng",
        +    "radius_meters"
        +  ],
        +  "type": [
        +    "object",
        +    "null"
        +  ]
        +}
      • changedOutput schema / properties / data / properties / disruptions / items / required
        Previous value: -[
        -  "id",
        -  "kind",
        -  "reason",
        -  "since",
        -  "until",
        -  "until_text",
        -  "routes",
        -  "stops",
        -  "alternatives",
        -  "detour",
        -  "note",
        -  "source",
        -  "url"
        -]New value: +[
        +  "id",
        +  "kind",
        +  "reason",
        +  "since",
        +  "until",
        +  "until_text",
        +  "routes",
        +  "stops",
        +  "alternatives",
        +  "detour",
        +  "area",
        +  "note",
        +  "source",
        +  "url"
        +]
  3. 9 tool updates
    • Changedfind_routes_between67 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / from_stop_id / maximum
        Removed value: -9007199254740991
      • removedInput schema / properties / to_stop_id / maximum
        Removed value: -9007199254740991
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / alternatives / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / detour / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "skipped_stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "via": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "via",
        -      "skipped_stops"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / properties
        Added value: +{
        +  "skipped_stops": {
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "via": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / required
        Added value: +[
        +  "via",
        +  "skipped_stops"
        +]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / properties / routes / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / from / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / from / properties / point / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / map_stops / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / options / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / options / items / properties / alight_stop / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / options / items / properties / board_stop / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / options / items / properties / direction / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / direction / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / next_departures / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / options / items / properties / next_departures / items / properties / arrival_minutes / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / options / items / properties / next_departures / items / properties / arrival_minutes / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / options / items / properties / schedule / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "arrive_at": {
        -        "type": "string"
        -      },
        -      "leave_at": {
        -        "type": "string"
        -      },
        -      "legs": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "alight_at": {
        -              "type": "string"
        -            },
        -            "board_at": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "board_at",
        -            "alight_at"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "total_minutes": {
        -        "maximum": 9007199254740991,
        -        "minimum": -9007199254740991,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "leave_at",
        -      "arrive_at",
        -      "total_minutes",
        -      "legs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / options / items / properties / schedule / properties
        Added value: +{
        +  "arrive_at": {
        +    "type": "string"
        +  },
        +  "leave_at": {
        +    "type": "string"
        +  },
        +  "legs": {
        +    "items": {
        +      "properties": {
        +        "alight_at": {
        +          "type": "string"
        +        },
        +        "board_at": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "board_at",
        +        "alight_at"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "total_minutes": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / properties / data / properties / options / items / properties / schedule / required
        Added value: +[
        +  "leave_at",
        +  "arrive_at",
        +  "total_minutes",
        +  "legs"
        +]
      • addedOutput schema / properties / data / properties / options / items / properties / schedule / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / options / items / properties / stops_count / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / stops_count / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / walk_from_alight_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / walk_from_alight_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / walk_to_board_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / options / items / properties / walk_to_board_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / timing / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / to / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / to / properties / point / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / alight_stop / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / board_stop / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / direction / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / direction / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / stops_count / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / legs / items / properties / stops_count / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / next_departures / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / next_departures / items / properties / arrival_minutes / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / next_departures / items / properties / arrival_minutes / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / schedule / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "arrive_at": {
        -        "type": "string"
        -      },
        -      "leave_at": {
        -        "type": "string"
        -      },
        -      "legs": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "alight_at": {
        -              "type": "string"
        -            },
        -            "board_at": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "board_at",
        -            "alight_at"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "total_minutes": {
        -        "maximum": 9007199254740991,
        -        "minimum": -9007199254740991,
        -        "type": "integer"
        -      }
        -    },
        -    "required": [
        -      "leave_at",
        -      "arrive_at",
        -      "total_minutes",
        -      "legs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / schedule / properties
        Added value: +{
        +  "arrive_at": {
        +    "type": "string"
        +  },
        +  "leave_at": {
        +    "type": "string"
        +  },
        +  "legs": {
        +    "items": {
        +      "properties": {
        +        "alight_at": {
        +          "type": "string"
        +        },
        +        "board_at": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "board_at",
        +        "alight_at"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "total_minutes": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / schedule / required
        Added value: +[
        +  "leave_at",
        +  "arrive_at",
        +  "total_minutes",
        +  "legs"
        +]
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / schedule / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / stops_count / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / stops_count / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / transfer_walk_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / transfer_walk_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / walk_from_alight_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / walk_from_alight_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / walk_to_board_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / transfer_options / items / properties / walk_to_board_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / walk_meters / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / walk_meters / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_disruptions17 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / stop_id / maximum
        Removed value: -9007199254740991
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / alternatives / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / detour / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "skipped_stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "via": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "via",
        -      "skipped_stops"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / properties
        Added value: +{
        +  "skipped_stops": {
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "via": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / required
        Added value: +[
        +  "via",
        +  "skipped_stops"
        +]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / properties / routes / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_nearby_vehicles12 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / total / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / total / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / vehicles / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / vehicles / items / properties / direction / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / vehicles / items / properties / direction / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_route_realtime34 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / direction / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / direction / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / alternatives / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / detour / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "skipped_stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "via": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "via",
        -      "skipped_stops"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / properties
        Added value: +{
        +  "skipped_stops": {
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "via": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / required
        Added value: +[
        +  "via",
        +  "skipped_stops"
        +]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / properties / routes / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / headways / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / headways / items / properties / direction / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / headways / items / properties / direction / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / headways / items / properties / gaps_minutes / items / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / headways / items / properties / gaps_minutes / items / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / headways / items / properties / scheduled_headway_minutes / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / headways / items / properties / scheduled_headway_minutes / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / headways / items / properties / vehicles / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / headways / items / properties / vehicles / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / vehicles / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / vehicles / items / properties / direction / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / vehicles / items / properties / direction / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / vehicles / items / properties / next_stop / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "arrival": {
        -        "type": "string"
        -      },
        -      "id": {
        -        "type": "string"
        -      },
        -      "name": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "name",
        -      "arrival"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / vehicles / items / properties / next_stop / properties
        Added value: +{
        +  "arrival": {
        +    "type": "string"
        +  },
        +  "id": {
        +    "type": "string"
        +  },
        +  "name": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  }
        +}
      • addedOutput schema / properties / data / properties / vehicles / items / properties / next_stop / required
        Added value: +[
        +  "id",
        +  "name",
        +  "arrival"
        +]
      • addedOutput schema / properties / data / properties / vehicles / items / properties / next_stop / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_route_static19 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / alternatives / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / detour / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "skipped_stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "via": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "via",
        -      "skipped_stops"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / properties
        Added value: +{
        +  "skipped_stops": {
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "via": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / required
        Added value: +[
        +  "via",
        +  "skipped_stops"
        +]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / properties / routes / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / route / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / stops / items / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / stops / items / items / properties / schedule / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_stop_realtime19 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / stop_id / maximum
        Removed value: -9007199254740991
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / arrivals / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / arrivals / items / properties / arrival_minutes / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / arrivals / items / properties / arrival_minutes / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / alternatives / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / detour / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "skipped_stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "via": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "via",
        -      "skipped_stops"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / properties
        Added value: +{
        +  "skipped_stops": {
        +    "items": {
        +      "type": "integer"
        +    },
        +    "type": "array"
        +  },
        +  "via": {
        +    "items": {
        +      "type": "string"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / required
        Added value: +[
        +  "via",
        +  "skipped_stops"
        +]
      • addedOutput schema / properties / data / properties / disruptions / items / properties / detour / type
        Added value: +[
        +  "object",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / disruptions / items / properties / routes / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / maximum
        Removed value: -9007199254740991
      • removedOutput schema / properties / data / properties / disruptions / items / properties / stops / items / minimum
        Removed value: --9007199254740991
      • removedOutput schema / properties / data / properties / stop / additionalProperties
        Removed value: -false
      • changedOutput schema / properties / ui_blocks / items / oneOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "data": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "center": {
        -            "additionalItems": false,
        -            "items": [
        -              {
        -                "type": [
        -                  "number",
        -                  "null"
        -                ]
        -              },
        -              {
        -                "type": [
        -                  "number",
        -                  "null"
        -                ]
        -              }
        -            ],
        -            "maxItems": 2,
        -            "minItems": 2,
        -            "type": "array"
        -          },
        -          "layers": {
        -            "additionalProperties": false,
        -            "properties": {
        -              "polylines": {
        -                "type": "string"
        -              },
        -              "stops": {
        -                "type": "string"
        -              },
        -              "vehicles": {
        -                "type": "string"
        -              }
        -            },
        -            "type": "object"
        -          },
        -          "zoom": {
        -            "type": "number"
        -          }
        -        },
        -        "required": [
        -          "center",
        -          "zoom",
        -          "layers"
        -        ],
        -        "type": "object"
        -      },
        -      "type": {
        -        "const": "map",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "type",
        -      "data"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "data": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "source": {
        -            "type": "string"
        -          }
        -        },
        -        "required": [
        -          "source"
        -        ],
        -        "type": "object"
        -      },
        -      "type": {
        -        "const": "arrival_list",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "type",
        -      "data"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "properties": {
        +      "data": {
        +        "properties": {
        +          "center": {
        +            "additionalItems": false,
        +            "items": [
        +              {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              },
        +              {
        +                "type": [
        +                  "number",
        +                  "null"
        +                ]
        +              }
        +            ],
        +            "maxItems": 2,
        +            "minItems": 2,
        +            "type": "array"
        +          },
        +          "layers": {
        +            "properties": {
        +              "polylines": {
        +                "type": "string"
        +              },
        +              "stops": {
        +                "type": "string"
        +              },
        +              "vehicles": {
        +                "type": "string"
        +              }
        +            },
        +            "type": "object"
        +          },
        +          "zoom": {
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "center",
        +          "zoom",
        +          "layers"
        +        ],
        +        "type": "object"
        +      },
        +      "type": {
        +        "const": "map",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type",
        +      "data"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "properties": {
        +      "data": {
        +        "properties": {
        +          "source": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "source"
        +        ],
        +        "type": "object"
        +      },
        +      "type": {
        +        "const": "arrival_list",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type",
        +      "data"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedget_stops_around_location8 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / stops / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedget_vehicle_info10 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / direction / anyOf
        Removed value: -[
        -  {
        -    "maximum": 9007199254740991,
        -    "minimum": -9007199254740991,
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / data / properties / direction / type
        Added value: +[
        +  "integer",
        +  "null"
        +]
      • removedOutput schema / properties / data / properties / upcoming_stops / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
    • Changedsearch_stops8 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedOutput schema / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / data / properties / stops / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / additionalProperties
        Removed value: -false
      • removedOutput schema / properties / ui_blocks / items / properties / data / properties / layers / additionalProperties
        Removed value: -false
  4. 4 tool updates
    • Changedfind_routes_between20 fields changed
      • addedInput schema / properties / arrive_by
        Added value: +{
        +  "description": "Arrive by this time: \"HH:MM\" Lviv time today, or ISO 8601. Not together with `depart_at`.",
        +  "type": "string"
        +}
      • addedInput schema / properties / depart_at
        Added value: +{
        +  "description": "Leave at this time: \"HH:MM\" Lviv time today, or ISO 8601. Default now. Not together with `arrive_by`.",
        +  "type": "string"
        +}
      • addedInput schema / properties / from_lat
        Added value: +{
        +  "description": "Decimal latitude of the start point, WGS84 (e.g. 49.842 for central Lviv).",
        +  "maximum": 90,
        +  "minimum": -90,
        +  "type": "number"
        +}
      • addedInput schema / properties / from_lng
        Added value: +{
        +  "description": "Decimal longitude of the start point, WGS84 (e.g. 24.031 for central Lviv).",
        +  "maximum": 180,
        +  "minimum": -180,
        +  "type": "number"
        +}
      • changedInput schema / properties / from_stop_id / description
        Previous value: -"Stop ID where the trip starts."New value: +"Stop ID where the trip starts. Give this or `from_lat` + `from_lng`."
      • addedInput schema / properties / to_lat
        Added value: +{
        +  "description": "Decimal latitude of the destination, WGS84 (e.g. 49.842 for central Lviv).",
        +  "maximum": 90,
        +  "minimum": -90,
        +  "type": "number"
        +}
      • addedInput schema / properties / to_lng
        Added value: +{
        +  "description": "Decimal longitude of the destination, WGS84 (e.g. 24.031 for central Lviv).",
        +  "maximum": 180,
        +  "minimum": -180,
        +  "type": "number"
        +}
      • changedInput schema / properties / to_stop_id / description
        Previous value: -"Stop ID where the trip ends."New value: +"Stop ID where the trip ends. Give this or `to_lat` + `to_lng`."
      • removedInput schema / required
        Removed value: -[
        -  "from_stop_id",
        -  "to_stop_id"
        -]
      • addedOutput schema / properties / data / properties / from / properties / point
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / data / properties / options / items / properties / next_departures
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "arrival_minutes": {
        +        "anyOf": [
        +          {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "lowfloor": {
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "scheduled": {
        +        "type": "boolean"
        +      },
        +      "vehicle_id": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "arrival_minutes",
        +      "scheduled",
        +      "vehicle_id",
        +      "lowfloor"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / data / properties / options / items / properties / schedule
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arrive_at": {
        +          "type": "string"
        +        },
        +        "leave_at": {
        +          "type": "string"
        +        },
        +        "legs": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "alight_at": {
        +                "type": "string"
        +              },
        +              "board_at": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "board_at",
        +              "alight_at"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "total_minutes": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "leave_at",
        +        "arrive_at",
        +        "total_minutes",
        +        "legs"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / data / properties / options / items / required
        Previous value: -[
        -  "route",
        -  "vehicle_type",
        -  "direction",
        -  "destination",
        -  "board_stop",
        -  "alight_stop",
        -  "stops_count",
        -  "walk_to_board_meters",
        -  "walk_from_alight_meters"
        -]New value: +[
        +  "route",
        +  "vehicle_type",
        +  "direction",
        +  "destination",
        +  "board_stop",
        +  "alight_stop",
        +  "stops_count",
        +  "walk_to_board_meters",
        +  "walk_from_alight_meters",
        +  "schedule"
        +]
      • addedOutput schema / properties / data / properties / timing
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "at": {
        +      "type": "string"
        +    },
        +    "mode": {
        +      "enum": [
        +        "depart_at",
        +        "arrive_by"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "mode",
        +    "at"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / data / properties / to / properties / point
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "lat": {
        +      "type": "number"
        +    },
        +    "lng": {
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "lat",
        +    "lng"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / next_departures
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "arrival_minutes": {
        +        "anyOf": [
        +          {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "lowfloor": {
        +        "type": [
        +          "boolean",
        +          "null"
        +        ]
        +      },
        +      "scheduled": {
        +        "type": "boolean"
        +      },
        +      "vehicle_id": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "arrival_minutes",
        +      "scheduled",
        +      "vehicle_id",
        +      "lowfloor"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / data / properties / transfer_options / items / properties / schedule
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "arrive_at": {
        +          "type": "string"
        +        },
        +        "leave_at": {
        +          "type": "string"
        +        },
        +        "legs": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "alight_at": {
        +                "type": "string"
        +              },
        +              "board_at": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "board_at",
        +              "alight_at"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "total_minutes": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "leave_at",
        +        "arrive_at",
        +        "total_minutes",
        +        "legs"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / data / properties / transfer_options / items / required
        Previous value: -[
        -  "legs",
        -  "transfer_walk_meters",
        -  "stops_count",
        -  "walk_to_board_meters",
        -  "walk_from_alight_meters"
        -]New value: +[
        +  "legs",
        +  "transfer_walk_meters",
        +  "stops_count",
        +  "walk_to_board_meters",
        +  "walk_from_alight_meters",
        +  "schedule"
        +]
      • addedOutput schema / properties / data / properties / walk_meters
        Added value: +{
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • changedOutput schema / properties / data / required
        Previous value: -[
        -  "from",
        -  "to",
        -  "options",
        -  "transfer_options",
        -  "map_stops",
        -  "updated_at"
        -]New value: +[
        +  "from",
        +  "to",
        +  "timing",
        +  "options",
        +  "transfer_options",
        +  "map_stops",
        +  "updated_at"
        +]
    • Changedget_nearby_vehicles3 fields changed
      • addedInput schema / properties / lowfloor_only
        Added value: +{
        +  "description": "Only low-floor vehicles (step-free: wheelchairs, prams). Timetable entries without a tracked vehicle are left out, since their floor is unknown. Default false.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / data / properties / lowfloor_only
        Added value: +{
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / required
        Previous value: -[
        -  "center_lat",
        -  "center_lng",
        -  "radius_meters",
        -  "total",
        -  "vehicles",
        -  "updated_at"
        -]New value: +[
        +  "center_lat",
        +  "center_lng",
        +  "radius_meters",
        +  "lowfloor_only",
        +  "total",
        +  "vehicles",
        +  "updated_at"
        +]
    • Changedget_route_realtime4 fields changed
      • addedInput schema / properties / direction
        Added value: +{
        +  "description": "Only vehicles heading this way: 0 or 1, the index into get_route_static's `stops`. Omit for both.",
        +  "maximum": 1,
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / data / properties / direction
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maximum": 9007199254740991,
        +      "minimum": -9007199254740991,
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / data / properties / headways
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "destination": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "direction": {
        +        "maximum": 9007199254740991,
        +        "minimum": -9007199254740991,
        +        "type": "integer"
        +      },
        +      "gaps_minutes": {
        +        "items": {
        +          "anyOf": [
        +            {
        +              "maximum": 9007199254740991,
        +              "minimum": -9007199254740991,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "type": "array"
        +      },
        +      "scheduled_headway_minutes": {
        +        "anyOf": [
        +          {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "vehicles": {
        +        "maximum": 9007199254740991,
        +        "minimum": -9007199254740991,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "direction",
        +      "destination",
        +      "vehicles",
        +      "gaps_minutes",
        +      "scheduled_headway_minutes"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / data / required
        Previous value: -[
        -  "route_name",
        -  "destinations",
        -  "vehicles",
        -  "updated_at"
        -]New value: +[
        +  "route_name",
        +  "destinations",
        +  "direction",
        +  "vehicles",
        +  "headways",
        +  "updated_at"
        +]
    • Changedget_stop_realtime6 fields changed
      • addedInput schema / properties / lowfloor_only
        Added value: +{
        +  "description": "Only low-floor arrivals (step-free: wheelchairs, prams). Timetable entries without a tracked vehicle are left out, since their floor is unknown. Default false.",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / data / properties / arrivals / items / properties / lowfloor
        Added value: +{
        +  "type": [
        +    "boolean",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / data / properties / arrivals / items / properties / scheduled
        Added value: +{
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / properties / arrivals / items / required
        Previous value: -[
        -  "route",
        -  "direction",
        -  "vehicle_type",
        -  "arrival_minutes",
        -  "vehicle_id",
        -  "lat",
        -  "lng",
        -  "bearing"
        -]New value: +[
        +  "route",
        +  "direction",
        +  "vehicle_type",
        +  "arrival_minutes",
        +  "vehicle_id",
        +  "lat",
        +  "lng",
        +  "bearing",
        +  "lowfloor",
        +  "scheduled"
        +]
      • addedOutput schema / properties / data / properties / lowfloor_only
        Added value: +{
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / required
        Previous value: -[
        -  "stop",
        -  "arrivals",
        -  "updated_at"
        -]New value: +[
        +  "stop",
        +  "arrivals",
        +  "lowfloor_only",
        +  "updated_at"
        +]
  5. 5 tool updates
    • Changedfind_routes_between1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedget_disruptions
    • Changedget_route_realtime1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_route_static1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_stop_realtime1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  6. 5 tool updates
    • Changedfind_routes_between1 field changed
      • removedOutput schema / properties / data / properties / disruptions
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "alternatives": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "detour": {
        -        "anyOf": [
        -          {
        -            "additionalProperties": false,
        -            "properties": {
        -              "skipped_stops": {
        -                "items": {
        -                  "maximum": 9007199254740991,
        -                  "minimum": -9007199254740991,
        -                  "type": "integer"
        -                },
        -                "type": "array"
        -              },
        -              "via": {
        -                "items": {
        -                  "type": "string"
        -                },
        -                "type": "array"
        -              }
        -            },
        -            "required": [
        -              "via",
        -              "skipped_stops"
        -            ],
        -            "type": "object"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ]
        -      },
        -      "id": {
        -        "type": "string"
        -      },
        -      "kind": {
        -        "enum": [
        -          "suspended",
        -          "detour",
        -          "stop_moved",
        -          "stop_closed"
        -        ],
        -        "type": "string"
        -      },
        -      "note": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "reason": {
        -        "type": "string"
        -      },
        -      "routes": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "since": {
        -        "type": "string"
        -      },
        -      "source": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "until": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "until_text": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "url": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "kind",
        -      "reason",
        -      "since",
        -      "until",
        -      "until_text",
        -      "routes",
        -      "stops",
        -      "alternatives",
        -      "detour",
        -      "note",
        -      "source",
        -      "url"
        -    ],
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
    • Removedget_disruptions
    • Changedget_route_realtime1 field changed
      • removedOutput schema / properties / data / properties / disruptions
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "alternatives": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "detour": {
        -        "anyOf": [
        -          {
        -            "additionalProperties": false,
        -            "properties": {
        -              "skipped_stops": {
        -                "items": {
        -                  "maximum": 9007199254740991,
        -                  "minimum": -9007199254740991,
        -                  "type": "integer"
        -                },
        -                "type": "array"
        -              },
        -              "via": {
        -                "items": {
        -                  "type": "string"
        -                },
        -                "type": "array"
        -              }
        -            },
        -            "required": [
        -              "via",
        -              "skipped_stops"
        -            ],
        -            "type": "object"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ]
        -      },
        -      "id": {
        -        "type": "string"
        -      },
        -      "kind": {
        -        "enum": [
        -          "suspended",
        -          "detour",
        -          "stop_moved",
        -          "stop_closed"
        -        ],
        -        "type": "string"
        -      },
        -      "note": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "reason": {
        -        "type": "string"
        -      },
        -      "routes": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "since": {
        -        "type": "string"
        -      },
        -      "source": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "until": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "until_text": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "url": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "kind",
        -      "reason",
        -      "since",
        -      "until",
        -      "until_text",
        -      "routes",
        -      "stops",
        -      "alternatives",
        -      "detour",
        -      "note",
        -      "source",
        -      "url"
        -    ],
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
    • Changedget_route_static1 field changed
      • removedOutput schema / properties / data / properties / disruptions
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "alternatives": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "detour": {
        -        "anyOf": [
        -          {
        -            "additionalProperties": false,
        -            "properties": {
        -              "skipped_stops": {
        -                "items": {
        -                  "maximum": 9007199254740991,
        -                  "minimum": -9007199254740991,
        -                  "type": "integer"
        -                },
        -                "type": "array"
        -              },
        -              "via": {
        -                "items": {
        -                  "type": "string"
        -                },
        -                "type": "array"
        -              }
        -            },
        -            "required": [
        -              "via",
        -              "skipped_stops"
        -            ],
        -            "type": "object"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ]
        -      },
        -      "id": {
        -        "type": "string"
        -      },
        -      "kind": {
        -        "enum": [
        -          "suspended",
        -          "detour",
        -          "stop_moved",
        -          "stop_closed"
        -        ],
        -        "type": "string"
        -      },
        -      "note": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "reason": {
        -        "type": "string"
        -      },
        -      "routes": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "since": {
        -        "type": "string"
        -      },
        -      "source": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "until": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "until_text": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "url": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "kind",
        -      "reason",
        -      "since",
        -      "until",
        -      "until_text",
        -      "routes",
        -      "stops",
        -      "alternatives",
        -      "detour",
        -      "note",
        -      "source",
        -      "url"
        -    ],
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
    • Changedget_stop_realtime1 field changed
      • removedOutput schema / properties / data / properties / disruptions
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "alternatives": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "detour": {
        -        "anyOf": [
        -          {
        -            "additionalProperties": false,
        -            "properties": {
        -              "skipped_stops": {
        -                "items": {
        -                  "maximum": 9007199254740991,
        -                  "minimum": -9007199254740991,
        -                  "type": "integer"
        -                },
        -                "type": "array"
        -              },
        -              "via": {
        -                "items": {
        -                  "type": "string"
        -                },
        -                "type": "array"
        -              }
        -            },
        -            "required": [
        -              "via",
        -              "skipped_stops"
        -            ],
        -            "type": "object"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ]
        -      },
        -      "id": {
        -        "type": "string"
        -      },
        -      "kind": {
        -        "enum": [
        -          "suspended",
        -          "detour",
        -          "stop_moved",
        -          "stop_closed"
        -        ],
        -        "type": "string"
        -      },
        -      "note": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "reason": {
        -        "type": "string"
        -      },
        -      "routes": {
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "id": {
        -              "type": "string"
        -            },
        -            "name": {
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "name",
        -            "id"
        -          ],
        -          "type": "object"
        -        },
        -        "type": "array"
        -      },
        -      "since": {
        -        "type": "string"
        -      },
        -      "source": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "stops": {
        -        "items": {
        -          "maximum": 9007199254740991,
        -          "minimum": -9007199254740991,
        -          "type": "integer"
        -        },
        -        "type": "array"
        -      },
        -      "until": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "until_text": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      },
        -      "url": {
        -        "type": [
        -          "string",
        -          "null"
        -        ]
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "kind",
        -      "reason",
        -      "since",
        -      "until",
        -      "until_text",
        -      "routes",
        -      "stops",
        -      "alternatives",
        -      "detour",
        -      "note",
        -      "source",
        -      "url"
        -    ],
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
  7. 5 tool updates
    • Changedfind_routes_between1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedget_disruptions
    • Changedget_route_realtime1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_route_static1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedget_stop_realtime1 field changed
      • addedOutput schema / properties / data / properties / disruptions
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alternatives": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "detour": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "skipped_stops": {
        +                "items": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "type": "array"
        +              },
        +              "via": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "via",
        +              "skipped_stops"
        +            ],
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "id": {
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "suspended",
        +          "detour",
        +          "stop_moved",
        +          "stop_closed"
        +        ],
        +        "type": "string"
        +      },
        +      "note": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "reason": {
        +        "type": "string"
        +      },
        +      "routes": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "id": {
        +              "type": "string"
        +            },
        +            "name": {
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "name",
        +            "id"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "since": {
        +        "type": "string"
        +      },
        +      "source": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "stops": {
        +        "items": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "type": "array"
        +      },
        +      "until": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "until_text": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "url": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "kind",
        +      "reason",
        +      "since",
        +      "until",
        +      "until_text",
        +      "routes",
        +      "stops",
        +      "alternatives",
        +      "detour",
        +      "note",
        +      "source",
        +      "url"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  8. 1 tool update
    • Changedfind_routes_between2 fields changed
      • addedOutput schema / properties / data / properties / map_stops
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "id": {
        +        "type": "string"
        +      },
        +      "lat": {
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "lng": {
        +        "type": [
        +          "number",
        +          "null"
        +        ]
        +      },
        +      "name": {
        +        "type": [
        +          "string",
        +          "null"
        +        ]
        +      },
        +      "role": {
        +        "enum": [
        +          "board",
        +          "transfer",
        +          "transfer_alight",
        +          "transfer_board",
        +          "alight"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "id",
        +      "name",
        +      "lat",
        +      "lng",
        +      "role"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / data / required
        Previous value: -[
        -  "from",
        -  "to",
        -  "options",
        -  "transfer_options",
        -  "updated_at"
        -]New value: +[
        +  "from",
        +  "to",
        +  "options",
        +  "transfer_options",
        +  "map_stops",
        +  "updated_at"
        +]

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.