Zillow MCP Server avatar

Zillow MCP Server

Pricing

Pay per event + usage

Go to Apify Store
Zillow MCP Server

Zillow MCP Server

MCP server exposing Zillow property + agent data as 3 tools: search by ZIP, search by URL, lookup by zpid. Connect Claude Desktop, Cursor, ChatGPT to /mcp endpoint. Pay-per-property pricing — $0.08 on FREE, down to $0.05 on DIAMOND. Same data + pricing as the parent scraper.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

Andrey Afanasenko

Andrey Afanasenko

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 hours ago

Last modified

Share

Zillow data, accessible to AI agents over the Model Context Protocol. Connect Claude Desktop, Cursor, ChatGPT, or any MCP-compatible client and query Zillow listings + agent contact data in plain language.

What it does

This is a Model Context Protocol (MCP) server that exposes Zillow scraping to AI agents — and a regular Apify actor for click-Run users. Two ways to use it:

  1. MCP clients (Claude Desktop, Cursor, ChatGPT, VS Code) → connect to the Standby /mcp endpoint → get 3 narrow tools picked automatically by intent.
  2. Apify Console / API → fill the input form (mode + zpid/zip_codes/zillow_url) → click Start → results pushed to the dataset.

Same data, same per-property pricing, two entry points.

Sister actor Zillow Property & Agent Data Scraper — the original run-input/output actor with the same data and pricing.

Tools

ToolInputsReturns
zillow_search_by_zipzip_codes (1–20), max_properties?, filters?, enrichWalkScore?, enrichPhotos?Array of enriched property records
zillow_search_by_urlzillow_url, max_properties?, enrichWalkScore?, enrichPhotos?Array (or single record for _zpid URL)
zillow_lookup_propertyzpid, enrichWalkScore?, enrichPhotos?Single enriched property record

Each enriched record includes 77 fields — same shape as the parent scraper. Highlights: address, price, beds/baths/sqft, full agent contact (with 3-tier email-resolution fallback: property page → agent profile → name search), broker, Zestimate / rent Zestimate, HOA, taxes, schools, openHouseSchedule, full price history, walk/transit/bike scores (when enrichWalkScore=true), photo gallery (when enrichPhotos=true).

Optional enrichments

Both toggles add 1 upstream call per property and no extra Apify event charge.

  • enrichWalkScore: true — populates walkScore, transitScore, bikeScore (0–100 each).
  • enrichPhotos: true — populates the full Zillow photo gallery in photos[] (default behavior is [mainPhoto] or []).

Pricing

Pay-per-event, mirroring the parent scraper:

PlanPer-property costOne-time actor start
FREE$0.08$0.00005 (per GB memory)
BRONZE$0.07$0.00005
SILVER$0.06$0.00005
GOLD / PLATINUM / DIAMOND$0.05$0.00005

Free plan caps: up to 15 properties per single tool call. Paid plans: up to 50 properties per single tool call (call again for more).

Run as a regular Apify actor (no MCP client needed)

Click Start with one of these inputs:

{ "mode": "zpid", "zpids": ["119617641"], "enrichWalkScore": true, "enrichPhotos": true }
{ "mode": "zip", "zipCodes": ["10001"], "maxProperties": 5, "status_type": "ForRent", "largeDogsAllowed": true, "inUnitLaundry": true }
{ "mode": "zip", "zipCodes": ["94103"], "maxProperties": 3, "schools": "elementary,public", "schoolsRating": 8 }
{ "mode": "url", "zillowUrl": "https://www.zillow.com/homedetails/..._zpid/" }

Results land in the run's default dataset. Same enriched 77-field records as the MCP tools return. The full filter surface (price / rent / beds / baths / sqft / lot / year built ranges, home type, listing-type tri-state filters, features, views, rental amenities, schools) is exposed as top-level input fields — same UX as the parent scraper.

Connect from Claude Desktop

Add to your ~/Library/Application Support/Claude/claude_desktop_config.json:

{
"mcpServers": {
"zillow": {
"url": "https://<your-actor-id>.apify.actor/mcp",
"headers": {
"Authorization": "Bearer <your-apify-token>"
}
}
}
}

Restart Claude Desktop. Tools appear in the tool catalog.

Connect from Cursor / ChatGPT / VS Code

Same Streamable HTTP endpoint. Configuration syntax varies by client — point your MCP client to:

https://<your-actor-id>.apify.actor/mcp

with header Authorization: Bearer <APIFY_TOKEN>.

Quick test (no client)

curl -X POST "https://<your-actor-id>.apify.actor/mcp" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

returns the catalog. To call a tool:

curl -X POST "https://<your-actor-id>.apify.actor/mcp" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"zillow_lookup_property","arguments":{"zpid":"119617641"}}}'

Output

Every tool call also writes its results to the actor's default dataset, so you can re-export results from the Apify Console (CSV, JSON, Excel) alongside the MCP response.

Free vs paid

FeatureFreePaid
Properties per tool call15 max50 max
Tool calls per runUnlimitedUnlimited

Apify's "Maximum cost per run" run option provides per-run cost ceilings independently.

Free-plan email masking

On the FREE plan agent emails come back masked — j***@a***.com — and agentEmailSource reports masked_upgrade_to_unlock. Upgrade to any paid plan (BRONZE+) to receive the unmasked value. This mirrors the parent scraper's gating exactly.

Storage records

The actor writes the same 5 operational records the parent scraper produces. In Standby mode, counters aggregate across all MCP tool calls in the same Standby instance and flush every 10 calls (and on Actor.exit).

  • Default dataset — one row per property returned, across regular-run dispatcher and all MCP tool calls.
  • RUN_SUMMARY — input snapshot, properties.found / enriched / skipped, email-resolution stats, plan, runMode, durationSeconds, tool-call count.
  • SKIPPED_ITEMS — per-item breakdown (zpid / ZIP / URL skipped, reason, category).
  • FREE_LIMITS_APPLIED — list of FREE-plan ceilings hit during the run.
  • USER_MESSAGE — onboarding / upgrade / informational banner (when applicable).
  • status.html — live progress / completed banner rendered in the Apify Console Output tab.

Support

For issues or feature requests, open an issue on the actor's Apify Store page.