Skip to main content
Glama

Cenogram - Polish Real Estate Data

list_developer_investments

Read-only

Beta: developers' investments with a current price list in an area, with partial coverage (only price lists matched to an address); at times briefly "temporarily unavailable". Asking prices from the price lists developers publish by law, NOT transaction prices. Returns a summary over ALL matched investments (investments, units on offer, median PLN/m², unit mix, price range; none below three investments) plus a cursor-paged list (name, brand, company, address, units, PLN/m² median and range, first and last seen). investmentId narrows the list only. ONE area: teryt (county, municipality or Warsaw district; codes from list_locations) or location (name; ambiguous → candidates), optional street; or lat + lng + radiusKm (0.1-5, default 2; nearest first, else most units first). Natural persons and partnerships are never listed (counted as unnamed). A short or empty list never proves nothing is being built (permits: get_permits_in_area; deeds: search_transactions with latitude, longitude, radiusKm). Cost: 10 API tokens per call, also when empty.

Input Schema

NameRequiredDescriptionDefault
latNoCircle centre latitude (WGS84, Poland); never guessed. Needs lng.
lngNoCircle centre longitude (WGS84, Poland); never guessed. Needs lat.
limitNoInvestments per page, 1-50 (default 20).
terytNoOne TERYT code: 4 digits county, 6-7 digits municipality or Warsaw district. Wins over location.
cursorNoCursor from the previous answer, unchanged; same area and investmentId.
streetNoNarrows teryt/location to this street.
locationNoCity, county, municipality or district name. This OR teryt.
radiusKmNoRadius in km, 0.1-5 (default 2); with lat and lng.
investmentIdNoinvestment_id from an earlier answer; narrows the list, not the summary.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered; the description adds substantial context beyond that: beta status, partial address-matching coverage, occasional 'temporarily unavailable' responses, legal asking prices rather than transaction prices, suppression of natural persons and of areas with fewer than three investments, and a 10-token cost. The only real gap is pagination behavior beyond the cursor mention.

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?

Front-loaded with the beta caveat and the asking-price disclaimer, then area selection, then return shape and alternatives. It is dense and reads as a single wall of text, but nearly every clause carries decision-relevant information; minor trimming of the parenthetical enumerations would help.

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

Completeness5/5

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

For a 9-parameter, zero-required, no-output-schema tool, the description covers the return shape explicitly (summary aggregates plus cursor-paged per-investment fields), the area-selection constraint, pagination via cursor, and the pitfalls of interpreting empty results. Nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds genuine meaning: investmentId narrows the list only and not the summary, cursor must reuse the same area and investmentId, teryt wins over location, and radiusKm defaults to 2 with nearest-first ordering. It clarifies cross-parameter interactions the schema documents only field-by-field.

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

Purpose5/5

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

States a specific verb and resource (list developers' investments with current price lists in an area) plus the scope qualifier 'Beta' and the coverage caveat. It explicitly contrasts with siblings — permits via get_permits_in_area, deeds via search_transactions, codes via list_locations — so an agent can distinguish it without opening any schema.

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

Usage Guidelines5/5

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

Gives concrete when-to-use routing ('A short or empty list never proves nothing is being built') and names the alternative tool for each missing-signal case. Also specifies the exactly-one-area rule (teryt/location or lat+lng) and warns about cost per call including empty results.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources