Skip to main content
Glama
BACH-AI-Tools

Zoopla MCP Server

Zoopla MCP Server

English | 简体中文 | 繁體中文

用于访问 Zoopla API 的 MCP 服务器。

🚀 使用 EMCP 平台快速体验

EMCP 是一个强大的 MCP 服务器管理平台,让您无需手动配置即可快速使用各种 MCP 服务器!

快速开始:

  1. 🌐 访问 EMCP 平台

  2. 📝 注册并登录账号

  3. 🎯 进入 MCP 广场,浏览所有可用的 MCP 服务器

  4. 🔍 搜索或找到本服务器(bach-zoopla

  5. 🎉 点击 "安装 MCP" 按钮

  6. ✅ 完成!即可在您的应用中使用

EMCP 平台优势:

  • 零配置:无需手动编辑配置文件

  • 🎨 可视化管理:图形界面轻松管理所有 MCP 服务器

  • 🔐 安全可靠:统一管理 API 密钥和认证信息

  • 🚀 一键安装:MCP 广场提供丰富的服务器选择

  • 📊 使用统计:实时查看服务调用情况

立即访问 EMCP 平台 开始您的 MCP 之旅!


Related MCP server: Zillow56 MCP Server

简介

这是一个 MCP 服务器,用于访问 Zoopla API。

  • PyPI 包名: bach-zoopla

  • 版本: 1.0.0

  • 传输协议: stdio

安装

从 PyPI 安装:

pip install bach-zoopla

从源码安装:

pip install -e .

运行

方式 1: 使用 uvx(推荐,无需安装)

# 运行(uvx 会自动安装并运行)
uvx --from bach-zoopla bach_zoopla

# 或指定版本
uvx --from bach-zoopla@latest bach_zoopla

方式 2: 直接运行(开发模式)

python server.py

方式 3: 安装后作为命令运行

# 安装
pip install bach-zoopla

# 运行(命令名使用下划线)
bach_zoopla

配置

API 认证

此 API 需要认证。请设置环境变量:

export API_KEY="your_api_key_here"

环境变量

变量名

说明

必需

API_KEY

API 密钥

PORT

不适用

HOST

不适用

在 Cursor 中使用

编辑 Cursor MCP 配置文件 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "bach-zoopla": {
      "command": "uvx",
      "args": ["--from", "bach-zoopla", "bach_zoopla"],
      "env": {
        "API_KEY": "your_api_key_here"
      }
    }
  }
}

在 Claude Desktop 中使用

编辑 Claude Desktop 配置文件 claude_desktop_config.json:

{
  "mcpServers": {
    "bach-zoopla": {
      "command": "uvx",
      "args": ["--from", "bach-zoopla", "bach_zoopla"],
      "env": {
        "API_KEY": "your_api_key_here"
      }
    }
  }
}

可用工具

此服务器提供以下工具:

propertiesv2list

List properties for sale or rent with options and filters

端点: GET /properties/v2/list

