Skip to main content
Glama
ZeroPointRepo

Zillow MCP Server

160M+ U.S. properties · 300+ fields per home · hosted REST + MCP · free tier, no card Zillapi is an independent service for Zillow-sourced data — not affiliated with Zillow.


Why Zillow MCP

You run comps, check what homes are worth, and track listings all day. Zillow MCP puts that data inside the AI you already talk to.

Connect once, then just ask. Add Zillow MCP to Claude, ChatGPT, Cursor, or any MCP client a single time — and your AI assistant can pull live Zillow property data (full property records, Zestimates, and listings) right in the conversation. No code, no repeated setup.

Ask for comps on a subject property. Check a flip's numbers against its asking price. Pull rent estimates for a cash-flow check. Or just ask what a home is worth — Zestimate, taxes, schools, and full price history come back in seconds.

Quick taste:

Find 3-bed homes for sale under $600k in Greenville SC,
pull the full record for the most promising one,
and check how its Zestimate compares to the asking price.

That single prompt uses 3 of the 4 tools — search_listings, lookup_property_by_zpid, get_zestimate — without you writing a line of code.


Related MCP server: Zillow Working API MCP Server

Quick Install

Requirements:

  • A Zillapi account (sign up free — 100 credits free, no card)

  • An API key (zk_...) from your dashboard OR just use OAuth (Claude, ChatGPT, Hermes Agent, OpenClaw — no key handling)

Recommended: add a rule to auto-invoke Zillow MCP

Add this rule to your AI client so you don't have to ask explicitly:

When I mention a U.S. property address, a Zillow link, or ask about home
values, listings, or comps, automatically use the zillapi MCP tools to
fetch real property data before answering.

Zillow MCP works with Claude Desktop and Claude Web.

Settings → Connectors → Add custom connector → paste:

https://api.zillapi.com/mcp

Claude runs the OAuth sign-in for you — no API key needed.

Prefer a key, or running headless? Add to claude_desktop_config.json instead:

