Skip to main content
Glama

Every Room

Server Details

Search homes for sale and to rent across Europe and the UAE, keep shortlists, reveal sellers.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 13 tools

Disambiguation4/5

Most tools have a clearly distinct resource+action: search vs get vs compare for listings, save vs remove for listings, save vs delete for searches. There is mild overlap between my_account (which also lists shortlists and saved searches) and the dedicated my_saved_listings/my_saved_searches tools, but the boundaries remain understandable.

Naming Consistency4/5

The dominant pattern is verb_noun (search_listings, get_listing, save_listing, delete_saved_search, reveal_seller) applied consistently. The personal-data tools use a my_ prefix (my_account, my_saved_listings, my_saved_searches), which is a coherent sub-convention rather than chaos.

Tool Count5/5

Thirteen tools is well-scoped for a consumer property search service, with search, retrieval, comparison, saved items, account state, market discovery and area resolution all earning their place. No obvious filler.

Completeness4/5

The lifecycle is well covered: discover markets, resolve area, search, get, compare, save/remove listings, save/delete searches, reveal sellers, and inspect account. Minor gaps like renaming/updating a saved search or managing shortlists directly exist, but agents can work around them.

Available Tools

13 tools
compare_listingsCompare listingsA
Read-onlyIdempotent
Inspect

Two to six listings side by side: price, euros per square metre, size, rooms, place and age of the ad.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesListing ids from search_listings.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavior: it reveals exactly which attributes are returned (price, €/m², size, rooms, place, ad age), which matters because there is no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, no filler, and the cardinality constraint plus the returned fields are front-loaded so an agent grasps scope immediately.

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?

With no output schema, the description usefully compensates by listing the returned columns and the 2-6 id bound. It leaves minor gaps such as ordering of the comparison or behavior on invalid/duplicate ids, but is adequate for this simple read tool.

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 coverage is 100% and the single parameter is documented there ('Listing ids from search_listings'). The description's 'two to six' restates the schema's minItems/maxItems without adding format or error semantics, so baseline 3 applies.

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?

The description states a concrete action (putting listings side by side) and enumerates the compared attributes, which clearly separates it from the single-listing get_listing sibling. It does not name siblings explicitly, so it stops 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.

Usage Guidelines3/5

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

Usage is implied by the 'two to six listings' framing and by the fact that ids come from search_listings, but there is no explicit statement of when to prefer this over get_listing called repeatedly, nor any exclusion criteria.

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

find_areaFind an areaA
Read-onlyIdempotent
Inspect

Turn a place name into the area slugs search_listings filters on, with how many homes each area has. Example: country "ae", text "marina" finds dubai-marina.

ParametersJSON Schema
NameRequiredDescriptionDefault
dealNoCount only homes for sale, or only to rent.
textYesA neighbourhood, district or town name, in any spelling.
countryYesTwo-letter market code from list_markets.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description adds genuinely useful behavior: the return content (slugs plus per-area home counts) and an example showing fuzzy matching behavior ("marina" -> dubai-marina), which matters since there is no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero waste. The core purpose is front-loaded and the example immediately follows, earning its place by demonstrating the fuzzy-match behavior.

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?

With no output schema, the description carries the burden of describing returns and does so (slugs + counts). It leaves open edge cases such as multiple or zero matches, but everything needed to call it correctly is present.

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 worked example (country "ae", text "marina") concretely demonstrates the expected value formats and matching semantics beyond the schema's terse field descriptions. The deal parameter's effect on counts is left to 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 transformation (place name -> area slugs) and names the sibling it feeds (search_listings), plus the extra payload (home counts per area). An agent can distinguish this from search_listings, get_listing, and list_markets 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 Guidelines4/5

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

The phrase "the area slugs search_listings filters on" clearly positions this as the prerequisite step when you have a place name but not a slug. There are no explicit exclusions or named alternatives, but the workflow context is unambiguous.

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