参数:

  • locationValue (string) 必需: The value of geoLabel field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of name field returned in .../house-prices/v2/get-area (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.

  • locationIdentifier (string) 必需: The value of geoIdentifier field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of id field returned in ..../house-prices/v2/get-area endpoint (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint.

  • category (string): One of the following residential|commercial

  • furnishedState (string): One of the following : Any|furnished|part_furnished|unfurnished

  • includeRented (string): Example value:

  • includeRetirementHomes (string): Example value:

  • includeSharedAccommodation (string): Example value:

  • includeSharedOwnership (string): Example value:

  • includeSold (string): Example value:

  • isAuction (string): Example value:

  • petsAllowed (string): Example value:

  • billsIncluded (string): Example value:

  • keywords (string): Any word or term, ex : garden,wooden floors

  • section (string): One of the following : for-sale|to-rent

  • bedsMax (number): Max number of bed rooms (1 - 10)

  • bedsMin (number): Min number of bed rooms (1 - 10)

  • priceMax (number): Maximum sale or rent price

  • priceMin (number): Minimum sale or rent price

  • sortOrder (string): One of the following : newest_listings|highest_price|lowest_price|most_reduced

  • page (number): The page index for paging purpose

  • radius (number): The radius (miles) to look for properties (0.25 - 40)

  • priceFrequency (string): One of the following per_month|per_year

  • newHomes (string): One of the following : only|exclude

  • added (string): Recently added. One of the following : 24_hours|3_days|7_days|14_days|30_days

  • propertySubType (string): Filter properties by category. Ignore OR one of the followings (Separated by comma for multiple options) : park_home,bungalow,farms_land,terraced,flats,semi_detached,detached

  • chainFree (string): Example value:

  • reducedPriceOnly (string): Example value:

  • feature (string): One of the followings : has_balcony_terrace|has_parking_garage|has_garden . Separated by comma for multiple options. Ex : has_balcony_terrace,has_parking_garage,...

  • tenure (string): One of the followings : share_of_freehold|freehold|leasehold. Ex : freehold,leasehold,...

  • smartTags (string): One of the followings : condition.needs_modernisation|architecture.period_property|type.cottage|style.modern|attributes.utility_room|attributes.basement|attributes.conservatory|attributes.home_office|attributes.bath|attributes.en_suite|attributes.patio|attributes.kitchen_island. Ex : condition.needs_modernisation,architecture.period_property,...


house_pricesv2estimate

Returned list of estimated house prices

端点: GET /house-prices/v2/estimate

参数:

  • geoIdentifier (string) 必需: The value of 'urlPath' field returned in .../house-prices/v2/auto-complete endpoint OR the value of 'id' field returned in .../house-prices/v2/get-area endpoint.

  • after (number): The offset to ignore for paging purpose.

  • first (number): The number of items per response


agentsdetail

Get detailed information of an agent by id

端点: GET /agents/detail

参数:

  • id (number) 必需: The value of id field returned in .../agents/list endpoint


agentslist

List agents with filters and options

端点: GET /agents/list

参数:

  • location (string) 必需: The value of geoIdentifier field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of id field returned in ..../house-prices/v2/get-area endpoint (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint.

  • search_type (string): One of the followings : estate-agents|letting-agents|commercial-agents

  • company_name (string): Search by agent name. Either 'location' or 'company_name' is required. You can ignore 'location' parameter when passing value into 'company_name' parameter.

  • agents_sort (string): One of the following : a_z|lowest_avg_price|highest_avg_price|shortest_avg_age|longest_avg_age

  • pn (number): The page index for paging purpose

  • radius (number): The radius (miles) to look for agents (0.25 - 40)


house_pricesget_area_stats_deprecated

Get area stats

端点: GET /house-prices/get-area-stats

参数:

  • property_id (number) 必需: The value of property_id field returned in .../house-prices/estimate endpoint.


house_pricesget_historic_listings_deprecated

Get historic listings

端点: GET /house-prices/get-historic-listings

参数:

  • property_id (number) 必需: The value of property_id field returned in .../house-prices/estimate endpoint.


house_pricesv2get_area

Use along with .../house-prices/v2/auto-complete endpoint to get related geo id. For example, geo id of postal code.

端点: GET /house-prices/v2/get-area

参数:

  • geoString (string) 必需: Postal code, city, district, ward, area, etc.... Use exact values returned in .../house-prices/v2/auto-complete endpoint for best result


house_pricesget_running_costs_deprecated

Get running costs

端点: GET /house-prices/get-running-costs

参数:

  • property_id (number) 必需: The value of property_id field returned in .../house-prices/estimate endpoint.


house_pricesget_market_activity_deprecated

Get market activity in an area

端点: GET /house-prices/get-market-activity

参数:

  • identifier (string): The value of suggestions/identifier json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.

  • area (string) 必需: The value of suggestions/value json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.


house_pricesget_sales_history_deprecated

Get sales history

端点: GET /house-prices/get-sales-history

参数:

  • property_id (number) 必需: The value of property_id field returned in .../house-prices/estimate endpoint.


propertiesget_nearby_deprecated

Get nearest points of interest

端点: GET /properties/get-nearby

参数:

  • listing_id (number) 必需: The value of listing_id field returned in .../properties/list endpoint


propertiesv2detail

Get property detail

端点: GET /properties/v2/detail

参数:

  • listingId (number) 必需: The value of listingId field returned in .../properties/v2/list endpoint


propertiesget_broadband_deprecated

Get broadband information

端点: GET /properties/get-broadband

参数:

  • listing_id (number) 必需: The value of listing_id field returned in .../properties/list endpoint


propertiesget_running_costs_deprecated

Get running costs

端点: GET /properties/get-running-costs

参数:

  • listing_id (number) 必需: The value of listing_id field returned in .../properties/list endpoint

  • category (string): One of the following residential|commercial

  • section (string): One of the following for-sale|to-rent


propertieslist_deprecated

List properties for sale or rent with options and filters

端点: GET /properties/list

参数:

  • area (string) 必需: The value of suggestions/value json object returned in .../auto-complete endpoint with listings as search_type. You must use EXACTLY the value returned by the endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.

  • identifier (string): The value of suggestions/identifier json object returned in .../auto-complete endpoint with listings as search_type. You must use EXACTLY the value returned by the endpoint.

  • listing_id (string): The value of listing_id field returned right in this endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.

  • category (string): One of the following residential|commercial

  • created_since (string): The date time from which properties added. The format must be yyyy-MM-dd HH:mm:ss, Ex : 2020-09-16 15:00:00

  • furnished (string): One of the following furnished|part_furnished|unfurnished

  • include_featured_properties (number): One of the following 1 | 0

  • include_rented (number): One of the following 1 | 0

  • include_retirement_homes (string): One of the following yes | no

  • include_shared_accommodation (string): One of the following yes | no

  • include_shared_ownership (string): One of the following yes | no

  • include_sold (number): One of the following 1 | 0

  • keywords (string): Any word or term, ex : garden,wooden floors

  • listing_status (string): One of the following sale | rent

  • maximum_beds (number): Max number of bed rooms (1 - 10)

  • minimum_beds (number): Min number of bed rooms (1 - 10)

  • maximum_price (number): Maximum sale or rent price

  • minimum_price (number): Minimum sale or rent price

  • order_by (string): One of the following age|price|price_change|view_count

  • ordering (string): One of the following ascending|descending

  • page_number (number): The page index for paging purpose

  • page_size (number): The number of items per response (max 40)

  • property_type (string): One of the following and separated by comma for multiple values : flats|farms_land|terraced|semi_detached|detached|bungalow|park_home|offices|retail|industrial|hospitality|land

  • radius (number): The radius (miles) to look for properties (1 - 40)

  • pets_allowed (string): One of the following yes | no

  • price_frequency (string): One of the following per_month|per_year

  • step_back_used (number): One of the following 1 | 0

  • bills_included (string): One of the following yes | no

  • floor_area_max (number): Maximum floor area, only use with commercial category.

  • floor_area_min (number): Minimum floor area, only use with commercial category.

  • floor_area_units (string): One of the following sq_feet|sq_metres

  • new_homes (string): One of the following yes | no


propertiesget_area_stats_deprecated

Get area stats

端点: GET /properties/get-area-stats

参数:

  • listing_id (number) 必需: The value of listing_id field returned in .../properties/list endpoint


v2auto_complete

Get auto complete suggestion by term or phrase

端点: GET /v2/auto-complete

参数:

  • locationPrefix (string) 必需: Example value: greenwich


auto_complete_deprecated

Get auto complete suggestion by term or phrase

端点: GET /auto-complete

参数:

  • search_term (string) 必需: Example value: greenwich

  • search_type (string): One of the following properties|listings. Use listings value to get suggestion for .../properties/list endpoint. Use properties value to get suggestion for .../house-prices/estimate endpoint.


house_pricesv2detail

Get property price detailed information

端点: GET /house-prices/v2/detail

参数:

  • uprn (number) 必需: The value of "uprn" field returned in .../house-prices/v2/estimate endpoint.


house_pricesv2auto_complete

Get suggestions by term or phrase about city, country, area,etc...

端点: GET /house-prices/v2/auto-complete

参数:

  • addressPartial (string) 必需: City, district, ward, area, etc....


house_pricesget_points_of_interest_deprecated

Get nearest points of interest

端点: GET /house-prices/get-points-of-interest

参数:

  • property_id (number) 必需: The value of property_id field returned in .../house-prices/estimate endpoint.


house_pricesestimate_deprecated

Returned list of estimated house prices

端点: GET /house-prices/estimate

参数:

  • identifier (string): The value of suggestions/identifier json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.

  • area (string) 必需: The value of suggestions/value json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.

  • order_by (string): One of the following price_paid|last_sold|address|estimated_value

  • ordering (string): One of the following ascending|descending

  • page_number (number): The page index for paging purpose

  • page_size (number): The number of items per response (max 40)

  • property_type (string): One of the following detached|flat|terraced|semi_detached


技术栈

  • 传输协议: stdio

  • HTTP 客户端: httpx

许可证

MIT License - 详见 LICENSE 文件。

开发

此服务器由 API-to-MCP 工具生成。

版本: 1.0.0

Available Tools

22 tools
agentsdetailC

Get detailed information of an agent by id

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe value of id field returned in .../agents/list endpoint55447

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it 'Get detailed information,' implying a read-only operation, but doesn't specify aspects like authentication requirements, rate limits, error handling, or what 'detailed information' includes (e.g., fields returned). This leaves significant gaps for a tool with no annotation coverage.

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, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and wastes no space, making it highly concise and well-structured for quick understanding.

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 no annotations, no output schema, and a simple input schema, the description is incomplete. It lacks details on what 'detailed information' entails, potential errors, or behavioral traits, making it insufficient for an agent to fully understand how to use the tool effectively in context.

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?

The schema description coverage is 100%, with the parameter 'id' fully documented in the schema (type, default, description). The description adds no additional meaning beyond what the schema provides, such as explaining the ID's source or format further. Baseline 3 is appropriate as the schema handles the parameter documentation adequately.

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 verb ('Get detailed information') and resource ('of an agent'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'agentslist' or 'propertiesv2detail', which would require mentioning it retrieves detailed data for a single agent rather than listing multiple agents or properties.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an agent ID from 'agentslist'), exclusions, or comparisons to siblings like 'agentslist' for listing agents or 'propertiesv2detail' for property details, leaving usage context unclear.

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

agentslistB

List agents with filters and options

ParametersJSON Schema
NameRequiredDescriptionDefault
locationYesThe value of geoIdentifier field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of id field returned in ..../house-prices/v2/get-area endpoint (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint.
search_typeNoOne of the followings : estate-agents|letting-agents|commercial-agents
company_nameNoSearch by agent name. Either 'location' or 'company_name' is required. You can ignore 'location' parameter when passing value into 'company_name' parameter.
agents_sortNoOne of the following : a_z|lowest_avg_price|highest_avg_price|shortest_avg_age|longest_avg_age
pnNoThe page index for paging purpose1
radiusNoThe radius (miles) to look for agents (0.25 - 40)0

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'filters and options', hinting at configurability, but doesn't describe key traits like whether this is a read-only operation, potential rate limits, authentication needs, pagination behavior (implied by 'pn' parameter but not explained), or what the output looks like. For a listing tool with 6 parameters and no annotations, this is a significant gap in transparency.

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 extremely concise: 'List agents with filters and options'. It's front-loaded with the core purpose and avoids unnecessary words. Every part of the sentence contributes to understanding the tool's function efficiently.

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 complexity (6 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain the tool's behavior, output format, or usage nuances beyond a basic listing concept. For a tool with multiple filters and options, more context is needed to guide effective use, especially without annotations or output schema to fill in gaps.

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 the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by mentioning 'filters and options', which aligns with parameters like 'location', 'search_type', and 'radius', but doesn't provide additional semantics or clarify interdependencies (e.g., the 'company_name' vs 'location' requirement is only in the schema). Baseline 3 is appropriate as the schema does the heavy lifting.

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's purpose: 'List agents with filters and options'. It specifies the verb ('List') and resource ('agents'), and mentions the capability for filtering. However, it doesn't distinguish this from its sibling 'agentsdetail', which appears to be a detail view rather than a listing tool, so differentiation is implied but not explicit.

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 context through 'with filters and options', suggesting it's for retrieving multiple agents based on criteria. It doesn't explicitly state when to use this versus alternatives like 'agentsdetail' or other property-related tools, nor does it provide exclusions or prerequisites. Usage is inferred from the tool's name and description but not clearly guided.

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

auto_complete_deprecatedC

Get auto complete suggestion by term or phrase

ParametersJSON Schema
NameRequiredDescriptionDefault
search_termYesExample value: greenwich
search_typeNoOne of the following properties|listings. Use listings value to get suggestion for .../properties/list endpoint. Use properties value to get suggestion for .../house-prices/estimate endpoint.

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It mentions 'Get auto complete suggestion', implying a read-only operation, but doesn't disclose behavioral traits such as rate limits, authentication needs, error handling, or response format. This leaves significant gaps for a tool with parameters.

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 a single sentence that directly states the tool's function, making it front-loaded and efficient. However, it could be more structured by including key details like resource type, but it avoids unnecessary verbosity.

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 complexity (2 parameters, no output schema, no annotations), the description is incomplete. It doesn't explain what the suggestions are for, how results are returned, or differentiate from siblings, making it inadequate for effective tool selection and invocation.

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 the schema already documents both parameters ('search_term' and 'search_type') with descriptions. The description adds no additional meaning beyond what the schema provides, such as clarifying the purpose of 'search_type' or examples of suggestions. Baseline 3 is appropriate as the schema handles parameter documentation.

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

Purpose3/5

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

The description states the tool 'Get auto complete suggestion by term or phrase', which clarifies it retrieves suggestions based on input. However, it's vague about what is being suggested (e.g., properties, listings, addresses) and doesn't distinguish it from sibling tools like 'house_pricesv2auto_complete' or 'v2auto_complete', missing specific resource details.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. With siblings like 'house_pricesv2auto_complete' and 'v2auto_complete', the description lacks any context, exclusions, or named alternatives, leaving the agent without usage direction.

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

house_pricesestimate_deprecatedD

Returned list of estimated house prices

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierNoThe value of suggestions/identifier json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.
areaYesThe value of suggestions/value json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.
order_byNoOne of the following price_paid|last_sold|address|estimated_value
orderingNoOne of the following ascending|descending
page_numberNoThe page index for paging purpose1
page_sizeNoThe number of items per response (max 40)40
property_typeNoOne of the following detached|flat|terraced|semi_detached

TDQS

D1.7/5.0
Behavior1/5

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

With no annotations provided, the description carries full burden for behavioral disclosure but fails completely. It doesn't indicate whether this is a read or write operation, what permissions might be required, whether it has rate limits, what format the returned list uses, or any error conditions. The word 'deprecated' in the tool name suggests it's outdated, but the description doesn't acknowledge this or provide migration guidance.

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

Conciseness2/5

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

While technically concise with just four words, the description is under-specified rather than efficiently informative. It fails to front-load critical information about the tool's purpose and behavior. Every word should earn its place, but this description provides minimal value - it's not structured to help an agent understand what the tool actually does beyond the obvious.

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

Completeness1/5

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

For a deprecated tool with 7 parameters, no annotations, and no output schema, the description is completely inadequate. It doesn't explain what 'deprecated' means, doesn't provide migration guidance to 'house_pricesv2estimate', doesn't describe the return format or structure, and offers no behavioral context. Given the complexity and lack of structured metadata, the description should do much more to compensate.

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?

The schema description coverage is 100%, so all parameters are documented in the schema itself. The description adds no parameter information beyond what's already in the schema - it doesn't explain relationships between parameters like 'identifier' and 'area', clarify what 'estimated house prices' means in relation to the parameters, or provide examples. With comprehensive schema documentation, the baseline score of 3 is appropriate.

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

Purpose2/5

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

The description 'Returned list of estimated house prices' is tautological - it essentially restates the tool name 'house_pricesestimate_deprecated' without adding meaningful context. It doesn't specify what action the tool performs (e.g., 'retrieve', 'calculate', 'fetch') or clarify what 'estimated' means in this context. While it mentions 'list', it doesn't distinguish this tool from sibling tools like 'house_pricesv2estimate' or 'house_pricesget_historic_listings_deprecated'.

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

Usage Guidelines1/5

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

The description provides zero guidance on when to use this tool versus alternatives. There's no mention of when this deprecated tool should be used compared to its v2 counterpart 'house_pricesv2estimate', nor does it explain its relationship to other house price tools like 'house_pricesget_area_stats_deprecated' or 'house_pricesget_sales_history_deprecated'. No prerequisites, limitations, or appropriate contexts are indicated.

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

house_pricesget_area_stats_deprecatedC

Get area stats

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesThe value of property_id field returned in .../house-prices/estimate endpoint.27175510

TDQS

C2.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get area stats' implies a read operation but doesn't specify what data is returned, whether it's historical or current, if there are rate limits, authentication needs, or any side effects. For a tool with zero annotation coverage, this leaves critical behavioral traits unaddressed.

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 extremely concise with just three words, making it front-loaded and free of unnecessary information. Every word directly relates to the tool's function, though it's under-specified rather than wasteful.

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's complexity (deprecated status, potential data retrieval), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what 'area stats' includes, how results are formatted, or why it's deprecated compared to v2 alternatives. For a tool in this context, more detail is needed to guide effective use.

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?

The input schema has 100% description coverage for its single parameter 'property_id', detailing its type, default value, and source. The description adds no additional meaning about parameters beyond what the schema provides. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.

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

Purpose2/5

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

The description 'Get area stats' is a tautology that essentially restates the tool name 'house_pricesget_area_stats_deprecated'. It doesn't specify what 'area stats' means, what resource it operates on, or how it differs from similar tools like 'house_pricesv2get_area' or 'propertiesget_area_stats_deprecated'. The purpose is vague and lacks differentiation from siblings.

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

Usage Guidelines1/5

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

There is no guidance on when to use this tool versus alternatives. The description doesn't mention any context, prerequisites, or exclusions. With multiple deprecated and v2 tools available (e.g., 'house_pricesv2get_area'), the agent has no indication of why or when to choose this deprecated version over others.

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

house_pricesget_historic_listings_deprecatedC

Get historic listings

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesThe value of property_id field returned in .../house-prices/estimate endpoint.27175510

TDQS

C2.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden but fails to disclose behavioral traits. It doesn't indicate if this is a read-only operation, what data format is returned, potential rate limits, or authentication needs. As a deprecated tool, it should warn about potential obsolescence or recommend alternatives, but no such context is given.

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

Conciseness3/5

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

The description is extremely concise ('Get historic listings') but under-specified, not front-loaded with useful information. While it avoids verbosity, it fails to earn its place by lacking essential details like scope or differentiation, making it inefficient rather than appropriately concise.

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's complexity (deprecated status, single parameter) and lack of annotations and output schema, the description is incomplete. It doesn't explain return values, error conditions, or why it's deprecated, leaving gaps that hinder an agent's ability to use it effectively in context with sibling tools.

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?

The input schema has 100% description coverage for the single parameter 'property_id', detailing its type, default value, and source. The description adds no additional meaning beyond the schema, such as explaining what 'historic listings' entails or how the parameter influences results. With high schema coverage, a baseline score of 3 is appropriate as the schema handles parameter documentation adequately.

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

Purpose2/5

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

The description 'Get historic listings' restates the tool name 'get_historic_listings_deprecated' almost verbatim, making it tautological. It lacks specificity about what 'historic listings' means (e.g., past property sale records, price history) and doesn't differentiate from siblings like 'house_pricesget_sales_history_deprecated' or 'propertieslist_deprecated', leaving the purpose vague.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives. With siblings like 'house_pricesget_sales_history_deprecated' and 'house_pricesv2estimate', the description offers no context, prerequisites, or exclusions, making it misleading for an agent to select the correct tool among deprecated and v2 versions.

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

house_pricesget_market_activity_deprecatedC

Get market activity in an area

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierNoThe value of suggestions/identifier json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.
areaYesThe value of suggestions/value json object returned in .../auto-complete endpoint with properties as search_type. You must use EXACTLY the value returned by the endpoint.

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It mentions 'Get' but doesn't disclose behavioral traits such as whether this is a read-only operation, requires authentication, has rate limits, or what the output format might be. The description is minimal and lacks essential context for a tool with no annotations.

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 a single, efficient sentence with no wasted words, making it appropriately sized. However, it's not front-loaded with critical information (e.g., purpose details or usage context), which slightly reduces its effectiveness despite the conciseness.

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 no annotations, no output schema, and a vague purpose, the description is incomplete. It doesn't compensate for the lack of structured data by explaining return values, error conditions, or behavioral context. For a tool with two parameters and siblings, more detail is needed to be adequately helpful.

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 the schema already documents both parameters ('identifier' and 'area') with detailed descriptions. The description adds no meaning beyond the schema, as it doesn't explain parameter roles or interactions. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose3/5

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

The description 'Get market activity in an area' states a clear verb ('Get') and resource ('market activity'), but it's vague about what 'market activity' entails (e.g., listings, sales, trends) and doesn't distinguish from siblings like 'get_area_stats_deprecated' or 'get_sales_history_deprecated'. It avoids tautology by not restating the name/title, but lacks specificity.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_area_stats_deprecated' and 'get_sales_history_deprecated', the description doesn't indicate context, exclusions, or prerequisites. Usage is implied only by the tool name, not by explicit instructions.

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

house_pricesget_points_of_interest_deprecatedC

Get nearest points of interest

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesThe value of property_id field returned in .../house-prices/estimate endpoint.27175510

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get nearest points of interest', which implies a read-only operation, but doesn't specify if it requires authentication, has rate limits, returns paginated results, or what the output format might be. For a tool with no annotations, this minimal description fails to provide essential behavioral context.

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 'Get nearest points of interest' is a single, efficient sentence that is front-loaded with the core action. It avoids unnecessary words, making it concise. However, it could be improved by adding a bit more context without sacrificing brevity, as it currently feels slightly under-specified for a tool with no annotations.

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's complexity (deprecated status, no annotations, no output schema, and multiple siblings), the description is incomplete. It doesn't explain what 'points of interest' entails, why it's deprecated, or how results are returned. For a tool that likely provides location-based data critical for property analysis, this minimal description leaves too many gaps for effective agent use.

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?

The input schema has 100% description coverage, with the parameter 'property_id' documented as 'The value of property_id field returned in .../house-prices/estimate endpoint.' The description doesn't add any meaning beyond this, such as explaining how 'property_id' relates to points of interest or providing examples. With high schema coverage, the baseline score of 3 is appropriate as the schema handles parameter documentation adequately.

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

Purpose3/5

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

The description 'Get nearest points of interest' states a verb ('Get') and resource ('points of interest'), but it's vague about what types of points of interest (e.g., schools, parks, shops) and lacks specificity compared to siblings like 'get_area_stats' or 'get_market_activity'. It doesn't clearly distinguish itself from other tools that might also retrieve location-based data, such as 'get_nearby_deprecated' or 'get_area_stats_deprecated'.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context (e.g., for property analysis), or exclusions, leaving the agent to infer usage based on the tool name alone. With siblings like 'get_area_stats_deprecated' and 'get_nearby_deprecated', the lack of explicit comparison or use-case details is a significant gap.

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

house_pricesget_running_costs_deprecatedD

Get running costs

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesThe value of property_id field returned in .../house-prices/estimate endpoint.27175510

TDQS

D1.7/5.0
Behavior1/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure but offers nothing beyond the basic action. It doesn't indicate whether this is a read-only operation, what format the running costs are returned in, whether authentication is required, if there are rate limits, or what happens with invalid property IDs. This leaves critical behavioral aspects undocumented.

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

Conciseness2/5

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

While technically concise with only three words, this represents under-specification rather than effective conciseness. The description doesn't front-load important information and fails to use its limited space to provide meaningful context. Every word should earn its place, but this description provides minimal value.

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

Completeness1/5

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

Given the tool's apparent purpose (retrieving financial data for properties), the lack of annotations, absence of an output schema, and minimal description, this is completely inadequate. The agent cannot understand what 'running costs' encompasses, how results are structured, or the tool's behavioral characteristics. The description fails to compensate for the missing structured information.

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?

The schema description coverage is 100%, with the single parameter 'property_id' well-documented in the schema. The description adds no additional parameter information beyond what the schema already provides. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

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

Purpose2/5

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

The description 'Get running costs' is a tautology that essentially restates the tool name. While it indicates the tool retrieves running costs, it doesn't specify what resource this applies to (presumably properties/houses) or distinguish it from the sibling tool 'propertiesget_running_costs_deprecated' which likely serves a similar purpose. The description lacks the specificity needed for clear differentiation.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, appropriate contexts, or comparisons to sibling tools like 'propertiesget_running_costs_deprecated' or 'house_pricesestimate_deprecated' that might offer related functionality. The agent receives no help in tool selection.

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

house_pricesget_sales_history_deprecatedD

Get sales history

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesThe value of property_id field returned in .../house-prices/estimate endpoint.27175510

TDQS

D1.9/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get sales history' implies a read-only operation, but it doesn't specify any behavioral traits such as data format, potential rate limits, authentication requirements, or whether it's deprecated (as hinted by the name). The description is too vague to inform the agent about how the tool behaves beyond basic intent.

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

Conciseness3/5

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

The description is extremely concise with just three words, but this brevity comes at the cost of under-specification. While it's front-loaded and wastes no words, it fails to convey necessary information, making it inefficient rather than optimally concise. A slightly longer description could add value without sacrificing clarity.

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's complexity (a single-parameter read operation with no output schema and no annotations), the description is incomplete. It doesn't explain what 'sales history' returns (e.g., a list of transactions, dates, prices) or any behavioral context. Without annotations or an output schema, the description should compensate by providing more detail, but it remains minimal and inadequate for effective tool use.

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?

The input schema has 100% description coverage, with the single parameter 'property_id' well-documented in the schema. The description adds no additional meaning about parameters, as it doesn't mention 'property_id' or any usage context. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema already provides sufficient parameter semantics without needing description enhancement.

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

Purpose2/5

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

The description 'Get sales history' is a tautology that essentially restates the tool name 'get_sales_history_deprecated'. While it identifies the verb ('Get') and resource ('sales history'), it doesn't specify what 'sales history' entails (e.g., transaction records, price trends, dates) or how it differs from sibling tools like 'get_historic_listings_deprecated' or 'get_market_activity_deprecated'. This minimal description fails to provide meaningful differentiation.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, nor does it reference sibling tools. For example, it doesn't clarify if this is for historical sales data versus current market activity or listings, leaving the agent with no usage direction.

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

house_pricesv2auto_completeC

Get suggestions by term or phrase about city, country, area,etc...

ParametersJSON Schema
NameRequiredDescriptionDefault
addressPartialYesCity, district, ward, area, etc....

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It mentions 'Get suggestions' but doesn't disclose behavioral traits like response format, error conditions, rate limits, authentication requirements, or whether this is a read-only operation. The description provides minimal behavioral context beyond the basic action.

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 appropriately concise at one sentence. It's front-loaded with the core action ('Get suggestions') and could be slightly more structured by specifying what type of suggestions, but there's no wasted verbiage or redundancy.

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?

For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the suggestions look like (structured data, simple strings, confidence scores), how many results to expect, or any error scenarios. The context of multiple similar sibling tools further highlights the incompleteness.

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 the schema already fully documents the single 'addressPartial' parameter. The description adds no additional parameter semantics beyond what's in the schema - it doesn't explain format expectations, examples, or constraints beyond the schema's 'City, district, ward, area, etc....' description.

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

Purpose3/5

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

The description states the tool 'Get suggestions by term or phrase about city, country, area, etc...' which indicates it provides autocomplete suggestions for location-related terms. However, it's vague about what kind of suggestions (e.g., real estate listings, geographic names) and doesn't clearly differentiate from sibling tools like 'v2auto_complete' or 'auto_complete_deprecated' that appear to serve similar functions.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With multiple autocomplete-related siblings (v2auto_complete, auto_complete_deprecated), there's no indication of differences in scope, data sources, or performance characteristics that would help an agent choose appropriately.

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

house_pricesv2detailC

Get property price detailed information

ParametersJSON Schema
NameRequiredDescriptionDefault
uprnYesThe value of "uprn" field returned in .../house-prices/v2/estimate endpoint.100061777799

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden for behavioral disclosure. It states 'Get' implying a read operation, but doesn't mention authentication requirements, rate limits, error conditions, or what 'detailed information' entails beyond basic price data. This leaves significant gaps for an agent to understand how to use it effectively.

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 extremely concise at just 5 words, front-loading the core purpose without any unnecessary elaboration. Every word serves a clear function in communicating the tool's basic intent.

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 no annotations, no output schema, and a single parameter with full schema coverage, the description is incomplete. It doesn't explain what 'detailed information' includes, how results are structured, or any behavioral aspects like error handling. For a tool that presumably returns complex property data, this leaves too much unspecified.

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 the input schema fully documents the single 'uprn' parameter. The description adds no additional parameter context beyond what's in the schema, maintaining the baseline score of 3 for adequate but not enhanced parameter documentation.

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 'Get property price detailed information' clearly states the action (Get) and resource (property price detailed information), making the tool's purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'propertiesv2detail' or 'house_pricesv2estimate', which might offer similar property-related data.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'house_pricesv2estimate' and 'propertiesv2detail' available, there's no indication of what makes this tool distinct or when it should be preferred over others.

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

house_pricesv2estimateC

Returned list of estimated house prices

ParametersJSON Schema
NameRequiredDescriptionDefault
geoIdentifierYesThe value of 'urlPath' field returned in .../house-prices/v2/auto-complete endpoint OR the value of 'id' field returned in .../house-prices/v2/get-area endpoint.
afterNoThe offset to ignore for paging purpose.0
firstNoThe number of items per response20

TDQS

C2.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states it returns a list of estimates, missing critical details like whether it's a read-only operation, if it requires authentication, rate limits, pagination behavior, or error handling. This is inadequate for a tool with parameters and no output schema.

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 a single, efficient sentence with no wasted words. However, it's overly brief and under-specified, which impacts its usefulness despite being concise.

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 3 parameters, no annotations, and no output schema, the description is incomplete. It fails to explain the tool's behavior, return format, or usage context, leaving significant gaps for the agent to understand how to invoke it correctly.

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?

The schema description coverage is 100%, so the input schema fully documents the three parameters (geoIdentifier, after, first). The description adds no additional meaning beyond what's in the schema, such as explaining the relationship between parameters or typical values. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose2/5

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

The description 'Returned list of estimated house prices' is a tautology that essentially restates the tool name 'house_pricesv2estimate' without specifying the action or resource clearly. It lacks a specific verb and doesn't distinguish from siblings like 'house_pricesv2detail' or 'house_pricesv2get_area'.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, leaving the agent with no direction on usage relative to siblings such as 'house_pricesv2auto_complete' or 'house_pricesestimate_deprecated'.

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

house_pricesv2get_areaC

Use along with .../house-prices/v2/auto-complete endpoint to get related geo id. For example, geo id of postal code.

ParametersJSON Schema
NameRequiredDescriptionDefault
geoStringYesPostal code, city, district, ward, area, etc.... Use exact values returned in .../house-prices/v2/auto-complete endpoint for best result

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure but provides minimal information. It mentions using exact values from another endpoint for best results, which hints at input validation behavior, but doesn't describe what the tool returns, error conditions, rate limits, authentication requirements, or any other behavioral traits. The description is insufficient for a tool with no annotation coverage.

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

Conciseness3/5

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

The description is brief (two sentences) but not optimally structured. The first sentence is somewhat confusing as it describes usage context rather than stating the tool's purpose upfront. While concise, the structure doesn't effectively communicate the most important information first, and the second sentence feels more like an example than core documentation.

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?

For a tool with no annotations and no output schema, the description is incomplete. It fails to explain what the tool returns (presumably area information or statistics given the name), doesn't describe error conditions or response format, and provides minimal behavioral context. The description assumes too much prior knowledge about the API ecosystem without being self-contained.

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?

The schema description coverage is 100%, so the schema already fully documents the single parameter. The description adds marginal value by reinforcing that geoString should use 'exact values returned in .../house-prices/v2/auto-complete endpoint for best result,' but doesn't provide additional semantic context beyond what's in the schema. This meets the baseline expectation when schema coverage is complete.

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

Purpose2/5

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

The description fails to state what the tool actually does - it only mentions using it 'along with' another endpoint to get a geo id, but doesn't specify what this tool itself returns or accomplishes. The description is tautological in that it restates the name ('get_area') without explaining what 'area' means in this context. There's no clear verb+resource statement of purpose.

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 context about when to use this tool - specifically mentioning it should be used with the auto-complete endpoint to get related geo ids. It distinguishes this from sibling tools by referencing the specific v2auto_complete endpoint, though it doesn't explicitly state when NOT to use this tool or what alternatives exist for different use cases.

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

propertiesget_area_stats_deprecatedD

Get area stats

ParametersJSON Schema
NameRequiredDescriptionDefault
listing_idYesThe value of listing_id field returned in .../properties/list endpoint56354192

TDQS

D1.7/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. However, 'Get area stats' offers no information about behavioral traits such as whether this is a read-only operation, potential side effects, authentication requirements, rate limits, or response format. The description fails to compensate for the lack of annotations, leaving the agent with minimal insight into how the tool behaves.

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

Conciseness2/5

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

The description 'Get area stats' is overly concise to the point of under-specification. While it is front-loaded and wastes no words, it lacks essential details that would make it helpful. Conciseness should not come at the cost of clarity; here, the brevity results in insufficient information, failing to earn its place as a useful description.

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

Completeness1/5

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

Given the tool's complexity (deprecated status, single parameter), lack of annotations, and absence of an output schema, the description is incomplete. It does not explain what 'area stats' entails, how results are returned, or why it is deprecated compared to siblings like 'house_pricesget_area_stats_deprecated'. For a tool with no structured support, the description fails to provide the necessary context for effective use.

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?

The input schema has 100% description coverage, with the single parameter 'listing_id' fully documented in the schema. The description does not add any meaning beyond what the schema provides, as it mentions no parameters. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema adequately handles parameter semantics without needing additional explanation in the description.

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

Purpose2/5

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

The description 'Get area stats' is a tautology that merely restates the tool name 'get_area_stats_deprecated' with minor wording changes. It lacks specificity about what 'area stats' refers to (e.g., property statistics, demographic data, market metrics) or what resource is being accessed. While it includes a verb ('Get'), it does not distinguish this tool from its many siblings, such as 'house_pricesget_area_stats_deprecated' or 'propertiesv2detail', leaving the purpose vague.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention any context, prerequisites, or exclusions, nor does it refer to sibling tools like 'house_pricesget_area_stats_deprecated' or 'propertiesv2detail' that might serve similar purposes. This absence of usage instructions makes it challenging for an AI agent to determine the appropriate scenario for invocation.

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

propertiesget_broadband_deprecatedC

Get broadband information

ParametersJSON Schema
NameRequiredDescriptionDefault
listing_idYesThe value of listing_id field returned in .../properties/list endpoint56354192

TDQS

C2.1/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get broadband information' gives no insight into whether this is a read-only operation, requires authentication, has rate limits, returns structured data, or involves side effects. For a tool with no annotation coverage, this is a significant gap in transparency.

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 extremely concise with just three words, making it front-loaded and free of unnecessary elaboration. Every word directly relates to the tool's function, though this brevity comes at the cost of completeness.

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's complexity (deprecated status, property-related context, no output schema, and no annotations), the description is insufficiently complete. It doesn't address what 'broadband information' entails, how results are formatted, or why the tool is deprecated compared to newer 'v2' siblings. The agent lacks critical context to use this tool effectively.

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?

The input schema has 100% description coverage, with the single parameter 'listing_id' clearly documented. The description adds no additional parameter semantics beyond what the schema provides, such as explaining how broadband data relates to the listing ID. Given the high schema coverage, a baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.

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

Purpose2/5

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

The description 'Get broadband information' is a tautology that essentially restates the tool name 'propertiesget_broadband_deprecated' without adding meaningful specificity. It doesn't clarify what type of broadband information is retrieved (e.g., availability, speed, providers) or distinguish this tool from its many siblings, particularly other 'properties' and 'house_prices' tools that might also provide property-related data.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. With 22 sibling tools, including other deprecated properties tools and newer 'v2' versions, there is no indication of context, prerequisites, or exclusions. This leaves the agent guessing about appropriate use cases.

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

propertiesget_nearby_deprecatedC

Get nearest points of interest

ParametersJSON Schema
NameRequiredDescriptionDefault
listing_idYesThe value of listing_id field returned in .../properties/list endpoint56354192

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states the action without disclosing behavioral traits like permissions needed, rate limits, data freshness, or error handling. It mentions 'nearest' but doesn't clarify how proximity is calculated or if results are paginated, leaving key operational details unclear.

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, efficient sentence with zero waste, front-loading the core purpose. It's appropriately sized for the tool's apparent simplicity, making it easy to scan and understand quickly.

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 no annotations, no output schema, and a simple input schema, the description is incomplete. It doesn't explain what 'points of interest' includes, the format of results, or any constraints, which is inadequate for a tool that likely returns location-based data and requires proper context for effective use.

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 the schema already documents the 'listing_id' parameter. The description adds no additional meaning beyond implying it's used to locate points of interest, which is minimal value. Baseline 3 is appropriate as the schema handles parameter documentation adequately.

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 verb 'Get' and resource 'nearest points of interest', making the purpose understandable. However, it doesn't distinguish from sibling tools like 'house_pricesget_points_of_interest_deprecated', which appears similar but may differ in scope or data source, leaving room for confusion.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as the sibling 'house_pricesget_points_of_interest_deprecated'. The description lacks context about prerequisites, exclusions, or specific scenarios, offering minimal help for selection.

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

propertiesget_running_costs_deprecatedC

Get running costs

ParametersJSON Schema
NameRequiredDescriptionDefault
listing_idYesThe value of listing_id field returned in .../properties/list endpoint56354192
categoryNoOne of the following residential|commercial
sectionNoOne of the following for-sale|to-rent

TDQS

C2.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. 'Get running costs' implies a read-only operation, but it doesn't specify whether this requires authentication, what rate limits apply, what happens with invalid parameters, or what the response format looks like. The 'deprecated' suffix in the tool name suggests limited support, but the description doesn't warn about this.

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

Conciseness2/5

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

While technically concise with just three words, the description is under-specified rather than efficiently informative. It fails to provide the necessary context that would help an agent understand what the tool actually does. Conciseness should not come at the expense of clarity and completeness.

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?

For a tool with 3 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what 'running costs' means in this context, what units or time periods are involved, or what the return format looks like. The 'deprecated' status in the tool name suggests this tool may have limitations or alternatives, but the description doesn't address this.

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 the schema already documents all three parameters thoroughly. The description adds no additional parameter information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline score is 3 even with no parameter information in the description.

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

Purpose2/5

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

The description 'Get running costs' is a tautology that restates the tool name without adding meaningful context. It doesn't specify what resource the costs are associated with (properties), what time period is covered, or what format the costs are returned in. While the name suggests it's about properties running costs, the description fails to elaborate beyond the obvious.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives. There are sibling tools like 'propertiesv2detail' and 'propertiesv2list' that might serve similar purposes, but the description doesn't help an agent understand when this deprecated tool is appropriate versus newer versions or other property-related tools.

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

propertieslist_deprecatedC

List properties for sale or rent with options and filters

ParametersJSON Schema
NameRequiredDescriptionDefault
areaYesThe value of suggestions/value json object returned in .../auto-complete endpoint with listings as search_type. You must use EXACTLY the value returned by the endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.
identifierNoThe value of suggestions/identifier json object returned in .../auto-complete endpoint with listings as search_type. You must use EXACTLY the value returned by the endpoint.
listing_idNoThe value of listing_id field returned right in this endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.
categoryNoOne of the following residential|commercial
created_sinceNoThe date time from which properties added. The format must be yyyy-MM-dd HH:mm:ss, Ex : 2020-09-16 15:00:00
furnishedNoOne of the following furnished|part_furnished|unfurnished
include_featured_propertiesNoOne of the following 1 | 00
include_rentedNoOne of the following 1 | 00
include_retirement_homesNoOne of the following yes | no
include_shared_accommodationNoOne of the following yes | no
include_shared_ownershipNoOne of the following yes | no
include_soldNoOne of the following 1 | 00
keywordsNoAny word or term, ex : garden,wooden floors
listing_statusNoOne of the following sale | rent
maximum_bedsNoMax number of bed rooms (1 - 10)0
minimum_bedsNoMin number of bed rooms (1 - 10)0
maximum_priceNoMaximum sale or rent price0
minimum_priceNoMinimum sale or rent price0
order_byNoOne of the following age|price|price_change|view_count
orderingNoOne of the following ascending|descending
page_numberNoThe page index for paging purpose1
page_sizeNoThe number of items per response (max 40)40
property_typeNoOne of the following and separated by comma for multiple values : flats|farms_land|terraced|semi_detached|detached|bungalow|park_home|offices|retail|industrial|hospitality|land
radiusNoThe radius (miles) to look for properties (1 - 40)0
pets_allowedNoOne of the following yes | no
price_frequencyNoOne of the following per_month|per_year
step_back_usedNoOne of the following 1 | 00
bills_includedNoOne of the following yes | no
floor_area_maxNoMaximum floor area, only use with commercial category.0
floor_area_minNoMinimum floor area, only use with commercial category.0
floor_area_unitsNoOne of the following sq_feet|sq_metres
new_homesNoOne of the following yes | no

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'options and filters,' hinting at querying capabilities, but fails to describe critical behaviors such as pagination (implied by parameters but not explained), rate limits, authentication needs, or what the output looks like. For a tool with 32 parameters and no annotations, this is a significant gap.

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 a single, efficient sentence: 'List properties for sale or rent with options and filters.' It is front-loaded and wastes no words, though it could be slightly more specific to enhance clarity without losing conciseness.

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's complexity (32 parameters, no annotations, no output schema), the description is inadequate. It lacks details on behavioral traits, output format, error handling, and usage context. For a deprecated tool with many options, more guidance is needed to ensure correct invocation.

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%, meaning all parameters are documented in the input schema. The description adds no additional parameter semantics beyond stating 'options and filters,' which is already implied by the schema. However, it does not compensate for any gaps, so the baseline score of 3 is appropriate.

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's purpose: 'List properties for sale or rent with options and filters.' It specifies the verb ('List'), resource ('properties'), and scope ('for sale or rent'), but does not distinguish it from sibling tools like 'propertiesv2list' or 'propertiesget_nearby_deprecated', which may have overlapping or similar functions.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools, prerequisites, or specific contexts for application. The only implied usage is for listing properties with filters, but this is too vague for effective tool selection.

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

propertiesv2detailC

Get property detail

ParametersJSON Schema
NameRequiredDescriptionDefault
listingIdYesThe value of listingId field returned in .../properties/v2/list endpoint64576476

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get property detail' implies a read-only operation, but it doesn't specify authentication needs, rate limits, error handling, or what the output looks like (e.g., JSON structure). This is inadequate for a tool with no annotation coverage.

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 extremely concise with just three words, which is efficient and front-loaded. However, it borders on under-specification, as it could benefit from slightly more detail to be fully helpful without becoming verbose.

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's complexity (a read operation with one parameter) and lack of annotations and output schema, the description is incomplete. It doesn't explain the return values, error cases, or how it fits into the broader workflow with siblings, leaving significant gaps for the agent.

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?

The input schema has 100% description coverage, with the parameter 'listingId' documented as coming from the properties/v2/list endpoint. The description adds no additional parameter information beyond what the schema provides, so it meets the baseline score of 3 for high schema coverage.

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

Purpose3/5

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

The description 'Get property detail' clearly states the action (get) and resource (property detail), which is better than a tautology. However, it lacks specificity about what 'detail' includes and doesn't differentiate from sibling tools like 'propertiesv2list' or 'house_pricesv2detail', making it somewhat vague.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a listingId from another endpoint) or compare it to siblings like 'propertiesv2list' for listing properties or 'house_pricesv2detail' for price details, leaving the agent without usage context.

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

propertiesv2listC

List properties for sale or rent with options and filters

ParametersJSON Schema
NameRequiredDescriptionDefault
locationValueYesThe value of geoLabel field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of name field returned in .../house-prices/v2/get-area (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint. *'listing_id' OR 'area' parameter must be provided to get this endpoint working.
locationIdentifierYesThe value of geoIdentifier field returned in .../v2/auto-complete endpoint with listings as search_type. Or the value of id field returned in ..../house-prices/v2/get-area endpoint (If you are searching by postal code). You must use EXACTLY the value returned by the endpoint.
categoryNoOne of the following residential|commercial
furnishedStateNoOne of the following : Any|furnished|part_furnished|unfurnished
includeRentedNoExample value:
includeRetirementHomesNoExample value:
includeSharedAccommodationNoExample value:
includeSharedOwnershipNoExample value:
includeSoldNoExample value:
isAuctionNoExample value:
petsAllowedNoExample value:
billsIncludedNoExample value:
keywordsNoAny word or term, ex : garden,wooden floors
sectionNoOne of the following : for-sale|to-rent
bedsMaxNoMax number of bed rooms (1 - 10)0
bedsMinNoMin number of bed rooms (1 - 10)0
priceMaxNoMaximum sale or rent price0
priceMinNoMinimum sale or rent price0
sortOrderNoOne of the following : newest_listings|highest_price|lowest_price|most_reduced
pageNoThe page index for paging purpose1
radiusNoThe radius (miles) to look for properties (0.25 - 40)0
priceFrequencyNoOne of the following per_month|per_year
newHomesNoOne of the following : only|exclude
addedNoRecently added. One of the following : 24_hours|3_days|7_days|14_days|30_days
propertySubTypeNoFilter properties by category. Ignore OR one of the followings (Separated by comma for multiple options) : park_home,bungalow,farms_land,terraced,flats,semi_detached,detached
chainFreeNoExample value:
reducedPriceOnlyNoExample value:
featureNoOne of the followings : has_balcony_terrace|has_parking_garage|has_garden . Separated by comma for multiple options. Ex : has_balcony_terrace,has_parking_garage,...
tenureNoOne of the followings : share_of_freehold|freehold|leasehold. Ex : freehold,leasehold,...
smartTagsNoOne of the followings : condition.needs_modernisation|architecture.period_property|type.cottage|style.modern|attributes.utility_room|attributes.basement|attributes.conservatory|attributes.home_office|attributes.bath|attributes.en_suite|attributes.patio|attributes.kitchen_island. Ex : condition.needs_modernisation,architecture.period_property,...

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions 'options and filters' but doesn't disclose critical behaviors like pagination (implied by 'page' parameter), rate limits, authentication needs, or what the output looks like (no output schema). This is inadequate for a tool with 30 parameters.

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, efficient sentence that front-loads the core purpose ('List properties for sale or rent') and adds a brief qualifier ('with options and filters'). There is no wasted verbiage, making it highly concise and well-structured.

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 complexity (30 parameters, no annotations, no output schema), the description is insufficient. It doesn't explain the tool's behavior, output format, or usage context relative to siblings. For a search/list tool with many filters, more guidance is needed to help an agent use it effectively.

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 the schema fully documents all 30 parameters. The description adds no additional parameter semantics beyond mentioning 'options and filters', which is already implied by the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

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 verb ('List') and resource ('properties for sale or rent'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'propertiesv2detail' or 'propertieslist_deprecated', which likely serve different purposes (detail view vs. deprecated version).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'propertiesv2detail' for detailed property information or 'v2auto_complete' for location lookups, leaving the agent without context for tool selection.

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

v2auto_completeC

Get auto complete suggestion by term or phrase

ParametersJSON Schema
NameRequiredDescriptionDefault
locationPrefixYesExample value: greenwich

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states 'Get auto complete suggestion', implying a read-only operation, but doesn't disclose behavioral traits such as rate limits, authentication needs, response format, or whether it's idempotent. For a tool with no annotations, this leaves significant gaps in understanding how it behaves.

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, efficient sentence with zero waste: 'Get auto complete suggestion by term or phrase'. It's front-loaded and appropriately sized for the tool's purpose, earning its place without unnecessary elaboration.

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 no annotations, no output schema, and a simple input schema, the description is incomplete. It doesn't explain what the suggestions are for (e.g., locations, properties), the return format, or error handling. For a tool with siblings that might overlap, more context is needed to ensure proper agent selection.

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%, with the parameter 'locationPrefix' documented as 'Example value: greenwich'. The description adds minimal value beyond the schema, mentioning 'term or phrase' which loosely relates to the parameter but doesn't clarify semantics like expected input format or constraints. Baseline 3 is appropriate as the schema does the heavy lifting.

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 verb 'Get' and the resource 'auto complete suggestion', specifying it's based on 'term or phrase'. It distinguishes from siblings like 'agentslist' or 'propertiesv2list' by focusing on suggestions rather than listings or details. However, it doesn't explicitly differentiate from 'auto_complete_deprecated' or 'house_pricesv2auto_complete', which appear to be similar tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention the sibling 'auto_complete_deprecated' or 'house_pricesv2auto_complete', nor does it specify contexts like location-based suggestions versus other types. Usage is implied only by the parameter name 'locationPrefix', but no explicit when/when-not instructions are given.

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. 22 tool updates
    • First observedagentsdetail
    • First observedagentslist
    • First observedauto_complete_deprecated
    • First observedhouse_pricesestimate_deprecated
    • First observedhouse_pricesget_area_stats_deprecated
    • First observedhouse_pricesget_historic_listings_deprecated
    • First observedhouse_pricesget_market_activity_deprecated
    • First observedhouse_pricesget_points_of_interest_deprecated
    • First observedhouse_pricesget_running_costs_deprecated
    • First observedhouse_pricesget_sales_history_deprecated
    • First observedhouse_pricesv2auto_complete
    • First observedhouse_pricesv2detail
    • First observedhouse_pricesv2estimate
    • First observedhouse_pricesv2get_area
    • First observedpropertiesget_area_stats_deprecated
    • First observedpropertiesget_broadband_deprecated
    • First observedpropertiesget_nearby_deprecated
    • First observedpropertiesget_running_costs_deprecated
    • First observedpropertieslist_deprecated
    • First observedpropertiesv2detail
    • First observedpropertiesv2list
    • First observedv2auto_complete

TDQS

C2.4/5.0
Disambiguation3/5

The tool set has clear thematic groupings (agents, house_prices, properties) with distinct purposes within each group, but there is significant overlap between deprecated and v2 versions that could cause confusion. For example, house_pricesestimate_deprecated and house_pricesv2estimate appear to serve the same function, and similar duplicates exist across categories. Descriptions help differentiate, but agents might misselect between deprecated and active tools.

Naming Consistency2/5

Naming is inconsistent with mixed conventions: some tools use snake_case (e.g., agentsdetail), others use camelCase-like patterns without underscores (e.g., auto_complete_deprecated), and v2 tools add version prefixes inconsistently (e.g., house_pricesv2detail vs. v2auto_complete). There is no uniform verb_noun pattern, making the set harder to navigate and predict.

Tool Count3/5

With 22 tools, the count is borderline high but reasonable for a real estate domain covering agents, properties, and house prices. However, many tools are deprecated duplicates, which inflates the number without adding unique functionality. A cleaner set with fewer redundant tools would be more appropriate, placing this in the middle range.

Completeness4/5

The server covers key real estate operations: listing and detailing agents, properties, and house prices, with support for auto-complete, area stats, and related data. Minor gaps exist, such as no explicit update or delete tools for managing data, but agents can likely work around this for read-heavy use cases. The v2 tools address some deprecated gaps, ensuring core workflows are supported.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    C
    quality
    D
    maintenance
    Enables access to the Zillow56 API to search for real estate listings and rental market trends using locations, coordinates, or specific property filters. It also provides comprehensive housing market snapshots and historical data based on the Zillow Home Value Index (ZHVI).
    37
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Provides real-time access to Zillow real estate data, enabling property search, details, Zestimates, market trends, and mortgage calculations via natural language.
    14
    48
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to query UK property data including EPCs, sale history, planning, flood risk, council tax, demographics, and more via the Homedata API.
    18
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BACH-AI-Tools/bachai-zoopla'

If you have feedback or need assistance with the MCP directory API, please join our Discord server