Skip to main content
Glama
pdimiev-prog

ImotAI MCP Server

by pdimiev-prog

Search ImotAI listings

search_properties

Find Bulgarian real-estate listings on imotai.bg by city, district, type, price, area, and rooms. Returns up to 25 structured listings with links and district market context.

Instructions

Search Bulgarian real-estate listings on imotai.bg by city, district, property type, price range, area range and rooms. Returns up to 25 listings with structured fields, a link to each, and a district-level marketContext block (district average price per m² and how far this listing deviates from it). No contact details or free-text descriptions.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityYesCity slug ("sofia") or Bulgarian name.
limitNoDefault 10, max 25.
roomsNoCSV of room counts, e.g. "2,3"; "5+" for 5 or more.
maxAreaNo
minAreaNo
districtNoDistrict slug from list_districts, e.g. "lozenets".
maxPriceNo
minPriceNo
propertyTypeNo
transactionTypeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations present, the description carries the full behavioral burden and does a decent job: it discloses the result cap ('up to 25 listings'), the shape of the payload including the district-level marketContext block, and explicitly what is NOT returned ('No contact details or free-text descriptions'). It omits sorting/ranking behaviour, pagination beyond the limit, and any auth or rate-limit notes.

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 with the core purpose front-loaded and no filler. The return-shape sentence is long and multi-clause but each clause (structured fields, links, marketContext) carries distinct information.

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

Completeness3/5

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

Ten parameters at 40% schema coverage and no annotations means the description must do more work; it handles the return contract well (compensating for the absent output schema) but leaves filter syntax and the district-slug dependency unstated, and gives no routing guidance among the four siblings.

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 only 40%, so the description should compensate, and it partially does by naming the filter dimensions (city, district, property type, price, area, rooms). However it adds no syntax or format detail beyond the schema (no CSV format for rooms, no '5+' convention, no slug guidance), leaving several undocumented numeric params (minArea, maxArea, minPrice, maxPrice) with no semantic explanation in either place.

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?

States a specific verb and resource ('Search Bulgarian real-estate listings on imotai.bg') and enumerates the filter dimensions, so the agent immediately knows this is the filtered listing-search tool. It does not explicitly contrast itself with get_property, estimate_value, or get_market_stats, so sibling differentiation is only implied by the verb choice.

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 never says when to use this tool versus get_property or get_market_stats, nor does it state exclusions or prerequisites (e.g. that district slugs must come from list_districts). Usage is only inferable from the enumerated filters, which is minimal guidance.

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