Skip to main content
Glama

Microburbs Australian Property Data

Suburb · Hazard-overlay polygons by layer

suburbs_shapes_hazards
Read-onlyIdempotent

Hazard polygons for one layer, clipped to the suburb boundary (empty collection = hazard not present).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
layerYesHazard layer to return.
geojsonNoWhen false, geometry is dropped — every Feature keeps its `properties` but its `geometry` is null. Use it to fetch the counts and per-feature attributes without the coordinates (default true — response unchanged).
suburb_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "available": {
      -      "anyOf": [
      -        {
      -          "type": "boolean"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "description": "`false` on no-data responses. Omitted on success — branch on `data !== null` if you want a single discriminator.",
      -      "title": "Available"
      -    },
      -    "data": {
      -      "anyOf": [
      -        {
      -          "additionalProperties": true,
      -          "description": "Hazard-overlay polygons for one layer, clipped to the suburb.",
      -          "example": {
      -            "area_level": "suburb",
      -            "area_name": "Belmont North",
      -            "count": 36,
      -            "geojson": {
      -              "features": [
      -                {
      -                  "geometry": {
      -                    "coordinates": [
      -                      [
      -                        [
      -                          151.66,
      -                          -32.99
      -                        ],
      -                        [
      -                          151.67,
      -                          -32.99
      -                        ],
      -                        [
      -                          151.67,
      -                          -33
      -                        ],
      -                        [
      -                          151.66,
      -                          -32.99
      -                        ]
      -                      ]
      -                    ],
      -                    "type": "Polygon"
      -                  },
      -                  "properties": {
      -                    "category": "High Potential Bushfire Intensity"
      -                  },
      -                  "type": "Feature"
      -                }
      -              ],
      -              "type": "FeatureCollection"
      -            },
      -            "layer": "bushfire"
      -          },
      -          "properties": {
      -            "area_level": {
      -              "const": "suburb",
      -              "description": "Always 'suburb'.",
      -              "title": "Area Level",
      -              "type": "string"
      -            },
      -            "area_name": {
      -              "description": "Canonical ABS SAL name.",
      -              "title": "Area Name",
      -              "type": "string"
      -            },
      -            "count": {
      -              "description": "Number of hazard polygons returned (0 = none of this hazard here).",
      -              "title": "Count",
      -              "type": "integer"
      -            },
      -            "geojson": {
      -              "additionalProperties": true,
      -              "description": "GeoJSON FeatureCollection — hazard polygons clipped to the suburb boundary. Feature properties: `category` + `name` (per hazard layer), `tier` (acid-sulfate), none (landslide). Geometry is null on every Feature when the request passes `?geojson=false`.",
      -              "title": "Geojson",
      -              "type": "object"
      -            },
      -            "layer": {
      -              "description": "The hazard layer requested.",
      -              "enum": [
      -                "bushfire",
      -                "flood",
      -                "heritage",
      -                "erosion",
      -                "landslide",
      -                "acid-sulfate"
      -              ],
      -              "title": "Layer",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "area_name",
      -            "area_level",
      -            "layer",
      -            "count",
      -            "geojson"
      -          ],
      -          "title": "SuburbHazards",
      -          "type": "object"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "description": "The endpoint's payload, or `null` when Microburbs has no value."
      -    },
      -    "message": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "description": "Human-readable explanation. Omitted on success.",
      -      "title": "Message"
      -    },
      -    "reason": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "description": "Machine-readable slug naming the no-data condition (e.g. `no_avm_for_GANSW704074813`). Stable per endpoint. Omitted on success.",
      -      "title": "Reason"
      -    }
      -  },
      -  "title": "ApiResponse[SuburbHazards]",
      -  "type": "object",
      -  "x-fastmcp-top-level-schema": "ApiResponse_SuburbHazards_"
      -}New value: +null
  2. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint, and idempotentHint. The description adds behavioral context beyond annotations: polygons are clipped to the suburb boundary, and an empty collection signals that the hazard is not present. This is valuable for correct interpretation.

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?

The description is a single, front-loaded sentence that conveys the core purpose and key behavioral notes. It is efficient with no redundancy, though it could incorporate usage guidance without bloating.

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 read-only, idempotent tool with a clear schema and annotations, the description provides adequate context: it explains the clipping and the empty-collection sentinel. It does not explicitly mention the GeoJSON format, but the geojson parameter implies it, and the schema covers required fields. Overall, sufficient for correct invocation.

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 67% (layer and geojson described, suburb_name not). The description does not add parameter-specific details beyond the schema, but the baseline is 3 given coverage above 50%. The description implicitly ties the layer parameter to the hazard type, but no extra meaning is added.

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

Purpose4/5

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

The description clearly states it returns hazard polygons for one layer, clipped to the suburb boundary. This distinguishes it from other shapes tools like suburbs_shapes_boundary, though it doesn't explicitly name a sibling. The verb is implied ('returns'), and the resource is specific.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as suburbs_risks_* (which may provide risk scores without geometry) or other shapes tools. The description only states what it does, not when to choose it.

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.

Resources