Comparables & Valuation · MCP tool
comps_get-comparables
Get Comparables
Over REST: POST /api/v2/comparables/search (equivalent), POST /api/v1/comparables/search (related), POST /api/v1/valuation/comparables-prices (related). MCP and REST compared.
Description
Retrieves comparable real estate properties and AI-powered market valuations using the Casafari Comparables Engine.
The tool analyzes:
- Active listings – current market offerings
- Historical transactions – past sales and rentals
- Verified DVF data – official property transfer records
Returns:
- Matched comparable properties ranked by relevance
- Aggregated market statistics (median prices, DOM, listing velocity)
- Estimated price ranges: fair market value, quick-sale price, premium pricing
Primary Use Cases
| Use Case | Description |
|---|---|
| Property Valuation | Price a listing based on real market data |
| Comp Analysis | Find similar properties for BPO/CMA reports |
| Market Research | Analyze local trends, absorption rates, pricing dynamics |
| Investment Modeling | Assess fair value vs. asking price spreads |
| Historical Trends | Track price evolution using sold_or_rented_after filter |
Key Capabilities
Advanced Filtering
- Property attributes: type, bedrooms, bathrooms, size, condition
- Structural features: floor level, orientation, views, parking, storage
- Quality markers: construction year, energy rating, renovation status
- Characteristic logic: must-have / nice-to-have / exclude lists
- Temporal filters: sold/rented after specific date
Spatial Precision
Uses a circle boundary (target point + radius in kilometers) or a closed polygon of geo-points to ensure all comparables reflect the same micro-market conditions. The target point accepts coordinates, an address, or a Spanish cadastral reference.
Output Intelligence
- Property-level data: individual comp details with photos, descriptions, pricing history
- Registry data: DVF records (dvf_results) and notarial transactions (transactional_data)
- Market-level stats: aggregated insights (median $/sqm, average DOM, inventory levels)
- Valuation estimates: algorithmic price recommendations based on comp set
Pro Tips
- Use tight radius (0.5-1 km) for urban areas, wider (2-5 km) for rural
- Combine sold_or_rented_after with recent date for "hot market" analysis
- Leverage characteristic filters to match unique property features (e.g., sea views, penthouse, ground floor)
- Check both active listings AND sold comps for complete market picture
Powered by Casafari's proprietary matching algorithm – trained on millions of European property transactions.
Parameters
comparables_countintegerrequiredlocation_boundaryobjectrequired2 properties
polygonobject[]2 properties
latitudenumberrequiredlongitudenumberrequiredcircleobject2 properties
distancenumbertarget_point to the properties. Default value: 5.target_pointobjectrequired3 properties
coordinatesobject2 properties
latitudenumberrequiredlongitudenumberrequiredaddressstringcadastral_referenceobject4 properties
country_codestringrequiredEScadastral_referencestringrequiredprovincestringmunicipalitystringsold_or_rented_afterstringnullableYYYY-MM-DD) will be considered as possible comparables. Default value: 9 months ago, counting from today. If null is passed, only active properties will be considered.operationstringrequiredsale rentcomparables_typesstring[]required40 allowed values
apartment studio duplex penthouse dachgeschosswohnung etagenwohnung erdgeschosswohnung country_house house palace townhouse villa country_estate chalet bungalow family_house reihenhaus reihenendhaus reihenmittelhaus einfamilienhaus zweifamilienhaus landwirtschaftliche_betriebe retail office industrial warehouse hotel other_commercial restaurant werkstatt plot urban_plot rural_plot room other garage parking apartment_building office_building mix_use_buildingmin_priceintegermax_priceintegerconditionstringused ruin very-good new otherbedroomsintegerrooms).roomsintegerbedrooms).bathroomsintegerconstruction_yearintegertotal_areaintegerhotel, industrial, office, other_commercial, restaurant, retail, warehouse, werkstatt property types if target_point.cadastral_reference is not provided.plot_areaintegerrural_plot and urban_plot property types if target_point.cadastral_reference is not provided.floorsstring[]no_floor ground middle topfloor_numberinteger[]orientationstringexterior interiorviewsstring[]water landscape city golf parkdirectionsstring[]north south east westcharacteristicsobject3 properties
must_havestring[]balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuitynice_to_havestring[]balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuityexcludestring[]balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuityenergy_ratingsstring[]Unknown A+ A B C D E F G Hdays_on_market_fromintegerdays_on_market_tointegerwith_agenciesstring[]without_agenciesstring[]exclude_outliersbooleanResponse
Show the response shape (166 fields)
resultsobject[]required60 properties
property_idintegerrequiredproperty_urlstringnullableprimary_listing_idintegerrequiredtypestringrequired40 allowed values
apartment studio duplex penthouse dachgeschosswohnung etagenwohnung erdgeschosswohnung country_house house palace townhouse villa country_estate chalet bungalow family_house reihenhaus reihenendhaus reihenmittelhaus einfamilienhaus zweifamilienhaus landwirtschaftliche_betriebe retail office industrial warehouse hotel other_commercial restaurant werkstatt plot urban_plot rural_plot room other garage parking apartment_building office_building mix_use_buildingtype_groupstringrequiredapartment house investment plot othercoordinatesobjectrequired2 properties
latitudenumberrequiredlongitudenumberrequiredlocationobjectrequired4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullablelocations_structureobject[]required4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullableaddressstringrequiredzip_codestringrequireddistancenumbernullableconstruction_yearintegerrequiredtotal_areaintegerrequiredliving_areaintegerrequiredplot_areaintegerrequiredterrace_areaintegerrequiredbedroomsintegerrequiredroomsintegerrequiredbathroomsintegerrequiredfloor_numberintegerrequiredconditionstringrequiredused ruin very-good new otherfeaturesobjectrequired7 properties
floorstringrequiredno_floor ground middle toporientationstringrequiredexterior interiorviewstringrequiredviews field instead.water landscape city golf parkviewsstring[]requiredwater landscape city golf parkdirectionstringrequireddirections field instead.north south east westdirectionsstring[]requirednorth south east westcharacteristicsstring[]requiredbalcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuityoperationsstring[]requiredsale rentsale_statusstringrequiredactive reserved hold sold nonesale_currencystringrequiredsale_priceintegerrequiredsale_currency field).sale_price_baseintegerrequiredsale_price_per_sqmnumberrequiredsale_currency field).sale_price_per_sqm_basenumberrequiredrent_statusstringrequiredactive reserved hold rented nonerent_currencystringrequiredrent_priceintegerrequiredrent_currency field).rent_price_baseintegerrequiredrent_price_per_sqmnumberrequiredrent_currency field).rent_price_per_sqm_basenumberrequiredrent_periodstringrequiredday week fortnight month year nonetitlestringrequireddescriptionstringrequiredthumbnailsstring[]nullablepicturesstring[]nullablegross_yieldnumberrequiredsold_atstringrequiredrented_atstringrequiredtotal_sale_price_changenumberrequiredtotal_rent_price_changenumberrequiredlast_sale_price_reductionnumberrequiredlast_rent_price_reductionnumberrequiredsale_price_last_changeobjectrequired3 properties
change_datestringrequiredold_valueintegerrequirednew_valueintegerrequiredrent_price_last_changeobjectrequired3 properties
change_datestringrequiredold_valueintegerrequirednew_valueintegerrequiredsale_time_on_marketmap of anynullablerent_time_on_marketmap of anynullablesale_active_listings_countintegernullablerent_active_listings_countintegernullablesimilarity_scorenumbernullablelisting_urlsstring[]requiredis_outlierbooleannullableis_private_propertybooleanrequiredenergy_certificatestringnullableenergy_rating field instead.energy_ratingstringnullableref_numbersstring[]requireddvf_resultsobject[]19 properties
dvf_referenceintegerrequiredcoordinatesobjectrequired2 properties
latnumberrequiredlonnumberrequireddistancenumbernullabletypestringrequired40 allowed values
apartment studio duplex penthouse dachgeschosswohnung etagenwohnung erdgeschosswohnung country_house house palace townhouse villa country_estate chalet bungalow family_house reihenhaus reihenendhaus reihenmittelhaus einfamilienhaus zweifamilienhaus landwirtschaftliche_betriebe retail office industrial warehouse hotel other_commercial restaurant werkstatt plot urban_plot rural_plot room other garage parking apartment_building office_building mix_use_buildingtype_groupstringrequiredapartment house investment plot othersale_priceintegerrequiredsale_price_baseintegerrequiredsale_price_psqmnumbernullablesale_price_psqm_basenumbernullablesold_atstringnullabletotal_areaintegerrequiredplot_areaintegerrequiredroomsintegerrequiredbedroomsintegerrequiredaddressstringrequiredlocationobjectrequired4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullablelocations_structureobject[]required4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullablesale_statusstringnullableactive reserved hold sold nonethumbnailsstring[]nullabletransactional_dataobject[]nullable26 properties
idintegerrequiredreferencestringrequiredcadastral_referencestringrequiredroomsintegerrequiredbedroomsintegerrequiredbathroomsintegerrequiredcoordinatesobjectrequired2 properties
latnumberrequiredlonnumberrequiredtotal_areanumberrequiredplot_areanumberrequiredaddressstringrequiredsource_typologystringrequiredsource_annexesstringrequiredtypestringrequired40 allowed values
apartment studio duplex penthouse dachgeschosswohnung etagenwohnung erdgeschosswohnung country_house house palace townhouse villa country_estate chalet bungalow family_house reihenhaus reihenendhaus reihenmittelhaus einfamilienhaus zweifamilienhaus landwirtschaftliche_betriebe retail office industrial warehouse hotel other_commercial restaurant werkstatt plot urban_plot rural_plot room other garage parking apartment_building office_building mix_use_buildingtype_groupstringrequiredsold_atstringrequiredcurrencystringrequiredpricenumberrequiredprice_per_sqmnumberrequiredwith_mortgagebooleanrequireddistancenumbernullablelocation_idintegerrequiredconstruction_yearintegerrequiredlocationobjectrequired4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullablelocations_structureobject[]required4 properties
location_idintegerrequirednamestringrequiredadministrative_levelstringrequiredzip_codesstring[]nullableimage_urlstringrequiredcountry_codestringrequiredFR IT PT ESstatisticsobjectrequiredoperation defined in the request).5 properties
average_priceintegerrequiredaverage_price_per_sqmnumberrequiredaverage_time_on_the_marketintegerrequiredaverage_listings_per_propertynumberrequiredsold_or_rented_in_last_six_monthsintegerrequiredestimated_pricesobjectrequiredoperation defined in the request).6 properties
fast_sell_priceintegerrequiredfair_market_priceintegerrequiredout_of_market_priceintegerrequiredfast_sell_price_per_sqmnumberrequiredfair_market_price_per_sqmnumberrequiredout_of_market_price_per_sqmnumberrequiredcasafari_linkstringrequiredvaluation_idintegernullableExample call
Required arguments only, with placeholder values. Your assistant fills them in from the parameters above.
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "comps_get-comparables",
"arguments": {
"comparables_count": 1,
"location_boundary": {
"polygon": [
{
"latitude": -90,
"longitude": -180
}
]
},
"operation": "sale",
"comparables_types": [
"apartment"
]
}
}
}