addedInput schema / properties / limit
Added value: +{
+ "description": "Maximum stations to return, applied after ordering by ICAO identifier ascending with identifier-less stations last — so the same query with the same limit returns the same stations, and airports rather than unidentified sites lead the first page. It bounds the response without changing the area searched, which a smaller bbox or a different state would. Distinct from the 400-row upstream cap: a limited result examined every station it counted and withheld some, while a capped one never drew the rest. Belongs to the bbox and state modes; supplying it alongside station_ids is rejected, since that mode already names the set. Omit to return every match. Optional.",
+ "maximum": 400,
+ "minimum": 1,
+ "type": "integer"
+}
changedInput schema / properties / station_ids / description
Previous value: -"One or more 4-letter ICAO station IDs (e.g., KSEA, KJFK). The upstream API only accepts ICAO format — 3-letter IATA codes (e.g., SEA) will return no results. Use bbox or state to discover ICAO IDs by location."New value: +"One or more station identifiers (e.g., KSEA, KJFK). A lookup matches the registry's own identifier: a 4-letter ICAO ID for an airport, and other shapes for the buoys and mesonet sites the registry also carries, which resolve by those. A 3-letter IATA code (e.g., SEA) never resolves, even for a station whose entry carries one. Whitespace around an entry is trimmed, so a padded identifier resolves the same as the bare one; an empty or whitespace-only entry is rejected. Use bbox or state to discover identifiers by location."
changedInput schema / properties / station_ids / items / description
Previous value: -"A 4-letter ICAO station identifier (e.g., KSEA)."New value: +"One station identifier (e.g., KSEA)."
addedInput schema / properties / station_ids / items / pattern
Added value: +"\\S"
changedOutput schema / properties / error / properties / data / properties / reason / description
Previous value: -"Machine-readable failure mode. Declared by this tool: `station_not_found`: None of the requested IDs match any known station. `missing_search_criteria`: None of station_ids, bbox, or state was provided. `conflicting_location`: More than one of station_ids, bbox, or state was provided. `invalid_bbox`: The bounding box is inverted — minLat > maxLat or minLon > maxLon. `invalid_state`: The state code is not one of the 50 US states or DC. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `station_not_found`: None of the requested IDs match any known station. `missing_search_criteria`: None of station_ids, bbox, or state was provided. `conflicting_location`: More than one of station_ids, bbox, or state was provided. `invalid_bbox`: The bounding box is inverted — minLat > maxLat or minLon > maxLon. `invalid_state`: The state code is not one of the 50 US states or DC. `conflicting_limit`: limit was provided together with station_ids, where the caller has already named the set. `upstream_rejected`: The AWC station registry rejected the request as malformed rather than answering it. Other values are possible when a failure originates below the handler."
changedOutput schema / properties / error / properties / data / properties / reason / examples
Previous value: -[
- "station_not_found",
- "missing_search_criteria",
- "conflicting_location",
- "invalid_bbox",
- "invalid_state"
-]New value: +[
+ "station_not_found",
+ "missing_search_criteria",
+ "conflicting_location",
+ "invalid_bbox",
+ "invalid_state",
+ "conflicting_limit",
+ "upstream_rejected"
+]
addedOutput schema / properties / limited
Added value: +{
+ "description": "True when the requested limit withheld stations that matched — the caller asked to see fewer of them. False affirms the limit did not bite, so every matching station is here. Present only when the call supplied a limit. It never states anything about the upstream cap: a limited result examined every station it counted, while a truncated one never drew the rest.",
+ "type": "boolean"
+}
addedOutput schema / properties / matched
Added value: +{
+ "description": "Stations that matched this query before the limit selected from them. Present only on a limited result. Where the result is also truncated this counts the capped draw and not the search area — the stations the cap dropped were never examined, so no count can include them.",
+ "type": "number"
+}
changedOutput schema / properties / notice / description
Previous value: -"Guidance for whichever disclosure fired: the lever that narrows a truncated draw, or the cause and fix for identifiers that resolved to nothing. The two cannot co-occur — only bbox and state can reach the row cap, and only station_ids reconciles a request."New value: +"Guidance for whichever disclosures fired: the lever that narrows a truncated draw, what a requested limit withheld, or the cause and fix for identifiers that resolved to nothing. The cap and the limit can both fire on one result, and the text keeps them apart; the reconciliation cannot join them, since only bbox and state reach the row cap or accept a limit, and only station_ids reconciles a request."
changedOutput schema / properties / shown / description
Previous value: -"Stations in this result, counted after any client-side state filter."New value: +"Stations in this result, counted after any client-side state filter and after any limit."