daft-mcp
This server lets AI assistants search and explore Irish property listings on Daft.ie with rich filtering and discovery tools.
Search Properties (
search_properties): Perform detailed property searches with filters including location, price range, number of bedrooms/bathrooms, property type, BER rating, floor size, facilities, sort order, listing age, and supports multiple pages of results.Suggest Locations (
suggest_locations): Fuzzy-match partial location names (e.g. "Dublin 4", "Blackrock") against Daft.ie's location database to find valid location names for use in searches.Get Search Types (
get_search_types): Retrieve all available search types (e.g. residential sale, rent, commercial, sharing).Get Property Types (
get_property_types): List available property types (e.g. houses, apartments, sites), optionally filtered by a specific search type.Get Facilities (
get_facilities): List available facility filters (e.g. parking, alarm, garden), optionally filtered by a specific search type.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@daft-mcp search for 3-bed apartments for rent in Dublin under €2000"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
daft-mcp
MCP server that lets AI assistants search Irish property listings on Daft.ie via the daftlistings Python library.
Requirements
Python 3.10+
uv (recommended) or a standard venv + pip
git (the
daftlistingsdependency is installed from itsmasterbranch, which includes a fix not yet on PyPI)
Related MCP server: Airbnb Search & Listings
Install
git clone https://github.com/damosullivan/daft-mcp.git daft-mcp && cd daft-mcp
uv sync # creates .venv and installs dependenciesRun
daft-mcp # entry point
# or: uv run daft-mcp # run in the project venv
# or: python -m daft_mcp.serverThe server speaks MCP over stdio and waits for a client to connect.
Configure your MCP client
The examples below assume you run the client from this repo's directory. For a
global config, swap . for an absolute path (e.g. /home/me/src/daft-mcp).
OpenCode
opencode mcp add # interactive: pick local, name it "daft", use the uv command belowOr add it directly to your opencode.jsonc:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"daft": {
"type": "local",
"command": ["uv", "--directory", ".", "run", "daft-mcp"],
"enabled": true
}
}
}Verify with opencode mcp list, then restart OpenCode.
Claude Desktop / Claude Code
Add to claude_desktop_config.json:
{
"mcpServers": {
"daft": {
"command": "uv",
"args": ["--directory", ".", "run", "daft-mcp"]
}
}
}Codex
Add to ~/.codex/config.toml:
[mcp_servers.daft]
command = "uv"
args = ["--directory", ".", "run", "daft-mcp"]No uv? Point the client at the venv python instead:
python -m daft_mcp.server(e.g..venv/bin/python).
Available tools
Tool | What it does |
| Main search with full filtering (price, beds, type, BER, facilities, location, sort…) |
| Fuzzy-match Daft location names from a partial query |
| List search types (residential sale, rent, commercial, sharing…) |
| List property types (houses, apartments, sites…) |
| List facility filters valid for a given search type (parking, alarm, garden…) |
Example
"Find 3-bed houses for sale in Dublin City between €400k and €500k"
The assistant uses suggest_locations (if needed) and search_properties to
return live Daft.ie results.
Development
uv sync # install dev deps if added
mypy src/ # type checks
npx @modelcontextprotocol/inspector uv run daft-mcp # MCP InspectorLimitations
daftlistingsis unofficial and may break if Daft.ie changes their API.Results are bounded by what Daft.ie's search API returns.
No auth required; Daft.ie may rate-limit aggressive use.
License
MIT — see LICENSE.
Available Tools
5 toolsget_facilitiesA
List available Daft.ie facility filters, optionally filtered by search type.
Args: search_type: Search type to filter facilities against. If omitted, lists all facilities. Use get_search_types() for valid values.
Inputs: search_type. Returns: result
get_property_typesA
List available Daft.ie property types, optionally filtered by search type.
Args: search_type: Optional search type to filter. If omitted, lists all.
Inputs: search_type. Returns: result
get_search_typesA
List all available Daft.ie search types.
Inputs: no named parameters. Returns: result
search_propertiesA
Search for properties on Daft.ie with full filtering support.
Args: search_type: Search type. Use get_search_types() for valid values. location: Area to search (e.g. "Dublin City", "Cork"). Fuzzy-matched against Daft's location database. Use suggest_locations() to discover valid names. Omit for nationwide search. property_type:Property type. Use get_property_types() for valid values. min_price: Minimum price in euro (sale price or monthly rent). max_price: Maximum price in euro (sale price or monthly rent). min_beds: Minimum number of bedrooms. max_beds: Maximum number of bedrooms. min_baths: Minimum number of bathrooms. max_baths: Maximum number of bathrooms. facilities: List of facility identifiers (e.g. ["parking","alarm"]). Use get_facilities() for valid values per search type. sort_type: Sort order: publishDateDesc | priceAsc | priceDesc min_ber: Minimum BER rating (e.g. "A1", "B2", "C3"). max_ber: Maximum BER rating. added_since: Only show recently-added listings. Valid: now-3d/d | now-7d/d | now-14d/d | now-30d/d max_pages: Pages of results (50 per page). Default 1. min_floor_size: Minimum floor area in m². max_floor_size: Maximum floor area in m².
Inputs: search_type (required), location, property_type, min_price, +13 more. Returns: result
suggest_locationsA
Fuzzy-search Daft.ie location names from a partial query.
Args: query: Partial location name (e.g. "Dublin 4", "Blackrock", "Galway").
Inputs: query (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose: get_facilities, get_property_types, get_search_types, search_properties, and suggest_locations cover reference data, search, and location suggestion without overlap.
All tools follow a consistent verb_noun snake_case pattern (get_, search_, suggest_), making the API predictable and easy to navigate.
With 5 tools, the server is well-scoped for its purpose. Each tool provides necessary functionality for searching properties on Daft.ie, neither too few nor too many.
The tool surface covers reference data, search, and location suggestion comprehensively. A minor gap is the lack of a dedicated tool for retrieving individual listing details, but the search tool likely returns sufficient information for most use cases.
Maintenance
Related MCP Connectors
MCP server for real-estate agents: listings, CRM, German market data and AI media tools.
MCP server for querying Tulsa County, Oklahoma property and parcel data for AI agents.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
AI-agent-first offers directory: search and publish listings via MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables interaction with the Daft.ie API for searching rental properties and retrieving detailed information about specific rental listings.10ISC
- AlicenseBqualityDmaintenanceEnables users to search Airbnb listings with advanced filtering options and retrieve detailed property information through an MCP server interface.23,267 npmMIT
- AlicenseNot gradedqualityCmaintenanceUK property data MCP server for AI hosts (Claude, ChatGPT). Wraps Land Registry, Rightmove, EPC, rental yields, stamp duty, and Companies House into 13 tools.2MIT

Rentalot MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceMCP server for the Rentalot API. Manage rental properties, contacts, showings, conversations, and more from any AI assistant.12 npm1MIT