Dalil MCP Server
Plug Claude Desktop, Cursor, ChatGPT or any MCP-compatible client directly into the Dubai real estate market: active listings, historical transactions, rental yields, zone signals and investment analysis. Built for real estate agents and brokerages.
See it in action
Example prompts and the actual data Dalil returns — pulled live from our DB (303K listings, real transactions from Dubai Land Department).
search_locations({"q":"Dubai Marina"})
search_properties(purpose=for-sale, location_id=519, bedrooms=2, price_max=2000000, sort=best_value)
Top 2BR listings in Dubai Marina under 2M AED right now:
- 1945000 AED · 1144 sqft · Marina Wharf 1 · score 100 · -26.3% vs market
- 1945000 AED · 1144 sqft · Marina Wharf 1 · score 100 · -26.3% vs market
- 1100000 AED · 961 sqft · Marina View Tower A · score 100 · -33.3% vs market
get_top_yield_zones({"bedrooms":1,"limit":4})
list_zone_signals({"signal_type":"HOT_ZONE"})
Top 1BR yields today:
- Belvedere Residences — 11.2% gross yield
- Belvedere Residences — 11.2% gross yield
- Axis Residence 4 — 9.6% gross yield
- Axis Residence 4 — 9.6% gross yield
Also flagged HOT_ZONE right now: Dubai South (Dubai World Central) (+0.5% 30d), Dubai South (Dubai World Central) (+0.5% 30d), Dubai South (Dubai World Central) (+0.5% 30d).
get_recent_transactions(location="JVC", bedrooms=1, purpose=for-sale, days_back=90)
37 1BR sale transactions in JVC over the last 90 days. Average price 1123263 AED, averaging 1472 AED/sqft. Real Land Department data — not asking prices.
search_locations({"q":"Emaar"})
get_top_yield_zones({"limit":3})
Emaar properties ranked by yield:
- 29 Burj Boulevard Podium · 9.2% gross yield · median sale 1192500 AED
- 29 Burj Boulevard Podium · 9.2% gross yield · median sale 1192500 AED
- 29 Burj Boulevard Podium · 0BR · 7.8% gross yield · median sale 1110000 AED
get_market_overview()
Live counts, the signal distribution across active listings (STRONG_BUY / BUY / HOLD / AVOID), and the top 10 current opportunities — ranked by the composite investment score.
Use cases
Real moments where agents and brokerages pull answers out of Dalil through their LLM.
For real estate agents
Live on a client call
Your client is on WhatsApp asking about 2BR prices in Dubai Marina. You ask Claude — "comps for 2BR in Marina, last 90 days" — and quote real Land Department numbers before they hang up.
Brief yourself on a new zone
Client mentions Arjan or Damac Hills — a zone you haven't closed in. In 30 seconds you get average yield, price trend, active listings, hot/cold signal. Walk into the meeting prepared.
Screen a listing in seconds
Paste a PropertyFinder listing. The LLM pulls fair value, deal score, comparable transactions and estimated yield. You know if it's worth showing the client before you even reply.
Investor brief in your inbox
"Draft a yield-focused shortlist for an investor with 2M AED AED budget, 1BR, 7%+ gross yield." The LLM queries Dalil, ranks options, writes the email. You hit send.
For brokerages & property companies
Onboard junior agents in a day
Your new hires don't need two years of zone knowledge. Claude + Dalil gives them senior-level answers on the first call. Same data, same rigor, across the whole team.
Scan the whole market for matches
"Find all 1BR listings under 1.2M AED with gross yield above 8% in HOT_ZONE communities." One prompt. Works across 300K+ active listings.
Weekly market memos, automated
Every Monday, your LLM summarises zone momentum, new HOT_ZONE signals, price moves over 30d and volume shifts. A one-pager for the sales floor — without an analyst.
Developer & tower intelligence
Ask by building: "Which Emaar towers in Downtown have the best 3BR yields?" Or by developer: "Damac vs Sobha — which has higher transaction velocity this quarter?" Back every pitch with numbers.
Works with your LLM client
OAuth 2.1 + PKCE. One URL, one login, same data for every client.
Built for real estate agents & brokerages
Answers in seconds
Ask about zones, towers, developers (Emaar, Damac, Sobha, Nakheel), yields or comparable sales in plain English. No SQL, no dashboards, no tabs.
Grounded in real data
Live PropertyFinder listings + Dubai Land Department transactions via Bayut. Comparable sales are actual deals, not asking prices.
Quant signals included
Investment scores, HOT_ZONE / RISING / DECLINING flags, deal score vs market median, cash-on-cash return. Back every recommendation with numbers.
Pricing
Free
Create an account, explore the docs.
- ✓ Account & dashboard
- ✓ Connector registration
- ✓ Docs & examples
- ✗ MCP tool calls
Pro
Full MCP access from any LLM client.
- ✓ Full MCP server access
- ✓ All 10 tools (search, analysis, yields, signals…)
- ✓ Real DLD transactions + live listings
- ✓ Higher rate limits
- ✓ Email alerts on new matching listings
- ✓ Priority support
Endpoint
MCP server URL:
Transport: Streamable HTTP · MCP protocol 2024-11-05 · 10 tools · OAuth 2.1 (PKCE)
Connect in 30 seconds
Sign up, then point your LLM client at one URL:
https://dalil.adriano.pt/mcp
Claude.ai (web)
Easiest — OAuth 2.1, no config files.
- Open Claude → Settings → Connectors.
- Click Add custom connector.
- Paste
https://dalil.adriano.pt/mcp, click Connect → log in → Approve.
ChatGPT (Pro / Team / Enterprise)
Available on paid plans with Connectors support.
- Open ChatGPT → Settings → Connectors → Custom.
- Add a new MCP server, URL:
https://dalil.adriano.pt/mcp. - Authenticate when prompted.
Claude Desktop (config file)
For desktop app via local bridge.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"dalil": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://dalil.adriano.pt/mcp"]
}
}
}
Cursor IDE
Add via Settings → MCP.
- Open Cursor Settings → MCP.
- Click Add MCP server, pick HTTP transport.
- URL:
https://dalil.adriano.pt/mcp→ authenticate.
Gemini CLI
First request triggers OAuth in browser.
File: ~/.gemini/settings.json
{
"mcpServers": {
"dalil": {
"httpUrl": "https://dalil.adriano.pt/mcp"
}
}
}
VS Code (GitHub Copilot Chat)
Requires Copilot Chat with MCP support.
Workspace file: .vscode/mcp.json
{
"servers": {
"dalil": {
"type": "http",
"url": "https://dalil.adriano.pt/mcp"
}
}
}
Custom integration (raw HTTP)
Any stack — just hit it with a Bearer token.
curl -X POST https://dalil.adriano.pt/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Available tools (10)
| Tool | Description |
|---|---|
search_properties |
Search / find / list / query active real estate property listings, apartments, villas, townhouses for sale or rent in Dubai. Filters: purpose, location/zone/area/community, bedrooms, bathrooms, price range, area (sqft), property type, furnished, completion, verified, free-text query, sort. Returns paginated results with fair value, deal score, investment score, comparables and facets. Use search_locations first to resolve a location name into location_id. |
get_property_detail |
Get full details / information / data for a single property listing (apartment, villa, townhouse) by id. Includes price, area, bedrooms, amenities, ML-predicted fair value, investment score, estimated rental yield, cash-on-cash return and signals (STRONG_BUY / BUY / HOLD / AVOID / FLIP). |
get_property_analysis |
Comprehensive investment analysis / review / evaluation / deep-dive / valuation for a property listing by id. Returns market benchmarks (median/avg price, percentiles), rental yield analysis (gross, net, CoC return, payback years), investment score breakdown, comparable historical sales (real DLD transactions) and comparable active listings. |
search_locations |
Search / find / lookup / resolve Dubai locations, zones, areas, communities, sub-communities, neighborhoods, towers, buildings by name. Use this to resolve a name (e.g. "Dubai Marina", "JVC", "Palm Jumeirah", "Burj Khalifa") into a location_id that other tools need. Returns hierarchical location records. |
get_market_overview |
Global Dubai real estate market snapshot / summary / pulse / stats / overview. Returns total listings by purpose (sale/rent), total historical transactions, signal distribution (STRONG_BUY/BUY/HOLD/AVOID) across listings, average scores, averages and the top 10 current investment opportunities. |
get_filter_options |
List valid filter values / options / enums used by search_properties: available property types, amenities (pool, gym, etc.), top 100 locations with listing counts, price range, area range (sqft), signal legend. Useful to know what filter values are valid. |
get_location_metrics |
Financial, investment and risk metrics / stats / analytics / analysis for a Dubai location, zone, area, community, sub-community or tower. Returns average/median price per sqft (PSF), price trends / changes over 7d/30d/90d/1y, average rental yield, ROI projections (5-year, 10-year), transaction velocity, price volatility, composite investment_score and risk_score (0-100). For towers/buildings also includes AI ratings (location quality, developer reputation, build quality, facilities, community). Use this when the user asks about a zone's trend, momentum, yield, risk, ROI or developer ratings. |
list_zone_signals |
List current trading / investment signals / flags / alerts / indicators per Dubai zone, area or community: HOT_ZONE, RISING, STABLE, DECLINING, WATCH. Each signal includes confidence (0-100), reasoning, 30d/90d price change, rental yield average and ranking. Use when the user asks which zones are hot, rising, booming, declining or trending. |
get_top_yield_zones |
Ranking / leaderboard of Dubai zones, areas, communities by rental yield / ROI / return on investment. Returns top-N locations ordered by gross_rental_yield, including median sale price, median annual rent, gross yield, net yield, estimated cash-on-cash return and years to break even. Optional filters: bedrooms, property category. Use when the user asks "best yields", "highest returns", "where to buy for rental", "best zones to invest for rental income". |
get_recent_transactions |
Historical sale / rent transactions / sold prices / closed deals / comparables (comps) from Dubai Land Department (DLD), sourced via Bayut. Use when the user wants real closing prices (not asking prices), recent sales, comparable transactions, market comps, what similar properties actually sold for. Filters: location_id, purpose (for-sale / for-rent), bedrooms, days_back (up to 730). Results sorted by date desc. |
Test with curl
Replace $TOKEN with an access token. You can obtain one by running
npx mcp-remote https://dalil.adriano.pt/mcp once (it stores the token locally),
or through the OAuth flow.
1. Handshake (initialize)
curl -s https://dalil.adriano.pt/mcp \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}
}'
2. List tools
curl -s https://dalil.adriano.pt/mcp \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
3. Call a tool (search locations)
curl -s https://dalil.adriano.pt/mcp \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0","id":3,"method":"tools/call",
"params":{"name":"search_locations","arguments":{"q":"Dubai Marina"}}
}'
4. Search properties (for-sale, 2 bedrooms, < 2M AED)
curl -s https://dalil.adriano.pt/mcp \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0","id":4,"method":"tools/call",
"params":{
"name":"search_properties",
"arguments":{"purpose":"for-sale","bedrooms":"2","price_max":2000000,"limit":5}
}
}'
Example prompts for your LLM
- Which 2-bedroom apartments are for sale in Dubai Marina under 2M AED?
- What is the top rental yield zone in Dubai right now?
- Which zones are currently tagged as HOT_ZONE or RISING?
- Show me real 1BR transactions in JVC over the last 90 days.
- Give me a full investment analysis for property #12345.
- How have prices evolved in Palm Jumeirah over the past year?
- Which Emaar buildings have the best 3BR yields today?
Security & scope
OAuth 2.1 + PKCE Authentication uses OAuth 2.1 Authorization Code flow with PKCE. The MCP client never sees your password. All tools are read-only: they query listings, transactions and pre-computed metrics. No tool writes data or runs system commands.