get_listingGet a listingA
Read-onlyIdempotent
Inspect

Everything public about one listing: title, description, all photos, price, size, rooms, place and similar homes. Seller contact is not included.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA listing id from search_listings.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower, and the description adds real value beyond them: it specifies the data scope ('everything public') and calls out a notable exclusion ('Seller contact is not included'), which is exactly the kind of gap an agent would otherwise guess at.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences, zero filler, and the return payload is front-loaded ahead of the caveat. Every clause carries information.

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?

With no output schema, the description carries the burden of describing return content, and it does so by enumerating fields and flagging what is absent (seller contact). For a single-id read tool this is complete enough to call correctly.

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?

One parameter at 100% schema coverage, and the schema already explains that the id comes from search_listings. The description adds no syntax, format, or validity information beyond the schema, so the baseline 3 applies.

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+resource ('Get a listing') and then enumerates the returned payload (title, description, photos, price, size, rooms, place, similar homes), which lets an agent distinguish it from summary-style siblings like search_listings. It stops short of explicitly naming which sibling to use for which need, so it is clear but not sibling-differentiating.

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

Usage Guidelines3/5

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

Usage is only implied: the exclusion of seller contact hints that reveal_seller is the tool for that data, and the schema (not the description) points to search_listings as the id source. There is no explicit when-to-use statement or named alternative routing.

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

list_marketsList marketsA
Read-onlyIdempotent
Inspect

The countries Every Room covers, with how many homes are for sale and to rent in each, the currency, and which filters work there. Call this first to get the two-letter market codes the other tools take.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely non-structured context—that the payload is a per-country breakdown of sale/rent counts, currency, and filter availability—which compensates for the absent output schema, though it says nothing about format, caching, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, both earning their place: the first defines the returned content, the second sequences the call before dependent tools. The most action-relevant fact (what it returns and why call it first) is front-loaded with no filler.

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 parameterless, read-only discovery tool with no output schema, the description supplies exactly the missing pieces: the shape of the returned records and its role as the prerequisite step for market-code-dependent tools. Nothing needed to invoke it correctly is absent.

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?

The tool takes zero parameters, so the baseline of 4 applies. The description correctly implies a no-argument call ('Call this first'), leaving nothing about inputs ambiguous.

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_markets' = the countries Every Room covers) and enumerates exactly what each entry contains: home counts for sale and rent, currency, and supported filters. No sibling tool overlaps this scope, so an agent can place it immediately.

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?

Explicitly instructs 'Call this first to get the two-letter market codes the other tools take,' which is a direct when-to-use rule and an implicit prerequisite for the rest of the sibling set. Given no alternative tool exists for this purpose, no exclusion clause is needed.

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

my_accountMy accountA
Read-onlyIdempotent
Inspect

The signed-in person's Every Room account: their plan and how many seller reveals are left this week, their shortlists and their saved searches. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds the auth requirement ('Needs sign-in') and scopes the reveal count to 'this week', both of which are behavioral facts the annotations do not carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tightly packed sentence plus a short prerequisite clause, with the resource front-loaded and no filler. Every listed item (plan, reveals, shortlists, saved searches) earns its place as a return-value preview.

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?

With no output schema, the description carries the burden of saying what comes back, and it does list the returned content plus the auth requirement. The only gap is that it does not clarify the overlap with my_saved_searches / my_saved_listings, which an agent choosing among these tools would want.

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?

The tool takes zero parameters and the schema is fully self-describing, which is the baseline-4 case. The description adds nothing about parameters because there is nothing to add, and it correctly implies the account is inferred from the session rather than passed in.

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?

