Skip to main content
Glama

Server Details

UK property data — Land Registry comps, EPC, Rightmove, rental yields, stamp duty, Companies House

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
paulieb89/property-shared
GitHub Stars
16
Server Listing
UK Property Data

Available Tools

14 tools
epc_certificateA
Read-only
Inspect

Fetch 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
lmk_keyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=true, but the description adds critical behavior: returns null only when no certificate is lodged, and raises an error if the service is unreachable, explicitly warning not to treat errors as absence of a certificate. This is beyond the annotation and essential for correct interpretation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is focused and efficiently organized: purpose first, then usage context, then parameter explanation, then behavior. Every sentence adds value without redundancy or fluff, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a single straightforward parameter and an output schema (which the description complements by explaining null vs error), the description fully covers what an agent needs to know to call it correctly and interpret results. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description fully explains the parameter: lmk_key is a compatibility alias for the certificate number, and it tells the agent that the value is available in every property_epc_summaries row. This compensates entirely for the schema's lack of description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Fetch') and resource ('a single EPC certificate by its GOV.UK certificate number'). It also distinguishes itself from siblings like property_epc by explicitly noting the lookup avoids address matching and postcode re-fetch, making its niche obvious.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance: use after property_epc_summaries, faster than property_epc(postcode, address), and warns that property_epc_search is deprecated and raises. This gives an agent clear when-to-use and when-not-to-use instructions with alternatives named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ppd_transactionsA
Read-only
Inspect

Land 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
postcodeYes
property_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint annotation, the description discloses key behaviors: results are limited to snapshot coverage, bulk and commercial sales are included by default, provenance fields like older_records_exist and sample_complete must be checked, and empty results are coverage-limited. This rich context helps the agent avoid drawing incorrect conclusions about property history.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description front-loads the core purpose and then adds only high-value operational details: coverage, unfiltered behavior, filtering options, and caveats. Each sentence contributes essential information, and the formatting with bold caveats makes the critical warnings stand out.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for a read-only query tool: it explains ordering, coverage limits, default filtering behavior, how to restrict by property type, how to interpret empty results, and which alternative to use. Since an output schema exists, detailed return-value documentation is not needed, and the prose still references the key provenance fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description carries the full burden for parameters. It defines property_type with all accepted letter values and explains that limit controls 'up to `limit` most recent transactions'. Postcode is understood from the tool's purpose, and requiredness is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence states a specific verb and resource: 'Land Registry Price Paid transactions for a postcode, most recent first.' It also differentiates itself from sibling tools by defining its scope and by explicitly naming property_comps as the alternative for clean comparable sales. This leaves no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool and when not to: it is unfiltered by default, property_type can restrict results, and 'For clean residential comparable sales, use property_comps.' It also warns not to interpret an empty result as 'never sold', providing concrete decision guidance for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

property_blocksA
Read-only
Inspect

Property block analysis — identify buildings with multiple flat sales (block-buy opportunities).

ParametersJSON Schema
NameRequiredDescriptionDefault
monthsNoNumber of calendar months ending today; default 24. Results are limited to available coverage.
postcodeYes
search_levelNosector

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already covers the read-only nature, so the description doesn't need to restate that. The description adds a bit of behavioral context by indicating the tool identifies buildings with multiple flat sales, but it doesn't disclose important operational traits like data coverage, required postcode format, or the meaning of 'block-buy opportunities' in the output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the tool's domain ('Property block analysis') and then clearly states the objective. Every word earns its place; there is no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three parameters and an ambiguous search_level, the description leaves out essential input semantics and any usage context. Although an output schema exists, the agent still needs to understand what a block-buy opportunity looks like and how the parameters shape the analysis, none of which is explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%, so all three parameters are not adequately documented in the schema. The description provides no additional meaning for 'postcode,' 'months,' or especially 'search_level' (a non-obvious parameter with default 'sector'). This fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('identify') and a specific resource ('buildings with multiple flat sales'), and frames the purpose as 'block-buy opportunities.' This clearly separates it from sibling tools like property_comps or property_yield, which focus on valuation and yield rather than block-buy identification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool — when the user needs to spot buildings with multiple flat sales for block buying. However, it gives no explicit exclusions or guidance about when to prefer an alternative tool, so the agent must infer the appropriate context from the purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

property_compsA
Read-only
Inspect

