Suburb · Development profile
suburbs_development_profileDwelling-mix scalars — apartment share and average lot size.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| suburb_name | Yes |
suburbs_development_profileDwelling-mix scalars — apartment share and average lot size.
| 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": "Dwelling-mix scalars from the suburb-profile build.",
- "example": {
- "apartment_pct": 1.2,
- "area_level": "suburb",
- "area_name": "Belmont North",
- "avg_lot_m2": 758
- },
- "properties": {
- "apartment_pct": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "Apartments as a share of the dwelling stock (%).",
- "title": "Apartment Pct"
- },
- "area_level": {
- "description": "Always 'suburb'.",
- "title": "Area Level",
- "type": "string"
- },
- "area_name": {
- "description": "Suburb (SAL) name.",
- "title": "Area Name",
- "type": "string"
- },
- "avg_lot_m2": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
- "description": "Average residential lot size (m²).",
- "title": "Avg Lot M2"
- }
- },
- "required": [
- "area_name",
- "area_level"
- ],
- "title": "SuburbDevelopmentProfile",
- "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[SuburbDevelopmentProfile]",
- "type": "object",
- "x-fastmcp-top-level-schema": "ApiResponse_SuburbDevelopmentProfile_"
-}New value: +nullDoes the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is read-only, non-destructive, and idempotent. The description adds that the output is scalar values rather than a rich dataset, which is useful, but it does not disclose units, freshness, or any edge-case behavior. This is adequate but not particularly deep.
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 tight sentence that front-loads the key term 'dwelling-mix scalars' and then names the two concrete outputs. There is no filler or repetition of schema or annotation information.
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?
For a one-parameter tool, the description names the main outputs, but it omits units for average lot size, does not define what 'apartment share' is expressed as, and provides no output-shape clues beyond 'scalars.' With no output schema and many sibling tools, a bit more context would help.
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?
The lone parameter, suburb_name, is self-explanatory by name, and the tool title reinforces that it operates on a suburb. However, schema description coverage is 0% and the description does not compensate by explaining the expected format, spelling, or possible values, so the description itself adds little beyond the parameter name.
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 identifies what this endpoint returns—dwelling-mix scalars, specifically apartment share and average lot size—which distinguishes it from the many other development endpoints. It lacks an explicit verb like 'returns' or 'provides,' so it is slightly below the strongest possible clarity level.
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?
The use case is implied: choose this tool when you need suburb-level dwelling-mix scalars such as apartment share or average lot size. However, it does not explicitly contrast itself with siblings like suburbs_development_all or suburbs_development_density, so selection guidance is only implicit.
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.