Aviation weather
Recent METAR observations (newest first) and optionally the TAF forecast for up to 10 ICAO stations from the NOAA Aviation Weather Center; unrecognized codes are listed in unknown_stations. Not for flight planning or navigation.
| Endpoint | POST /v1/aviation-weather-queries |
| Scope | aviation_weather:query |
| MCP tool | aviation_weather |
| Usage units | reports |
Usage units appear in execution.usage.units for reconciliation and billing.
Request fields
Section titled “Request fields”| Field | Type | Required | Description |
|---|---|---|---|
invocation_id |
string | yes | The market’s invocation id: one execution per id and operation, so a retry with the same id is rejected instead of charged twice. 1-128 characters of A-Z a-z 0-9 . _ : -. |
provider |
string | yes | Provider that serves the request; choose by the coverage described for this tool. One of: awc |
stations |
string[] | yes | 1-10 four-character ICAO station codes, for example KJFK or EGLL. |
hours_before |
integer | no | Hours of past METAR observations to return, 1-24; default 2. |
include_taf |
boolean | no | Also return each station’s terminal aerodrome forecast (TAF); default false. |
Providers
Section titled “Providers”| Provider | Region | Source | Limits |
|---|---|---|---|
awc |
US | NOAA Aviation Weather Center | max_hours_before: 24, max_stations: 10, timeout_seconds: 30 |
Example
Section titled “Example”curl -sS https://services.zgi.im/v1/aviation-weather-queries \ -H "Authorization: Bearer $ZGI_SERVICES_TOKEN" \ -H 'Content-Type: application/json' \ -d '{"invocation_id": "docs-1791778521-aviation_weather", "provider": "awc", "stations": ["KJFK", "EGLL"], "hours_before": 2, "include_taf": true}'POST /v1/aviation-weather-queries HTTP/1.1Host: services.zgi.imAuthorization: Bearer <token>Content-Type: application/json
{ "invocation_id": "docs-1791778521-aviation_weather", "provider": "awc", "stations": [ "KJFK", "EGLL" ], "hours_before": 2, "include_taf": true}Over MCP, the tool arguments are exactly the HTTP request body.
{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "aviation_weather", "arguments": { "invocation_id": "docs-1791778521-aviation_weather", "provider": "awc", "stations": [ "KJFK", "EGLL" ], "hours_before": 2, "include_taf": true } }}curl -sS https://services.zgi.im/v1/mcp \ -H "Authorization: Bearer $ZGI_SERVICES_TOKEN" \ -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \ -H 'MCP-Protocol-Version: 2025-11-25' \ -d @request.jsonResponse
Section titled “Response”A real response, with lists cut to two items and long text shortened.
{ "code": 0, "message": "success", "data": { "execution": { "id": "exe_01a12e5285747d5aaa58a5d45c196d46", "invocation_id": "docs-1791778521-aviation_weather", "capability": "aviation_weather", "operation": "aviation_weather.query", "provider": "awc", "outcome": "succeeded", "error_category": null, "error_code": null, "usage": { "provider_requests": 2, "units": [ { "name": "reports", "value": 8, "source": "measured" } ] }, "upstream_ref": null, "request_id": "req_8cfeac9ad47ed9f59793d8b6", "started_at": "2026-10-12T04:15:22.484860171Z", "finished_at": "2026-10-12T04:15:22.884014296Z", "duration_ms": 399 }, "result": { "stations": [ { "icao": "KJFK", "name": "New York/JF Kennedy Intl, NY, US", "latitude": 40.6392, "longitude": -73.7639, "metars": [ { "raw": "METAR KJFK 120351Z 01013KT 8SM -RA BKN007 OVC020 13/12 A2982 RMK AO2 PRESFR SLP098 P0009 T01280122 $", "observed_at": "2026-10-12T03:51:00Z", "temperature_c": 12.8, "dewpoint_c": 12.2, "wind_direction_deg": 10, "wind_variable": false, "wind_speed_kt": 13, "wind_gust_kt": null, "visibility": "8", "altimeter_hpa": 1009.9, "flight_category": "IFR" }, { "raw": "METAR KJFK 120251Z 02014KT 8SM -RA BKN007 OVC025 14/13 A2984 RMK AO2 RAB51 SLP104 P0000 60013 T01390128 55022 $", "observed_at": "2026-10-12T02:51:00Z", "temperature_c": 13.9, "dewpoint_c": 12.8, "wind_direction_deg": 20, "wind_variable": false, "wind_speed_kt": 14, "wind_gust_kt": null, "visibility": "8", "altimeter_hpa": 1010.6, "flight_category": "IFR" } ], "taf": { "raw": "TAF KJFK 120250Z 1203/1306 02012KT 6SM -SHRA BR SCT004 OVC008 FM120330 02012KT 6SM BR VCTS SCT004 OVC008CB FM120430 02012KT P6SM VCSH OVC008 FM121200 01012KT...", "issued_at": "2026-10-12T02:50:00Z", "valid_from": "2026-10-12T03:00:00Z", "valid_to": "2026-10-13T06:00:00Z" } }, { "icao": "EGLL", "name": "London/Heathrow Intl, EN, GB", "latitude": 51.477, "longitude": -0.461, "metars": [ { "raw": "METAR EGLL 120350Z AUTO 11009KT 9999 NCD 10/10 Q1013", "observed_at": "2026-10-12T03:50:00Z", "temperature_c": 10, "dewpoint_c": 10, "wind_direction_deg": 110, "wind_variable": false, "wind_speed_kt": 9, "wind_gust_kt": null, "visibility": "6+", "altimeter_hpa": 1013, "flight_category": "VFR" }, { "raw": "METAR EGLL 120320Z AUTO 12008KT 9999 NCD 10/10 Q1013", "observed_at": "2026-10-12T03:20:00Z", "temperature_c": 10, "dewpoint_c": 10, "wind_direction_deg": 120, "wind_variable": false, "wind_speed_kt": 8, "wind_gust_kt": null, "visibility": "6+", "altimeter_hpa": 1013, "flight_category": "VFR" } ], "taf": { "raw": "TAF EGLL 112252Z 1200/1306 14008KT 9999 BKN025 PROB30 TEMPO 1202/1207 8000 -RA PROB40 TEMPO 1207/1209 7000 -RADZ BKN014 BECMG 1209/1212 BKN012 TEMPO 1209/122...", "issued_at": "2026-10-11T22:52:00Z", "valid_from": "2026-10-12T00:00:00Z", "valid_to": "2026-10-13T06:00:00Z" } } ], "unknown_stations": [], "disclaimer": "Not for flight planning or navigation.", "source": { "name": "NOAA Aviation Weather Center", "license": "US public domain", "url": "https://aviationweather.gov" } } }}