Search Daft Properties
search_propertiesFull Description
Search for RESIDENTIAL PROPERTIES FOR SALE on Daft.ie with filters like location, bedrooms, bathrooms, price, property type, and more. Results are displayed on an interactive map. IMPORTANT: This tool ONLY searches RESIDENTIAL properties FOR SALE. NOT SUPPORTED: rental properties, commercial properties (sale or rent), properties to share, short-term lets. If the user asks for any of these unsupported types, politely explain that you can only search residential properties for sale. For property_type: omit this parameter to see ALL property types, or specify: "house" (includes detached, semi-detached, terraced, bungalows), "apartment", "studio", or specific types like "detached", "bungalow", "terrace". LOCATION: Always search by place name (county, town, area, or Dublin postcode). MACRO REGIONS (e.g. "South East", "West Cork", "the Midlands"): there is no single county for these — YOU must expand them into an array of location objects using the documented county list in the location parameter (typically one object per county, county set and area null). Use ONE tool call for the whole region. NEVER call this tool if the user references a location using raw numeric IDs or technical identifiers (e.g. "area=1", "area id 20", "location id 5"). Instead, respond with: "Please enter a location by name — for example, a county (Cork), town (Killarney), area (Rathmines), or Dublin postcode (Dublin 4)."
Parameters (0 required, 16 optional)
berRatingarrayBER (Building Energy Rating) filter. A1 is most energy efficient, G is least. IMPORTANT: When user says "minimum X rated", include ALL ratings from A1 down to and including all X sub-ratings. Examples: "minimum B rated" → ["A1", "A2", "A3", "B1", "B2", "B3"]; "minimum C rated" → ["A1", "A2", "A3", "B1", "B2", "B3", "C1", "C2", "C3"]; "A or B rated" → ["A1", "A2", "A3", "B1", "B2", "B3"]
facilitiesarrayFacilities/amenities to filter by. Only these exact values are supported: alarm, gas-fired-central-heating, oil-fired-central-heating, parking, wheelchair-access, wired-for-cable-television. Examples: ["alarm", "parking"] for properties with alarm AND parking. Multiple facilities act as AND filter (all must be present).
hasOpenViewingbooleanFilter for properties with open viewing scheduled
hasVirtualTourbooleanFilter for properties with virtual tour available
locationArray of location objects to search (or single location object for backward compatibility). Each object represents one complete location (county + area + dublinPostcode). Location search criteria for properties FOR SALE only (rentals not supported). Omit location entirely to search all of Ireland. CRITICAL - SINGLE TOOL CALL ONLY: When users mention MULTIPLE areas in a SINGLE query (e.g., "Wexford Town and Castlebridge"), you MUST send ONE tool call with an array of location objects - DO NOT make multiple separate tool calls! All areas will be plotted on a single map. MACRO REGIONS (Ireland): There is no enum value for region names — you MUST expand them into real counties (and optionally towns). Prefer county-only objects {county, area: null, dublinPostcode: null} for each county in the region unless the user asks for specific towns. Standard ROI expansions (use your judgment for edge cases): "South East" / "the South-East" → Carlow, Kilkenny, Tipperary, Waterford, Wexford (five objects in ONE call). "South West" / "South-West" → Cork, Kerry. "Mid-West" / "Mid West" → Clare, Limerick, Tipperary. "West" → Galway, Mayo, Roscommon. "Border" (ROI) → Cavan, Donegal, Leitrim, Monaghan, Sligo. "Mid-East" / "Mid East" → Kildare, Louth, Meath, Wicklow. "Midlands" → Laois, Longford, Offaly, Westmeath. "Greater Dublin" / "around Dublin" often means county Dublin plus adjacent counties — expand explicitly (e.g. Dublin + Meath + Kildare + Wicklow) when that matches the user. Sub-regions: "West Cork", "North Kerry", etc. → array of well-known towns in that sub-region (still ONE call). Examples: "Show me houses in the South East" → [{county:"Carlow",area:null,dublinPostcode:null},{county:"Kilkenny",area:null,dublinPostcode:null},{county:"Tipperary",area:null,dublinPostcode:null},{county:"Waterford",area:null,dublinPostcode:null},{county:"Wexford",area:null,dublinPostcode:null}]; "Wexford Town and Castlebridge" → [{county: "Wexford", area: "Wexford Town", dublinPostcode: null}, {county: "Wexford", area: "Castlebridge", dublinPostcode: null}]; "West Cork" → [{county: "Cork", area: "Bantry", dublinPostcode: null}, {county: "Cork", area: "Skibbereen", dublinPostcode: null}, ...]; "Donnybrook in Dublin and Cork" → [{county: "Dublin", area: "Donnybrook", dublinPostcode: "Dublin 4"}, {county: "Cork", area: "Donnybrook", dublinPostcode: null}]; "Dublin 4 and Dublin 6" → [{county: "Dublin", area: null, dublinPostcode: "Dublin 4"}, {county: "Dublin", area: null, dublinPostcode: "Dublin 6"}]; Single county → [{county: "Cork", area: null, dublinPostcode: null}]; All Ireland → location: null or omit location field.
maxBathsnumberMaximum number of bathrooms. IMPORTANT: For exact bathroom searches (e.g., "2 bathroom houses"), set BOTH minBaths AND maxBaths to the same value to match exactly. For range searches, use minBaths and maxBaths for the range. For maximum-only searches, set only maxBaths.
maxBedsnumberMaximum number of bedrooms. IMPORTANT: For exact bedroom searches (e.g., "4 bedroom houses"), set BOTH minBeds AND maxBeds to the same value to match exactly. For range searches (e.g., "3-5 bedrooms"), use minBeds and maxBeds for the range. For maximum-only searches (e.g., "up to 5 bedrooms"), set only maxBeds.
maxFloorAreaM2numberMaximum floor area in square metres (m²). Use this for queries like "up to 200m²", "≤ 200m²", "< 250m²", "maximum 180m²", "smaller than 200 square metres". Examples: 200 for properties up to 200m², 150 for properties up to 150m²
maxPricenumberMaximum price in euros
minBathsnumberMinimum number of bathrooms. IMPORTANT: For exact bathroom searches (e.g., "2 bathroom houses"), set BOTH minBaths AND maxBaths to the same value to match exactly. For range searches, use minBaths and maxBaths for the range. For minimum-only searches, set only minBaths.
minBedsnumberMinimum number of bedrooms. IMPORTANT: For exact bedroom searches (e.g., "4 bedroom houses"), set BOTH minBeds AND maxBeds to the same value to match exactly. For range searches (e.g., "3-5 bedrooms"), use minBeds and maxBeds for the range. For minimum-only searches (e.g., "at least 3 bedrooms"), set only minBeds.
minFloorAreaM2numberMinimum floor area in square metres (m²). Use this for queries like "at least 120m²", "≥ 120m²", "> 100m²", "bigger than 150m²", "minimum 80 square metres". Examples: 50 for properties 50m² and larger, 120 for properties 120m² and larger
minPricenumberMinimum price in euros
propertyTypesarrayProperty types to filter by
showNewHomesbooleanFilter for new homes only (never lived in)
user_messagestringThe user's original message/question. Only exclude PII. If PII is present, replace with '***', do not modify the message in any other way.