Skip to main content
Glama
lambda-house

korter-mcp

by lambda-house

search_projects

Find Tbilisi new-build projects by district, price, rooms, area, developer, and construction status. Uses local journal data and flags stale results.

Instructions

Search observed Tbilisi new-build projects. Criteria: district/city (korter's taxonomy, as-is), price per m² and total budget, rooms and unit area (need per-unit data — see get_skill 'apartment-search'), construction/sales status, building type, developer, free text. Served from the local journal — check staleness_days on every result. Room/area filters only consider projects whose project page has been observed; candidates lacking that data are listed separately so you can refresh them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNosubstring match on name, address, developer or slug
cityNo
roomsNoexact room count of at least one available unit type
currencyNoprice currency, default USD (korter's /en/ pages price in USD)
districtNokorter district name, e.g. 'Vake', 'Isani' (their taxonomy, as-is)
developerNosubstring match on developer name
min_roomsNo
max_budgetNototal price cap — matches price_from or any unit's minimum price
max_area_m2No
min_area_m2Nounit area range must overlap [min_area_m2, max_area_m2]
building_typeNoe.g. 'cottage'
include_delistedNo
max_price_per_m2No
min_price_per_m2No
construction_statusNo'construction' | 'ready' (korter's values)
include_sold_out_unitsNocount allSold unit types when matching rooms/area

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countNo
projectsNo
needs_unit_dataNoslugs passing card-level filters but lacking per-unit data for rooms/area criteria

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.1

TDQS

A4.1/5.0
Behavior4/5

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

No annotations, so the description carries the full burden and does reasonably well: it discloses data provenance ('served from the local journal'), a staleness caveat ('check staleness_days on every result'), and a significant filter limitation (room/area filters only consider projects with an observed project page). It omits auth/rate-limit and mutability facts, but says nothing contradicting a read-only search.

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?

Three dense sentences, front-loaded with the verb and resource, then criteria, then provenance/caveats. Every sentence carries information, though the middle criteria list is a bit packed.

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

Completeness4/5

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

An output schema exists so return-shape explanation is unnecessary, and the description covers provenance, staleness, and the observed-data filter constraint. Missing only guidance on flags like include_delisted and include_sold_out_units, which an agent must infer from schema descriptions alone.

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?

With 16 parameters at 63% schema description coverage, the schema does most of the work. The description's criteria list maps to the filter families (district/city, price per m²/budget, rooms/area, status, building type, developer, free text), and it adds the important caveat that room/area matching depends on observed per-unit data, but it gives no syntax or value details beyond the schema.

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

Purpose5/5

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

States a specific verb+resource ('Search observed Tbilisi new-build projects') and enumerates the searchable dimensions, which clearly separates it from the secondary-market sibling search_secondary. An agent can tell what it retrieves without opening the schema.

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?

Gives concrete routing guidance: per-unit room/area work points to get_skill 'apartment-search', and projects lacking observed per-unit data are returned separately so they 'can be refreshed' (presumably via refresh). It lacks an explicit when-not-to-use statement, but the context is clear.

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