New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

dwelldelta-mcp

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dwelldelta-mcp

Is an Australian rent fair? A rent check on the ABS rents index, rents by area for four states, NSW median sale prices, and sourced property and lending indicators, for AI agents.

latest
Source
npmnpm
Version
0.8.0
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

dwelldelta-mcp - is an Australian rent fair?

An MCP server that lets an AI assistant check a weekly rent against the ABS rents index, look up median rents by area in four states and NSW median sale prices, and quote sourced Australian property and lending indicators. From DwellDelta, a service of Xcelerent Pty Ltd, built on public data.

Six read-only tools, and one that adds the user's own rent when they ask:

ToolWhat it answers
rent_checka weekly rent, and any proposed new rent, against the ABS rents index for the capital city since the lease began (the same arithmetic as the rent check at tools.dwelldelta.com.au)
market_indicatorsthe latest RBA cash rate, unemployment, wage growth, rents for all eight capitals, NSW lending, lending standards and arrears, approvals and completions - each with period, source, licence and limits; filter by geography
vic_rentsVictorian rents by suburb group from Homes Victoria's Rental Report: the median weekly rent of new leases, the lease count and the change on a year before, for 146 suburb groups and 13 regions; filter by suburb_group or region (from 0.5.0)
area_rentsmedian weekly rent of new bonds, all dwellings together, with the bond count and the change on a year before, for one state per call: NSW by postcode or council (NSW Department of Communities and Justice), Queensland by suburb or council (Residential Tenancies Authority), WA by locality (calculated by DwellDelta from the Government of Western Australia's bond records); each CC BY 4.0 (from 0.6.0)
nsw_sale_pricesNSW median sale prices by postcode or council from the NSW Department of Communities and Justice's Rent and Sales Report (CC BY 4.0): the median, the quartiles, the number of sales and the change on a year before, each for all dwellings, houses (non-strata) and units and town houses (strata). Medians of homes sold - never what any one home sold for; a line a few very large sales have set is marked UNUSUAL (from 0.7.0)
data_sourcesthe sources, their licences, and what DwellDelta cannot answer
contribute_rentadds the user's own rent, anonymously, to DwellDelta's suburb benchmarks - only when the user asks, and only after they have read and agreed to the consent wording (from 0.5.0)

It runs on your own machine over stdio. It records nothing and sends nothing about you unless you choose to add your rent. At start it fetches DwellDelta's published files from tools.dwelldelta.com.au - the week's indicators, the rents and sale prices it answers from, eight public files in all, the same for everyone; nothing about you or your questions is sent - and otherwise uses the copies it ships with. Set DWELLDELTA_OFFLINE=1 and none of those eight files is fetched; adding a rent with contribute_rent still sends it, as you asked. Nothing it says is a forecast, a valuation or advice.

Adding a rent (from 0.5.0)

contribute_rent is the one tool that can send anything, and it takes two calls. The first stores and sends nothing: it returns the consent wording, the Contributor Terms and Privacy Notice, and a token. Only when the assistant has shown you that wording and you have said yes does it call again, with the token. What is then stored, in AWS Sydney, is the suburb, home type, bedrooms, rent, lease month and lease kind, and whether it is a rent you pay or the rent of a property you own - never an address, name or email. You get a deletion code; email it to lingtao@xcelerent.com and the record is deleted. Only your own rent may be added: an assistant must not add a figure it read on a website or a listing.

NSW sale prices (from 0.7.0)

nsw_sale_prices gives DCJ's medians for the dwellings sold in a quarter - not asking prices, not valuations, and never the price or value of any one home; no individual sale is in the data. Every answer names the dwelling type, because a sale price without it answers nobody's question, and carries the quarter, DCJ's source line and its limits. DCJ reports a quarter when about 80% of its sales have been notified, so the counts are incomplete and the sales quarter runs behind the rents quarter. DCJ's own table has rows that a few very large sales, or many sales at one identical price, have set: the answer marks those lines UNUSUAL and says not to quote them as a going price. Where the published file notes that a total is mostly the sales of such a row (its unusual_part field), releases from 0.8.0 say so on that total's line, and say only that its median and its change may be moved by that row's sales. Prices in the structured result stay in DCJ's unit, thousands of dollars, and unit says so. The feed is public at https://tools.dwelldelta.com.au/market/nsw-sales.json.

Use it

Claude Desktop - add to claude_desktop_config.json:

{
  "mcpServers": {
    "dwelldelta": {
      "command": "npx",
      "args": ["-y", "dwelldelta-mcp"]
    }
  }
}

Claude Code: claude mcp add dwelldelta -- npx -y dwelldelta-mcp. Any other MCP client: run npx -y dwelldelta-mcp as a stdio server. Node 18 or later.

Then ask: "Is a rise from $700 to $770 a week in Sydney since July 2025 in line with rents?", "What is the median rent of new leases in postcode 2148?" or "What is NSW unemployment doing?"

Rents by area (from 0.6.0)

area_rents answers for one state at a time, because the three publishers measure in their own ways and the WA medians are DwellDelta's own calculation from the Government's one-record-per-bond data. They must not be added or ranked as one series. Every answer carries that state's quarter, its source line, what DwellDelta selected or calculated, and its limits. These are medians of new bonds, all dwellings together - not advertised rents, not what sitting tenants pay, and not the rent of a home of a given size. Where a publisher reports nothing for a small area the answer says so; it never shows a zero. The feeds are public at https://tools.dwelldelta.com.au/market/nsw-rents.json, qld-rents.json and wa-rents.json; the server reads them at start the way it reads the indicators, and DWELLDELTA_STATE_RENTS_DIR points it at a folder of copies. Victoria, measured differently again, stays in vic_rents.

By dwelling type and bedrooms (from 0.8.0)

Give area_rents a dwelling_type, a number of bedrooms, or both, and for NSW and Queensland it answers with the publisher's own figure for that kind of home - a two-bedroom unit, a three-bedroom house - under the publisher's own label. One of the two is enough: a type gives every size the publisher reports for it, a size every type. A combination with no published median is said to have none; it is never filled from the all-dwellings figure, a neighbouring area or a wider group. Many of these figures rest on few bonds, and each small sample is marked. The Residential Tenancies Authority does not define its labels: reading "Flat 2" as a two-bedroom flat is DwellDelta's reading, and every Queensland answer says so. WA's bond records carry neither dwelling type nor bedrooms, so WA has no such figures. DCJ's largest size is "4 or more Bedrooms": a number above four is answered under that label, and the answer says it is not for that number alone. A number followed by a plus means "or more", which only that one size has; anything else with a plus is refused, not answered as exactly that many.

The two files (https://tools.dwelldelta.com.au/market/nsw-rents-by-type.json and qld-rents-by-type.json) are large and are not bundled. The server asks for them once at start, without waiting for them, and never in response to a question. Offline, put copies in the folder DWELLDELTA_STATE_RENTS_DIR names; without them a by-type question fails with the next step, and every other answer is unaffected.

It is listed in the MCP registry as au.com.dwelldelta/dwelldelta.

What an agent gets back

Every call returns text to quote and a structured result: the figures, plus sources (each with its licence and attribution), data_as_of, snapshot_built, snapshot_origin (published for this week's file from tools.dwelldelta.com.au, bundled for the copy in the package), server_version, retrieved_at, and stale / stale_reason. Every failure is marked isError and ends with Next step: - an unknown city or geography names the valid ones.

The indicators are a weekly snapshot, rebuilt every Monday and published at https://tools.dwelldelta.com.au/market/indicators.json. The server uses that file when it is newer than the copy it ships with, and the bundled copy when offline. Once a snapshot is more than 10 days old every answer says so, in words and in the structured result, rather than passing an old figure off as current. Set DWELLDELTA_INDICATORS to read another snapshot file.

Licence

The code is MIT (see LICENSE). The data is not: each figure keeps its source's licence and attribution, which every answer states - for example ABS data is CC BY 4.0, "Based on Australian Bureau of Statistics data".

Development

npm test here starts the server and calls the six read-only tools, and the first (consent) call of contribute_rent, over MCP; the repository's root npm test holds the tool answers themselves and checks that vendor/ matches its sources. npm pack runs scripts/vendor.mjs first.

FAQs

Package last updated on 17 Oct 2026

Related posts