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 · MCP tool

ma_get_heatmap

Get Heatmap

Read-only40 parametersTyped response

Over REST: no operation in the public API description does this. MCP and REST compared.

Description

Generate an area insights heatmap showing property distribution and price dynamics across geographic areas.

This tool aggregates active real estate listings for the child locations of the given location_id (e.g., districts of a city), returning the selected data_point metric for each of them. It supports a wide range of property filters, including estate type, price range, construction year, and location hierarchy.

Use Cases

Retrieve geographic insights for real estate analytics:

  • Visualize market activity intensity across a city or region.
  • Identify hotspots of high property density or high average price.
  • Compare neighborhoods based on average price per sqm.
  • Analyze supply distribution and property trends over time.
  • Combine with time-series data to understand historical evolution by area.

Parameters

NameTypeRequiredDescription
request_dataMCPHeatMapRequestSchemaYesDefines filters, metrics, and date range for heatmap generation.

Important Notes

  • Only ACTIVE listings are included.
  • The tool automatically resolves child locations (e.g., neighborhoods within a city).
  • If no matching data is found, a ToolError will be raised.
  • Use returned data for map visualization or spatial analytics dashboards.

Returns

json
[
  {
    "location_id": 12345,
    "location_name": "Lisbon",
    "value": 5200.5
  }
]

Each item represents one geographic unit with aggregated metric value.

Parameters

request_dataobjectrequired
19 properties
type_groupstringrequired
Estate type group.
apartment house
business_typestringrequired
Operation type for which the property is available.
sale rent
price_rangeobjectnullable
2 properties
minintegernullable
1–2147483647
maxintegernullable
1–2147483647
price_per_sqm_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
conditionsstring[]
Property conditions, as returned by the GET /api/v1/references/conditions endpoint.
used ruin very-good new other
at least 1 item
privateboolean
Whether the property is listed by a private individual, as opposed to an agent or a professional.
bankboolean
Whether the property is owned by the bank.
auctionboolean
Whether the property is the subject of an auction.
default false
exclude_outliersboolean
Exclude properties that are significantly underpriced or overpriced compared to similar properties.
default true
location_idintegerrequired
1–2147483647
data_pointstringrequired
Specifies the type of real estate data to retrieve for a given period.
avg_price avg_price_psqm available_on_market new sold_or_rented price_up price_down
date_rangeobjectrequired
2 properties
minstring (date)required
Start date in the format YYYY-MM-DD. If the specified date is not Monday - the closest previous Monday will be selected
maxstring (date)nullable
End date in the format YYYY-MM-DD. If the specified date is not Sunday - the closest previous Sunday will be selected

Response

Returned as result.

Show the response shape (3 fields)
location_idintegerrequired
location_namestringrequired
valuenumberrequired

Example call

Required arguments only, with placeholder values. Your assistant fills them in from the parameters above.

JSON-RPC
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ma_get_heatmap",
    "arguments": {
      "request_data": {
        "type_group": "apartment",
        "business_type": "sale",
        "location_id": 1,
        "data_point": "avg_price",
        "date_range": {
          "min": "2025-01-01"
        }
      }
    }
  }
}

Questions about this

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