Comparable 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
monthsNoNumber of calendar months ending today; default 24. Results are limited to available coverage.
addressNo
postcodeYes
enrich_epcNo
search_levelNosector
property_typeNo
filter_outliersNo
transaction_categoryNoA

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=true, so the description carries the behavioral burden and does so thoroughly. It discloses default property filtering, category handling, IQR outlier trimming with a minimum-price requirement, a max limit of 200, and the performance tradeoff of enrich_epc.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and then uses a tightly scoped bullet list for parameter defaults. Every sentence carries meaningful configuration detail without redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 9 parameters and very low schema coverage, the description covers most critical behavior and even notes performance implications. It is not fully complete because address and search_level are left undefined, and no explicit guidance is given for choosing this instead of the related ppd_transactions tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 11%, and the description compensates for most key parameters: property_type values, transaction_category defaults, filter_outliers behavior, limit cap, and enrich_epc meaning. However, address and search_level remain semantically unexplained in both schema and description, leaving a gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns comparable sales from Land Registry Price Paid Data, which is a specific resource and function. It lacks an explicit contrast with sibling tools like ppd_transactions, but the 'comparable sales' framing and residential defaults make the core purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear operational context by explaining defaults for property_type, transaction_category, filter_outliers, limit, and enrich_epc. It does not explicitly say when to prefer this tool over a sibling, but the usage behavior is concrete and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

property_epcA
Read-only
Inspect

Energy 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNo
postcodeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, and the description adds substantial behavioral guidance: the distinction between null (no certificate) and error (service unreachable), the warning never to treat an error as evidence of no certificate, and the note that property-type/floor-area stats are not exposable via this endpoint. This goes well beyond the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with front-loaded purpose and method, then behavior nuances. It is somewhat long but every sentence adds value, and the blank line separates major ideas. It is appropriately detailed without being redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (not shown) and two parameters, the description thoroughly explains return behaviors in both modes, the null case, and the error case. It also discloses limitations (unavailable statistics) that an agent needs to know. Nothing critical is missing for correct invocation and interpretation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description carries the full burden. It explains that postcode is the primary lookup key and that address is optional, and clarifies what each mode returns. This adds meaning beyond the bare schema, though it does not specify format constraints or validation rules (e.g., UK postcode format), leaving some ambiguity for edge cases.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns EPC data for a UK property or postcode area and differentiates two modes: with an address (matched certificate) vs without (record count and rating distribution). It also distinguishes itself from siblings by explicitly stating what is NOT available (property-type breakdown, floor-area statistics) and by clarifying null vs error behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage conditions: with an address for a specific certificate, without for aggregate stats. It also explains when null is returned and that errors indicate service failure, not absence of data. However, it does not directly compare to sibling tools like property_epc_search or property_epc_summaries, leaving some selection inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

property_epc_summariesA
Read-only
Inspect

List 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=) 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
postcodeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnlyHint annotation, disclosing that it returns a bounded page, lists only certain fields, indicates 'complete' semantics, warns about snapshot instability, distinguishes empty results from errors, and clarifies that errors are not evidence of absence. This fully informs the agent about runtime behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but efficiently organized, front-loading the purpose, then detailing return contents, workflow, and caveats in a logical order. Every sentence contributes unique information; nothing is redundant or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with an output schema and a single required parameter, the description covers all necessary operational details: return content, pagination limitations, error handling, and decision guidance for ambiguous results. No critical information is missing for an agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description compensates for 0% schema coverage by explaining the postcode's role and the page's bounded nature and instability, effectively conveying the meaning of both parameters. It doesn't give format details but provides functional understanding sufficient for correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (List), resource (EPC certificate summaries), and scope (at a postcode), and explicitly frames it as 'for candidate selection.' It clearly distinguishes from siblings like epc_certificate by describing the workflow step that fetches a specific certificate, making the tool's role unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an explicit 4-step workflow starting with this tool when a Rightmove listing lacks a house number, naming the alternative (epc_certificate) and the condition for switching. Also instructs on handling multiple candidates (present all, not guess), which is critical for correct usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

property_yieldA
Read-only
Inspect

