Skip to main content
Glama

Microburbs Australian Property Data

Property · Bedroom-band price series

properties_context_street_bedroom_series
Read-onlyIdempotent

Shown in the property report as the '{N}-bed {type} median' card in the Valuation part of the Market section.

The subject's bedroom band (bed count from listing history) and the suburb's median listing price for that band (latest snapshot; one series point today).

Price: 15¢ per call.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "gnaf_id": "<gnaf_id>"
    },
    "name": "properties_context_street_bedroom_series"
  }
}

Input Schema

NameRequiredDescriptionDefault
gnaf_idYes

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": "The subject's bedroom-band benchmark: bed count inferred from\nlisting history, plus the suburb's 10-year price series for that\nbed-count + property-type band.",
      -          "example": {
      -            "band_label": "4-bed house",
      -            "bedrooms": 4,
      -            "gnaf_id": "GANSW704360755",
      -            "latest_date": "2026-06-28",
      -            "latest_value": 4400000,
      -            "property_type": "house",
      -            "series": [
      -              {
      -                "date": "2026-06-28",
      -                "value": 4400000
      -              }
      -            ],
      -            "suburb": "Castlecrag"
      -          },
      -          "properties": {
      -            "band_label": {
      -              "description": "Human label, e.g. \"4-bed house\".",
      -              "title": "Band Label",
      -              "type": "string"
      -            },
      -            "bedrooms": {
      -              "description": "Subject bed count — MAX(bedrooms) across every listing snapshot on record for the GNAF.",
      -              "title": "Bedrooms",
      -              "type": "integer"
      -            },
      -            "gnaf_id": {
      -              "description": "Subject property GNAF id.",
      -              "title": "Gnaf Id",
      -              "type": "string"
      -            },
      -            "latest_date": {
      -              "anyOf": [
      -                {
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "description": "Date of the most recent series point (YYYY-MM-DD).",
      -              "title": "Latest Date"
      -            },
      -            "latest_value": {
      -              "anyOf": [
      -                {
      -                  "type": "number"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "description": "Most recent series value (AUD).",
      -              "title": "Latest Value"
      -            },
      -            "property_type": {
      -              "description": "Subject property type bucket.",
      -              "enum": [
      -                "house",
      -                "unit"
      -              ],
      -              "title": "Property Type",
      -              "type": "string"
      -            },
      -            "series": {
      -              "description": "10-year monthly median price series for the band.",
      -              "items": {
      -                "description": "One point in the bedroom-band price series.",
      -                "properties": {
      -                  "date": {
      -                    "description": "ISO date (YYYY-MM-DD).",
      -                    "title": "Date",
      -                    "type": "string"
      -                  },
      -                  "value": {
      -                    "description": "Median asking price (AUD) at that date.",
      -                    "title": "Value",
      -                    "type": "number"
      -                  }
      -                },
      -                "required": [
      -                  "date",
      -                  "value"
      -                ],
      -                "title": "BandSeriesPoint",
      -                "type": "object"
      -              },
      -              "title": "Series",
      -              "type": "array"
      -            },
      -            "suburb": {
      -              "description": "Suburb (SAL) the series is for.",
      -              "title": "Suburb",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "gnaf_id",
      -            "suburb",
      -            "bedrooms",
      -            "property_type",
      -            "band_label",
      -            "series"
      -          ],
      -          "title": "StreetBedroomSeries",
      -          "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[StreetBedroomSeries]",
      -  "type": "object",
      -  "x-fastmcp-top-level-schema": "ApiResponse_StreetBedroomSeries_"
      -}New value: +null
  2. First observed

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds real value beyond that: it discloses the data provenance (bed count from listing history), the snapshot semantics ('latest snapshot; one series point today'), and a per-call cost of 15¢. It does not say what happens when no listing history exists to derive the band, which is the main remaining gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is short and reasonably front-loaded, but the opening sentence is about UI placement rather than what the tool does, pushing the actual data definition to the second paragraph. The bolded price line is well-placed and earns its space; the report-card framing is the least efficient part.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter series fetch with no output schema, the description covers provenance, recency and cost well. However, it leaves the required gnaf_id unexplained and gives no indication of the returned shape beyond 'one series point', so an agent cannot fully predict the response. Adequate but with a clear gap on the only input.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is a single required parameter, gnaf_id, with 0% schema description coverage, so the description carries the full burden of explaining it. The description never mentions gnaf_id, what identifier form it takes, or that it addresses the subject property whose bedroom band is being resolved. The single-parameter baseline of 4 does not apply because that baseline assumes an undocumented-but-obvious parameter, not an unexplained identifier.

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 names the specific data returned: the subject property's bedroom band (derived from listing history) and the suburb's median listing price for that band. It is clear what the tool fetches, though it frames the purpose through a report-card reference rather than a direct verb like 'returns'. It does not name or distinguish itself from plausible siblings such as suburbs_market_bedroom_stats or suburbs_market_median_sale_price_series.

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

Usage Guidelines3/5

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

Usage is only implied: the tool corresponds to the '{N}-bed {type} median' card in the Valuation part of the Market section, which hints at when the agent would want it. There is no explicit when-to-use, when-not-to-use, or named alternative among the many sibling series tools. An agent must infer selection from the data description alone.

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