Skip to main content
Glama

list_active_disasters

Read-onlyIdempotent

List and filter real-time global natural disasters from the active 24-48 hour monitoring pool. Search by country or filter by hazard type or severity.

Instructions

List and filter real-time global natural disasters from the active 24-48 hour monitoring pool. Use to discover ongoing hazards, search by nation, or filter by hazard type or severity level. Do not use if you already possess a specific event_id (use get_disaster_by_id instead) or to evaluate coordinate proximity (use find_disasters_near_coordinates instead). Pure read-only operation with zero side effects. Returns {'matched_count': 0, 'events': []} when no incidents match filter criteria without raising errors.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of disaster records to return in payload (integer between 1 and 50, defaults to 10).
countryNoCase-insensitive country name substring (e.g., 'Japan', 'Philippines', 'United States'). Default is null (worldwide).
severityNoAlert severity level. Allowed values: 'minor', 'moderate', 'severe', 'catastrophic'. Default is null (all severities).
event_typeNoNatural hazard category. Allowed values: 'earthquake', 'tsunami', 'flood', 'cyclone', 'wildfire', 'volcanic_eruption', 'severe_weather'. Default is null (all types).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed24 schema fields changedv0.1.4
    • addedInput schema / additionalProperties
      Added value: +false
    • removedInput schema / properties / country / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / country / default
      Removed value: -null
    • addedInput schema / properties / country / description
      Added value: +"Case-insensitive country name substring (e.g., 'Japan', 'Philippines', 'United States'). Default is null (worldwide)."
    • removedInput schema / properties / country / title
      Removed value: -"Country"
    • addedInput schema / properties / country / type
      Added value: +"string"
    • removedInput schema / properties / event_type / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / event_type / default
      Removed value: -null
    • addedInput schema / properties / event_type / description
      Added value: +"Natural hazard category. Allowed values: 'earthquake', 'tsunami', 'flood', 'cyclone', 'wildfire', 'volcanic_eruption', 'severe_weather'. Default is null (all types)."
    • addedInput schema / properties / event_type / enum
      Added value: +[
      +  "earthquake",
      +  "tsunami",
      +  "flood",
      +  "cyclone",
      +  "wildfire",
      +  "volcanic_eruption",
      +  "severe_weather"
      +]
    • removedInput schema / properties / event_type / title
      Removed value: -"Event Type"
    • addedInput schema / properties / event_type / type
      Added value: +"string"
    • addedInput schema / properties / limit / description
      Added value: +"Maximum number of disaster records to return in payload (integer between 1 and 50, defaults to 10)."
    • addedInput schema / properties / limit / maximum
      Added value: +50
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • removedInput schema / properties / limit / title
      Removed value: -"Limit"
    • removedInput schema / properties / severity / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / severity / default
      Removed value: -null
    • addedInput schema / properties / severity / description
      Added value: +"Alert severity level. Allowed values: 'minor', 'moderate', 'severe', 'catastrophic'. Default is null (all severities)."
    • addedInput schema / properties / severity / enum
      Added value: +[
      +  "minor",
      +  "moderate",
      +  "severe",
      +  "catastrophic"
      +]
    • removedInput schema / properties / severity / title
      Removed value: -"Severity"
    • addedInput schema / properties / severity / type
      Added value: +"string"
    • removedInput schema / title
      Removed value: -"list_active_disastersArguments"
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "title": "Result",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "list_active_disastersOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the 'pure read-only, zero side effects' line is largely redundant. However, it adds genuinely new behavior beyond the annotations: the empty-result contract ({'matched_count': 0, 'events': []} with no raised error) and the temporal scope of the monitoring pool.

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?

Three sentences, front-loaded with purpose then routing then return behavior; each earns its place. The 'pure read-only operation with zero side effects' clause is the only mild redundancy given the annotations already state it.

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?

No output schema exists, and the description partially compensates by describing the empty-match return shape, which is the highest-risk return case for an agent. It does not describe the populated event object's fields, but that is a minor gap for a filtered-list read tool.

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%, so all four parameters (including the enums for severity and event_type) are already fully documented in the schema. The description's mention of nation, hazard type, and severity maps to those params but adds no format or semantics beyond them, making the baseline 3 appropriate.

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 (list/filter), resource (real-time global natural disasters), and scope (active 24-48 hour monitoring pool). It explicitly names both siblings it is not and the conditions that select them, so an agent can distinguish it 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?

Provides explicit when-to-use ('discover ongoing hazards, search by nation, or filter by hazard type or severity') plus two when-not-to-use cases with named alternatives (get_disaster_by_id for a known event_id, find_disasters_near_coordinates for proximity). Routing is unambiguous.

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