Gross 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
monthsNoNumber of calendar months ending today; default 24. Results are limited to available coverage.
postcodeYesUK postcode (e.g. "NG1 2NS").
search_levelNoPPD search granularity — "postcode", "sector" (default), or "district".sector
auto_escalateNoCompatibility parameter. Does NOT widen the search area on the live source (see `warnings`); previously postcode→ sector→district. Default True. Set False for strict-locality only.
property_typeNoFilter sales by type. None (default) = residential set (F+D+S+T). Pass "F"/"D"/"S"/"T"/"O" for one type, "ALL" for firehose.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds useful methodology context by naming the two data sources and the calculation, but it does not disclose coverage limitations, fallback behavior, or any caveats about data availability beyond what the schema's parameter descriptions already mention.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with the core purpose, followed by one sentence explaining the methodology. Every sentence earns its place, and there is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the detailed input schema, the readOnly annotation, and the presence of an output schema, the description provides enough context for an agent to understand what the tool computes and how to invoke it. It lacks only minor guidance on data coverage edge cases, which is partially addressed in schema parameter descriptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented in the schema. The description does not add much parameter-level meaning, but it doesn't need to because the schema descriptions are already detailed enough.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific operation: computing gross rental yield for a UK postcode by combining Land Registry sale comps with Rightmove rental listings. This clearly identifies the resource and output, and the mention of both data sources helps distinguish it from siblings like ppd_transactions, property_comps, or rental_analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use case is implied: when you need gross rental yield for a UK postcode. However, the description does not explicitly state when to prefer this tool over sibling tools, nor does it provide exclusion criteria or alternative routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rental_analysisA
Read-only
Inspect

Rental 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
radiusNo
postcodeYes
auto_escalateNo
purchase_priceNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already indicates a safe read operation, and the description does not contradict it. The description adds valuable behavioral detail beyond the annotation by explaining how auto_escalate widens the search radius, how it differs from PPD auto-widening, and which response fields appear during escalation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loads the main purpose, then dedicates a tight paragraph to the auto_escalate edge case. The PPD comparison is jargon-heavy and could be simplified, but it earns its place by clarifying a potentially confusing behavioral nuance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema reduces the need to explain return values, and the description already discloses escalation-related response fields. However, a required conceptual parameter, purchase_price, is left unexplained, and no guidance is given about radius units or how purchase_price affects the estimate, so completeness is acceptable but not thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the lack of parameter documentation. It explains auto_escalate in depth and touches on radius, and postcode is contextually obvious, but purchase_price is never mentioned or connected to the tool's purpose. This partial coverage is useful but leaves a real gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool produces a 'Rental market analysis and achievable rent estimate', which is a specific resource and outcome. It is clear what the tool does, though it uses noun phrases rather than an imperative verb and does not explicitly distinguish it from siblings like property_yield or property_comps.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening sentence implies the tool is for rental market analysis and rent estimation, giving a clear general context. However, there is no explicit guidance about when to choose this tool over related siblings, nor any 'when not to use' conditions; the rest of the description focuses on the auto_escalate parameter.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rightmove_listingA
Read-only
Inspect

Full 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_imagesNo
property_idYes
include_imagesNo

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already covers the safety profile, and the description adds meaningful behavior context: include_images fetches and embeds photos/floorplans, and max_images limits photos but not floorplans. However, it does not disclose potential response size, fetching cost, rate limits, or what 'full detail' contains beyond images.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and every sentence earns its place. The primary purpose is front-loaded, and parameter details are separated cleanly into bullet-style lines. There is no unproductive fluff or repeated schema information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description covers what an agent needs to invoke the tool correctly: the input format, constraints, and optional behavior around images. It remains slightly vague about the exact return payload beyond calling it 'Full detail,' but as a single-listing fetch tool with read-only annotations, there is no critical missing selection or invocation context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description bears full responsibility for explaining parameters. It does this well: property_id is defined as a numeric Rightmove ID with URL examples, a 12-digit maximum, and rejection of full URLs; include_images is tied to MCP image content; max_images nuances are clear (photos only, default 3, floorplans always included). This is excellent compensation for a bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns 'Full detail for a single Rightmove listing,' which is a specific resource and scope. It is not a formal verb phrase, but the intent is unambiguous. It differentiates itself from a list/search tool by emphasizing a single listing, though it does not name sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: to get full detail for one specific Rightmove listing using a numeric property ID. However, it does not explicitly say when to use this tool over rightmove_search or other siblings, nor does it mention that property_id would typically come from a search result. Usage context is present but mostly implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stamp_dutyA
Read-only
Inspect

