UK property data: EPC, flood risk, planning, sale prices, MEES 2030 checks and grants.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Batch-checks up to 50 properties (by id or postcode) against Minimum Energy Efficiency Standard (MEES) 2030 thresholds and flags expired certificates. Use for landlord portfolio compliance sweeps.
Property ids and/or postcodes, up to 50
Batch-checks up to 50 properties (by id or postcode) against Minimum Energy Efficiency Standard (MEES) 2030 thresholds and flags expired certificates. Use for landlord portfolio compliance sweeps.
| Argument | Type | Description |
|---|---|---|
| items* | array | Property ids and/or postcodes, up to 50 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "string"
},
"description": "Property ids and/or postcodes, up to 50"
}
}
}UK House Price Index and local market trend (price growth, transaction velocity, property mix) for a postcode area.
| Argument | Type | Description |
|---|---|---|
| postcode* | string | UK postcode or outcode, e.g. "CV4 7AL" or "CV4" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"description": "UK postcode or outcode, e.g. \"CV4 7AL\" or \"CV4\""
}
}
}Ofcom broadband and mobile coverage for a postcode. Requires a HouseData API key. Live-checked per call, so this can take several seconds — do not call it in a tight loop over many postcodes.
| Argument | Type | Description |
|---|---|---|
| postcode* | string | UK postcode |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"description": "UK postcode"
}
}
}All EPC certificates lodged for a property over time, with floor area, room counts and rating per certificate. A floor-area jump between certificates with no matching planning record is the single highest-value red flag for a cash buyer.
| Argument | Type | Description |
|---|---|---|
| property_id* | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"property_id"
],
"properties": {
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}Environment Agency flood zone (river/sea) and surface-water risk for a property, reported separately. Returns an explicit absent state rather than a false "low" when EA has no data for the location.
| Argument | Type | Description |
|---|---|---|
| postcode | string | UK postcode — required if property_id is not given |
| property_id | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"postcode": {
"type": "string",
"description": "UK postcode — required if property_id is not given"
},
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}Energy-efficiency and home-improvement grant schemes a property may be eligible for, based on EPC rating, council tax band, tenure and income band.
| Argument | Type | Description |
|---|---|---|
| tenure | string | |
| country | string | |
| postcode | string | UK postcode — required if property_id is not given |
| property_id | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
| income_range | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"tenure": {
"enum": [
"owner_occupied",
"private_rented",
"social_rented"
],
"type": "string"
},
"country": {
"enum": [
"england",
"scotland",
"wales",
"northern_ireland"
],
"type": "string"
},
"postcode": {
"type": "string",
"description": "UK postcode — required if property_id is not given"
},
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
},
"income_range": {
"enum": [
"under_31k",
"31k_60k",
"over_60k"
],
"type": "string"
}
}
}Nearby planning applications and decisions, plus a rule-based planning approval-likelihood score for the area.
| Argument | Type | Description |
|---|---|---|
| postcode | string | UK postcode — required if property_id is not given |
| property_id | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"postcode": {
"type": "string",
"description": "UK postcode — required if property_id is not given"
},
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}HM Land Registry Price Paid transaction history for a property or postcode.
| Argument | Type | Description |
|---|---|---|
| address | string | House number/name to narrow results within the postcode |
| postcode | string | UK postcode — required if property_id is not given |
| property_id | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"address": {
"type": "string",
"description": "House number/name to narrow results within the postcode"
},
"postcode": {
"type": "string",
"description": "UK postcode — required if property_id is not given"
},
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}Housedata PRISM score: identifies where a property's features (extensions, conversions, floor-area changes) lack a corresponding planning/building-control record, with remediation paths. Requires an active HouseData API key — if the account is not entitled, the error explains how to upgrade.
| Argument | Type | Description |
|---|---|---|
| postcode | string | UK postcode — required if property_id is not given |
| property_id | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"postcode": {
"type": "string",
"description": "UK postcode — required if property_id is not given"
},
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}One-call overview of a property: EPC headline, last sale, flood risk, LPA, planning-risk score and council tax band. Start here after disambiguating with search_property.
| Argument | Type | Description |
|---|---|---|
| property_id* | string | The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"property_id"
],
"properties": {
"property_id": {
"type": "string",
"description": "The property id returned by search_property (an EPC certificate lmk-key). Prefer this over re-supplying a postcode once you have it."
}
}
}Find candidate properties by address or postcode. Always call this first and confirm the match with the user before running other tools — never guess which property was meant.
| Argument | Type | Description |
|---|---|---|
| query* | string | Free-text address or postcode, e.g. "14 Acacia Road, CV4 7AL" or "CV4 7AL" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Free-text address or postcode, e.g. \"14 Acacia Road, CV4 7AL\" or \"CV4 7AL\""
}
}
}