mcp-zillow-listing-details
LocalAbout mcp-zillow-listing-details
An MCP server that retrieves Zillow home details through an Apify actor. It accepts listing URLs, ZPIDs, street addresses, or ZIP codes and returns flat rows with listing facts and status.
Key features
- 01Look up homes by URL, ZPID, address, or ZIP
- 02Return price, Zestimate, facts, and status
- 03Read descriptions and listing agents
- 04Filter ZIP searches by listing status
- 05Limit results and set a charge cap
Use cases
- 01Review details for a specific Zillow home
- 02List homes for sale or rent in a ZIP code
- 03Check recently sold homes and prices
MCP support
Exposes the `read_zillow_listings` tool to MCP clients. It starts the Apify actor, waits for completion, and returns its dataset rows.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @mambalabsdev/mcp-zillow-listing-detailsAPIFY_TOKENSecretApify API token from https://console.apify.com/account/integrationsLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
1Saved tool list · updated 1d ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| listings | array | No | Zillow home URLs, ZPIDs, or street addresses, up to 1,000 per run. An address must include a street number and a city or ZIP code, and it must match the home Zillow returns, or you get a free row. |
| zip_codes | array | No | 5 digit US ZIP codes. Each returns the homes on Zillow's search pages for that ZIP code, up to Maximum listings. |
| max_listings | number | No | The most homes to return in this run, across every input in order, from 1 to 1,000. Default 100. Text or a number. |
| read_details | boolean | No | false (default) or true. With false, a ZIP code returns one search row per home at the search row price. With true, the actor reads each home's page at the listing row price, which adds the description and the listing agent. |
| listing_status | enum | No | for_sale (default), for_rent, or recently_sold. Used only with ZIP codes.for_sale | for_rent | recently_sold |
| max_charge_usd | string | No | Optional. The run stops before a charge that would pass this amount. Summary rows are always returned. |
Details
From the project READMEZillow Listing Details MCP Server
An MCP server for the Mamba Labs Zillow Listing Details actor on Apify. Read Zillow home details by URL, ZPID, address, or ZIP code.
What's Inside
- What it does
- Quick start
- Prerequisites
- Example prompts
- Tool
- Inputs
- Pricing
- Full actor documentation
- License
What it does
Give Zillow home URLs, ZPIDs, street addresses, or ZIP codes. You get one flat row per home with price, Zestimate, facts, and status, plus description and the listing agent shown on MLS listings when the home page is read.
All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.
Quick start
You need Node.js 18 or newer and an Apify account with an API token.
Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:
{
"mcpServers": {
"mamba-zillow-listing-details": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-zillow-listing-details"
],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}
Restart the client. The read_zillow_listings tool appears.
Prerequisites
- Node.js 18 or newer.
- An Apify API token from console.apify.com/account/integrations, set as
APIFY_TOKEN. The server lists its tool without a token; a call needs one.
Example prompts
- "What are the price, Zestimate, and listing agent of this Zillow home?"
- "List the homes for sale in ZIP code 78701 with their facts."
- "Which homes recently sold in 60614, and at what price?"
Tool
read_zillow_listings. One tool. Example arguments:
{
"listings": [
"97531684"
]
}
Inputs
Every buyer facing input of the actor. Omitted inputs take the actor's own defaults.
| Input | Type | Required | Description |
|---|---|---|---|
listings | array | no | Zillow home URLs, ZPIDs, or street addresses, up to 1,000 per run. An address must include a street number and a city or ZIP code, and it must match the home Zillow returns, or you get a free row. |
zip_codes | array | no | 5 digit US ZIP codes. Each returns the homes on Zillow's search pages for that ZIP code, up to Maximum listings. |
listing_status | string | no | for_sale (default), for_rent, or recently_sold. Used only with ZIP codes. |
read_details | boolean | no | false (default) or true. With false, a ZIP code returns one search row per home at the search row price. With true, the actor reads each home's page at the listing row price, which adds the description and the listing agent. |
max_listings | number | no | The most homes to return in this run, across every input in order, from 1 to 1,000. Default 100. Text or a number. |
max_charge_usd | string | no | Optional. The run stops before a charge that would pass this amount. Summary rows are always returned. |
Pricing
Pay per event on Apify, billed to your Apify account. Prices in USD.
| Event | Free plan | Bronze | Silver | Gold |
|---|---|---|---|---|
listing-row, one home page read | $0.006 | $0.0057 | $0.0054 | $0.0051 |
search-row, one home from a ZIP code search | $0.002 | $0.0019 | $0.0018 | $0.0017 |
apify-actor-start, per run start | $0.007 | $0.007 | $0.007 | $0.007 |
Blocked homes, missing homes, unreadable pages, and refused input are free. Mamba Labs pays the platform costs of the run, Apify proxy traffic included.
Full actor documentation
apify.com/mambalabs/zillow-listing-details
License
MIT. See LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.