{"name":"au.com.microburbs/property-data","slug":"microburbs-property-data","title":"Microburbs Australian Property Data","description":"Australian property and suburb data: valuations, sales, rents, schools, risk and zoning.","url":"https://mcp.market/server/microburbs-property-data","rating":null,"grade":"C","score":63,"certified":false,"status":"active","category":"sales","tags":["sales"],"presence":{"score":8,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":2,"ok":2,"last_checked_at":"2026-09-19T20:50:52.017Z","last_ok_at":"2026-09-19T20:50:52.017Z","latency_ms":1103},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":"https://www.microburbs.com.au/developers/api-docs","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://api.microburbs.com.au/mcp","headers":[{"description":"Bearer <your Microburbs API key>. Use 'Bearer test' for the free sandbox (nine sample suburbs, one per state), or create a key at https://www.microburbs.com.au/api-access","isSecret":true,"name":"Authorization"}]}],"packages":[],"tools":[{"name":"area_stats_fields","description":"Discover which statistical fields exist. Free (0c). Fuzzy, token-based\nmatching covers table topics and clean column labels as well as terse field\ncodes. Common natural-language plurals and Census synonyms are handled, so\nthe verbatim `query=couples with children` discovers the exact 2021 ABS\nfamily-composition count fields rather than substituting the broader\n`census_family_households` metric. Use the returned field code(s) with the\npriced `/area-stats/SAL/{suburb}/values` route. ~17k fields available.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"anyOf":[{"type":"string"},{"type":"null"}],"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.","examples":["couple family children"]},"limit":{"type":"integer","maximum":500,"minimum":1,"description":"Max fields to return.","default":50}},"required":[]}},{"name":"area_stats_regions","description":"List the regions that exist at a level — every suburb, LGA, postcode, etc.\nFree (0c). Use it to discover the exact region names to pass to /values.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"region_level":{"type":"string","description":"Region level: SAL (suburb), SA1, SA2, SA3, SA4, LGA, POA, GCCSA, STE, AUS.","examples":["SAL"]},"query":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by region name (substring, case-insensitive). Omit to list.","examples":["lake"]},"limit":{"type":"integer","maximum":1000,"minimum":1,"description":"Max regions to return.","default":100}},"required":["region_level"]}},{"name":"area_stats_values","description":"Statistical field values for one region. Pass `fields` — 1 to 5 field\ncodes (from /fields) — to fetch.\n\nAt SAL level, `mode=sa1` switches from the suburb-aggregate value to a\nper-SA1 breakdown — every SA1 that falls inside the suburb, each with its\nown values.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"region_level":{"type":"string","description":"Region level: SAL (suburb), SA1, SA2, SA3, SA4, LGA, POA, GCCSA, STE, AUS.","examples":["SAL"]},"region":{"type":"string","description":"Region name (case-insensitive). For SA1, the SA1 code (SA1s are unnamed).","examples":["Belmont North"]},"fields":{"type":"string","description":"Comma-separated field codes (from /fields). Required, 1-5 per call.","examples":["Median_age_persons"]},"mode":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"SAL only: 'sa1' returns values for every SA1 in the suburb, instead of the suburb aggregate."}},"required":["region_level","region","fields"]}},{"name":"geocode_address","description":"Resolve a freeform address string to candidate G-NAF identifiers.\n\nUse this before calling any ``/v1/properties/{gnaf_id}/...`` route —\nthose endpoints require a GNAF in the path. Returns up to 10\ncandidates, ranked by Meilisearch score.\n\n**Price: 1¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"address":{"type":"string","minLength":2,"description":"Freeform address string.","examples":["27 Arlington Street, Belmont North NSW"]}},"required":["address"]}},{"name":"geocode_suburb","description":"Autocomplete a partial suburb search string against the ABS SAL\nlist. Use this before calling ``/v1/suburbs/{name}/...`` — those\nendpoints require a canonical SAL name in the path.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"q":{"type":"string","minLength":1,"description":"Partial suburb name."},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional state filter (NSW, VIC, ...)."}},"required":["q"]}},{"name":"lga_list","description":"All Australian LGAs. Optional `?state=` filter (e.g. 'NSW').\nReturns `{lga, state}` per row. Flat cost.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"state":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by state / territory (NSW, VIC, ...). Optional — ~540 LGAs nationally."}},"required":[]}},{"name":"lga_profile","description":"LGA's parent chain — state + GCCSA. LGAs aren't strictly nested\nin SA4 so the upward chain stops there.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"lga_name":{"type":"string"}},"required":["lga_name"]}},{"name":"mbs_list","description":"Mesh-block codes inside a suburb. ``sal`` is required for now —\nnationwide / by-LGA / by-SA3 listings will land later when there's\na story for the large payloads (a single LGA can hit a few\nthousand mesh blocks).\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"sal":{"type":"string","description":"Required. Suburb (SAL) to list mesh blocks for."}},"required":["sal"]}},{"name":"mbs_profile","description":"The mesh block's upward ABS chain — SA1, SA2/3/4, GCCSA, state —\nplus the parallel admin chain (LGA, suburb (SAL), postcode).\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"mb_code":{"type":"string"}},"required":["mb_code"]}},{"name":"me","description":"Return key identity and the authoritative Autumn credit balance.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"required":[]}},{"name":"ping","description":"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.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"required":[]}},{"name":"ping_head","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"required":[]}},{"name":"properties_amenities_nearby","description":"Curated amenities (supermarkets, green spaces, restaurants/cafes)\nwithin `radius_m` of the property, bucketed and nearest-first.\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"radius_m":{"type":"integer","maximum":5000,"minimum":100,"description":"Search radius in metres (100–5000, default 1000).","default":1000}},"required":["gnaf_id"]}},{"name":"properties_basics_all","description":"**Price: 23¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_basics_bath_count","description":"Bathroom count from the latest matching listing.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_basics_bed_count","description":"Bedroom count from the latest matching listing.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_basics_dwelling_type","description":"Dwelling type (house, unit, townhouse, ...).\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_basics_land_area_sqm","description":"Parcel land area in square metres from the cadastral feed.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_basics_parking_count","description":"Parking-space count from the latest matching listing.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_comparables_all","description":"**Price: 74¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_comparables_cma_comp_set","description":"Top comparable sales used to triangulate the subject property's value.\n\n**Price: 60¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_comparables_cma_single_comp","description":"Single best comparable from the CMA set (highest dist_score).\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_comparables_recent_sales_nearby","description":"Recent comparable sales in a small radius around the subject parcel.\n\n**Price: 4¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_context_mesh_blocks","description":"Mesh-block polygons within 1 km of the property (GeoJSON), each with\navg annual growth, investor counts, modal street and median sold price.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["gnaf_id"]}},{"name":"properties_context_nearby_for_sale","description":"Currently for-sale listings within `radius_km` of the property\n(newest first, max 30) with AVM and rent-yield comparison.\n\n**Price: 20¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"radius_km":{"type":"number","maximum":5,"minimum":0.1,"description":"Search radius in km (0.1-5).","default":1}},"required":["gnaf_id"]}},{"name":"properties_context_street_bedroom_series","description":"The subject's bedroom band (bed count from listing history) and the\nsuburb's 10-year price series for that band.\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_development_all","description":"**Price: 8¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_development_zoning_code","description":"Primary zoning at the property's point — code (R2, B4, ...) when\nthe council ships one, plus the human-readable name and the\nbroader category.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_development_zoning_overlays","description":"Development overlays intersecting the property's parcel.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_history_all","description":"**Price: 80¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_neighbours","description":"Adjoining-parcel neighbours, enriched with address + property\ntype + bed/bath/garage from the latest matching listing.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_profile","description":"Resolve a GNAF to its full ABS Statistical Geography Standard\nhierarchy (Mesh Block → SA1 → SA2 → SA3 → SA4 → GCCSA → State) plus\nthe parallel admin chain (LGA, suburb (SAL), postcode). Call this\nonce to get every ABS key the rest of the data layers index on.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_rent_history","description":"All For Rent records, most-recent first.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_rent_history_latest","description":"Most-recent For Rent record.\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_risks_all","description":"Every property-level risk overlay in one call. Flat 30¢ — may grow\nwithout increasing the bundle price as new overlays are added.\n\nWith ``?geojson=true`` each risk that has a polygon overlay also carries\nits 1km-radius-clipped `geojson` FeatureCollection + `geojson_meta`.\n\n**Price: 48¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_bushfire","description":"Bushfire-prone-area overlays within 1 km. Read `on_property` — a returned\nrow means \"found nearby\", not \"this property is in a bushfire zone\".\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_environment","description":"Environmental-risk overlay (contamination, salinity, ...).\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_risks_erosion","description":"Coastal / soil erosion overlays within 1 km. Read `on_property` — a\nreturned row means \"found nearby\", not \"this property is eroding\".\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_flood","description":"Modelled flood overlays within 1 km. Read `on_property` — a returned row\nmeans \"found nearby\", not \"this property floods\".\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_heritage","description":"Heritage-listing overlays within 1 km. Read `on_property` — a returned row\nmeans \"found nearby\", not \"this property is heritage-listed\".\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_historical_flood","description":"Recorded historical flood extents within 1 km. Read `on_property` — a\nreturned row means \"found nearby\", not \"this property flooded\".\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_risks_hv_power_line","description":"High-voltage power-line easement near the parcel.\n\n**Price: 2¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_risks_landslide","description":"Landslide-risk overlays within 1 km. Read `on_property` — a returned row\nmeans \"found nearby\", not \"this property is at landslide risk\".\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["gnaf_id"]}},{"name":"properties_risks_mobile_black_spot","description":"Mobile-coverage black-spot overlay near the parcel.\n\n**Price: 2¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_risks_public_housing","description":"Public-housing concentration overlay near the parcel.\n\n**Price: 4¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_sale_history","description":"All Sold + For Sale records, most-recent first.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_sale_history_latest","description":"Most-recent Sold or For Sale record.\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_schools_all","description":"**Price: 105¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_schools_nearby","description":"Schools within ~5km of the property, with rank + student counts.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_schools_ranking","description":"Schools within ~5km of the property, ranked by NAPLAN / socioeconomic score.\n\n**Price: 100¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_street_profile","description":"The property's own street: current median price, 2/4/8-year price\nforecasts, realised growth, sale/rental turnover, renter share and\nhouses/units on the street — plus the suburb-wide medians to judge it\nagainst and the street's rank on 4-year forecast growth.\n\n404s when the street has no forecast row rather than falling back to\nsuburb-wide figures, which would answer a different question.\n\n**Price: 20¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_surroundings_listing_history_signals","description":"Latest sold/rent dates and likely-owner-status signal per nearby property.\n\n**Price: 20¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_surroundings_parcels","description":"Cadastral parcel polygons (GeoJSON) for properties around the subject.\n\n**Price: 25¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_surroundings_properties","description":"Every GNAF property within 200 m of the subject, with lat/lng and mesh block.\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_surroundings_public_housing","description":"Properties around the subject flagged by the public-housing classifier.\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_surroundings_tenure","description":"ABS Census 2021 tenure shares for each mesh block around the subject.\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_transport_nearby","description":"Nearest train / tram / bus / ferry stop to the property, per mode,\nwith distance. Widen `radius_m` for the nearest station beyond 1km.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"},"radius_m":{"type":"integer","maximum":5000,"minimum":100,"description":"Search radius in metres (100–5000, default 1000).","default":1000}},"required":["gnaf_id"]}},{"name":"properties_valuation_agent_quoting","description":"Quoting accuracy of the property's current listing agency —\ncohort, median guide-vs-sold deviation, underquote rate and its 5\nmost-recent tracked sales. Only while the property is listed for\nsale with a tracked agency.\n\n**Price: 50¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_valuation_all","description":"**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_valuation_avm","description":"Microburbs ML AVM for a single GNAF — point estimate, 80% range,\nplus a confidence score (0–100) derived from the interval width.\n\n**Price: 10¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_valuation_land_values","description":"Council land valuations for the parcel — val_2021..val_2025 series\nwith YoY change and $/sqm, plus lot area and zoning description.\n\n**Price: 15¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_valuation_negative_gearing","description":"Negative-gearing stat at the finest available level: per-property\ncashflow scenarios (80% + 105% LVR), falling back to mesh-block then\nsuburb investor-exposure.\n\n**Price: 20¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"properties_valuation_value_series","description":"Modelled property value over time (monthly for the last year,\nannual before that). Houses only — units have no series.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"gnaf_id":{"type":"string"}},"required":["gnaf_id"]}},{"name":"sa4_list","description":"All Australian SA4s. Optional `?state=` filter. Returns\n`{sa4, state}` per row. Flat cost.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"state":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by state / territory. Optional — ~110 SA4s nationally."}},"required":[]}},{"name":"sa4_profile","description":"SA4's parent chain — GCCSA + state.\n\n**Price: 3¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"sa4_name":{"type":"string"}},"required":["sa4_name"]}},{"name":"suburbs_crime_breakdown","description":"Per-crime-type rates (predicted incidents per 100,000 residents\nper year) for the suburb vs national medians.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_crime_by_mesh_block","description":"Total crime rate for every mesh block in the suburb, keyed by ABS\nmesh-block code. Values are predicted incidents per 100,000 residents\nper year (see the payload's `unit` / `definition` keys).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_crime_summary","description":"Suburb and national total-crime medians (predicted incidents per\n100,000 residents per year) with a vs-national verdict.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_age","description":"Population by age bracket and gender.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_all","description":"Age + income — bundle","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_ancestry_map","description":"The dominant ancestry (and its share) in each of the suburb's\nmicroburbs, plus suburb-level ancestry shares. Pilot coverage.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_business","description":"ABN industry-mix pattern (Diverse / Professional-services-heavy /\nMining-exposed / Low-commercial residential) plus the POI categories\nunusually common in the suburb, with named examples.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_cohorts","description":"How the suburb ranks inside its SA4 region and against its touching\nneighbours on renter share, welfare dependency, overseas-born parents\nand public housing.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_cultural_integration","description":"Suburb cultural-integration composite (0-100) with national\npercentile and tier, plus the per-microburb scores behind it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_income","description":"Household income breakdown by bracket.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_income_map","description":"Median weekly household income for every microburb in the suburb,\nplus the suburb median, national percentile and highest/lowest pockets.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_population_history","description":"Total suburb population is `current_population` (ABS Census 2021),\nalongside suburb census points (2011/2016/2021) and the LGA's yearly\npopulation series with a 10-year modelled projection tail. Use this route\nfor questions such as \"what is the total population of Clarkson?","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_private_school","description":"Share of residents attending Catholic / Independent schools —\nsuburb rollup plus the per-microburb shares behind it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_single_parents","description":"Single-parent-family share for the suburb against the pinned\nnational median, with the associated capital-growth impact.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_tenure","description":"Explicit total owner-occupation rate plus owned-outright / mortgaged /\nrenting / public-housing shares — a suburb rollup and the per-microburb\ndownscaled Census shares. `owner_occupied_pct` is the requested headline;\nit equals owned outright plus mortgaged and is null if either is absent.\n`census_year` makes the 2021 reference period explicit.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_underclass_drag","description":"Welfare-dependency and public-housing shares with the suburb's\nunderclass tier (High / Mid / Low) and the capital-growth impact\nassociated with that tier. Regional and neighbour ranks for the same\ntwo metrics are served by `/demographics/cohorts`.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_unemployment","description":"Labour-force-weighted unemployment rate for the suburb against the\npinned national median, plus the per-microburb shares behind it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_demographics_voting","description":"Projected first-preference shares per party, aggregated across the\nsuburb's microburbs (booth-derived model — not an actual vote).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_all","description":"DA count + DA list — bundle","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_applications","description":"Recent development applications (up to 100, newest first) with category counts.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_building_controls","description":"Height-of-building and floor-space-ratio control polygons with band summaries.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_construction_activity","description":"Satellite-detected construction change per mesh block plus a suburb rollup.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_council_intelligence","description":"Council capex / project-pipeline signals extracted from the LGA's meeting\nminutes — each with stage, dollar value, location and time horizon — plus a\nrollup of the total pipeline in dollars.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_council_rates","description":"Average annual residential council rate for the suburb's LGA.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_da_count","description":"Count of recent development applications in the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_da_list","description":"Recent development applications lodged in the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_density","description":"Dwellings and people per km², plus the land area and counts behind them.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_profile","description":"Dwelling-mix scalars — apartment share and average lot size.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_supply","description":"New dwellings (last 24 months) split units vs houses per mesh block plus a rollup.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_development_zoning_map","description":"Zoning polygons clipped to the suburb, with per-class and parent-group area shares.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_ethnicity_all","description":"All ethnicity — bundle","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_ethnicity_ancestry","description":"Ancestry breakdown from the ABS census.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_ethnicity_birthplace","description":"Country-of-birth breakdown from the ABS census.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_finder_count","description":"How many suburbs match the filter, without paying per row. 5c.\n\nUse this to size a result before searching: /search is capped at 25 rows\nper call, so `total` here tells you how many `offset` pages you need.\n\n**Price: 5¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"filter":{"items":{"type":"string"},"type":"array","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","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.","default":"house"}},"required":[]}},{"name":"suburbs_finder_fields","description":"Every field you can filter / sort on, with its label and unit. 0c.\n\nHouses and units are separate keys: the `unit`-prefixed ones\n(`unitMedianPrice`, `unitGrossYield`, `unitMedianRent`, …) are the\napartment market, the unprefixed market keys are houses, and both can be\nfiltered in the same query. Unit fields are NOT nationally populated — they\nonly exist where a suburb has a unit market (roughly 13-54% of suburbs\ndepending on the field), so a suburb with no unit market simply won't match\na unit filter.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"required":[]}},{"name":"suburbs_finder_regions","description":"SA4 regions grouped by state — the values accepted by `states` /\n`regions` on search. 0c.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"required":[]}},{"name":"suburbs_finder_search","description":"Boolean-AND range filter over suburb metrics, single-column sort,\npaginated. Every row carries its `rank` — position in the ranked result\n(1 = top of the sort, out of `meta.total`). When sorting by a median or a\ngrowth, the actual value is also shown for the first 5 and last 5 rows of\nthe page; for any other suburb's number, call the per-field endpoint\n(market/*, forecast/*).\n\n**Paging:** a page is capped at 25 rows. A bigger `limit` is clamped, not\nrejected — so always read `meta`: `total` is the full match count,\n`has_more` says whether rows remain, and `next_offset` is the `offset` to\npass for the next page. A \"top 50\" needs two calls, each charged.\n\nFlat 30c.\n\n**Price: 30¢ per call.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"filter":{"items":{"type":"string"},"type":"array","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."},"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","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.","default":"house"},"sort":{"anyOf":[{"type":"string"},{"type":"null"}],"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"],"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","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`.","default":25},"offset":{"type":"integer","description":"Row offset — page through results more than 25 deep. `meta.next_offset` gives the value for the next page.","default":0}},"required":[]}},{"name":"suburbs_forecast_sale","description":"1-year sale-price growth forecast (low / most-likely / high).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_hero_neighbours","description":"Nearest neighbouring suburbs with distance in km, closest first.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_hero_price_growth_12mo","description":"12-month sale-price growth by property type (house / unit).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_hero_summary","description":"State, SA3/SA4, postcode, population, dwellings and centroid for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_cbd","description":"Straight-line distance to the nearest city and to the nearest capital, in km.\n\nBoth, because they answer different questions and are often nowhere near\neach other: Belmont North is 14 km from Newcastle and 108 km from Sydney.\n`nearest_city` is usually what a buyer means by \"how far is town\".\n\nThe top-level `city` / `distance_km` fields are DEPRECATED. They still\ndescribe the CAPITAL, unchanged, so existing callers are unaffected —\nread `capital_city` or `nearest_city` instead.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_landmarks","description":"Nearest beach and hospital with straight-line distances (null = none within ~50 km).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_livability","description":"Livability scores (0–100) per dimension, aggregated from mesh-block scores, with the SA4 benchmark.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_livability_map","description":"All seven livability dimensions — affluence, lifestyle, hip,\nconvenience, family, safety, tranquility — scored 0-100 for every\nmicroburb (mesh block) in the suburb, each with its human band. Averaging\na dimension across the microburbs reproduces the suburb figure at\n``/lifestyle/livability``. Values only; polygons come from\n``/shapes/mesh-blocks``.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_narrative","description":"One plain-English sentence per livability dimension for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_poi_impacts","description":"What the absence of petrol stations, fast food and bottle shops near sold properties was worth.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_pois","description":"Every named venue / amenity in the suburb as GeoJSON Point features, plus a\nper-category count.\n\nEach point carries `name`, a broad `category` (Restaurant / Cafe, Shopping,\nHealth, Entertainment, Sport & Fitness, Education, …) and a finer `subtype`\n(e.g. `pub`, `bar`, `cafe`, `restaurant`, `gym`, `supermarket`, `school`,\n`pharmacy`). This is the endpoint for \"what / how many <venue type> are in\nthis suburb\" and \"name the pubs / cafes / gyms in X\" — filter or count the\nfeatures on `subtype`, and read real venue names from `name`. The top-level\n`categories` array gives the broad-category counts without walking the list.\n\nUnpaged by default. Big suburbs are big — Sydney is ~3.7 MB of features — so\npass `limit`/`offset` (or narrow with `category`) when you don't need them\nall. `count` and `categories` always describe the whole suburb, so paging\nnever hides the totals. Flat price per call regardless of page size.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"limit":{"anyOf":[{"type":"integer","minimum":1},{"type":"null"}],"description":"Features to return (default: all)."},"offset":{"type":"integer","minimum":0,"description":"Feature offset — page with `limit`.","default":0},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Only this display category (e.g. `Shopping`). Case-insensitive."}},"required":["suburb_name"]}},{"name":"suburbs_lifestyle_summary","description":"POI category breakdown, terrain scalars, nearest train/shop and beach/hospital flags.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_list","description":"List Australian suburbs (SALs). Always returns `{suburb, state}`\nper row so SAL-name collisions across states are unambiguous.\n\nWith no filter you get the first 1000 suburbs alphabetically\n(browser-renderable preview). Pass any of the filters to narrow:\nstate / lga / sa4 / sa3 / postcode / q (name search). Filters\ncombine (AND). Flat cost regardless of how many rows come back.\n\n**Name search (`q`) is typo-tolerant.** It tries an exact match, then\nsubstring, then a fuzzy near-miss, and returns `match`\n(`exact` / `contains` / `fuzzy`) and `score` on every row so you can\nsee which happened.\n\n**Always tell the user which suburb you resolved to, and its state,\nbefore quoting numbers for it.** A fuzzy match is a suggestion, not a\nconfirmation — `rokeby` is one letter from Kokeby in Western Australia\nand Rokeby exists in both Tasmania and Victoria. If more than one\ncandidate is plausible, ask rather than pick.\n\nWhen `q` is combined with `state`, the state is a **preference, not a\nfilter**: in-state candidates rank first, but a suburb of that name in\nanother state is still returned rather than hidden, so a near-miss\nbecomes \"Seaview is in Victoria, not Tasmania\" instead of \"no data\".\nEvery other filter stays a strict AND.\n\n**Free.**","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"state":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by state / territory (e.g. NSW, VIC, 'New South Wales')."},"lga":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by Local Government Area name."},"sa4":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by SA4 name."},"sa3":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by SA3 name."},"postcode":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by 4-digit postcode (POA)."},"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."}},"required":[]}},{"name":"suburbs_listings_for_sale","description":"Current for-sale listings in the suburb, with address, price, beds/baths\nand coordinates per listing.\n\n`total` is the full number on the market (computed before `limit`), so a\ncount is accurate even when the rows are capped. Raise `limit` for more\nlistings; set `verbose=true` for the agent's full description text.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"limit":{"type":"integer","description":"Max listings to return (default 30, max 200). `total` always reports the full match count.","default":30},"verbose":{"type":"boolean","description":"Include the agent's full ad-copy in `attributes.description`. Off by default — it averages ~1.5 KB per listing.","default":false}},"required":["suburb_name"]}},{"name":"suburbs_market_affordability","description":"Microburbs affordability index for the suburb's postcode area.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_all","description":"The eight headline market indicators in one call: median sale price and\nmedian rent (each with its full history), 5-year price growth, gross yield,\ndays on market, and transaction volume.\n\n**This is a core set, not every market endpoint.** The `Suburb - Market`\nfamily has 29 endpoints; this bundles 8 of them, priced sum-of-parts. The\npath is `/market/all` for historical reasons — it is not \"all\". Supply,\nvacancy, growth drivers, affordability, mortgage stress, investor\nconcentration, land values, repeat sales, bedroom stats and the per-mesh-block\nmaps are separate calls, so you only pay for what you ask for.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_bedroom_stats","description":"House/unit price, sales volume, median bath/car/land, and stock mix per bedroom count.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_built_year","description":"Estimated build-year profile — suburb aggregate + per-mesh-block medians.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_comparable_suburbs","description":"Same-SA3 comparable-suburb candidates (canonical SAL names).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_days_on_market","description":"Median days on market for current listings.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_days_on_market_benchmark","description":"Median days on market across the suburb's greater region (GCCSA) — compare with /market/days-on-market.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_growth_drivers","description":"Per-indicator capital-growth attribution for the suburb.\n\nEach row pairs the suburb's own value for an indicator with the\ncapital-growth differential our matched studies attribute to it, in\npercentage points. Covers supply & demand pressure, market signals,\nenvironmental risks and demographic composition.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_investor_concentration","description":"Rental (investor) share per mesh block, with a suburb-wide rollup.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_land_values","description":"Suburb land-value medians ($/sqm, lot size, land share of price) + per-mesh-block $/sqm.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_median_price_map","description":"Median house price for every microburb (mesh block) in the suburb, with\nits modal street name, plus the dearest and cheapest pockets. Values only —\nthe matching polygons come from ``/shapes/mesh-blocks``.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_median_rent","description":"Latest median weekly rent for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_median_rent_series","description":"Full median weekly-rent observation history for the suburb, including\n2024 and 2025 where the suburb has coverage. Older observations are\ngenerally month-end and recent observations can be weekly; this is not a\nuniformly quarterly series. Values are advertised median AUD per week.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_median_sale_price","description":"Latest median sale price for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_median_sale_price_series","description":"Full median sale-price observation history for the suburb. Well-covered\nsuburbs extend back 20+ years; coverage and observation frequency vary.\nThis is the raw historical series needed to calculate a stated 20-year\nreturn, not a precomputed \"consistent growth\" score or a forecast.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_months_of_supply","description":"How many months the current for-sale stock would take to clear at the\nsuburb's current sales rate. Under 2 months is a seller's market.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_mortgage_stress","description":"Mortgage-stress score (0-100) for the suburb, with per-mesh-block breakdown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_price_growth","description":"Past compound sale-price growth over 1 / 3 / 5 / 10 years, by property\ntype (decimal). The 3y / 10y figures are the same ones the Suburb Finder\nranks on.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_price_growth_5y","description":"5-year compound sale-price growth (decimal).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_recent_price_movement","description":"The last four weekly smart-median observations — house price, unit price\nand house rent — each with its week-on-week percentage change.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_rent_map","description":"Median advertised weekly house rent for every microburb (mesh block) in\nthe suburb, with its modal street name, plus the dearest and cheapest\npockets. Values only — the matching polygons come from\n``/shapes/mesh-blocks``.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_repeat_sales","description":"Realised resale growth — summary + individual buy/sell pairs (max 500).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_stock_on_market","description":"Properties currently listed for sale in the suburb, split house/unit,\nwith the suburb's rank among its peers.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_strata_levies","description":"Median estimated annual strata levy for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_supply_pressure","description":"For-sale listings per 100 dwellings (90 days) — per mesh block + suburb rollup.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_transaction_volume","description":"Recent sale-transaction count for the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_vacancy_map","description":"Calibrated rental-vacancy rate for each mesh block in the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_vacancy_rate","description":"Suburb-wide rental vacancy rate by property type, as a decimal fraction\n(0.00842 = 0.84%). Use `/market/vacancy-map` for the per-mesh-block surface.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_vacancy_rate_series","description":"Full rental-vacancy history by property type, decimal fractions.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_yield_map","description":"Gross rental yield for every microburb (mesh block) in the suburb —\nweekly rent x 52 over median price — with both inputs returned so the\nnumber is checkable, plus the best- and worst-yielding pockets. Values\nonly; polygons come from ``/shapes/mesh-blocks``.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_yield_pct","description":"Gross rental yield = median rent annualised / median sale price.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_market_yield_pct_series","description":"Full gross-rental-yield history by property type, decimal fractions.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_profile","description":"The suburb's upward ABS admin chain — LGA, SA2/3/4, GCCSA,\nstate, postcode. Use ``/v1/suburbs/list`` to discover canonical\nSAL names (and filter by state / LGA / SA4 / postcode).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_all","description":"Bushfire + flood — bundle","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":false}},"required":["suburb_name"]}},{"name":"suburbs_risks_bushfire","description":"Share of the suburb AREA covered by bushfire-prone designation.\n\nArea, not properties — and the two differ a lot. Belmont North is 45.72%\nby area but 23.62% by property count, because designated land is not\nevenly built on. If you want \"what share of homes here are affected\",\nwhich is the figure our own reports headline, use\n`GET /v1/suburbs/{suburb_name}/risks/property-hazard-counts` — it returns\na count and pct per hazard against the suburb's actual dwellings.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","description":"When true, add a `geojson` FeatureCollection of the bushfire polygons clipped to the suburb boundary (default false — response unchanged).","default":false}},"required":["suburb_name"]}},{"name":"suburbs_risks_capital_growth_impact","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_counts","description":"Counts of contamination points, heritage items and erosion-prone polygons inside the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_extras","description":"Landslide / storm-tide coverage, EPA notices, landlord-insurance medians and crime benchmark, with per-microburb detail.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_flood","description":"Share of the suburb AREA covered by modelled flood overlays.\n\nArea, not properties. For the share of DWELLINGS affected — the figure our\nown reports headline — use\n`GET /v1/suburbs/{suburb_name}/risks/property-hazard-counts`.\n\nTo answer **where** the flood zone is, pass `geojson=true`. The response\nthen includes the actual modelled flood polygons clipped to the suburb\nboundary, suitable for a street map, plus truncation/simplification\nmetadata. Do not infer street location from `coverage_pct` alone.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","description":"When true, add a `geojson` FeatureCollection of the flood polygons clipped to the suburb boundary (default false — response unchanged).","default":false}},"required":["suburb_name"]}},{"name":"suburbs_risks_heritage_share","description":"Share of the suburb's properties inside a heritage polygon.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_hv_power_lines","description":"Whether high-voltage transmission lines cross the suburb, how many, and the highest voltage class (overhead lines only).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_property_hazard_counts","description":"Counts and shares of the suburb's properties flagged bushfire / flood / mine-subsidence / contamination / aircraft-noise / acid-sulfate.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_risks_slope","description":"Median / 90th-percentile property gradient and share of steep (>10°) properties.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_sales_recent","description":"Properties sold in the suburb over the last 3 years, with beds/baths/land\nsize, sale price and date, and coordinates.\n\nPaginated: `total` reports how many sales are available for the suburb\n(counted before `limit`/`offset`), so you can page through the full feed.\nFlat price per call regardless of page size.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"limit":{"type":"integer","description":"Sales to return (default 20, max 200).","default":20},"offset":{"type":"integer","description":"Row offset — page through the feed with `limit`.","default":0}},"required":["suburb_name"]}},{"name":"suburbs_sales_summary","description":"Number of sales and median sold price in the suburb over the last 3 years.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_schools_all","description":"All schools — bundle","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_schools_catchment","description":"Public-school catchment polygons covering the suburb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_schools_nearby","description":"Schools serving / near the suburb, with rank + attendance data.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_shapes_boundary","description":"Simplified SAL boundary polygon (GeoJSON Feature) plus centroid.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_busy_roads","description":"Busy-road line segments clipped to the suburb — the report's road-noise exposure proxy.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_easements","description":"Registered easement geometries intersecting the suburb (GeoJSON FeatureCollection).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_hazards","description":"Hazard polygons for one layer, clipped to the suburb boundary (empty collection = hazard not present).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"layer":{"type":"string","enum":["bushfire","flood","heritage","erosion","landslide","acid-sulfate"],"description":"Hazard layer to return.","examples":["flood"]},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name","layer"]}},{"name":"suburbs_shapes_mesh_blocks","description":"ABS 2021 mesh-block polygons covering the suburb (GeoJSON FeatureCollection, MB code per feature).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_neighbours","description":"Neighbouring suburbs as a GeoJSON FeatureCollection — each with its boundary polygon and distance in km.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_noise_heatmap","description":"Precomputed noise colour regions clipped to the suburb, plus cell-centre heat points.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_shapes_public_housing_sa1","description":"SA1 polygons in the suburb with their 2021 census public-housing share (only SA1s above 0%).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"geojson":{"type":"boolean","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).","default":true}},"required":["suburb_name"]}},{"name":"suburbs_similar","description":"Top-10 suburbs ranked closest by Microburbs' similarity model.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"}},"required":["suburb_name"]}},{"name":"suburbs_street_forecasts","description":"2/4/8-year price forecasts for every street in the suburb, anchored to the real sold median.\n\nUnpaged by default. Large suburbs are large — Point Cook has 943 streets\n(~1.4 MB) — so pass `limit`/`offset` when you don't need the lot. `total`\nreports how many exist. Flat price per call regardless of page size.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"suburb_name":{"type":"string"},"limit":{"anyOf":[{"type":"integer","minimum":1},{"type":"null"}],"description":"Streets to return (default: all)."},"offset":{"type":"integer","minimum":0,"description":"Street offset — page with `limit`.","default":0}},"required":["suburb_name"]}}],"scan":{"score":63,"grade":"C","scanned_at":"2026-09-19T20:03:55.661Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T20:03:55.654Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":17,"max":20,"notes":["remote reachable in 2209ms"]},"poisoning":{"score":15,"max":15,"notes":["174 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://api.microburbs.com.au/mcp","reachable":true,"authRequired":false,"latencyMs":2209,"serverInfo":{"name":"microburbs","version":"3.4.4"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://www.microburbs.com.au/favicon.ico?favicon.2vcosvp3q3he3.ico","source":"registry","width":32,"height":32},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":8}}}},"grade_history":[],"reviews":[]}