Skip to main content
Glama

Get Active Aviation Advisories (SIGMETs)

aviation_get_advisories
Read-onlyIdempotent

Get active domestic SIGMETs for a region. Returns each advisory with hazard type (CONVECTIVE, TURBULENCE, ICING, IFR), severity, altitude range, valid period, polygon coordinates, and raw text. Coverage is US-centric (NWS Aviation Weather Center). This tool reads the domestic SIGMET feed only and cannot return an AIRMET; requests for one are rejected rather than answered with SIGMETs. During fair-weather periods no advisories may be active — an empty result is normal, not an error. Filter by advisory_type, hazard, or bbox.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bboxNoGeographic bounding box to filter advisories by polygon overlap.
hazardNoOptional hazard filter, applied upstream by AWC. CONVECTIVE, TURBULENCE, ICING, and IFR are the four hazard classes the domestic SIGMET feed carries, and an empty result under one of them means no advisory of that class is active — it says nothing about the others. MTN OBSCN, SURFACE WIND, and LLWS are AIRMET-family phenomena with no upstream counterpart here and are rejected rather than returning an empty result.
advisory_typeNoFilter by advisory type. "sigmet" and "all" both return the active domestic SIGMET set, which is everything this tool serves. "airmet" is rejected with guidance: the upstream feed cannot return an AIRMET, so answering it would mean presenting SIGMETs as AIRMET matches.all

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
noticeNoPresent only when the result is empty, naming the stage that emptied it: no domestic SIGMETs are active at all, none carry the requested hazard, or none intersect the requested bbox — and which filter to broaden. A hazard-scoped empty draw states only that no advisory carries that hazard; AWC applies the hazard filter, so the response cannot say whether other classes are active.
advisoriesNoActive advisories matching the filter criteria. May be empty during fair weather periods.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / hazard / description
      Previous value: -"Optional hazard filter. CONVECTIVE, TURBULENCE, ICING, and IFR match the four hazard classes the domestic SIGMET feed carries. MTN OBSCN, SURFACE WIND, and LLWS are AIRMET-family phenomena with no upstream counterpart here and are rejected rather than returning an empty result."New value: +"Optional hazard filter, applied upstream by AWC. CONVECTIVE, TURBULENCE, ICING, and IFR are the four hazard classes the domestic SIGMET feed carries, and an empty result under one of them means no advisory of that class is active — it says nothing about the others. MTN OBSCN, SURFACE WIND, and LLWS are AIRMET-family phenomena with no upstream counterpart here and are rejected rather than returning an empty result."
    • addedOutput schema / properties / notice
      Added value: +{
      +  "description": "Present only when the result is empty, naming the stage that emptied it: no domestic SIGMETs are active at all, none carry the requested hazard, or none intersect the requested bbox — and which filter to broaden. A hazard-scoped empty draw states only that no advisory carries that hazard; AWC applies the hazard filter, so the response cannot say whether other classes are active.",
      +  "type": "string"
      +}
  2. Changed7 schema fields changed
    • removedOutput schema / properties / advisories / items / properties / altitude_high_ft / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / advisories / items / properties / altitude_high_ft / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / advisories / items / properties / altitude_low_ft / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / advisories / items / properties / altitude_low_ft / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • changedOutput schema / properties / advisories / items / properties / movement / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "direction_deg": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Movement direction in degrees true, or null if stationary."
      -      },
      -      "speed_kt": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "description": "Movement speed in knots, or null if stationary."
      -      }
      -    },
      -    "required": [
      -      "direction_deg",
      -      "speed_kt"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "direction_deg": {
      +        "description": "Movement direction in degrees true, or null if stationary.",
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "speed_kt": {
      +        "description": "Movement speed in knots, or null if stationary.",
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      }
      +    },
      +    "required": [
      +      "direction_deg",
      +      "speed_kt"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedOutput schema / properties / advisories / items / properties / severity / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / advisories / items / properties / severity / type
      Added value: +[
      +  "number",
      +  "null"
      +]
  3. Changed6 schema fields changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • addedInput schema / additionalProperties
      Added value: +false
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • addedOutput schema / anyOf
      Added value: +[
      +  {
      +    "not": {
      +      "required": [
      +        "error"
      +      ]
      +    },
      +    "required": [
      +      "advisories"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "error"
      +    ]
      +  }
      +]
    • addedOutput schema / properties / error
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "Present when the call failed. Absent on success.",
      +  "properties": {
      +    "code": {
      +      "description": "JSON-RPC error code for this failure.",
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    "data": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "reason": {
      +          "description": "Machine-readable failure mode. Declared by this tool: `invalid_bbox`: The bounding box is inverted — minLat > maxLat or minLon > maxLon. `airmet_not_served`: advisory_type \"airmet\" was requested, or a hazard filter naming an AIRMET-family phenomenon (MTN OBSCN, SURFACE WIND, LLWS) with no counterpart on the SIGMET feed. Other values are possible when a failure originates below the handler.",
      +          "examples": [
      +            "invalid_bbox",
      +            "airmet_not_served"
      +          ],
      +          "type": "string"
      +        },
      +        "recovery": {
      +          "additionalProperties": {},
      +          "description": "Actionable next step for the caller.",
      +          "properties": {
      +            "hint": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "hint"
      +          ],
      +          "type": "object"
      +        },
      +        "retryable": {
      +          "description": "Whether retrying may succeed.",
      +          "type": "boolean"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "message": {
      +      "description": "Human-readable description of what went wrong.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "code",
      +    "message"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / required
      Removed value: -[
      -  "advisories"
      -]
  4. Changed7 schema fields changed
    • changedInput schema / properties / advisory_type / description
      Previous value: -"Filter by advisory type. \"sigmet\" includes convective SIGMETs. \"airmet\" includes AIRMET Sierra (IFR/mountain obscuration), Tango (turbulence), and Zulu (icing). \"all\" returns both."New value: +"Filter by advisory type. \"sigmet\" and \"all\" both return the active domestic SIGMET set, which is everything this tool serves. \"airmet\" is rejected with guidance: the upstream feed cannot return an AIRMET, so answering it would mean presenting SIGMETs as AIRMET matches."
    • changedInput schema / properties / hazard / description
      Previous value: -"Optional hazard filter. CONVECTIVE = convective SIGMETs; TURBULENCE = AIRMET Tango; ICING = AIRMET Zulu; IFR = AIRMET Sierra (IFR conditions); MTN OBSCN = AIRMET Sierra (mountain obscuration); SURFACE WIND = sustained strong surface winds (typically >30 kt); LLWS = low-level wind shear below 2,000 ft AGL."New value: +"Optional hazard filter. CONVECTIVE, TURBULENCE, ICING, and IFR match the four hazard classes the domestic SIGMET feed carries. MTN OBSCN, SURFACE WIND, and LLWS are AIRMET-family phenomena with no upstream counterpart here and are rejected rather than returning an empty result."
    • changedOutput schema / properties / advisories / items / description
      Previous value: -"An active SIGMET or AIRMET advisory."New value: +"An active SIGMET advisory."
    • changedOutput schema / properties / advisories / items / properties / advisory_type / description
      Previous value: -"Advisory type: SIGMET or AIRMET."New value: +"Advisory type as issued. The domestic SIGMET feed this tool reads emits SIGMET."
    • changedOutput schema / properties / advisories / items / properties / hazard / description
      Previous value: -"Hazard type (e.g., CONVECTIVE, TURBULENCE, ICING, IFR, MTN OBSCN)."New value: +"Hazard type — one of CONVECTIVE, TURBULENCE, ICING, or IFR."
    • changedOutput schema / properties / advisories / items / properties / raw_text / description
      Previous value: -"Original encoded SIGMET or AIRMET text as issued by the meteorological watch office."New value: +"Original encoded SIGMET text as issued by the meteorological watch office."
    • changedOutput schema / properties / advisories / items / properties / severity / description
      Previous value: -"Severity integer for convective SIGMETs (higher = more intense). Null for AIRMETs."New value: +"Severity integer for convective SIGMETs (higher = more intense). Null when the advisory stated none."
  5. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint, openWorldHint, and idempotentHint annotations, the description adds substantial behavioral context: the feed is US-centric, only the domestic SIGMET feed is read, AIRMET requests are rejected, and an empty result is a normal weather state rather than an error. It also enumerates returned fields, so the agent knows what to expect.

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 the core purpose and keeps every sentence functional. The feed-scope warning, AIRMET rejection, and empty-result guidance are all non-redundant; no filler or repetition weakens the text.

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?

Given zero required parameters, full schema coverage, an output schema, and sibling context, the description covers everything needed for safe invocation: source, geographic scope, accepted filters, rejection behavior, normal empty results, and return contents. No material gap remains for an agent to call this tool correctly.

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?

Input schema coverage is 100% with rich per-parameter descriptions and enums, so the baseline applies. The description only restates that filtering can be done by advisory_type, hazard, or bbox, adding no meaning beyond what the schema already provides.

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 and resource: 'Get active domestic SIGMETs for a region.' It distinguishes the tool from siblings by naming the exact feed (domestic SIGMET, NWS Aviation Weather Center) and by explicitly saying it cannot return an AIRMET. There is no ambiguity about what this tool does.

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

Usage Guidelines4/5

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

The description gives clear scope: use it for active domestic SIGMETs, and it explicitly warns that requests for AIRMETs are rejected rather than answered with SIGMETs. It also tells the agent that an empty result during fair weather is normal. It does not explicitly name alternative sibling tools, so it stops just short of full cross-tool routing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.