Skip to main content
Glama

Find Property Comparables

find_property_comparables
Read-only

Find comparable recorded sales around a property, for valuation.

REQUIRED parameters:

  • latitude, longitude: Target property coordinates

  • type_local: "Maison" or "Appartement"

  • surface_min, surface_max: Surface range in m² (typically ±20% of target)

Optional:

  • pieces: Number of rooms (±1 tolerance applied)

  • code_postal, commune: Optional administrative fallback when GPS comparables are sparse

  • radius_m: Search radius (default: 500m, max: 2000m)

  • max_age_months: Transaction age limit (default: 18, same as estimate_property_value; max: 36) When fewer than 3 comps match, the search first extends to 36 months at the same radius, then to 2 km.

  • limit: Max comparables (default: 10, max: 20)

Returns:

  • Comparable properties with similarity scores (0-1)

  • Distance from target, age of transaction

  • Adjustment suggestions, to apply to the comparable's €/m² (e.g., "+2% for 10m² larger": smaller units sell dearer per m²)

  • excluded_comparables: sales left out (Carrez/built surface mismatch, €/m² over 2× from the median)

  • Valuation estimate with comparable-agreement confidence, plus a data-calibrated 50% interval (interval.*) and traceable confidence_factors — see estimate_property_value's description for the full field reference

Example: Find comps for a 75m² apartment near Tour Eiffel: {latitude: 48.858, longitude: 2.294, type_local: "Appartement", surface_min: 60, surface_max: 90}

Cost: 10 credits per call

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "latitude": "<latitude>",
      "longitude": "<longitude>",
      "type_local": "<type_local>",
      "surface_min": "<surface_min>",
      "surface_max": "<surface_max>"
    },
    "name": "find_property_comparables"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum comparables to return (default: 10, max: 20)
piecesNoNumber of rooms (optional, ±1 tolerance used)
communeNoCommune fallback when GPS comparables are sparse
latitudeYesLatitude of the target property (required)
radius_mNoSearch radius in meters (default: 500, max: 2000)
longitudeYesLongitude of the target property (required)
type_localYesProperty type (required for matching)
code_postalNoPostal code fallback when GPS comparables are sparse
surface_maxYesMaximum surface in m² (typically target surface + 20%)
surface_minYesMinimum surface in m² (typically target surface - 20%)
max_age_monthsNoMaximum transaction age in months (default: 18, max: 36)
exclude_bulk_salesNoExclude bulk sales (default: true)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • removedInput schema / properties / max_age_months / default
      Removed value: -12
    • changedInput schema / properties / max_age_months / description
      Previous value: -"Maximum transaction age in months (default: 12, max: 36)"New value: +"Maximum transaction age in months (default: 18, max: 36)"
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the readOnly/openWorld annotations, the description discloses credit cost, a three-stage widening strategy on sparse results, exclusion criteria (Carrez/built surface mismatch, €/m² over 2× median), and the return payload including confidence interval and confidence_factors. This is behavioral context an agent could not recover from 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.

Conciseness4/5

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

Purpose is front-loaded, parameters are grouped into required/optional, and a worked example plus cost line close it out. The Returns block is somewhat long and defers part of the field reference to a sibling tool, which costs a little crispness.

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 12 parameters and no output schema, the description carries the full burden and does so: it explains return values, similarity scores, excluded comparables, confidence and interval fields, plus failure-mode escalation. The only material gap, exclude_bulk_sales, is already covered by the schema.

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 interpretive value: ±20% surface banding, ±1 room tolerance, default age of 18 months tied to estimate_property_value, and the interaction where max_age_months and radius_m widen automatically. It omits exclude_bulk_sales entirely, which is documented only in the schema.

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 opening sentence gives a specific verb and resource ('Find comparable recorded sales around a property, for valuation') that an agent can distinguish from market-analysis siblings. It does not, however, draw the boundary with estimate_property_value, even though this tool also returns a valuation estimate and the description explicitly cross-references that sibling for field semantics.

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?

Usage conditions are concrete: required coordinate/type/surface inputs, GPS-to-postal-code fallback when comparables are sparse, escalation to 36 months then 2 km when fewer than 3 comps match, and a stated cost of 10 credits. What is missing is explicit routing versus estimate_property_value or search_property_transactions, which an agent would need given the overlapping output.

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