Area Insights · MCP tool
area-insights_get_price_distribution
Get Price Distribution
Call it as area-insights_get_price_distribution on the Area Insights MCP server, https://platform.casafari.com/mcp/area-insights (how to connect).
Over REST: POST /v1/area-insights/distributions/prices (equivalent), POST /market-analytics-api/distributions/prices (equivalent). MCP and REST compared.
What does Get Price Distribution do?
Returns a distribution of property prices based on the provided filters. Each record represents a price interval and the number of properties within that interval.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
request_data | MCPPriceDistributionRequestSchema | Yes | Configuration for price distribution filtering. |
Filter highlights
type_group: group of estate types (e.g., apartment, house)business_type:"sale"or"rent"price_range: numeric price range filterexclude_outliers: optional flag to exclude statistical outliers
Returns
[
{
"lower_bound": 100000,
"upper_bound": 150000,
"properties_count": 42,
"is_mean": false
}
]| Field | Type | Description |
|---|---|---|
lower_bound | int | Lower price boundary |
upper_bound | int | Upper price boundary |
properties_count | int | Number of properties in the range |
is_mean | bool | Indicates whether the range includes the mean price |
Example Request
{
"custom_location_boundary": {
"circle": {
"target_point": {"latitude": 48.8566, "longitude": 2.3522},
"distance": 10000
}
},
"type_group": "apartment",
"business_type": "sale",
"price_range": {"min": 100000, "max": 500000},
"exclude_outliers": true
}Which parameters does area-insights_get_price_distribution take?
request_dataobjectrequired17 properties
type_groupstringrequiredapartment housebusiness_typestringrequiredsale rentprice_rangeobjectnullable2 properties
minintegernullablemaxintegernullableprice_per_sqm_rangeobjectnullable2 properties
minintegernullablemaxintegernullablerooms_rangeobjectnullable2 properties
minintegernullablemaxintegernullablebedrooms_rangeobjectnullable2 properties
minintegernullablemaxintegernullablebathrooms_rangeobjectnullable2 properties
minintegernullablemaxintegernullabletotal_area_rangeobjectnullable2 properties
minintegernullablemaxintegernullableplot_area_rangeobjectnullable2 properties
minintegernullablemaxintegernullableconstruction_year_rangeobjectnullable2 properties
minintegernullablemaxintegernullablecharacteristicsobjectnullable2 properties
must_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_annuityconditionsstring[]used ruin very-good new otherprivatebooleanbankbooleanauctionbooleanexclude_outliersbooleancustom_location_boundaryobjectrequired2 properties
location_idsinteger[]circleobject2 properties
distanceintegerrequiredtarget_point to the properties.target_pointobjectrequired2 properties
latitudenumberrequiredlongitudenumberrequiredWhat does it return?
Returned as result.
Show the response shape (4 fields)
lower_boundintegerrequiredupper_boundintegerrequiredproperties_countintegerrequiredis_meanbooleanrequiredHow do I call area-insights_get_price_distribution?
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": "area-insights_get_price_distribution",
"arguments": {
"request_data": {
"type_group": "apartment",
"business_type": "sale",
"custom_location_boundary": {
"location_ids": [
1
]
}
}
}
}
}