UK Property Data MCP server
online · 100% uptimeUK property data — Land Registry comps, EPC, Rightmove, rental yields, stamp duty, Companies House
16 stars75 downloads/wk
Reviews
Write oneNobody has reviewed UK Property Data yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
UK Property Data tools (14)
write = sends, deletes, buys or postscompany_searchFreeSearch Companies House for a company by name.
epc_certificateFreeFetch a single EPC certificate by its GOV.UK certificate number. Use after property_epc_summaries has listed the candidates and you have picked one — this is faster than property_epc(postcode, address) as it makes a direct lookup with no address matching or postcode re-fetch. The parameter is named lmk_key as a compatibility alias; pass the certificate number, which is returned in every property_epc_summaries row. (property_epc_search is deprecated and raises — do not call it.) Returns the full EPC certificate, or null only when no such certificate is lodged. A null result means no such certificate is lodged. If the EPC service cannot be reached the tool raises an error instead — never treat an error as evidence that a property has no certificate.
planning_searchFreeFind the council planning portal URL for a postcode.
ppd_transactionsFreeLand Registry Price Paid transactions for a postcode, most recent first. Returns up to `limit` most recent transactions **within snapshot coverage** (`coverage_from`-`coverage_to` in the response's `provenance`). Unfiltered by default -- category-B bulk transfers and commercial sales are included. Pass `property_type` (F=flat, D=detached, S=semi, T=terraced, O=other) to restrict the result to a single type. **Not a complete property history.** Check `provenance.older_records_exist` and `provenance.sample_complete` before saying anything about what a property has or has not sold for. An empty result means "no sales within the stated coverage" -- never "never sold". For clean residential comparable sales, use `property_comps`.
property_blocksFreeProperty block analysis — identify buildings with multiple flat sales (block-buy opportunities).
property_compsFreeComparable sales from Land Registry Price Paid Data. Defaults return the standard residential set: - property_type=None means residential (F+D+S+T). Pass "F"/"D"/"S"/"T"/"O" for a single type, or "ALL" to disable type filtering (firehose). - transaction_category defaults to "A" (standard sales). Pass None to include category-B (bulk transfers, non-standard conveyances). - filter_outliers=False by default; set True for IQR-trimmed stats AND transaction list (1.5*IQR rule, needs >=4 prices). limit caps returned transactions (max 200). enrich_epc attaches EPC floor area and price-per-sqft to each transaction — slower but richer.
property_epcFreeEnergy Performance Certificate data for a UK property or postcode area. With address: returns the matched EPC certificate for that specific property. Without address: returns the record count and, when the bounded response contains every matching summary, the rating distribution. Property-type breakdown and floor-area statistics are NOT available — the EPC service exposes them only on individual certificates. Returns null only when no certificates are lodged for the postcode. A null result means no such certificate is lodged. If the EPC service cannot be reached the tool raises an error instead — never treat an error as evidence that a property has no certificate.
property_epc_searchFreeDEPRECATED — use property_epc_summaries then epc_certificate. This tool returned score, floor_area, property_type, habitable_rooms and inspection_date for every certificate at a postcode. The EPC service no longer exposes those fields in a search: they exist only on a full certificate. Reproducing the old response would require one upstream request per certificate, so this tool is unsupported rather than silently degraded or silently expensive.
property_epc_summariesFreeList EPC certificate summaries at a postcode — for candidate selection. Returns one bounded page. Each entry contains only what the EPC search exposes: certificate_number, address, uprn (often absent), energy band, registration_date and schema_type. Energy score, floor area and property type are NOT available here — fetch a specific certificate for those. Workflow when a Rightmove listing has no house number: 1. property_epc_summaries(postcode) to list candidates. 2. Narrow by address text and, where present, uprn. 3. epc_certificate(lmk_key=<certificate_number>) for the chosen one, then cross-check its floor_area against the listing. 4. If several candidates remain equally plausible, present them all — do not guess. Selecting arbitrarily attaches another property's data. `complete` is false when the postcode holds more records than this page returns. Upstream page traversal is not snapshot-stable, so a multi-page result is a bounded sample, not a guaranteed-complete set. An empty `results` list means no certificates are lodged. If the EPC service cannot be reached the tool raises an error instead — never treat an error as evidence that a property has no certificate.
property_yieldFreeGross rental yield for a UK postcode. Combines Land Registry sale comps (median sale price) with Rightmove rental listings (median monthly rent) to produce a gross yield percentage.
rental_analysisFreeRental market analysis and achievable rent estimate. auto_escalate widens the Rightmove search RADIUS when fewer than 5 listings are found (thin market). This is rental-radius escalation and is unaffected by the PPD geography containment: it does not change a postcode's outcode or sector, so it carries none of the limit-dependence that disabled PPD auto-widening. Response includes thin_market, escalated_from, escalated_to fields when escalation occurs.
rightmove_listingFreeFull detail for a single Rightmove listing. property_id is the numeric Rightmove property ID (the digits at the end of a rightmove.co.uk/properties/... URL), max 12 digits. Full URLs are not accepted. include_images fetches and embeds photos and floorplans as MCP image content. max_images caps the number of property photos (default 3); floorplans always included.
rightmove_searchFreeFetch Rightmove listings for a postcode. listing_type: "sale" or "rent". sort_by: "newest", "most_reduced", "price_asc", "price_desc". Images are excluded from results.
stamp_dutyFreeUK Stamp Duty Land Tax (SDLT) calculation with full breakdown.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan89 source files scanned25/25
- Live reliabilityremote reachable in 688ms20/20
- Tool poisoning14 tool descriptions checked15/15
- Auth qualityopen endpoint, read-only tools10/15
- Maintenancelast push 23 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How UK Property Data compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 93/100
- higher than 95% of 48,243 servers
- Tools
- 14
- the typical server has 7
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote server answers 100%
- Response time
- 38 ms
- faster than 94% of 30,027 servers
- GitHub stars
- 16
- more than 90% of 28,706 servers
- Downloads a week
- 75
- more than 55% of 12,306 servers with a package
What its tools let an agent do: 14 read
Install UK Property Data in Claude Code, Cursor or VS Code
claude mcp add --transport http property-shared https://property-shared.fly.dev/mcp
What the publisher says
From the UK Property Data repository's README, as published. We do not edit it. Read it on GitHub
Property Shared
<!-- mcp-name: io.github.paulieb89/property-shared -->
UK property data in one package. Pulls Land Registry sales, EPC certificates, Rightmove listings, rental yields, stamp duty calculations, planning portal links, and Companies House records.
Use it as a Python library, CLI, HTTP API, or MCP server.
What You Get
Skills & Plugins
Property and Legal packs coming soon. Please get in contact if you have working experiance or expert knowledge in UK property investing, UK Estate Agents, Property and Conveyencing and would like to help shape this. paul@bouch.dev
Use as MCP Server
No install required — paste the URL into your MCP client config and go.
Claude Code, Cursor, any MCP client:
{
"mcpServers": {
"property-shared": {
"type": "http",
"url": "https://property-shared.fly.dev/mcp"
}
}
}Install
pip install property-shared
# or with uv
uv add property-sharedExtras: [cli] for CLI, [api] for HTTP server.
pip install property-shared[cli]
# or
uv add property-shared --extra cliUse as a Python Library
from property_core import PPDService, calculate_yield, calculate_stamp_duty
# Get comparable sales for a postcode
comps = PPDService().comps("SW1A 1AA", months=24, property_type="F")
print(f"Median flat price: {comps.median:,}")
# Calculate rental yield
import asyncio
result = asyncio.run(calculate_yield("NG1 1AA", property_type="F"))
print(f"Gross yield: {result.gross_yield_pct}%")
# Stamp duty
sdlt = calculate_stamp_duty(250000, additional_property=True)
print(f"SDLT: {sdlt.total_sdlt:,.0f} ({sdlt.effective_rate}%)")All models are available at top level:
from property_core import (
PPDTransaction, PPDCompsResponse, EPCData,
RightmoveListing, RightmoveListingDetail,
PropertyReport, YieldAnalysis, RentalAnalysis,
BlockAnalysisResponse, CompanyRecord, StampDutyResult,
)Interpretation helpers (core returns numbers, you decide how to label them):
from property_core import classify_yield, classify_data_quality, generate_insightsUse as CLI
pip install property-shared[cli] # or: uv add property-shared --extra cli
# Comparable sales
property-cli ppd comps "SW1A 1AA" --months 24 --property-type F
# Rental yield
property-cli analysis yield "NG1 1AA" --property-type F
# Stamp duty
property-cli calc stamp-duty 300000
# Rightmove search (with sort)
property-cli rightmove search-url "NG1 1AA" --sort-by most_reduced
# Full property report
property-cli report generate "10 Downing Street, SW1A 2AA" --property-type FAdd --api-url http://localhost:8000 to any command to route through the HTTP API instead of calling core directly.
Use as HTTP API
pip install property-shared[api] # or: uv add property-shared --extra api
property-api # starts on port 8000Interactive docs at http://localhost:8000/docs.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
UK Property Data: common questions
- Is UK Property Data MCP server safe?
- Yes, by our scan: it is graded A (93/100). Read the UK Property Data safety report
- How do I install UK Property Data?
- It runs remotely at property-shared.fly.dev. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does UK Property Data need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is UK Property Data maintained?
- The last commit was 62 days ago (2026-09-04). The latest release is v1.5.1.
- Is UK Property Data up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- How does UK Property Data compare with other MCP servers?
- safety score 93/100 (higher than 95% of 48,243 servers); tools 14 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.