_ registry / mcp http-sse · checked 27m ago

microburbs

https://api.microburbs.com.au

Registry code: 9d3047955ef49db0

api record

Microburbs Australian property data.

Suburb tools are keyed by the exact ABS Suburb and Locality (SAL) name, e.g.

endpoint
https://api.microburbs.com.au/mcp
protocol
http-sse ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is microburbs live?
Yes — it answered the hub's last check (checked 27m ago). It answered 100% of checks over the last 30 days.
Is microburbs free to use?
Partly — some of its tools are open, others need a key or payment.
What tools does microburbs have?
174 tools: ping_head, properties_comparables_cma_comp_set, geocode_address, properties_surroundings_listing_history_signals, suburbs_market_recent_price_movement, area_stats_regions, geocode_suburb, ping, ….
Is microburbs safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 99.3%· all time 99.3%

latency
1,009ms

last good check

priced tools
0

of 174 tools

_ answered our checks, 90 days 400 checks · signed record
  • degraded → live
  • live → degraded· HTTP 522
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • get suburb property market stats
  • look up property risks and overlays
  • get land valuations for a parcel
  • check suburb demographics
  • find nearby schools for a property
takes → gives
text, data → data
tools
25 reads
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 174 tools
6 open161 auth-required 7 never probed 167 of 174 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • ping open 43d ago

    Returns immediately if the API is up. No authentication required and not metered — safe to poll from a load balancer, uptime monitor, or status dashboard without affecting your usage. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {}
    }
    arguments 5 lines
  • area_stats_fields reads open 5d ago

    Discover which statistical fields exist. Free (0c). Fuzzy, token-based matching covers table topics and clean column labels as well as terse field codes. Common natural-language plurals and Census synonyms are handled, so the verbatim `query=couples with children` discovers the exact 2021 ABS family-composition count fields rather than substituting the broader `census_family_households` metric. Use the returned field code(s) with the priced `/area-stats/SAL/{suburb}/values` route. ~17k fields available. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 50,
          "maximum": 500,
          "minimum": 1,
          "description": "Max fields to return."
        },
        "query": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "examples": [
            "couple family children"
          ],
          "description": "Fuzzy search over ABS field names/codes, table topics and column labels (e.g. 'total population', 'couple family children', 'tenure owned outright', or 'median rent'). Omit to list."
        }
      }
    }
    arguments 27 lines
  • suburbs_finder_fields open 2d ago

    Every field you can filter / sort on, with its label and unit. 0c. Houses and units are separate keys: the `unit`-prefixed ones (`unitMedianPrice`, `unitGrossYield`, `unitMedianRent`, …) are the apartment market, the unprefixed market keys are houses, and both can be filtered in the same query. Unit fields are NOT nationally populated — they only exist where a suburb has a unit market (roughly 13-54% of suburbs depending on the field), so a suburb with no unit market simply won't match a unit filter. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {}
    }
    arguments 5 lines
  • suburbs_finder_regions open 2d ago

    SA4 regions grouped by state — the values accepted by `states` / `regions` on search. 0c. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {}
    }
    arguments 5 lines
  • me open 5d ago

    Return key identity and the authoritative Autumn credit balance. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {}
    }
    arguments 5 lines
  • suburbs_list open 37h ago

    List Australian suburbs (SALs). Always returns `{suburb, state}` per row so SAL-name collisions across states are unambiguous. With no filter you get the first 1000 suburbs alphabetically (browser-renderable preview). Pass any of the filters to narrow: state / lga / sa4 / sa3 / postcode / q (name search). Filters combine (AND). Flat cost regardless of how many rows come back. **Name search (`q`) is typo-tolerant.** It tries an exact match, then substring, then a fuzzy near-miss, and returns `match` (`exact` / `contains` / `fuzzy`) and `score` on every row so you can see which happened. **Always tell the user which suburb you resolved to, and its state, before quoting numbers for it.** A fuzzy match is a suggestion, not a confirmation — `rokeby` is one letter from Kokeby in Western Australia and Rokeby exists in both Tasmania and Victoria. If more than one candidate is plausible, ask rather than pick. When `q` is combined with `state`, the state is a **preference, not a filter**: in-state candidates rank first, but a suburb of that name in another state is still returned rather than hidden, so a near-miss becomes "Seaview is in Victoria, not Tasmania" instead of "no data". Every other filter stays a strict AND. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "q": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Suburb-name search. Matches exactly, then by substring, then by fuzzy near-miss so a typo still resolves ('devenport' -> Devonport). Each row comes back with `match` and `score` saying how it was found."
        },
        "lga": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by Local Government Area name."
        },
        "sa3": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by SA3 name."
        },
        "sa4": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by SA4 name."
        },
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by state / territory (e.g. NSW, VIC, 'New South Wales')."
        },
        "postcode": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by 4-digit postcode (POA)."
        }
      }
    }
    arguments 72 lines
  • properties_valuation_all auth-required 11h ago

    **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_median_rent auth-required 4d ago

    Latest median weekly rent for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_yield_pct auth-required 3d ago

    Gross rental yield = median rent annualised / median sale price.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_all reads auth-required 5d ago

    The eight headline market indicators in one call: median sale price and median rent (each with its full history), 5-year price growth, gross yield, days on market, and transaction volume. **This is a core set, not every market endpoint.** The `Suburb - Market` family has 29 endpoints; this bundles 8 of them, priced sum-of-parts. The path is `/market/all` for historical reasons — it is not "all". Supply, vacancy, growth drivers, affordability, mortgage stress, investor concentration, land values, repeat sales, bedroom stats and the per-mesh-block maps are separate calls, so you only pay for what you ask for.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_mortgage_stress auth-required 4d ago

    Mortgage-stress score (0-100) for the suburb, with per-mesh-block breakdown.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_strata_levies reads auth-required 4d ago

    Median estimated annual strata levy for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_heritage_share auth-required 3d ago

    Share of the suburb's properties inside a heritage polygon.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_zoning_map auth-required 5d ago

    Zoning polygons clipped to the suburb, with per-class and parent-group area shares.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_narrative auth-required 5d ago

    One plain-English sentence per livability dimension for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_context_mesh_blocks auth-required 42h ago

    Mesh-block polygons within 1 km of the property (GeoJSON), each with avg annual growth, investor counts, modal street and median sold price. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When false, geometry is dropped — every Feature keeps its per-mesh-block stats but its `geometry` is null. Use it for the stats surface without the polygons (default true — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_context_nearby_for_sale auth-required 42h ago

    Currently for-sale listings within `radius_km` of the property (newest first, max 30) with AVM and rent-yield comparison. **Price: 20¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        },
        "radius_km": {
          "type": "number",
          "default": 1,
          "maximum": 5,
          "minimum": 0.1,
          "description": "Search radius in km (0.1-5)."
        }
      }
    }
    arguments 18 lines
  • suburbs_lifestyle_pois auth-required 5d ago

    Every named venue / amenity in the suburb as GeoJSON Point features, plus a per-category count. Each point carries `name`, a broad `category` (Restaurant / Cafe, Shopping, Health, Entertainment, Sport & Fitness, Education, …) and a finer `subtype` (e.g. `pub`, `bar`, `cafe`, `restaurant`, `gym`, `supermarket`, `school`, `pharmacy`). This is the endpoint for "what / how many <venue type> are in this suburb" and "name the pubs / cafes / gyms in X" — filter or count the features on `subtype`, and read real venue names from `name`. The top-level `categories` array gives the broad-category counts without walking the list. Unpaged by default. Big suburbs are big — Sydney is ~3.7 MB of features — so pass `limit`/`offset` (or narrow with `category`) when you don't need them all. `count` and `categories` always describe the whole suburb, so paging never hides the totals. Flat price per call regardless of page size.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "limit": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1
            },
            {
              "type": "null"
            }
          ],
          "description": "Features to return (default: all)."
        },
        "offset": {
          "type": "integer",
          "default": 0,
          "minimum": 0,
          "description": "Feature offset — page with `limit`."
        },
        "category": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Only this display category (e.g. `Shopping`). Case-insensitive."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 40 lines
  • properties_surroundings_properties auth-required 14h ago

    Every GNAF property within 200 m of the subject, with lat/lng and mesh block. **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_all reads auth-required 2d ago

    **Price: 23¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_yield_pct_series auth-required 3d ago

    Full gross-rental-yield history by property type, decimal fractions.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_vacancy_rate reads auth-required 4d ago

    Suburb-wide rental vacancy rate by property type, as a decimal fraction (0.00842 = 0.84%). Use `/market/vacancy-map` for the per-mesh-block surface.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_dwelling_type auth-required 2d ago

    Dwelling type (house, unit, townhouse, ...). **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_tenure auth-required 6d ago

    Explicit total owner-occupation rate plus owned-outright / mortgaged / renting / public-housing shares — a suburb rollup and the per-microburb downscaled Census shares. `owner_occupied_pct` is the requested headline; it equals owned outright plus mortgaged and is null if either is absent. `census_year` makes the 2021 reference period explicit.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_schools_all auth-required 3d ago

    All schools — bundle

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_schools_nearby auth-required 3d ago

    Schools serving / near the suburb, with rank + attendance data.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • sa4_list auth-required 3d ago

    All Australian SA4s. Optional `?state=` filter. Returns `{sa4, state}` per row. Flat cost. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by state / territory. Optional — ~110 SA4s nationally."
        }
      }
    }
    arguments 17 lines
  • suburbs_market_days_on_market_benchmark auth-required 4d ago

    Median days on market across the suburb's greater region (GCCSA) — compare with /market/days-on-market.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_growth_drivers auth-required 4d ago

    Per-indicator capital-growth attribution for the suburb. Each row pairs the suburb's own value for an indicator with the capital-growth differential our matched studies attribute to it, in percentage points. Covers supply & demand pressure, market signals, environmental risks and demographic composition.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • sa4_profile auth-required 4h ago

    SA4's parent chain — GCCSA + state. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "sa4_name"
      ],
      "properties": {
        "sa4_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_rent_map auth-required 4d ago

    Median advertised weekly house rent for every microburb (mesh block) in the suburb, with its modal street name, plus the dearest and cheapest pockets. Values only — the matching polygons come from ``/shapes/mesh-blocks``.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_schools_ranking auth-required 17h ago

    Schools within ~5km of the property, ranked by NAPLAN / socioeconomic score. **Price: 100¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_repeat_sales auth-required 4d ago

    Realised resale growth — summary + individual buy/sell pairs (max 500).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_supply auth-required 5d ago

    New dwellings (last 24 months) split units vs houses per mesh block plus a rollup.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_all auth-required 3d ago

    Bushfire + flood — bundle

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, each sub-risk additionally carries a `geojson` FeatureCollection clipped to the suburb boundary — one call returns coverage plus every risk shape (default false — response unchanged)."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_market_price_growth_5y auth-required 4d ago

    5-year compound sale-price growth (decimal).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_sale_history_latest auth-required 20h ago

    Most-recent Sold or For Sale record. **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_schools_all reads auth-required 20h ago

    **Price: 105¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_land_values auth-required 4d ago

    Suburb land-value medians ($/sqm, lot size, land share of price) + per-mesh-block $/sqm.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_council_rates auth-required 5d ago

    Average annual residential council rate for the suburb's LGA.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_cbd auth-required 5d ago

    Straight-line distance to the nearest city and to the nearest capital, in km. Both, because they answer different questions and are often nowhere near each other: Belmont North is 14 km from Newcastle and 108 km from Sydney. `nearest_city` is usually what a buyer means by "how far is town". The top-level `city` / `distance_km` fields are DEPRECATED. They still describe the CAPITAL, unchanged, so existing callers are unaffected — read `capital_city` or `nearest_city` instead.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_landmarks auth-required 5d ago

    Nearest beach and hospital with straight-line distances (null = none within ~50 km).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_building_controls auth-required 6d ago

    Height-of-building and floor-space-ratio control polygons with band summaries.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_valuation_land_values reads auth-required 7h ago

    Council land valuations for the parcel — val_2021..val_2025 series with YoY change and $/sqm, plus lot area and zoning description. **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_unemployment auth-required 6d ago

    Labour-force-weighted unemployment rate for the suburb against the pinned national median, plus the per-microburb shares behind it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_voting reads auth-required 6d ago

    Projected first-preference shares per party, aggregated across the suburb's microburbs (booth-derived model — not an actual vote).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_all auth-required 6d ago

    DA count + DA list — bundle

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_days_on_market reads auth-required 4d ago

    Median days on market for current listings.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_comparables_recent_sales_nearby auth-required 45h ago

    Recent comparable sales in a small radius around the subject parcel. **Price: 4¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_rent_history_latest auth-required 34h ago

    Most-recent For Rent record. **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_schools_catchment auth-required 3d ago

    Public-school catchment polygons covering the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_bath_count auth-required 2d ago

    Bathroom count from the latest matching listing. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_hero_neighbours auth-required 5d ago

    Nearest neighbouring suburbs with distance in km, closest first.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_heritage reads auth-required 29h ago

    Heritage-listing overlays within 1 km. Read `on_property` — a returned row means "found nearby", not "this property is heritage-listed". **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_market_median_sale_price auth-required 4d ago

    Latest median sale price for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_cohorts auth-required 6d ago

    How the suburb ranks inside its SA4 region and against its touching neighbours on renter share, welfare dependency, overseas-born parents and public housing.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_valuation_avm auth-required 7h ago

    Microburbs ML AVM for a single GNAF — point estimate, 80% range, plus a confidence score (0–100) derived from the interval width. **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_affordability auth-required 5d ago

    Microburbs affordability index for the suburb's postcode area.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_construction_activity auth-required 6d ago

    Satellite-detected construction change per mesh block plus a suburb rollup.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_yield_map auth-required 3d ago

    Gross rental yield for every microburb (mesh block) in the suburb — weekly rent x 52 over median price — with both inputs returned so the number is checkable, plus the best- and worst-yielding pockets. Values only; polygons come from ``/shapes/mesh-blocks``.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_land_area_sqm reads auth-required 2d ago

    Parcel land area in square metres from the cadastral feed. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_parking_count auth-required 2d ago

    Parking-space count from the latest matching listing. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • mbs_profile auth-required 2d ago

    The mesh block's upward ABS chain — SA1, SA2/3/4, GCCSA, state — plus the parallel admin chain (LGA, suburb (SAL), postcode). **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "mb_code"
      ],
      "properties": {
        "mb_code": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_amenities_nearby auth-required 2d ago

    Curated amenities (supermarkets, green spaces, restaurants/cafes) within `radius_m` of the property, bucketed and nearest-first. **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        },
        "radius_m": {
          "type": "integer",
          "default": 1000,
          "maximum": 5000,
          "minimum": 100,
          "description": "Search radius in metres (100–5000, default 1000)."
        }
      }
    }
    arguments 18 lines
  • suburbs_shapes_noise_heatmap auth-required 2d ago

    Precomputed noise colour regions clipped to the suburb, plus cell-centre heat points.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_shapes_public_housing_sa1 auth-required 2d ago

    SA1 polygons in the suburb with their 2021 census public-housing share (only SA1s above 0%).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_shapes_easements auth-required 2d ago

    Registered easement geometries intersecting the suburb (GeoJSON FeatureCollection).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_neighbours auth-required 37h ago

    Adjoining-parcel neighbours, enriched with address + property type + bed/bath/garage from the latest matching listing. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_sale_history auth-required 23h ago

    All Sold + For Sale records, most-recent first. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_valuation_negative_gearing auth-required 7h ago

    Negative-gearing stat at the finest available level: per-property cashflow scenarios (80% + 105% LVR), falling back to mesh-block then suburb investor-exposure. **Price: 20¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_shapes_busy_roads reads auth-required 2d ago

    Busy-road line segments clipped to the suburb — the report's road-noise exposure proxy.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_market_supply_pressure auth-required 4d ago

    For-sale listings per 100 dwellings (90 days) — per mesh block + suburb rollup.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_crime_by_mesh_block auth-required 27m ago

    Total crime rate for every mesh block in the suburb, keyed by ABS mesh-block code. Values are predicted incidents per 100,000 residents per year (see the payload's `unit` / `definition` keys).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_transaction_volume auth-required 4d ago

    Recent sale-transaction count for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_livability reads auth-required 5d ago

    Livability scores (0–100) per dimension, aggregated from mesh-block scores, with the SA4 benchmark.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_vacancy_map auth-required 4d ago

    Calibrated rental-vacancy rate for each mesh block in the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_basics_bed_count auth-required 2d ago

    Bedroom count from the latest matching listing. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_median_rent_series auth-required 4d ago

    Full median weekly-rent observation history for the suburb, including 2024 and 2025 where the suburb has coverage. Older observations are generally month-end and recent observations can be weekly; this is not a uniformly quarterly series. Values are advertised median AUD per week.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_erosion auth-required 29h ago

    Coastal / soil erosion overlays within 1 km. Read `on_property` — a returned row means "found nearby", not "this property is eroding". **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_risks_extras auth-required 3d ago

    Landslide / storm-tide coverage, EPA notices, landlord-insurance medians and crime benchmark, with per-microburb detail.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_development_zoning_overlays auth-required 40h ago

    Development overlays intersecting the property's parcel. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_history_all auth-required 37h ago

    **Price: 80¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_ethnicity_ancestry auth-required 5d ago

    Ancestry breakdown from the ABS census.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_ethnicity_birthplace auth-required 5d ago

    Country-of-birth breakdown from the ABS census.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_density auth-required 5d ago

    Dwellings and people per km², plus the land area and counts behind them.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_median_sale_price_series reads auth-required 4d ago

    Full median sale-price observation history for the suburb. Well-covered suburbs extend back 20+ years; coverage and observation frequency vary. This is the raw historical series needed to calculate a stated 20-year return, not a precomputed "consistent growth" score or a forecast.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_bushfire auth-required 31h ago

    Bushfire-prone-area overlays within 1 km. Read `on_property` — a returned row means "found nearby", not "this property is in a bushfire zone". **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_risks_environment auth-required 31h ago

    Environmental-risk overlay (contamination, salinity, ...). **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_surroundings_public_housing auth-required 14h ago

    Properties around the subject flagged by the public-housing classifier. **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_surroundings_tenure auth-required 14h ago

    ABS Census 2021 tenure shares for each mesh block around the subject. **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_landslide auth-required 26h ago

    Landslide-risk overlays within 1 km. Read `on_property` — a returned row means "found nearby", not "this property is at landslide risk". **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_valuation_value_series auth-required 4h ago

    Modelled property value over time (monthly for the last year, annual before that). Houses only — units have no series. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_crime_breakdown auth-required 4h ago

    Per-crime-type rates (predicted incidents per 100,000 residents per year) for the suburb vs national medians.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_transport_nearby auth-required 11h ago

    Nearest train / tram / bus / ferry stop to the property, per mode, with distance. Widen `radius_m` for the nearest station beyond 1km. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        },
        "radius_m": {
          "type": "integer",
          "default": 1000,
          "maximum": 5000,
          "minimum": 100,
          "description": "Search radius in metres (100–5000, default 1000)."
        }
      }
    }
    arguments 18 lines
  • properties_valuation_agent_quoting auth-required 11h ago

    Quoting accuracy of the property's current listing agency — cohort, median guide-vs-sold deviation, underquote rate and its 5 most-recent tracked sales. Only while the property is listed for sale with a tracked agency. **Price: 50¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_da_count auth-required 5d ago

    Count of recent development applications in the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_vacancy_rate_series auth-required 3d ago

    Full rental-vacancy history by property type, decimal fractions.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_bushfire auth-required 3d ago

    Share of the suburb AREA covered by bushfire-prone designation. Area, not properties — and the two differ a lot. Belmont North is 45.72% by area but 23.62% by property count, because designated land is not evenly built on. If you want "what share of homes here are affected", which is the figure our own reports headline, use `GET /v1/suburbs/{suburb_name}/risks/property-hazard-counts` — it returns a count and pct per hazard against the suburb's actual dwellings.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the bushfire polygons clipped to the suburb boundary (default false — response unchanged)."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_comparables_all auth-required 45h ago

    **Price: 74¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_comparables_cma_single_comp auth-required 45h ago

    Single best comparable from the CMA set (highest dist_score). **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_applications auth-required 6d ago

    Recent development applications (up to 100, newest first) with category counts.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_ancestry_map auth-required 6d ago

    The dominant ancestry (and its share) in each of the suburb's microburbs, plus suburb-level ancestry shares. Pilot coverage.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_bedroom_stats auth-required 5d ago

    House/unit price, sales volume, median bath/car/land, and stock mix per bedroom count.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_listings_for_sale auth-required 5d ago

    Current for-sale listings in the suburb, with address, price, beds/baths and coordinates per listing. `total` is the full number on the market (computed before `limit`), so a count is accurate even when the rows are capped. Raise `limit` for more listings; set `verbose=true` for the agent's full description text.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 30,
          "description": "Max listings to return (default 30, max 200). `total` always reports the full match count."
        },
        "verbose": {
          "type": "boolean",
          "default": false,
          "description": "Include the agent's full ad-copy in `attributes.description`. Off by default — it averages ~1.5 KB per listing."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 21 lines
  • suburbs_demographics_population_history auth-required 6d ago

    Total suburb population is `current_population` (ABS Census 2021), alongside suburb census points (2011/2016/2021) and the LGA's yearly population series with a 10-year modelled projection tail. Use this route for questions such as "what is the total population of Clarkson?

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_similar auth-required 2d ago

    Top-10 suburbs ranked closest by Microburbs' similarity model.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_income auth-required 6d ago

    Household income breakdown by bracket.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_months_of_supply auth-required 4d ago

    How many months the current for-sale stock would take to clear at the suburb's current sales rate. Under 2 months is a seller's market.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_price_growth auth-required 4d ago

    Past compound sale-price growth over 1 / 3 / 5 / 10 years, by property type (decimal). The 3y / 10y figures are the same ones the Suburb Finder ranks on.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_slope auth-required 3d ago

    Median / 90th-percentile property gradient and share of steep (>10°) properties.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_development_zoning_code auth-required 40h ago

    Primary zoning at the property's point — code (R2, B4, ...) when the council ships one, plus the human-readable name and the broader category. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_hv_power_lines reads auth-required 3d ago

    Whether high-voltage transmission lines cross the suburb, how many, and the highest voltage class (overhead lines only).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_property_hazard_counts auth-required 3d ago

    Counts and shares of the suburb's properties flagged bushfire / flood / mine-subsidence / contamination / aircraft-noise / acid-sulfate.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_built_year auth-required 4d ago

    Estimated build-year profile — suburb aggregate + per-mesh-block medians.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_stock_on_market auth-required 4d ago

    Properties currently listed for sale in the suburb, split house/unit, with the suburb's rank among its peers.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_council_intelligence reads auth-required 5d ago

    Council capex / project-pipeline signals extracted from the LGA's meeting minutes — each with stage, dollar value, location and time horizon — plus a rollup of the total pipeline in dollars.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_schools_nearby auth-required 20h ago

    Schools within ~5km of the property, with rank + student counts. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_livability_map auth-required 5d ago

    All seven livability dimensions — affluence, lifestyle, hip, convenience, family, safety, tranquility — scored 0-100 for every microburb (mesh block) in the suburb, each with its human band. Averaging a dimension across the microburbs reproduces the suburb figure at ``/lifestyle/livability``. Values only; polygons come from ``/shapes/mesh-blocks``.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_poi_impacts auth-required 5d ago

    What the absence of petrol stations, fast food and bottle shops near sold properties was worth.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_age auth-required 27m ago

    Population by age bracket and gender.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_all reads auth-required 6d ago

    Age + income — bundle

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_street_profile auth-required 17h ago

    The property's own street: current median price, 2/4/8-year price forecasts, realised growth, sale/rental turnover, renter share and houses/units on the street — plus the suburb-wide medians to judge it against and the street's rank on 4-year forecast growth. 404s when the street has no forecast row rather than falling back to suburb-wide figures, which would answer a different question. **Price: 20¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_surroundings_parcels reads auth-required 17h ago

    Cadastral parcel polygons (GeoJSON) for properties around the subject. **Price: 25¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_sales_recent auth-required 3d ago

    Properties sold in the suburb over the last 3 years, with beds/baths/land size, sale price and date, and coordinates. Paginated: `total` reports how many sales are available for the suburb (counted before `limit`/`offset`), so you can page through the full feed. Flat price per call regardless of page size.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 20,
          "description": "Sales to return (default 20, max 200)."
        },
        "offset": {
          "type": "integer",
          "default": 0,
          "description": "Row offset — page through the feed with `limit`."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 21 lines
  • suburbs_sales_summary auth-required 3d ago

    Number of sales and median sold price in the suburb over the last 3 years.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_business auth-required 6d ago

    ABN industry-mix pattern (Diverse / Professional-services-heavy / Mining-exposed / Low-commercial residential) plus the POI categories unusually common in the suburb, with named examples.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_shapes_boundary auth-required 2d ago

    Simplified SAL boundary polygon (GeoJSON Feature) plus centroid.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_development_da_list auth-required 5d ago

    Recent development applications lodged in the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_development_profile auth-required 5d ago

    Dwelling-mix scalars — apartment share and average lot size.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_investor_concentration auth-required 4d ago

    Rental (investor) share per mesh block, with a suburb-wide rollup.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_flood auth-required 29h ago

    Modelled flood overlays within 1 km. Read `on_property` — a returned row means "found nearby", not "this property floods". **Price: 10¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • properties_profile auth-required 34h ago

    Resolve a GNAF to its full ABS Statistical Geography Standard hierarchy (Mesh Block → SA1 → SA2 → SA3 → SA4 → GCCSA → State) plus the parallel admin chain (LGA, suburb (SAL), postcode). Call this once to get every ABS key the rest of the data layers index on. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_rent_history auth-required 34h ago

    All For Rent records, most-recent first. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_hv_power_line auth-required 26h ago

    High-voltage power-line easement near the parcel. **Price: 2¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_single_parents auth-required 6d ago

    Single-parent-family share for the suburb against the pinned national median, with the associated capital-growth impact.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_underclass_drag auth-required 6d ago

    Welfare-dependency and public-housing shares with the suburb's underclass tier (High / Mid / Low) and the capital-growth impact associated with that tier. Regional and neighbour ranks for the same two metrics are served by `/demographics/cohorts`.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_shapes_hazards auth-required 2d ago

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

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name",
        "layer"
      ],
      "properties": {
        "layer": {
          "enum": [
            "bushfire",
            "flood",
            "heritage",
            "erosion",
            "landslide",
            "acid-sulfate"
          ],
          "type": "string",
          "examples": [
            "flood"
          ],
          "description": "Hazard layer to return."
        },
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 32 lines
  • suburbs_shapes_mesh_blocks auth-required 2d ago

    ABS 2021 mesh-block polygons covering the suburb (GeoJSON FeatureCollection, MB code per feature).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_shapes_neighbours auth-required 2d ago

    Neighbouring suburbs as a GeoJSON FeatureCollection — each with its boundary polygon and distance in km.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": true,
          "description": "When 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_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • area_stats_values auth-required 2d ago

    Statistical field values for one region. Pass `fields` — 1 to 5 field codes (from /fields) — to fetch. At SAL level, `mode=sa1` switches from the suburb-aggregate value to a per-SA1 breakdown — every SA1 that falls inside the suburb, each with its own values. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "region_level",
        "region",
        "fields"
      ],
      "properties": {
        "mode": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "SAL only: 'sa1' returns values for every SA1 in the suburb, instead of the suburb aggregate."
        },
        "fields": {
          "type": "string",
          "examples": [
            "Median_age_persons"
          ],
          "description": "Comma-separated field codes (from /fields). Required, 1-5 per call."
        },
        "region": {
          "type": "string",
          "examples": [
            "Belmont North"
          ],
          "description": "Region name (case-insensitive). For SA1, the SA1 code (SA1s are unnamed)."
        },
        "region_level": {
          "type": "string",
          "examples": [
            "SAL"
          ],
          "description": "Region level: SAL (suburb), SA1, SA2, SA3, SA4, LGA, POA, GCCSA, STE, AUS."
        }
      }
    }
    arguments 42 lines
  • suburbs_street_forecasts auth-required 2d ago

    2/4/8-year price forecasts for every street in the suburb, anchored to the real sold median. Unpaged by default. Large suburbs are large — Point Cook has 943 streets (~1.4 MB) — so pass `limit`/`offset` when you don't need the lot. `total` reports how many exist. Flat price per call regardless of page size.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "limit": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1
            },
            {
              "type": "null"
            }
          ],
          "description": "Streets to return (default: all)."
        },
        "offset": {
          "type": "integer",
          "default": 0,
          "minimum": 0,
          "description": "Street offset — page with `limit`."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 29 lines
  • suburbs_risks_flood auth-required 3d ago

    Share of the suburb AREA covered by modelled flood overlays. Area, not properties. For the share of DWELLINGS affected — the figure our own reports headline — use `GET /v1/suburbs/{suburb_name}/risks/property-hazard-counts`. To answer **where** the flood zone is, pass `geojson=true`. The response then includes the actual modelled flood polygons clipped to the suburb boundary, suitable for a street map, plus truncation/simplification metadata. Do not infer street location from `coverage_pct` alone.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the flood polygons clipped to the suburb boundary (default false — response unchanged)."
        },
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_finder_count auth-required 2d ago

    How many suburbs match the filter, without paying per row. 5c. Use this to size a result before searching: /search is capped at 25 rows per call, so `total` here tells you how many `offset` pages you need. **Price: 5¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "filter": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Range filter `fieldKey:min..max` (repeatable). Valid fieldKeys: medianHousePrice, grossYield, medianRent, growthForecast4yr, growth10yrCagr, growth3yrCagr, rentGrowth3yr, soldAtLossPct, daysOnMarket, vacancyRate, unitMedianPrice, unitGrossYield, unitMedianRent, unitGrowthForecast4yr, unitGrowth10yrCagr, unitGrowth3yrCagr, unitRentGrowth3yr, unitSoldAtLossPct, unitDaysOnMarket, unitVacancyRate, stockOnMarket, monthsOfInventory, landValuePerSqm, lifestyleScore, safetyScore, hipScore, affluenceScore, renters, distanceCbdKm, publicHousingPct, overseasBornPct, welfareReliancePct, unemploymentPct, singleParentsPct, familyHouseholdsPct, privateSchoolPct, medianIncomeWeekly, communityDepthIndex, premiumRenovationIndex, homeOfficeIndex, tranquilityIndex, innovationEconomyIndex, alternativeLivingIndex, investorConcentration, negativeGearingExposure, mortgageStress. Apartment/unit metrics are the `unit`-prefixed keys (unitMedianPrice, unitGrossYield, unitMedianRent, …); the unprefixed market keys are houses. Unit data only exists where a suburb has a real unit market — coverage runs ~13-54% of suburbs depending on the field, so a unit filter implicitly excludes house-only suburbs."
        },
        "states": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Comma-separated states (names or abbreviations), e.g. `VIC`."
        },
        "regions": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Comma-separated EXACT SA4 region names — call GET /v1/suburbs/finder/regions for the list. A metro name like `Melbourne` alone will NOT match."
        },
        "property_type": {
          "type": "string",
          "default": "house",
          "description": "Legacy flag: 'unit' re-points the ten unprefixed house-market keys (medianHousePrice, grossYield, ...) at their unit column. It does NOT affect the explicit `unit`-prefixed keys, which are always units. Prefer the `unit` keys — they are visible in /fields and can be mixed with house keys in one query."
        }
      }
    }
    arguments 40 lines
  • suburbs_demographics_cultural_integration reads auth-required 6d ago

    Suburb cultural-integration composite (0-100) with national percentile and tier, plus the per-microburb scores behind it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_mobile_black_spot auth-required 23h ago

    Mobile-coverage black-spot overlay near the parcel. **Price: 2¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_public_housing auth-required 23h ago

    Public-housing concentration overlay near the parcel. **Price: 4¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_context_street_bedroom_series auth-required 42h ago

    The subject's bedroom band (bed count from listing history) and the suburb's 10-year price series for that band. **Price: 15¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_development_all reads auth-required 40h ago

    **Price: 8¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • lga_profile auth-required 2d ago

    LGA's parent chain — state + GCCSA. LGAs aren't strictly nested in SA4 so the upward chain stops there. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "lga_name"
      ],
      "properties": {
        "lga_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • mbs_list auth-required 2d ago

    Mesh-block codes inside a suburb. ``sal`` is required for now — nationwide / by-LGA / by-SA3 listings will land later when there's a story for the large payloads (a single LGA can hit a few thousand mesh blocks). **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "sal"
      ],
      "properties": {
        "sal": {
          "type": "string",
          "description": "Required. Suburb (SAL) to list mesh blocks for."
        }
      }
    }
    arguments 12 lines
  • suburbs_finder_search auth-required 2d ago

    Boolean-AND range filter over suburb metrics, single-column sort, paginated. Every row carries its `rank` — position in the ranked result (1 = top of the sort, out of `meta.total`). When sorting by a median or a growth, the actual value is also shown for the first 5 and last 5 rows of the page; for any other suburb's number, call the per-field endpoint (market/*, forecast/*). **Paging:** a page is capped at 25 rows. A bigger `limit` is clamped, not rejected — so always read `meta`: `total` is the full match count, `has_more` says whether rows remain, and `next_offset` is the `offset` to pass for the next page. A "top 50" needs two calls, each charged. Flat 30c. **Price: 30¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "sort": {
          "enum": [
            "medianHousePrice",
            "grossYield",
            "medianRent",
            "growthForecast4yr",
            "growth10yrCagr",
            "growth3yrCagr",
            "rentGrowth3yr",
            "soldAtLossPct",
            "daysOnMarket",
            "vacancyRate",
            "unitMedianPrice",
            "unitGrossYield",
            "unitMedianRent",
            "unitGrowthForecast4yr",
            "unitGrowth10yrCagr",
            "unitGrowth3yrCagr",
            "unitRentGrowth3yr",
            "unitSoldAtLossPct",
            "unitDaysOnMarket",
            "unitVacancyRate",
            "stockOnMarket",
            "monthsOfInventory",
            "landValuePerSqm",
            "lifestyleScore",
            "safetyScore",
            "hipScore",
            "affluenceScore",
            "renters",
            "distanceCbdKm",
            "publicHousingPct",
            "overseasBornPct",
            "welfareReliancePct",
            "unemploymentPct",
            "singleParentsPct",
            "familyHouseholdsPct",
            "privateSchoolPct",
            "medianIncomeWeekly",
            "communityDepthIndex",
            "premiumRenovationIndex",
            "homeOfficeIndex",
            "tranquilityIndex",
            "innovationEconomyIndex",
            "alternativeLivingIndex",
            "investorConcentration",
            "negativeGearingExposure",
            "mortgageStress",
            "-medianHousePrice",
            "-grossYield",
            "-medianRent",
            "-growthForecast4yr",
            "-growth10yrCagr",
            "-growth3yrCagr",
            "-rentGrowth3yr",
            "-soldAtLossPct",
            "-daysOnMarket",
            "-vacancyRate",
            "-unitMedianPrice",
            "-unitGrossYield",
            "-unitMedianRent",
            "-unitGrowthForecast4yr",
            "-unitGrowth10yrCagr",
            "-unitGrowth3yrCagr",
            "-unitRentGrowth3yr",
            "-unitSoldAtLossPct",
            "-unitDaysOnMarket",
            "-unitVacancyRate",
            "-stockOnMarket",
            "-monthsOfInventory",
            "-landValuePerSqm",
            "-lifestyleScore",
            "-safetyScore",
            "-hipScore",
            "-affluenceScore",
            "-renters",
            "-distanceCbdKm",
            "-publicHousingPct",
            "-overseasBornPct",
            "-welfareReliancePct",
            "-unemploymentPct",
            "-singleParentsPct",
            "-familyHouseholdsPct",
            "-privateSchoolPct",
            "-medianIncomeWeekly",
            "-communityDepthIndex",
            "-premiumRenovationIndex",
            "-homeOfficeIndex",
            "-tranquilityIndex",
            "-innovationEconomyIndex",
            "-alternativeLivingIndex",
            "-investorConcentration",
            "-negativeGearingExposure",
            "-mortgageStress"
          ],
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Sort field. Prefix '-' for descending (highest first), e.g. `-growth10yrCagr`. Must be one of the field keys (see enum). Works on its own — you do NOT need a filter on the field you sort by; to rank without a threshold, pass `sort` and no filter. Only when `sort` is omitted does it default to the first filter field, desc. Apartment/unit metrics are the `unit`-prefixed keys (unitMedianPrice, unitGrossYield, unitMedianRent, …); the unprefixed market keys are houses. Unit data only exists where a suburb has a real unit market — coverage runs ~13-54% of suburbs depending on the field, so a unit filter implicitly excludes house-only suburbs."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "description": "Page size. Hard cap 25 — a larger value is clamped, NOT an error, and `meta.requested_limit` says so. For more than 25 results, page with `offset`."
        },
        "filter": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Range filter `fieldKey:min..max` (repeatable). Open-ended `min..` / `..max`. Valid fieldKeys: medianHousePrice, grossYield, medianRent, growthForecast4yr, growth10yrCagr, growth3yrCagr, rentGrowth3yr, soldAtLossPct, daysOnMarket, vacancyRate, unitMedianPrice, unitGrossYield, unitMedianRent, unitGrowthForecast4yr, unitGrowth10yrCagr, unitGrowth3yrCagr, unitRentGrowth3yr, unitSoldAtLossPct, unitDaysOnMarket, unitVacancyRate, stockOnMarket, monthsOfInventory, landValuePerSqm, lifestyleScore, safetyScore, hipScore, affluenceScore, renters, distanceCbdKm, publicHousingPct, overseasBornPct, welfareReliancePct, unemploymentPct, singleParentsPct, familyHouseholdsPct, privateSchoolPct, medianIncomeWeekly, communityDepthIndex, premiumRenovationIndex, homeOfficeIndex, tranquilityIndex, innovationEconomyIndex, alternativeLivingIndex, investorConcentration, negativeGearingExposure, mortgageStress. Apartment/unit metrics are the `unit`-prefixed keys (unitMedianPrice, unitGrossYield, unitMedianRent, …); the unprefixed market keys are houses. Unit data only exists where a suburb has a real unit market — coverage runs ~13-54% of suburbs depending on the field, so a unit filter implicitly excludes house-only suburbs."
        },
        "offset": {
          "type": "integer",
          "default": 0,
          "description": "Row offset — page through results more than 25 deep. `meta.next_offset` gives the value for the next page."
        },
        "states": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Comma-separated states — abbreviation or full name, e.g. `VIC` or `Victoria`. Anything else is a 422 listing the valid values (a city name is not a state — use `regions`)."
        },
        "regions": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Comma-separated EXACT SA4 region names — call GET /v1/suburbs/finder/regions for the list. e.g. `Melbourne - Inner`, `Melbourne - West`. A metro name like `Melbourne` alone will NOT match; an unknown value 422s with the closest real names."
        },
        "property_type": {
          "type": "string",
          "default": "house",
          "description": "Legacy flag: 'unit' re-points the ten unprefixed house-market keys (medianHousePrice, grossYield, ...) at their unit column. It does NOT affect the explicit `unit`-prefixed keys, which are always units. Prefer the `unit` keys — they are visible in /fields and can be mixed with house keys in one query."
        }
      }
    }
    arguments 155 lines
  • properties_risks_all reads auth-required 31h ago

    Every property-level risk overlay in one call. Flat 30¢ — may grow without increasing the bundle price as new overlays are added. With ``?geojson=true`` each risk that has a polygon overlay also carries its 1km-radius-clipped `geojson` FeatureCollection + `geojson_meta`. **Price: 48¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "geojson": {
          "type": "boolean",
          "default": false,
          "description": "When true, add a `geojson` FeatureCollection of the hazard polygons clipped to a 1km-radius circle around the property, plus `geojson_meta` (default false — response unchanged)."
        },
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 16 lines
  • suburbs_market_comparable_suburbs auth-required 4d ago

    Same-SA3 comparable-suburb candidates (canonical SAL names).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_demographics_income_map auth-required 6d ago

    Median weekly household income for every microburb in the suburb, plus the suburb median, national percentile and highest/lowest pockets.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • lga_list auth-required 5d ago

    All Australian LGAs. Optional `?state=` filter (e.g. 'NSW'). Returns `{lga, state}` per row. Flat cost. **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Filter by state / territory (NSW, VIC, ...). Optional — ~540 LGAs nationally."
        }
      }
    }
    arguments 17 lines
  • suburbs_demographics_private_school auth-required 6d ago

    Share of residents attending Catholic / Independent schools — suburb rollup plus the per-microburb shares behind it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_forecast_sale auth-required 5d ago

    1-year sale-price growth forecast (low / most-likely / high).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_ethnicity_all reads auth-required 5d ago

    All ethnicity — bundle

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_median_price_map auth-required 4d ago

    Median house price for every microburb (mesh block) in the suburb, with its modal street name, plus the dearest and cheapest pockets. Values only — the matching polygons come from ``/shapes/mesh-blocks``.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_lifestyle_summary auth-required 5d ago

    POI category breakdown, terrain scalars, nearest train/shop and beach/hospital flags.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • properties_risks_historical_flood auth-required 26h ago

    Recorded historical flood extents within 1 km. Read `on_property` — a returned row means "found nearby", not "this property flooded". **Price: 3¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_capital_growth_impact auth-required 3d ago

    Matched-study capital-growth impact (%/yr) for bushfire, flood, contamination, mine subsidence, aircraft noise and surface acid sulfate, scaled by the share of properties affected.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_risks_counts reads auth-required 3d ago

    Counts of contamination points, heritage items and erosion-prone polygons inside the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_hero_price_growth_12mo reads auth-required 5d ago

    12-month sale-price growth by property type (house / unit).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_hero_summary auth-required 5d ago

    State, SA3/SA4, postcode, population, dwellings and centroid for the suburb.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_profile auth-required 3d ago

    The suburb's upward ABS admin chain — LGA, SA2/3/4, GCCSA, state, postcode. Use ``/v1/suburbs/list`` to discover canonical SAL names (and filter by state / LGA / SA4 / postcode).

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_crime_summary auth-required 27m ago

    Suburb and national total-crime medians (predicted incidents per 100,000 residents per year) with a vs-national verdict.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • ping_head unknown never probed

    Returns immediately if the API is up. No authentication required and not metered — safe to poll from a load balancer, uptime monitor, or status dashboard without affecting your usage.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {}
    }
    arguments 5 lines
  • properties_comparables_cma_comp_set unknown never probed

    Top comparable sales used to triangulate the subject property's value. **Price: 60¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • geocode_address unknown never probed

    Resolve a freeform address string to candidate G-NAF identifiers. Use this before calling any ``/v1/properties/{gnaf_id}/...`` route — those endpoints require a GNAF in the path. Returns up to 10 candidates, ranked by Meilisearch score. **Price: 1¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "address"
      ],
      "properties": {
        "address": {
          "type": "string",
          "examples": [
            "27 Arlington Street, Belmont North NSW"
          ],
          "minLength": 2,
          "description": "Freeform address string."
        }
      }
    }
    arguments 16 lines
  • properties_surroundings_listing_history_signals unknown never probed

    Latest sold/rent dates and likely-owner-status signal per nearby property. **Price: 20¢ per call.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "gnaf_id"
      ],
      "properties": {
        "gnaf_id": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • suburbs_market_recent_price_movement unknown never probed

    The last four weekly smart-median observations — house price, unit price and house rent — each with its week-on-week percentage change.

    mcp-tool

    {
      "type": "object",
      "required": [
        "suburb_name"
      ],
      "properties": {
        "suburb_name": {
          "type": "string"
        }
      }
    }
    arguments 11 lines
  • area_stats_regions unknown 2d ago

    List the regions that exist at a level — every suburb, LGA, postcode, etc. Free (0c). Use it to discover the exact region names to pass to /values. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "region_level"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 100,
          "maximum": 1000,
          "minimum": 1,
          "description": "Max regions to return."
        },
        "query": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "examples": [
            "lake"
          ],
          "description": "Filter by region name (substring, case-insensitive). Omit to list."
        },
        "region_level": {
          "type": "string",
          "examples": [
            "SAL"
          ],
          "description": "Region level: SAL (suburb), SA1, SA2, SA3, SA4, LGA, POA, GCCSA, STE, AUS."
        }
      }
    }
    arguments 36 lines
  • geocode_suburb reads unknown 2d ago

    Autocomplete a partial suburb search string against the ABS SAL list. Use this before calling ``/v1/suburbs/{name}/...`` — those endpoints require a canonical SAL name in the path. **Free.**

    mcp-tool

    {
      "type": "object",
      "required": [
        "q"
      ],
      "properties": {
        "q": {
          "type": "string",
          "minLength": 1,
          "description": "Partial suburb name."
        },
        "state": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Optional state filter (NSW, VIC, ...)."
        }
      }
    }
    arguments 24 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 9d3047955ef49db0.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/9d3047955ef49db0/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/9d3047955ef49db0/badge.svg)](https://brick.blue/agent/9d3047955ef49db0?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.