{
  "mcpServers": {
    "zillapi": {
      "transport": "streamable-http",
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

Zillow MCP works with Claude Code.

claude mcp add --transport http zillapi https://api.zillapi.com/mcp \
  --header "Authorization: Bearer zk_YOUR_KEY_HERE"

Zillow MCP works with ChatGPT (Developer Mode).

  1. Enable Developer Mode: Settings → Apps & Connectors → Advanced settings.

  2. Go to Settings → Connectors → Add MCP server (Create in the Connectors panel).

  3. Paste the server URL:

https://api.zillapi.com/mcp
  1. Complete the OAuth sign-in when prompted — no API key needed.

Zillow MCP works with Hermes Agent.

Add to ~/.hermes/config.yaml under mcp_servers — with OAuth (no key handling):

mcp_servers:
  zillapi:
    url: "https://api.zillapi.com/mcp"
    auth: oauth

Or with an API key:

mcp_servers:
  zillapi:
    url: "https://api.zillapi.com/mcp"
    headers:
      Authorization: "Bearer zk_YOUR_KEY_HERE"

With auth: oauth, Hermes runs the MCP OAuth 2.1 flow (metadata discovery + dynamic client registration) automatically — this server supports it out of the box.

Zillow MCP works with OpenClaw.

With OAuth (no key handling):

openclaw mcp add zillapi --url https://api.zillapi.com/mcp --transport streamable-http --auth oauth
openclaw mcp login zillapi

Or with an API key:

openclaw mcp set zillapi '{"url":"https://api.zillapi.com/mcp","transport":"streamable-http","headers":{"Authorization":"Bearer zk_YOUR_KEY"}}'

Both write to ~/.openclaw/openclaw.json under mcp.servers:

{
  "mcp": {
    "servers": {
      "zillapi": {
        "url": "https://api.zillapi.com/mcp",
        "transport": "streamable-http",
        "auth": "oauth"
      }
    }
  }
}

Prefer skills over MCP? Zillapi is also available as an OpenClaw-ready agent skill — grab it at ZeroPointRepo/zillow-skills.

Or manually — add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "zillapi": {
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

Or from the command line:

code --add-mcp '{"name":"zillapi","type":"http","url":"https://api.zillapi.com/mcp","headers":{"Authorization":"Bearer zk_YOUR_KEY_HERE"}}'
{
  "mcpServers": {
    "zillapi": {
      "url": "https://api.zillapi.com/mcp",
      "type": "streamableHttp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "zillapi": {
      "serverUrl": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

In Zed settings.json:

{
  "context_servers": {
    "zillapi": {
      "source": "remote",
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}
{
  "mcpServers": {
    "zillapi": {
      "type": "streamable-http",
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

In mcp.json:

{
  "mcpServers": {
    "zillapi": {
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

In ~/.gemini/settings.json:

{
  "mcpServers": {
    "zillapi": {
      "httpUrl": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

In Settings → Tools → AI Assistant → MCP:

{
  "mcpServers": {
    "zillapi": {
      "url": "https://api.zillapi.com/mcp",
      "headers": {
        "Authorization": "Bearer zk_YOUR_KEY_HERE"
      }
    }
  }
}

Add the server as a hosted MCP tool with the URL https://api.zillapi.com/mcp and an Authorization: Bearer zk_YOUR_KEY_HERE header (or let end users OAuth). Any framework that speaks streamable-HTTP MCP works the same way.


Authentication

Two ways in — both end at the same account and credits:

  • OAuth 2.1 (recommended for Claude, ChatGPT, Hermes Agent & OpenClaw): paste the endpoint (or set auth: oauth) and sign in when prompted. The server implements Dynamic Client Registration, so DCR-aware clients discover everything automatically — you never touch a key.

  • API key (zk_...): for key-based clients (Cursor, VS Code, Cline, scripts). Get one free at zillapi.com/signup and send it as Authorization: Bearer zk_....

Security note: treat zk_ keys like passwords — never commit them to a repo or paste them into shared configs. If a key leaks, revoke it in your dashboard and mint a new one.


Available Tools

1. lookup_property_by_address

Full Zillow property record for a U.S. address — price, Zestimate, photos, schools, taxes, agent contact, and price history. 3 credits.

Param

Type

Default

Description

address

string

required

Full street address with city, state, and ZIP. Example: 17 Zelma Dr, Greenville, SC 29617

Real response (trimmed):

{
  "data": {
    "zpid": "11026031",
    "address": { "streetAddress": "17 Zelma Dr", "city": "Greenville", "state": "SC", "zipcode": "29617" },
    "price": 415000,
    "zestimate": 481100,
    "rentZestimate": 2143,
    "bedrooms": 4,
    "bathrooms": 3,
    "livingArea": 1842,
    "homeStatus": "SOLD"
  },
  "request_id": "fb1f868e-2a10-49d8-ae01-1713ef5391e7"
}

2. lookup_property_by_zpid

Full property record by Zillow property id. 1 credit.

Param

Type

Default

Description

zpid

string

required

Numeric Zillow property id, e.g. 11026031

3. get_zestimate

Zillow's automated valuation (Zestimate) and rent Zestimate for a property.

Param

Type

Default

Description

zpid

string

required

Numeric Zillow property id

Real response:

{
  "data": {
    "zestimate": 1070100,
    "rent_zestimate": 8380,
    "tax_assessed_value": null,
    "last_sold_price": 980000,
    "currency": "USD"
  },
  "request_id": "b2a21325-c135-40ad-9473-eeaa185b30f5"
}

4. search_listings

For-sale, for-rent, or sold listings inside a geographic bounding box, with optional bedroom and price filters. 1 credit per result, up to 50 per call.

Param

Type

Default

Description

bbox

string

required

Bounding box as west,south,east,north decimal lat/lon. Example: -83.0,34.7,-82.0,35.0

status

string

required

for_sale | for_rent | sold

beds_min

integer

Minimum bedrooms

price_max

integer

Price ceiling in USD


Data you get

Every lookup returns the fields pros actually work with:

Field group

Examples

Valuation

Zestimate, rent Zestimate, tax-assessed value, last sold price

Core facts

beds, baths, living area (sqft), lot size, year built, home type, status

Price history

full listing/sale price timeline per property

Tax history

assessed values and tax amounts by year

Schools

assigned schools with ratings and distance

Media

photo URLs (full resolution)

Contact

listing agent/broker name and contact where published

Everything else

resoFacts and the rest of the 300+ fields Zillow publishes per home

Coverage: 160M+ U.S. parcels, residential focus. Responses are JSON (CSV/NDJSON available on the REST API).


Use Cases & Prompts

Use case

Example prompt

Comps / quick CMA

"Run comps for 17 Zelma Dr, Greenville SC — recently sold 3-beds nearby, sale price vs Zestimate, and price per sqft."

Flip / ARV check

"This one's listed at $415k. Pull the full record and Zestimate — how much margin is there if it rehabs to the neighborhood's price per sqft?"

Rental analysis

"Get rent Zestimates for these five addresses and rank them by gross yield against asking price."

Market scan

"Scan for-sale homes under $500k with 3+ beds in this part of Austin — summarize price per sqft and days on market."

Lead gen brief

"Pull taxes, price history, and schools for this address and draft a one-paragraph brief for my client."

Buyer / seller check

"What's this home worth? Zestimate vs asking price, plus property taxes and school ratings."


Pricing & Rate Limits

Plan

Price

Credits

Rate limit

Free

$0 — no card required

100 at signup

20 req/min

Monthly

see zillapi.com/pricing

monthly credit allowance

200 req/min

Annual

see zillapi.com/pricing

granted upfront — best per-credit rate

300 req/min

  • Most calls cost 1 credit per record returned; lookup_property_by_address costs 3 credits; failed calls are free.

  • Top-ups from $4 per 1,000 credits (paid plans).

  • View pricing · Sign up free


Troubleshooting

  • Verify your API key starts with zk_

  • Check for extra spaces when copying the key or the endpoint URL

  • Ensure the key hasn't been revoked in your Zillapi dashboard

  • If using OAuth, try removing and re-adding the connector to re-authorize

  • Check your credit balance in your Zillapi dashboard

  • On a paid plan, buy a top-up pack; on the free tier, upgrade at zillapi.com/pricing

  • Failed calls are never charged — a 402 means the account balance is empty, not that you were billed

  • For address lookups, include city, state, and ZIP (e.g. 17 Zelma Dr, Greenville, SC 29617)

  • Verify the zpid is the numeric id from a zillow.com/homedetails/..._zpid/ URL

  • Some parcels (new construction, unlisted land) may not have a Zillow record yet

  • Respect the Retry-After header and back off exponentially

  • The error.code is a stable string (rate_limited) — detect it without parsing prose

  • Rate-limited calls are not charged; upgrade your plan for higher per-minute limits

  • Clear browser cookies and retry the connector authorization

  • Ensure popup blockers aren't stopping the sign-in window

  • OAuth discovery starts from the server's 401 response — if a client can't connect, confirm it supports MCP OAuth 2.1 / DCR, or fall back to an API key


Also available as a REST API

Building an app instead of an agent? Zillapi's Zillow Data API also ships as a plain JSON REST service.

MCP

REST API

Best for

AI assistants & agents

Apps & backend services

Setup

Add a URL

Code integration

Get started

This README

Quickstart → · API reference → · OpenAPI 3.1 →

Base URL: https://api.zillapi.com/v1 — one real estate API for property records, valuations, and listings.


Connect


MCP Registry

Published to the official Model Context Protocol Registry as:

com.zillapi/zillow-mcp

FAQ

Is there a public Zillow API in 2026? Not an open one — Zillow retired its public API (ZWSID) in 2021, and official access now runs through Bridge Interactive, which is MLS-gated. Zillow MCP provides same-day, self-serve access to Zillow-sourced property data through the Model Context Protocol, with a free tier and no approval process.

What is a Zillow MCP? A Zillow MCP is a Model Context Protocol server that exposes Zillow property data as tools an AI agent can call — property lookup by address or zpid, Zestimates, and listing search — so assistants like Claude, ChatGPT, and Cursor can fetch live U.S. property data mid-conversation, backed by Zillapi's hosted property data API.

How do I add it to Claude Desktop, Claude Code, or ChatGPT? Claude Desktop: Settings → Connectors → Add custom connector → paste https://api.zillapi.com/mcp. Claude Code: claude mcp add --transport http zillapi https://api.zillapi.com/mcp --header "Authorization: Bearer zk_YOUR_KEY". ChatGPT: enable Developer Mode, then Settings → Connectors → Add MCP server → paste the URL and complete the OAuth prompt. See Quick Install for every client.

Can it run comps or a quick CMA? Yes — that's the core workflow. Ask for recently sold homes near a subject property, then compare sale prices, Zestimates, and price per sqft. Agents use it for quick CMAs; investors run the same flow for flip margins and rental yield checks.

How much does it cost? 100 free credits at signup with no card. After that it's credit-based — monthly/annual plans or top-ups from $4 per 1,000 credits. Most calls are 1 credit per record; address lookups are 3 credits; failed calls are free.

Is this affiliated with Zillow? No. Zillapi is an independent service and is not affiliated with, endorsed by, or sponsored by Zillow Group, Inc. "Zillow" and "Zestimate" are trademarks of Zillow Group, Inc., used here descriptively to refer to those services.


A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ZeroPointRepo/zillow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server