ceny-nieruchomosci-mcp
Server Details
Polish real-estate deed prices and parcel checks: zoning plan, utilities, flood risk
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- ContentWriterco/ceny-nieruchomosci-mcp
- GitHub Stars
- 0
- Server Listing
- ceny-nieruchomosci-mcp
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: data_sources provides metadata, find_address resolves locations, and property_prices retrieves price data. There is no overlap in function, and descriptions clarify the relationship between find_address and property_prices.
All tool names use snake_case, but data_sources and property_prices are noun phrases while find_address follows a verb_noun pattern. This is a minor deviation that remains readable and predictable.
Three tools is a lean but appropriate set for a focused data-lookup service. Each tool serves a distinct function, though slightly more coverage (e.g., property type filtering) could justify a fourth tool.
The surface covers the core workflow: understanding data provenance, resolving Polish addresses, and retrieving price statistics. Minor gaps exist, such as explicit filtering by property type or fetching detailed transaction records, but these are not critical for the stated purpose.
Available Tools
4 toolsdata_sourcesData sourcesBRead-onlyInspect
Where the data comes from, licence and caveats.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds useful scope about returned metadata (origins, licence, caveats) but no auth, rate-limit, or format details; adequate given the 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?
One short, front-loaded phrase with no wasted words. It is a sentence fragment rather than a full sentence, but it is efficient and appropriately sized.
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?
For a zero-parameter, read-only metadata tool with no output schema, the description sufficiently names the content an agent should expect. Return formatting is unspecified, but the tool's complexity is low enough that this is a minor gap.
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?
There are no parameters and the schema is empty, so no parameter semantics are needed. Per the rubric, zero parameters yields a baseline of 4.
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?
States what the tool provides — data origins, licence, and caveats — which distinguishes it by content from find_address and property_prices. It lacks a specific verb and does not explicitly name siblings, so it falls short of a 5.
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?
No when-to-use guidance, no alternatives, and no exclusions are provided. The description only implies the tool is for metadata about data sources, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_addressFind an address (Poland)ARead-onlyInspect
Resolve a Polish address, street or town to coordinates using the official address register (GUGiK). Useful to check which place property_prices will use.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | e.g. 'Gdańsk, Długa 5' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety and external-lookup profile is covered. The description adds useful provenance (official GUGiK address register), but says nothing about failure behavior when no match is found, so it adds only modest context.
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?
Two tight sentences that front-load the action and output before the use case; no filler and nothing is buried.
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?
For a one-parameter geocoder with no output schema, the description covers both input shape and the returned value (coordinates) and notes the authoritative source. It stops short of describing no-match behavior or the coordinate format an agent could expect.
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?
With a single parameter at 100% schema coverage the baseline is 3, but the description goes beyond the schema's example by clarifying accepted input granularity (address, street, or town), which meaningfully shapes how an agent formats queries.
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?
States a specific verb (resolve) and resource (Polish address, street or town) with the output (coordinates) and the backing source (GUGiK register). It touches the sibling property_prices but does not contrast itself against data_sources, so differentiation is partial rather than explicit.
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?
Offers one motivating use case (checking which place property_prices will use), which implies when the tool is relevant, but gives no explicit conditions, prerequisites, or alternatives for choosing it over data_sources or property_prices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
parcel_reportParcel check (Poland): zoning, utilities, flood, protection, pricesRead-onlyInspect
Everything public about one land parcel (działka) in Poland: parcel id, area and land-use class from the land register (EGiB), local zoning plan (MPZP) and zoning symbol, utility networks on or near the plot (water, sewer, gas, power, heat, telecom – GESUT), flood hazard (ISOK maps), nature protection areas (GDOŚ) and plot prices nearby (RCN). query: parcel id "302109_4.0001.100", "obręb number" like "Bnin 100" or "obręb Bnin działka 100 gmina Kórnik", an address "Kórnik, Poznańska 1" (the parcel under the address point) or "lat,lon".
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Parcel id, 'obręb number', address or 'lat,lon' | |
| prices | No | Include plot prices nearby (default true) | |
| commune | No | Gmina / powiat name to pick the right parcel when 'obręb number' matches several |
property_pricesReal-estate transaction prices (Poland)ARead-onlyInspect
Actual sale prices of flats, houses or building plots near a place in Poland, from notarial deeds (official Rejestr Cen Nieruchomości). Returns median price per m², interquartile range, typical total price and area, breakdown by rooms, yearly trend and recent transactions. place: address "Poznań, Garbary 10", street "Kraków, Długa", town "Swarzędz" or "lat,lon".
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | flat = mieszkanie (default), house = dom, plot = działka niezabudowana | |
| place | Yes | Address, street, town or 'lat,lon' in Poland | |
| rooms | No | Only flats with this many rooms (5 = 5+) | |
| market | No | primary = od dewelopera, secondary = rynek wtórny (when recorded) | |
| months | No | Look back this many months (default 24) | |
| examples | No | How many recent transactions to list (default 8) | |
| max_area | No | Maximum area m² | |
| min_area | No | Minimum area m² | |
| radius_m | No | Search radius in metres (default 500 for flats, 1500 for houses/plots) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, openWorldHint), so the bar is lower. The description adds meaningful context beyond annotations: the authoritative source (notarial deeds, official registry) and the shape of the return (median per m², IQR, typical total price/area, room breakdown, trend, recent transactions). No auth or rate-limit notes, but the return disclosure is genuinely useful.
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?
Front-loaded with the substantive capability and return contents in one dense sentence, followed by a compact place-format primer. No filler. The trailing 'place:' fragment is slightly list-like but earns its place by disambiguating the required input syntax.
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?
For a 9-parameter, 1-required read tool with no output schema, the description covers source, return contents, and the tricky required parameter's syntax. Enum meanings (kind, market) and defaults live in the schema, which is at 100% coverage, so nothing critical is missing.
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 coverage is 100%, so baseline is 3. The description goes beyond the schema for the required 'place' parameter by giving concrete accepted formats ("Poznań, Garbary 10", "Kraków, Długa", "Swarzędz", "lat,lon"), which is the highest-value parameter guidance an agent needs here.
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?
States a specific verb+resource (actual sale prices of flats, houses, plots) with a named data source (notarial deeds / Rejestr Cen Nieruchomości) and geography (Poland). An agent can distinguish this from find_address and data_sources without opening a schema.
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 (you have a location, you want transaction prices), and the place-format examples imply the required input. However, it never states when to prefer this over find_address or data_sources, nor any exclusions or prerequisites. Adequate but no explicit routing.
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.
1 tool update
- Added
parcel_report
3 tool updates
- First observed
data_sources - First observed
find_address - First observed
property_prices
Related MCP Connectors
Polish real estate for AI: 8M+ deed transaction prices (RCN) + per-parcel context by cadastral ID
German property data per address, mostly from public authorities: parcel, land value, zoning, risks
French real estate data: cadastre, DVF sales, DPE energy ratings, price estimates, parcel context
Polish company registry: 4.4M firms, KRS/REGON data, VAT white list checks, financial statements
Related MCP Servers
AlicenseAqualityAmaintenance7M+ real estate transactions from Poland's RCN registry. Search, compare, and analyze prices2843 npm1MIT- AlicenseAqualityCmaintenanceEnables searching Polish administrative areas and retrieving real estate transaction data from the official registry via geoportal.gov.pl.3GPL 3.0
- AlicenseAqualityBmaintenanceEnables AI assistants to query Polish new-build housing data: developers' asking prices with price history, real transaction prices from the RCN register, and GUS/NBP market statistics, plus searchable locations, offers, investments and developers. Exposes thirteen read-only tools over the public deweloperuch.pl data, usable from any MCP client or the bundled CLI.1328MIT
- AlicenseNot gradedqualityCmaintenanceAccess 17M+ geocoded French property transactions (DVF), 22M+ DPE energy ratings, and 20M+ building records via MCP or REST API. Search transactions, market stats, comparables, price trends, rental yield, flip detection, and more.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.