Property Comparable Sales MCP Server
房地产可比销售 MCP 服务器
一个 MCP (Model Context Protocol) 服务器,使 AI 代理能够访问 6 个国家 16 个市场的可比销售数据和房地产交易信息。超过 4300 万条记录来源于政府开放数据注册中心——非估算值,非挂牌信息。
适用于 Claude Desktop、Claude Code 以及任何兼容 MCP 的 AI 客户端。
由 New Way Capital Advisory 构建 | API 文档 | 投资组合 X-Ray
功能介绍
您可以向 AI 助手询问如下问题:
“纽约 10001 附近的房产可比销售情况如何?”
“迪拜码头 (Dubai Marina) 的房产价格中位数是多少?”
“显示伦敦 SW1A1DA 附近的近期销售记录”
“比较西雅图和凤凰城的房价”
“过去 6 个月丹佛 80202 附近卖出了什么?”
该服务器查询官方政府房地产注册中心并返回真实的交易数据,而非估算值。
Related MCP server: dld-mcp
市场覆盖
市场 | 交易记录 | 数据来源 | 货币 | Web 应用 |
英国 | 31,000,000 | HM Land Registry | GBP | |
法国 | 8,300,000 | DVF (data.gouv.fr) | EUR | |
迪拜 | 1,006,000 | Dubai Land Department | AED | |
新加坡 | 973,000 | Housing & Development Board | SGD | |
凤凰城 | 841,000 | Maricopa County Assessor | USD | |
西雅图 | 803,000 | King County Assessor | USD | |
台湾 | 669,000 | 内政部 | TWD | |
纽约市 | 505,000 | NYC Dept of Finance | USD | |
匹兹堡 | 288,000 | Allegheny County | USD | |
迈阿密 | 284,000 | Miami-Dade County | USD | |
康涅狄格州 | 282,000 | Office of Policy & Management | USD | |
芝加哥 | 282,000 | Cook County Assessor | USD | |
华盛顿特区 | 256,000 | OTR CAMA | USD | |
费城 | 240,000 | Office of Property Assessment | USD | |
爱尔兰 | 230,000 | Property Price Register | EUR | |
丹佛 | 53,000 | Denver County Assessor | USD |
工具
工具 | 描述 |
| 按位置和半径搜索可比销售记录。返回价格、日期、地址、房产类型和统计数据。 |
| 获取区域价格统计数据:中位数、平均值、最小值、最大值,并按房产类型细分。 |
| 列出所有 16 个可用市场及其交易数量和示例。 |
安装
pip install mcp httpx设置 — Claude Desktop
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"property-comps": {
"command": "python",
"args": ["path/to/mcp_server.py"]
}
}
}macOS 上:~/Library/Application Support/Claude/claude_desktop_config.json
Windows 上:%APPDATA%\Claude\claude_desktop_config.json
设置 — Claude Code
claude mcp add property-comps python /path/to/mcp_server.py工作原理
服务器会根据您的位置格式自动检测市场:
输入 | 检测到的市场 |
| 英国 (邮编模式) |
| 纽约 (邮编范围) |
| 法国 (邮编范围) |
| 新加坡 (6 位代码) |
| 迪拜 (区域名称) |
| 华盛顿特区 (邮编范围) |
| 西雅图 (邮编范围) |
| 凤凰城 (邮编范围) |
| 丹佛 (邮编范围) |
| 匹兹堡 (邮编范围) |
| 康涅狄格州 (城镇名称) |
| 爱尔兰 (县名) |
| 台湾 (城市名称) |
您也可以显式指定市场:market="uk", market="nyc" 等。
示例
用户: “纽约 10001 附近的近期房产销售情况如何?”
AI 回复:
New York City - 42 comparable sales found near 10001
Statistics: Median: USD 515,000 | Average: USD 892,000 | Range: USD 185,000 - USD 3,200,000
1. USD 515,000 | 2025-12-23 | Condo | 123 W 23rd St, Manhattan
2. USD 1,250,000 | 2025-11-15 | Condo | 45 W 25th St, Manhattan
3. USD 375,000 | 2025-10-30 | 1-Family | 310 E 23rd St, Manhattan
Data source: New York City government property registry数据
所有可比销售数据均来自官方政府开放数据注册中心。每月更新。每个结果都是实际记录的房地产交易——而非估算值,也非挂牌价格。这是银行和测量师进行估值时所依赖的同一政府来源。
同时在 RapidAPI 上提供
不需要 MCP?同样的可比销售数据作为标准 REST API 在 RapidAPI 上提供,位于房地产类别下的 “Property Comps API”。
RapidAPI 列表: Property Comparable Sales API
4 个定价层级: 免费 (50 次请求/月)、专业版 ($29)、超值版 ($99)、大型版 ($299)
MCP 无需 API 密钥 — MCP 服务器直接连接到后端
API
此 MCP 服务器连接到 Property Comps API。相同的 API 为 RapidAPI 列表和所有 16 个特定市场的 Web 应用提供支持。
OpenAPI 规范: https://api.nwc-advisory.com/openapi.json
RapidAPI 市场: Property Comparable Sales API
美国市场 -- 统一平台
这 10 个美国城市也可以通过 property-us.nwc-advisory.com 的统一界面访问——一次登录,即可搜索纽约、芝加哥、迈阿密、费城、华盛顿特区、西雅图、凤凰城、丹佛、匹兹堡和康涅狄格州。
其他工具
投资组合 X-Ray -- 免费的基金透视分析 (Morningstar X-Ray 的替代品)
投资组合整合 -- 具有双语 PDF 报告的多托管人投资组合合并
市场风险 API -- 具有完整审计追踪的 7 信号机制检测
许可证
MIT
Available Tools
3 toolsget_area_statsB
Get price statistics for a property market area.
Returns median, average, min, max prices with breakdown by property type.
Covers all 16 markets.
Args:
location: Postcode, ZIP code, or area name
market: Market code (optional, auto-detected)
months: Look-back period in months (default: 12)
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | ||
| market | No | ||
| months | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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 describes what the tool returns (price statistics with breakdowns) and mentions default values and optional parameters, which adds useful context. However, it doesn't disclose important behavioral traits like rate limits, authentication requirements, error conditions, or whether this is a read-only operation (though 'Get' implies it likely is).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, followed by return details and scope. The parameter explanations are organized in a clear Args section. Every sentence adds value, though the structure could be slightly more polished (e.g., combining the scope mention with the purpose).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (which handles return values), 3 parameters with good semantic coverage in the description, and no annotations, the description is reasonably complete. It explains what the tool does, what it returns, and parameter meanings. The main gap is lack of behavioral context (rate limits, errors, etc.) and usage guidance relative to siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant semantic value beyond the input schema, which has 0% description coverage. It explains what each parameter means: 'location' accepts postcode, ZIP code, or area name; 'market' is optional and auto-detected; 'months' is look-back period with default of 12. This compensates well for the schema's lack of descriptions, though it doesn't specify format constraints or valid ranges.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get price statistics for a property market area' with specific details about what it returns (median, average, min, max prices with breakdown by property type) and scope ('Covers all 16 markets'). It distinguishes itself from siblings by focusing on aggregated statistics rather than listing markets or searching individual properties. However, it doesn't explicitly contrast with sibling tools in the description text itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 the sibling tools (list_markets, search_property_comps). It mentions the scope ('Covers all 16 markets') but doesn't explain when this statistical analysis is preferred over listing markets or searching property comps. There are no explicit when/when-not statements or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_marketsA
List all 11 available property markets with transaction counts and location examples.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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 indicates this is a read-only operation (listing markets) and specifies the output includes transaction counts and location examples, adding useful context. However, it lacks details on potential limitations, such as data freshness or any access restrictions, which would be beneficial 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the key action ('List all 11 available property markets') and includes essential details without waste. Every word earns its place, 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no annotations, but with an output schema), the description is complete enough. It clearly states the purpose and output details (transaction counts and location examples), and since an output schema exists, it does not need to explain return values further. This covers the necessary context for a simple listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the schema fully documents the absence of parameters. The description does not add parameter-specific information, but since there are no parameters, the baseline is 4. It effectively communicates that no inputs are needed, aligning with the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('List all 11 available property markets') and includes what information is provided ('with transaction counts and location examples'), distinguishing it from siblings like 'get_area_stats' and 'search_property_comps' which focus on statistics and property comparisons respectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying it lists 'all 11 available property markets,' suggesting it's for obtaining a comprehensive overview rather than filtered results. However, it does not explicitly state when to use this tool versus alternatives like 'get_area_stats' or 'search_property_comps,' missing explicit exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_property_compsA
Search for comparable property sales near a location.
Covers 16 markets: UK, France, Singapore, NYC, Chicago, Dubai, Miami,
Philadelphia, Connecticut, Ireland, Taiwan, Washington DC, Seattle, Phoenix, Denver, Pittsburgh.
Returns recent sales with price, date, address, property type, and area statistics.
Args:
location: Postcode, ZIP code, or area name. Examples: SW1A1AA (UK), 10001 (NYC), 75001 (Paris), Dubai Marina, 310093 (Singapore)
market: Market code (optional, auto-detected from location). One of: uk, fr, sg, nyc, chi, dxb, mia, phl, ct, ie, tw, dc, sea, phx, den, pit
months: Look-back period in months (default: 12)
radius: Search radius in miles (UK/US) or km (others). Default: 1.0
property_type: Filter by type. UK: D/S/T/F. NYC: Condo/1-Family. SG: 3 ROOM/4 ROOM/5 ROOM. Optional.
limit: Max results (default: 10)
| Name | Required | Description | Default |
|---|---|---|---|
| location | Yes | ||
| market | No | ||
| months | No | ||
| radius | No | ||
| property_type | No | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool returns recent sales with specific fields (price, date, etc.) and covers 16 markets, which adds useful context. However, it lacks details on permissions, rate limits, error handling, or data freshness, leaving behavioral gaps for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, followed by market coverage, return data, and parameter details. It's appropriately sized, but the parameter section is lengthy; however, each sentence earns its place by adding critical information given the low schema coverage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, 0% schema coverage, no annotations) and the presence of an output schema, the description is largely complete. It covers purpose, markets, returns, and parameter semantics. A slight gap exists in behavioral details like error cases or performance limits, but the output schema likely handles return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds significant meaning beyond the schema by explaining each parameter's purpose, providing examples (e.g., location formats), listing market codes, specifying defaults, and detailing property type codes per market, effectively documenting all 6 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for comparable property sales near a location, specifying the verb 'search' and resource 'comparable property sales'. It distinguishes from sibling tools like 'get_area_stats' and 'list_markets' by focusing on sales data rather than statistics or market listings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by listing the 16 covered markets and indicating it's for finding recent sales data. However, it doesn't explicitly state when to use this tool versus the sibling tools 'get_area_stats' or 'list_markets', missing explicit alternatives or exclusions.
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.
3 tool updates
- First observed
get_area_stats - First observed
list_markets - First observed
search_property_comps
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose with no overlap: get_area_stats provides aggregated market statistics, list_markets enumerates available markets, and search_property_comps finds specific comparable sales. An agent can easily distinguish between these three functions without confusion.
All three tools follow a consistent verb_noun naming pattern (get_area_stats, list_markets, search_property_comps) with clear, descriptive names. The naming convention is uniform throughout the toolset.
Three tools is appropriate for a property comparable sales server, covering core functionality: market overview, statistics, and detailed searches. While slightly minimal, each tool earns its place without feeling thin for the domain.
The toolset covers essential operations for property sales analysis: listing markets, getting area statistics, and searching comps. Minor gaps might include more granular filtering or historical trend analysis, but agents can work effectively with the provided tools.
Maintenance
Related MCP Connectors
GDPR-clean property listings, rents, price stats, yields and below-market deals. UK, EU.
U.S. real-estate data: property records, AVM value + rent estimates, sale/rental listings.
UK property data — Land Registry comps, EPC, Rightmove, rental yields, stamp duty, Companies House
UK area & property intelligence for AI agents: reports, EPC, comparables, with source provenance.
Related MCP Servers
- AlicenseAqualityBmaintenanceUK property data MCP server — Land Registry comps, EPC, Rightmove, rental yields, stamp duty, Companies House. 13 tools.1316MIT
- AlicenseAqualityCmaintenanceEnables querying 1.6M+ Dubai Land Department sales transactions and 9.5M+ Ejari rental contracts with flexible filters by area, property type, bedrooms, and date range.11MIT
- FlicenseAqualityCmaintenanceVerified Singapore property, tax, affordability, salary, and location data for AI agents. 17 MCP tools, x402 micropayments, source provenance on every response. Singapore live now, more markets coming. Categories: Finance, Real Estate, Data, Singapore, x402, Payments, Government Data17-
- FlicenseNot gradedqualityBmaintenanceProvides free property and parcel intelligence using official US government data APIs, county assessor records, and live listings, with tools for hazard risk checks, affordability calculations, and parcel ranking.-