Stop scraping JS-walled, stale, duplicated portal pages. Query Placy's MCP rail for clean, deduplicated, licensed European property inventory — with a qualified-lead handoff back to the human.
Opens a short prefilled email — platform, use case. No forms, no gate.
mcp · placy rail · search_listings · sample
> tools/call search_listings
{
"query": "two-bed apartment near a metro, Lisbon, under €400k",
"filters": { "bedrooms": 2, "max_price": 400000, "market": "PT" }
}
< 200 OK · result 1 of 12
{
"@type": "RealEstateListing",
"id": "plc:PT-LIS-004217",
"name": "Two-bed apartment, Campo de Ourique",
"offers": {
"@type": "Offer",
"price": 385000,
"priceCurrency": "EUR",
"availability": "https://schema.org/InStock"
},
"floorSize": { "value": 74, "unitCode": "MTK" },
"numberOfBedrooms": 2,
"status": "available",
"provenance": { "source": "listing agency, licensed", "optIn": true },
"updated": "2026-07-05T09:41:12Z"
}
A sample search_listings call against the Placy MCP rail and one truncated response: a schema.org RealEstateListing with price, floor size, availability, live status, and provenance on the record.
The problem with live pages
01
Why not read the live pages yourself?
Because "read the live page" breaks exactly where European property lives. Listings are JavaScript-walled, duplicated across agencies and portals, stale within days, and render-gap-blind to any non-rendering agent. And roughly half of the portals we audited are live-blocked by a WAF — regardless of what their robots.txt says.
blocked
js-walled
blocked
readable
js-walled
blocked
js-walled
blocked
js-walled
blocked
readable
js-walled
blocked
js-walled
blocked
js-walled
blocked
js-walled
readable
blocked
js-walled
blocked
js-walled
blocked
js-walled
blocked
readable
js-walled
blocked
js-walled
A grid of 30 audited European portals: 87% shown as struck-through grey blocks (invisible or blocked to a non-rendering agent), the small remainder as readable black-bordered blocks.
87%1of audited EU portals invisible or blocked to a non-rendering agent
3 of 881portals worldwide use the proper RealEstateListing schema
Structured, licensed, and live beats scraped, stale, and unauthorized.
The pattern already has a price tag in retail: catalog-powered AI search converts roughly 2×2 better than AI working off scraped pages.
¹ Audited by Placy, 2026.² Shopify Q1 FY2026 earnings. AI is still <1% of retail traffic, so the 2x rides a small base. The direction — structured beats scraped — is what's proven.
The rail's surface
02
What you get
MCP tools
Call the rail in-conversation
An MCP server + registry your agents call directly: search_listings, listing detail, and a qualified-lead handoff. Structured answers, not HTML to parse. One integration lights up every market on the rail — no separate deal per portal.
Live status
A status state-machine, not a stock count
available
under_offer
sold_stc
sold
price_reduced · withdrawn
Target ≤15-min status cadence — price and status changes push as first-class incremental events.
Canonical listings
One property, one ID
The same flat is often posted by five agencies across five portals. The rail resolves those into one canonical property ID — deduplicated, enriched, with each agency exposed as an offer and provenance on every record.
Verified-agent identity
Web Bot Auth at the door
Verified-agent identity via Web Bot Auth admits good agents and blocks scrapers. You authenticate once as who you are; the rail stays clean for everyone querying it.
What's deliberately not here
03
Scoped to discovery and lead handoff.
Property is a high-value, regulated, no-cart purchase — so there is deliberately no checkout on the rail. AI finds and filters. A human confirms. The rail surfaces the match, then routes the human to a qualified-lead action — book a viewing, request details — attributed back to the agency.
Clean human hand-off; no transaction liability on your surface.
44%3would pay extra for a human to verify an AI housing decision
³ Cotality 2026, four-country survey including the UK — the leading indicator, not a Europe figure.
Placy exposes an MCP server + registry your agents call in-conversation — search, listing detail, and a qualified-lead handoff. One integration lights up all coverage; you don't negotiate a separate deal per portal.
Why not read the live pages ourselves?
Because European listings are JavaScript-walled, duplicated, stale, and roughly half of portals are live-blocked by a WAF. "Read the live page" breaks exactly there. Placy gives you clean, deduplicated, live, licensed data instead — with a canonical ID per property. The audit numbers are up-page.
How fresh is the data?
Status and price changes push as first-class incremental events, at a target ≤15-min cadence, through a real-estate status state-machine — available, under offer, sold subject to contract, sold. Stale data is the thing the rail is built to eliminate.
How do you keep out scrapers while letting us in?
Verified-agent identity via Web Bot Auth — the emerging open standard — admits good agents and blocks the rest.
Integrate Placy.One integration. Every source. Live, licensed, deduplicated.