It names the specific resource (the signed-in person's account) and enumerates what that account view contains: plan, weekly seller-reveal balance, shortlists, saved searches. That is concrete rather than tautological, but it never distinguishes itself from siblings like my_saved_searches or my_saved_listings, which also surface saved-search/list data.

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

Usage Guidelines3/5

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

The closing 'Needs sign-in' gives one prerequisite, which is useful. However, there is no statement of when to prefer this overview over the more specific sibling tools (my_saved_searches, my_saved_listings), so usage is only implied.

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

my_saved_listingsMy saved listingsA
Read-onlyIdempotent
Inspect

The listings in the person's shortlists, newest first: every list, or only the one named. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault
listNoOnly this shortlist. Optional.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the bar is lower. The description adds two useful pieces beyond that: result ordering ('newest first') and an auth prerequisite ('Needs sign-in'), which an agent must know before calling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact sentence plus a short auth note; scope and ordering are front-loaded and nothing is redundant.

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?

For a simple read-only list tool, the definition covers scope, ordering, and auth, which is most of what an agent needs. It omits any hint about result size or pagination, though with no output schema that is a minor gap rather than a blocker.

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 100% and the single `list` parameter is already documented as 'Only this shortlist. Optional.' The description's 'only the one named' restates that rather than adding format or matching semantics, so baseline 3 applies.

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 resource (the listings in the person's shortlists) and its ordering (newest first), which distinguishes it from write-oriented siblings like save_listing or remove_saved_listing. It doesn't explicitly contrast with search_listings, but the 'shortlists' scope is clear enough to select correctly.

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

Usage Guidelines3/5

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

'every list, or only the one named' implies when to supply the optional `list` parameter, so usage is inferable rather than explicit. There is no statement of when-not to use it or which sibling to prefer for other listing retrieval needs.

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

my_saved_searchesMy saved searchesA
Read-onlyIdempotent
Inspect

The person's saved searches, newest first, each with the link that reopens it. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered; the description adds context annotations cannot: an authentication requirement ('Needs sign-in') and the ordering plus return shape of each entry. Slightly short of 5 only because it says nothing about pagination or what happens with an empty set.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, zero filler, with the resource and ordering front-loaded and the auth prerequisite placed last where it belongs.

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?

For a parameterless read tool with no output schema, the description supplies what matters: identity scope, sort order, per-item contents, and the sign-in requirement. Only edge-case behavior (empty results, any result cap) is unmentioned.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a 0-param tool is 4.

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 resource (the person's saved searches) with ordering (newest first) and per-item payload (the link that reopens it), which lets an agent know exactly what it returns. It doesn't explicitly contrast with siblings like save_search or my_saved_listings, so it stops short of 5.

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

Usage Guidelines3/5

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

Usage is implied by the name and description — read this to see what the user has saved — but there is no explicit when-to-use/when-not framing or named alternative (e.g., my_saved_listings for saved listings vs. saved searches). Adequate but leaves routing to inference.

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

remove_saved_listingRemove a saved listingA
DestructiveIdempotent
Inspect

Take a listing out of the person's shortlists: out of the named list, or out of every list of theirs that holds it. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
listNoOnly this shortlist. Optional.

TDQS

A3.9/5.0
Behavior4/5

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

Adds value beyond the annotations: it discloses the realistic scope of destruction (removal from every list that holds the listing, not just one) and the sign-in requirement, neither of which is in the annotation block. It notably implies the listing itself is not deleted, only its shortlist membership – useful nuance the destructiveHint alone would not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence that front-loads the action, then the parameter-driven scope, then the auth note last. No wasted words, no redundancy with the schema or title.

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?

Covers the key agent needs: what is removed, the two scopes, and the auth requirement, with annotations already carrying the safety profile (destructive, idempotent). No output schema exists and none is needed, though success/failure behavior on a non-member listing is left to the idempotent annotation.

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?

With only 50% schema coverage, the description compensates by explaining the default behavior when `list` is omitted (remove from all lists), which the schema ('Only this shortlist. Optional.') does not state. The `id` parameter remains undocumented in both, but its meaning is self-evident.

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?

Specific verb+resource: 'Take a listing out of the person's shortlists' clearly states the operation on the shortlist resource, setting it apart from delete_saved_search (a different resource) and save_listing (the inverse). It never names a sibling explicitly, but the resource alone is unambiguous.

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

Usage Guidelines3/5

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

The description clarifies the two operating modes ('out of the named `list`, or out of every list of theirs that holds it') and adds an auth prerequisite, which is genuine usage context. However, it gives no explicit when-to-use vs. save_listing or when-not guidance and leaves routing to alternatives to inference.

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

reveal_sellerReveal the sellerA
Idempotent
Inspect

Reveal who is selling or letting a listing: the portal or agency it is advertised on, the agent, the ad reference and the link to the original ad, plus the ad's own text. Spends one reveal from the person's Every Room plan (Search US$9.99 a week (5 sellers), Pro US$21.99 a week (20 sellers)), or their one free reveal; a listing already revealed costs nothing. Ask the person before spending one. Without reveals left it returns revealed: false with an upgrade_url for the person to open. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA listing id from search_listings.

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses that a credit is consumed, the concrete plan pricing and reveal counts, the free-reveal case, idempotent behavior (already revealed costs nothing, matching idempotentHint), the sign-in requirement, and the failure shape (revealed: false with upgrade_url). This is exactly the behavioral detail annotations alone cannot convey.

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-loads the purpose and return fields, then the cost/auth caveats. The pricing parenthesis is dense but directly supports the spend-decision the agent must make, so it earns its place; slightly tighter phrasing could still trim it.

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?

Despite having no output schema, the description explains the meaningful return outcome (revealed: false + upgrade_url when quota is exhausted) and all preconditions. An agent has everything needed to decide whether to call it.

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?

Only one parameter (id) with 100% schema description coverage and a clear schema description pointing back to search_listings. The description adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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 (reveal) and resource (who is selling/letting a listing) and enumerates the exact fields returned: portal/agency, agent, ad reference, original ad link, ad text. This clearly separates it from read-only siblings like get_listing or search_listings, which cannot return seller identity.

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 strong when-to-use context: requires sign-in, must ask the person before spending a reveal, an already-revealed listing costs nothing, and no-reveals-left returns revealed: false. It stops short of naming alternatives (e.g., get_listing for free non-seller data), so it is clear context rather than full alternative routing.

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

save_listingSave a listingA
Idempotent
Inspect

Save a listing to one of the person's shortlists, the same lists the heart on evryroom.com saves to. Without list, it goes to their first list (made for them if they have none); a list name that does not exist yet becomes a new list. Needs sign-in.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA listing id from search_listings.
listNoA shortlist name. Optional.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare this is a non-readOnly, non-destructive, idempotent, closed-world write. The description adds context annotations can't carry: authentication is required, and a side effect occurs (a first list is created if none exists, and an unknown `list` name silently creates a new list). It doesn't describe the response payload, but that gap is modest.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences; the core action and destination come first, followed by the parameter branching and the auth requirement. No filler.

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?

With no output schema, the description should carry the return/confirmation story, and it does not say what a successful save returns or reports. Otherwise it covers the mutation semantics, side effects, and auth, which is nearly everything an agent needs to invoke it correctly.

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 the baseline is 3, but the description goes further by defining the fallback semantics of `list` when omitted and the create-on-unknown behavior, which the schema's 'A shortlist name. Optional.' does not convey. It also implicitly documents that `id` comes from search_listings, matching 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 (save) and resource (a listing) plus the destination concept (the person's shortlists, tied to the evryroom.com heart behavior), which cleanly separates it from remove_saved_listing and my_saved_listings. An agent knows exactly what this does 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?

Explains the branching conditions for the optional `list` parameter (absent -> first list, made if none; unknown name -> new list) and the sign-in prerequisite, which is solid context. It stops short of naming alternatives or stating when-not-to-use (e.g., when the listing is already saved, or versus save_search).

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

search_listingsSearch homesA
Read-onlyIdempotent
Inspect

Search homes for sale or to rent in one market. Returns 24 listings a page, newest first unless sorted, with price, size, rooms, place and a photo. Up to 4 pages per search: narrow with filters rather than paging. Prices filter in euros: the sale price, or the rent per month (also in markets that quote rent per year).

ParametersJSON Schema
NameRequiredDescriptionDefault
dealNoFor sale or to rent. Defaults to sale where the market has it.
kindNo
nearNoOnly homes within a radius of a point.
pageNo
sortNoppm2 sorts by price per square metre, cheapest first.
textNoWords to find in the title or place, e.g. "penthouse" or "sea view".
townNoA town name exactly as listings carry it.
areasNoArea slugs from find_area. A home in any of them matches.
min_m2NoMinimum floor area in square metres.
countryYesTwo-letter market code from list_markets.
settingNoWhat is around the home; every one listed must hold. Only where list_markets says setting_filter.
min_bedsNoMinimum bedrooms; in markets where list_markets says rooms, minimum rooms.
min_bathsNo
max_price_eurNoSale price, or rent per month, in euros.
min_price_eurNoSale price, or rent per month, in euros.

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the readOnly/idempotent/non-destructive annotations, it discloses page size (24 results), default ordering ('newest first unless sorted'), the fields returned, and a hard 4-page cap on a single search. It also explains the currency semantics of the price filters, including the rent-per-year market caveat. These are the behavioral traits an agent cannot infer from the annotations or schema.

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 sentences, front-loaded with the purpose and results shape, with no filler. The final sentence about euro pricing is slightly convoluted but earns its place because the unit ambiguity genuinely affects filter values.

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?

For a 15-parameter search tool with annotations but no output schema, the description covers result shape, ordering, pagination limits, and price-unit semantics, leaving the remaining filters (kind, town, text, areas, near, min_baths) to the well-populated schema. Nothing essential for correct invocation 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 already 80%, so most parameters are self-documenting, but the description adds value by clarifying that price min/max are interpreted as a sale price or a monthly rent in euros, and that some markets quote rent annually. It also reinforces that filters ('narrow') are preferred over the page parameter, adding intent the schema does not convey.

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 with scope ('Search homes for sale or to rent in one market'), which is clearly distinct from single-listing siblings like get_listing or compare_listings. It does not explicitly name any sibling to route the agent, so it stops 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.

Usage Guidelines4/5

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

'Up to 4 pages per search: narrow with filters rather than paging' gives concrete operational guidance on when to filter versus paginate, which is the key usage decision for this tool. There are no explicit exclusions or named alternatives, so it is clear context rather than full routing guidance.

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. 13 tool updates
    • First observedcompare_listings
    • First observeddelete_saved_search
    • First observedfind_area
    • First observedget_listing
    • First observedlist_markets
    • First observedmy_account
    • First observedmy_saved_listings
    • First observedmy_saved_searches
    • First observedremove_saved_listing
    • First observedreveal_seller
    • First observedsave_listing
    • First observedsave_search
    • First observedsearch_listings

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Unified UK property search across major portals with deduplication and open-data enrichment, enabling natural-language queries for listings, sold prices, EPC, crime, schools, and market stats.
    10
    MIT
  • A
    license
    C
    quality
    D
    maintenance
    Enables access to Idealista API for searching and retrieving property listings across Spain, Portugal, and Italy. Supports various property types including homes, apartments, garages, commercial properties, offices, and land with detailed filtering options.
    14
    3
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Search comparable property sales across 16 global markets with 43M+ government-sourced transactions. Tools: search comps by location, get area statistics and trends, list available markets. Covers UK, France, Singapore, NYC, Chicago, Dubai, and 10 more cities.
    3
    4
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables discovery and evaluation of primary residence housing opportunities in Ibiza, including property scoring, mortgage scenario calculations, and validated submission of candidate listings.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources