Skip to main content
Glama
HackerFund

Glendale GIS MCP Server

by HackerFund

wildfire_zone

Read-onlyIdempotent

Check wildfire hazard severity for a Glendale address or coordinates. Returns the CAL FIRE zone and nearest zones for each class to understand long-term landscape fire hazard.

Instructions

CAL FIRE Fire Hazard Severity Zone at a location (2025 map), with the nearest zone of each class (Very High, High, Moderate, NonWildland). The zones rate the long-term hazard of the landscape, not the risk to a building. NonWildland is unzoned, not safe from wildfire. Not an evacuation map; for active fires call read_guide("real_time_sources").

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
locationYesWhere to look: {"address": "613 E Broadway"} for a street address in Glendale, or {"lat": 34.1466, "lon": -118.2483}. Coordinates skip geocoding.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
_metaNo
notesNo
titleYes
reasonNoWhy the result is unavailable
statusYes
datasetYes
matchesNoEvery feature that contains the point, including classes the source defines as unzoned (e.g. wildfire NonWildland), which don't count toward in_zone
nearestNoNearest zone feature (0 m when inside); unclassed layers only
locationNoSet when the result is returned on its own
disclaimerYes
class_fieldNoAttribute the classes come from
nearest_by_classNoNearest zone feature for each class, for classed layers (wildfire, flood)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds significant interpretive context beyond those: it clarifies that zones rate hazard, not building risk, and that 'NonWildland is unzoned, not safe from wildfire' – a crucial caveat that prevents misinterpretation. It also states it is not an evacuation map, which is a behavioral limitation. These disclosures add real value beyond the structured annotations and align with them (no contradiction).

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 three sentences, each with a distinct purpose: the first states the core function and output, the second clarifies the hazard-versus-risk distinction, and the third provides the NonWildland caveat and the evacuation-map exclusion with a pointer to read_guide. It is front-loaded with the main purpose and every sentence earns its place. No fluff or redundancy.

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 single-parameter location lookup, the description covers the purpose, the output classes, and key interpretive caveats. It does not explicitly describe the output schema structure, but an output schema is present and will carry that detail. It also does not mention geocoding behavior, but the schema does. The only minor gap is that it doesn't explicitly state that the tool returns data for a specific location (though that is implied). Overall, it is nearly complete for an agent to call it 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?

Schema description coverage is 100% – the input schema already provides a full description of the 'location' parameter, including how to give either an address or coordinates and that coordinates skip geocoding. The tool description itself does not discuss parameters, but since the schema carries the burden, the baseline of 3 applies. The description adds no extra parameter-level meaning, so it stays at the baseline.

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 starts with a specific verb-resource pair: 'CAL FIRE Fire Hazard Severity Zone at a location', and immediately clarifies what is returned (nearest zone of each class). It distinguishes itself from sibling hazard tools (flood_zone, seismic_zones) by naming the exact hazard type. The mention of '2025 map' adds temporal precision, and the phrase 'rate the long-term hazard of the landscape, not the risk to a building' further specifies the tool's scope.

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 provides an explicit exclusion: 'Not an evacuation map; for active fires call read_guide("real_time_sources")'. This tells the agent when NOT to use this tool and points to a concrete alternative. It does not explicitly state when to use this tool over other hazard tools, but the purpose is clear enough that the agent can infer it. The exclusion is the most valuable guidance and earns a high score, though a fuller 'use this when...' statement would make it a 5.

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