Suburb · Extra risk indicators
suburbs_risks_extrasLandslide / storm-tide coverage, EPA notices, landlord-insurance medians and crime benchmark, with per-microburb detail.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| suburb_name | Yes |
suburbs_risks_extrasLandslide / storm-tide coverage, EPA notices, landlord-insurance medians and crime benchmark, with per-microburb detail.
| Name | Required | Description | Default |
|---|---|---|---|
| suburb_name | Yes |
Changes observed during successful MCP inspections.
Output 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": "Extra suburb risk indicators — landslide and storm-tide coverage,\nEPA notices, landlord-insurance medians and crime benchmark, plus\nper-microburb detail under ``per_mb``.",
- "example": {
- "area_level": "suburb",
- "area_name": "Belmont North",
- "crime_bench": {
- "nat_med": 2787.56,
- "sub_med": 2248.01
- },
- "epa_notices_n": 3,
- "insurance": {
- "basic_med": 479,
- "comp_med": 2542,
- "n": 77,
- "rent_med": 433
- },
- "landslide_pct": 0,
- "per_mb": {
- "insurance": [
- {
- "mb": "10431160000",
- "score": 2551
- }
- ],
- "risks": [
- {
- "acid_pct": 0,
- "contam_pct": 100,
- "mb": "10431160000",
- "mine_pct": 100
- }
- ]
- },
- "storm_tide_high_pct": 0
- },
- "properties": {
- "area_level": {
- "const": "suburb",
- "description": "Always 'suburb'.",
- "title": "Area Level",
- "type": "string"
- },
- "area_name": {
- "description": "Canonical ABS SAL suburb name.",
- "title": "Area Name",
- "type": "string"
- },
- "crime_bench": {
- "description": "Suburb vs national crime benchmark.",
- "properties": {
- "nat_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "National median total crime rate (predicted incidents per 100,000 residents per year).",
- "title": "Nat Med"
- },
- "sub_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "This suburb's median total crime rate (predicted incidents per 100,000 residents per year).",
- "title": "Sub Med"
- }
- },
- "title": "CrimeBench",
- "type": "object"
- },
- "epa_notices_n": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "EPA notices inside the suburb.",
- "title": "Epa Notices N"
- },
- "insurance": {
- "description": "Landlord-insurance medians.",
- "properties": {
- "basic_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Median basic landlord premium ($/yr).",
- "title": "Basic Med"
- },
- "comp_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Median comprehensive landlord premium ($/yr).",
- "title": "Comp Med"
- },
- "n": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "Microburbs with an insurance estimate.",
- "title": "N"
- },
- "rent_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Median weekly rent ($) — for premium-vs-rent context.",
- "title": "Rent Med"
- }
- },
- "title": "RiskInsurance",
- "type": "object"
- },
- "landslide_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "% of suburb area in a landslide-risk overlay.",
- "title": "Landslide Pct"
- },
- "per_mb": {
- "description": "Per-microburb detail arrays.",
- "properties": {
- "insurance": {
- "description": "Per-MB insurance premium scores.",
- "items": {
- "additionalProperties": true,
- "description": "One microburb's landlord-insurance premium score.",
- "properties": {
- "mb": {
- "description": "ABS 2021 mesh-block code.",
- "title": "Mb",
- "type": "string"
- },
- "score": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Comprehensive landlord premium estimate ($/yr).",
- "title": "Score"
- }
- },
- "required": [
- "mb"
- ],
- "title": "InsurancePerMb",
- "type": "object"
- },
- "title": "Insurance",
- "type": "array"
- },
- "risks": {
- "description": "Per-MB contamination / mine / ANEF / acid shares.",
- "items": {
- "additionalProperties": true,
- "description": "One microburb's per-property risk shares.",
- "properties": {
- "acid_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "% of properties at high acid-sulfate risk.",
- "title": "Acid Pct"
- },
- "anef_med": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Median aircraft-noise ANEF (null = no exposure).",
- "title": "Anef Med"
- },
- "contam_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "% of properties within 500 m of contamination.",
- "title": "Contam Pct"
- },
- "mb": {
- "description": "ABS 2021 mesh-block code.",
- "title": "Mb",
- "type": "string"
- },
- "mine_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "% of properties in a mine-subsidence district.",
- "title": "Mine Pct"
- }
- },
- "required": [
- "mb"
- ],
- "title": "RiskPerMb",
- "type": "object"
- },
- "title": "Risks",
- "type": "array"
- }
- },
- "required": [
- "insurance",
- "risks"
- ],
- "title": "RiskExtrasPerMb",
- "type": "object"
- },
- "storm_tide_high_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "% of suburb area in the high storm-tide band.",
- "title": "Storm Tide High Pct"
- }
- },
- "required": [
- "area_name",
- "area_level",
- "insurance",
- "crime_bench",
- "per_mb"
- ],
- "title": "RiskExtras",
- "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[RiskExtras]",
- "type": "object",
- "x-fastmcp-top-level-schema": "ApiResponse_RiskExtras_"
-}New value: +nullDoes the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds context about what data is included but does not disclose details like pagination, missing-suburb behavior, or formatting. It adds some value beyond annotations but does not fully describe behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence that front-loads the main content categories. It conveys a substantial amount of information without wasted words, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameter documentation, the description carries the full burden of explaining what the tool returns. It lists topics but does not describe the structure of the response, the meaning of 'per-microburb detail', or how the crime benchmark is calculated. This is insufficient for an agent to predict the output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not mention the parameter at all. While suburb_name is intuitive, the description provides no guidance on format, exactness, or examples. The description fails to compensate for the missing schema documentation, leaving the agent to infer parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly enumerates the specific risk indicators covered (landslide/storm-tide, EPA notices, landlord-insurance medians, crime benchmark) and notes per-microburb detail. It is informative and distinguishes itself from sibling risk tools by listing unusual 'extra' indicators, though it lacks an explicit verb like 'returns' or 'provides'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is given on when to use this tool versus alternatives like suburbs_risks_all or suburbs_risks_counts. The word 'extra' implies it is a supplement, but no condition or comparison to other tools is stated. An agent would need to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.