UK Stamp Duty Land Tax (SDLT) calculation with full breakdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
priceYes
non_residentNo
first_time_buyerNo
additional_propertyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already indicates a safe, non-mutating operation, so the description does not need to repeat that. The phrase 'full breakdown' hints at detailed output, but no further behavioral traits (e.g., rate basis, jurisdiction limits) are disclosed. There is no contradiction with the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the tool's purpose without unnecessary words. It is appropriately concise for a tool with a straightforward function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has four parameters with zero schema descriptions, the description is under-specified. It does not explain the input parameters or any regional nuances (e.g., SDLT applies to England/NI only). While an output schema exists and covers return values, the lack of parameter context makes the description incomplete for accurate invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate by explaining any parameters. While parameter names like 'non_resident' and 'first_time_buyer' are somewhat self-explanatory, the description provides no additional meaning, such as expected units or how booleans affect the calculation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool calculates UK Stamp Duty Land Tax with a full breakdown, using a specific verb ('calculation') and a distinct resource. This differentiates it from sibling tools that perform searches or comparisons.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for SDLT calculations but provides no explicit guidance on when to use this tool over alternatives, nor does it mention any exclusions or prerequisite conditions. The context of sibling tools (all UK property-related) makes the purpose somewhat clear, but explicit usage direction is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 3 tool updates
    • Changedproperty_blocks2 fields changed
      • addedInput schema / properties / months / description
        Added value: +"Number of calendar months ending today; default 24. Results are limited to available coverage."
      • addedInput schema / properties / months / minimum
        Added value: +1
    • Changedproperty_comps2 fields changed
      • addedInput schema / properties / months / description
        Added value: +"Number of calendar months ending today; default 24. Results are limited to available coverage."
      • addedInput schema / properties / months / minimum
        Added value: +1
    • Changedproperty_yield2 fields changed
      • changedInput schema / properties / months / description
        Previous value: -"PPD sale lookback period (default 24)."New value: +"Number of calendar months ending today; default 24. Results are limited to available coverage."
      • addedInput schema / properties / months / minimum
        Added value: +1
  2. 1 tool update
    • Changedproperty_yield1 field changed
      • changedInput schema / properties / auto_escalate / description
        Previous value: -"Widen the PPD search area on thin markets — postcode→\nsector→district. Default True. Set False for strict-locality only."New value: +"Compatibility parameter. Does NOT widen the search area on\nthe live source (see `warnings`); previously postcode→\nsector→district. Default True. Set False for strict-locality only."
  3. 1 tool update
    • Addedproperty_epc_summaries
  4. 1 tool update
    • Changedrightmove_listing3 fields changed
      • addedInput schema / properties / property_id
        Added value: +{
        +  "type": "string"
        +}
      • removedInput schema / properties / property_url_or_id
        Removed value: -{
        -  "type": "string"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "property_url_or_id"
        -]New value: +[
        +  "property_id"
        +]
  5. 1 tool update
    • Changedrightmove_search1 field changed
      • removedInput schema / properties / keywords
        Removed value: -{
        -  "anyOf": [
        -    {
        -      "type": "string"
        -    },
        -    {
        -      "type": "null"
        -    }
        -  ],
        -  "default": null
        -}
  6. 1 tool update
    • Changedrightmove_search1 field changed
      • addedInput schema / properties / keywords
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
  7. 2 tool updates
    • Addedepc_certificate
    • Addedproperty_epc_search

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Unified UK property search across major portals with deduplication and open-data enrichment, enabling natural-language queries for listings, sold prices, EPC, crime, schools, and market stats.
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Access 17M+ geocoded French property transactions (DVF), 22M+ DPE energy ratings, and 20M+ building records via MCP or REST API. Search transactions, market stats, comparables, price trends, rental yield, flip detection, and more.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    UK property listing description generator. Give an AI assistant a postcode or address — it fetches comparable sales, EPC ratings, and Rightmove listings, then writes three copy variants ready for Rightmove, social media, and email.
    1
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation4/5

EPC coverage is split across property_epc, property_epc_summaries, epc_certificate, and the deprecated property_epc_search, but each has a distinct role (aggregate lookup, candidate list, direct certificate, legacy). Land Registry data is similarly split between ppd_transactions and property_comps with clear output differences; no two tools are truly interchangeable.

Naming Consistency3/5

Names are readable and consistently lowercase snake_case, but they mix resource nouns (epc_certificate, stamp_duty), prefixed nouns (property_epc_summaries, rightmove_listing), and noun-verb forms (company_search, planning_search). The 'search' suffix is used for different actions, and there is no uniform verb_noun pattern across the set.

Tool Count4/5

14 tools is within the appropriate range for a multi-source property data API. The count is slightly padded by the deprecated property_epc_search and the narrowly scoped planning_search/company_search, but most tools cover distinct data products.

Completeness4/5

The set covers the core property workflows: Rightmove listing discovery/detail, EPC search/detail, Land Registry transactions/comps, yield/rent analysis, stamp duty, and planning portal lookup. Minor gaps exist (no planning application details, no property-level title/ownership lookup), but agents can complete common research tasks without dead ends.