CasafariMCP
Get started

Casafari is the AI agent-native real estate data intelligence platform. The most complete property index in Europe: a deduplicated, cleaned property graph of residential and commercial property, for sale and for rent, in 16 countries.The most complete property index in Europe: a deduplicated, cleaned property graph.

How the graph is built

Area Insights · REST API

Analysis

POSThttps://api.casafari.com/market-analytics-api/analysis
Bearer token42 parameters

Send Authorization: Bearer $CASAFARI_TOKEN; see how to get a token.

Over MCP: no tool does this. MCP and REST compared.

Description

Market analysis based on the requested property parameters.

Request body

Content type application/json. Required. Type: object.

custom_location_boundaryobjectrequired
3 properties
location_idsinteger[]
List of location IDs.
1–10 items1–2147483647
polygonobject[]
List of geo-points to search within. Polygon must contain at least 4 points. First and last points must match.
at least 4 items
2 properties
latitudenumberrequired
-90–90
longitudenumberrequired
-180–180
circleobject
Circle boundary to search within.
2 properties
distanceintegerrequired
Maximum distance in meters from the requested target_point to the properties.
50–50000
target_pointobjectrequired
Target point coordinates to search around.
2 properties
latitudenumberrequired
-90–90
longitudenumberrequired
-180–180
business_typestringrequired
Operation type for which the property is available.
sale rent
typesstring[]required
The list of property types by type groups: apartment: ["apartment", "studio", "duplex", "penthouse", "dachgeschosswohnung", "etagenwohnung", "erdgeschosswohnung"] house: ["country_house", "house", "palace", "townhouse", "villa", "country_estate", "chalet", "bungalow", "family_house", "reihenhaus", "reihenendhaus", "reihenmittelhaus", "einfamilienhaus", "zweifamilienhaus", "landwirtschaftliche_betriebe"] room: ["room"] building: ["apartment_building", "office_building", "mix_use_building"] investment: ["retail", "office", "industrial", "warehouse", "hotel", "building", "other_commercial", "restaurant", "werkstatt"] development: ["apartment_development", "house_development"] plot: ["urban_plot", "rural_plot"] other: ["parking", "garage", "other"] Note that you can select multiple types only from one property type group. The list of property types specific to certain countries: apartment: ○ dachgeschosswohnung: Germany ○ etagenwohnung: Germany ○ erdgeschosswohnung: Germany house: ○ family_house: Germany ○ reihenhaus: Germany ○ reihenendhaus: Germany ○ reihenmittelhaus: Germany ○ einfamilienhaus: Germany ○ zweifamilienhaus: Germany ○ landwirtschaftliche_betriebe: Germany investment: ○ restaurant: Germany ○ werkstatt: Germany plot: ○ urban_plot: Italy, Germany, Portugal, Spain, France ○ rural_plot: Italy, Germany, Portugal, Spain, France
42 allowed valuesapartment 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 building other_commercial restaurant werkstatt urban_plot rural_plot room parking garage other apartment_building office_building mix_use_building apartment_development house_development
at least 1 item
conditionsstring[]nullable
Property conditions, as returned by the GET /api/v1/references/conditions endpoint.
used ruin very-good new other
at least 1 item
energy_ratingsstring[]nullable
List of energy ratings that attests to the energy efficiency of the property.
Unknown A+ A B C D E F G H
at least 1 item
orientationsstring[]nullable
Property view orientation.
exterior interior
at least 1 item
viewsstring[]nullable
List of views from the property.
water landscape city golf park
at least 1 item
directionsstring[]nullable
List of cardinal directions the property faces.
north south east west
at least 1 item
floorsstring[]nullable
List of floor types.
no_floor ground middle top
at least 1 item
price_rangeobjectnullable
2 properties
minintegernullable
1–2147483647
maxintegernullable
1–2147483647
rooms_rangeobjectnullable
2 properties
minintegernullable
1–15000
maxintegernullable
1–15000
bedrooms_rangeobjectnullable
2 properties
minintegernullable
0–15000
maxintegernullable
0–15000
bathrooms_rangeobjectnullable
2 properties
minintegernullable
1–15000
maxintegernullable
1–15000
total_area_rangeobjectnullable
2 properties
minintegernullable
1–1000000
maxintegernullable
1–1000000
plot_area_rangeobjectnullable
2 properties
minintegernullable
1–1000000
maxintegernullable
1–1000000
construction_year_rangeobjectnullable
2 properties
minintegernullable
1–3000
maxintegernullable
1–3000
characteristicsobjectnullable
2 properties
must_havestring[]
Include only properties that have all these characteristics.
balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuity
excludestring[]
Exclude properties that contain any of these characteristics.
balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuity

Example request

Placeholders only: replace the token and the values with your own.

curl
curl -X POST "https://api.casafari.com/market-analytics-api/analysis" \
  -H "Authorization: Bearer $CASAFARI_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "custom_location_boundary": {
    "location_ids": [
      1
    ]
  },
  "business_type": "sale",
  "types": [
    "apartment"
  ]
}'

Responses

200 Successful Response

Type: object.

Show the response shape (33 fields)
price_statisticsobjectrequired
Statistics including the average price and average price per square meter for properties matching the requested filters.
2 properties
average_priceintegerrequired
average_price_per_sqmintegerrequired
price_estimationobjectrequired
Provides estimated prices, including a quick sale price fast_market_price and an inflated price out_of_market_price.
2 properties
fast_market_priceintegerrequired
out_of_market_priceintegerrequired
price_evolutionobjectrequired
Represents time series data showing how average prices and prices per square meter have changed over time for inactive properties.
2 properties
avg_priceobjectrequired
5 properties
for_the_last_1_monthintegerrequired
for_the_last_3_monthintegerrequired
for_the_last_6_monthintegerrequired
for_the_last_9_monthintegerrequired
for_the_last_12_monthintegerrequired
avg_price_per_sqmobjectrequired
5 properties
for_the_last_1_monthintegerrequired
for_the_last_3_monthintegerrequired
for_the_last_6_monthintegerrequired
for_the_last_9_monthintegerrequired
for_the_last_12_monthintegerrequired
summary_price_evolutionobjectrequired
Represents time series data showing how average prices and prices per square meter have changed over time for both active and inactive properties.
2 properties
avg_priceobjectrequired
5 properties
for_the_last_1_monthintegerrequired
for_the_last_3_monthintegerrequired
for_the_last_6_monthintegerrequired
for_the_last_9_monthintegerrequired
for_the_last_12_monthintegerrequired
avg_price_per_sqmobjectrequired
5 properties
for_the_last_1_monthintegerrequired
for_the_last_3_monthintegerrequired
for_the_last_6_monthintegerrequired
for_the_last_9_monthintegerrequired
for_the_last_12_monthintegerrequired
average_days_on_the_marketintegerrequired
Indicates the average number of days properties remain listed on the market before being sold or removed.

400 Bad Request

Type: object.

Show the response shape (3 fields)
messagestringrequired
errorsstring[]nullable
detailsstringnullable

404 Not Found

Type: object.

Show the response shape (3 fields)
messagestringrequired
errorsstring[]nullable
detailsstringnullable

422 Validation Error

Type: object.

Show the response shape (6 fields)
detailobject[]
5 properties
loc(string | integer)[]required
msgstringrequired
typestringrequired
inputany
ctxobject

Questions about this

Tip: add .md to any URL to read it as Markdown.