agentic-house-search
Queries the Overpass API (OpenStreetMap) directly to gather local amenity data for a postcode, feeding the amenities (and nearby points of interest) sections of the report.
Fetches live transport data from TfL for London postcodes, contributing the transport section of the postcode report.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agentic-house-searchgive me a full postcode report for SW1A 1AA"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Agentic House Search
Enter a UK postcode, get what government open data actually says about that neighbourhood. Demographics, crime, deprivation, prices, fibre, 5G, noise, transport, amenities, schools and planning constraints, assembled live from the publishers' own APIs.
Three ways in, all free and open:
The website. Type a postcode, read the answer. | |
Paste one URL into Claude, ChatGPT or any MCP client and your agent can do the same. Connect an agent → | |
The 45 open datasets underneath, with endpoints, licences and coverage. |
Why this exists
UK property intelligence sites (CrystalRoof, PropertyData and others) are largely assembled from public data. This project maps out that raw material, the Open Government Licence datasets and free APIs underneath, and then shows what you can build with it: a working report, and an agent-ready interface to the same thing.
Two rules it holds itself to, which is most of the point:
It never invents a comparison. Every band word ("above the UK average") comes from a threshold table and always sits next to the figure it describes.
It never pretends to cover ground it does not. A Scottish postcode is told that
data.police.ukexcludes Scotland, with a link to Police Scotland, rather than being shown a zero. Deprivation is computed against each nation's own index and denominator.
Related MCP server: homedata-mcp
Contents
File | Description |
Canonical machine-readable registry | |
Flat table for spreadsheets (generated) | |
Landing page — what this is, the figures, the category index | |
Searchable catalogue of every entry | |
Postcode report — pulls live values out of these sources for one postcode | |
The provider layer: one module per category, plus the thresholds and coverage gates. Shared by the website and the MCP server. | |
MCP server, published as | |
Pre-built extracts for the sources that publish bulk files instead of an API | |
|
Both pages fetch data/registry.json at runtime, so they need to be served over
HTTP rather than opened from disk: python3 -m http.server 8000, then
http://localhost:8000/.
Postcode report
report.html is the registry pointed at a single postcode: enter
one and it fetches the real values out of these sources and writes a plain
paragraph per category — who lives here, crime, deprivation, prices, fibre, 5G,
noise, transport, amenities, schools, planning constraints.
It runs entirely in the browser. Most sources are called directly (postcodes.io,
data.police.uk, Nomis, HM Land Registry, Planning Data, the Environment Agency,
TfL, Overpass); the three that publish bulk files instead of an API — Ofcom
fibre, Ofcom mobile, the DfE school register — are pre-joined into packs/ by
tools/packbuild.
Results open with a tile per category — the headline figure and how it rates — then one card each with the numbers behind it. Ratings are colour-coded, but never by colour alone: each carries a glyph (▲ good, ● typical, ◆ worth a look, ▼ needs attention) and the band in words, so the meaning survives greyscale, printing and colour blindness. Categories that cannot be judged good or bad — a house price is neither — stay deliberately uncoloured.
Two things it will not do. It never invents a comparison: every band word
("above the UK average") comes from js/thresholds.js and always sits next to
the figure it describes, which is in the table below the paragraph. And it never
pretends to cover ground it does not — a Scottish postcode gets an explicit
"data.police.uk does not publish Scottish data" with a link to Police Scotland,
not a blank card. Deprivation deciles are computed against each nation's own
index and denominator.
An AI summary is optional and off by default. There is no server here to
keep an API key in, so it uses one you paste yourself, stored in your own
browser and sent to nothing but api.anthropic.com. The model is given only
the computed facts, and every number it writes back is checked against them —
anything untraceable is flagged rather than shown quietly. Without a key there
is a "copy the prompt" button, and the report is complete either way.
Local development (both pages fetch data/registry.json, which file://
blocks):
python3 -m http.server 8000 # then http://localhost:8000/report.html?postcode=SW111AAMCP server
mcp/ exposes all of this to AI agents over the Model Context
Protocol — five tools: a full postcode report, a fast geography lookup, a
side-by-side comparison of up to five postcodes, and search/fetch over the
registry itself.
There is nothing to install. Paste this into your client's connector or custom integration field:
https://agentic-house-search.vercel.app/mcpOr add it in one command:
claude mcp add --transport http agentic-house-search https://agentic-house-search.vercel.app/mcpOr, in a client that supports the
official MCP registry, add it by
name without a URL at all — search agentic-house-search, or use
io.github.asturksever/agentic-house-search.
The connect page has the same thing with a copy button and per-client instructions. The hosted endpoint is free, needs no account or key, and carries a courtesy rate limit that exists to protect the government APIs underneath — not to sell you anything. Running it yourself has no limit:
npx -y agentic-house-search # stdio, published on npm
npx -y agentic-house-search --http # your own streamable HTTP endpointIt runs the same provider modules as report.html rather than a
reimplementation, so a threshold, a coverage gate or a caveat is written once
and both surfaces agree. See mcp/README.md.
Schema
{
"id": "police-street-crime",
"dataset": "Street-level crime, outcomes and stop & search",
"publisher": "Home Office / UK police forces (data.police.uk)",
"link": "https://data.police.uk/",
"api": "https://data.police.uk/api/crimes-street/all-crime?lat={lat}&lng={lng}&date={YYYY-MM}",
"api_docs": "https://data.police.uk/docs/",
"format": "JSON REST API (no key required); CSV bulk downloads",
"licence": "Open Government Licence v3",
"coverage": "England, Wales & Northern Ireland",
"update_frequency": "Monthly",
"questions": [
"How safe is this postcode / street compared with the borough or national average?",
"What are the most common offence types here (burglary, ASB, drugs, vehicle crime)?",
"Is crime trending up or down over the last 12-36 months?",
"Where are the local crime hotspots and what happened to each case (outcomes)?"
],
"category": "Crime"
}Datasets by category
Crime
Dataset | Publisher | API | Licence |
Home Office / UK police forces (data.police.uk) |
| Open Government Licence v3 |
Demographics
Dataset | Publisher | API | Licence |
Census 2021 (ethnicity, religion, age, household composition, tenure, occupation, qualifications) | Office for National Statistics |
| Open Government Licence v3 |
Demographics / Overview
Dataset | Publisher | API | Licence |
Output Area Classification (OAC 2021) & London Output Area Classification (LOAC) | ONS / Greater London Authority (London Datastore) |
| Open Government Licence v3 |
Affluence
Dataset | Publisher | API | Licence |
Office for National Statistics |
| Open Government Licence v3 |
Affluence (Deprivation)
Dataset | Publisher | API | Licence |
MHCLG (Ministry of Housing, Communities & Local Government) |
| Open Government Licence v3 |
Property prices
Dataset | Publisher | API | Licence |
Price Paid Data (every residential sale) + UK House Price Index | HM Land Registry |
| Open Government Licence v3 (address fields have extra conditions) |
Property prices (Rents)
Dataset | Publisher | API | Licence |
Price Index of Private Rents & private rental market summary statistics | Office for National Statistics / Valuation Office Agency |
| Open Government Licence v3 |
Ownership & tenure
Dataset | Publisher | API | Licence |
HM Land Registry |
| Open Government Licence v3 (INSPIRE end-user licence) | |
HM Land Registry |
| Free for non-commercial use; commercial licence available | |
Companies House |
| Open Government Licence v3 | |
Council Tax valuation bands (per-property band A–H) and VOA band statistics | Valuation Office Agency / GOV.UK |
| Open Government Licence v3 |
Council tax levels set by local authorities (Band D charge by council & parish) | MHCLG |
| Open Government Licence v3 |
Planning & constraints
Dataset | Publisher | API | Licence |
MHCLG (planning.data.gov.uk) |
| Open Government Licence v3 | |
Historic England |
| Open Government Licence v3 | |
Planning applications aggregated from every UK local authority register | PlanIt (open aggregator of LA planning portals) |
| Source records are OGL LA data; aggregator has its own terms |
Ground risk
Dataset | Publisher | API | Licence |
BGS GeoSure (subsidence, shrink–swell clay, landslide, soluble rocks) and Radon Potential | British Geological Survey |
| Open viewing under BGS OpenGeoscience; commercial licence for full datasets |
The Coal Authority (Mining Remediation Authority) |
| Open Government Licence v3 |
Noise
Dataset | Publisher | API | Licence |
Defra / Environment Agency (Data Services Platform) |
| Open Government Licence v3 |
Transport
Dataset | Publisher | API | Licence |
Department for Transport |
| Open Government Licence v3 |
Transport (London)
Dataset | Publisher | API | Licence |
Transport for London |
| TfL open data licence (free) |
Transport (Connectivity score)
Dataset | Publisher | API | Licence |
Transport for London / GLA (London Datastore) |
| Open Government Licence / TfL terms |
Transport (extended)
Dataset | Publisher | API | Licence |
Department for Transport |
| Open Government Licence v3 | |
Rail Delivery Group / National Rail |
| Free for registered users (National Rail terms) | |
Department for Transport |
| Open Government Licence v3 | |
Department for Transport |
| Open Government Licence v3 | |
Department for Transport / OZEV |
| Open Government Licence v3 |
Amenities
Dataset | Publisher | API | Licence |
Food Standards Agency |
| Open Government Licence v3 | |
Sport England |
| Open (registration; attribution) |
Amenities (Health)
Dataset | Publisher | API | Licence |
NHS England |
| Open Government Licence v3 |
Amenities / Noise point-sources
Dataset | Publisher | API | Licence |
OpenStreetMap contributors |
| ODbL 1.0 |
Health & care
Dataset | Publisher | API | Licence |
Care Quality Commission |
| Open Government Licence v3 | |
Ofsted |
| Open Government Licence v3 |
Schools
Dataset | Publisher | API | Licence |
Department for Education |
| Open Government Licence v3 |
Schools (Ratings)
Dataset | Publisher | API | Licence |
Ofsted inspection outcomes (management information, monthly) | Ofsted |
| Open Government Licence v3 |
Schools (Results)
Dataset | Publisher | API | Licence |
Department for Education |
| Open Government Licence v3 |
Environment (Air quality)
Dataset | Publisher | API | Licence |
Defra |
| Open Government Licence v3 |
Environment (Air quality, London)
Dataset | Publisher | API | Licence |
Imperial College London ERG |
| Free to use with attribution |
Environment (Flood risk)
Dataset | Publisher | API | Licence |
Environment Agency |
| Open Government Licence v3 |
Environment (Greenspace)
Dataset | Publisher | API | Licence |
OS Open Greenspace + Natural England green infrastructure / access to greenspace | Ordnance Survey / Natural England |
| Open Government Licence v3 |
Environment (Designations)
Dataset | Publisher | API | Licence |
Natural England / Defra |
| Open Government Licence v3 |
Geography backbone (all tabs)
Dataset | Publisher | API | Licence |
ONS Postcode Directory (ONSPD/NSPL) + Open Geography Portal boundaries | ONS Geography |
| Open Government Licence v3 (postcode data contains Royal Mail/OS derived IP with permitted use) |
Ordnance Survey |
| OS OpenData (OGL) for open products; premium plan for Places/NGD |
Extras (property-level, same ecosystem)
Dataset | Publisher | API | Licence |
DLUHC / MHCLG |
| OGL-style terms (attribution required) |
Extras (connectivity)
Dataset | Publisher | API | Licence |
Ofcom |
| Ofcom open terms / OGL |
Extras (market & listings)
Dataset | Publisher | API | Licence |
Various commercial providers |
| Commercial — check terms; scraping portals breaches their T&Cs |
Usage
curl -s https://raw.githubusercontent.com/asturksever/agentic-house-search-data-registry/main/data/registry.json \
| jq '.sources[] | select(.category=="Planning & constraints") | {dataset, api}'Local development (both pages fetch data/registry.json, which file:// blocks):
python3 -m http.server 8000 # then http://localhost:8000/report.html?postcode=SW111AACaveats
Endpoints were verified against publisher documentation as of 2 August 2026. Government APIs move; treat api as a starting point and check api_docs before depending on it. Some entries require a free API key (Ofcom, BODS, EPC, OS Data Hub, CQC, Companies House, Land Registry CCOD). One entry — live for-sale listings — is explicitly not open data and is included so builders know where the wall is.
Licence
This compilation is released under CC0 1.0 (public domain). The underlying datasets remain © their publishers; most are Open Government Licence v3, and each entry records its own licence.
Contributing
Missing a dataset, or spotted a dead endpoint? Open an issue or a PR editing data/registry.json — registry.html and data/registry.csv are regenerated from it.
This server cannot be deployed
Maintenance
Related MCP Connectors
Address validation & geocoding for AI agents: 240+ countries, UK PAF, free US/CA enrichment
UK area & property intelligence for AI agents: reports, EPC, comparables, with source provenance.
Query UK Parliament, elections, crime stats, ONS census data, and national archives
Postcodes MCP — wraps postcodes.io UK postcode API (free, no auth)
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables users to search UK property prices by postcode, street, or city using the HM Land Registry's SPARQL endpoint. It also provides tools for resolving postcodes and finding nearby locations through Ordnance Survey data.22MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to query UK property data including EPCs, sale history, planning, flood risk, council tax, demographics, and more via the Homedata API.1821 PyPIMIT
- FlicenseAqualityDmaintenanceEnables AI assistants to query NHS public health datasets, including prescribing data, dataset exploration, and organisation lookup via the NHSBSA Open Data Portal.9-

Zyfy MCP Serverofficial
AlicenseAqualityCmaintenanceEnables natural language queries about UK postcodes and vehicles, including flood risk, crime rate, broadband coverage, property prices, MOT history, and ULEZ compliance.438 npmMIT