A Zillow MCP server for Claude, Cursor and your agents
Connect an MCP client to PropertiesAPI once, then ask about any home by its Zillow link, zpid or address. The model gets the listing price, status, Zestimate, rent Zestimate, history and photos as JSON, with the same key and credits as the REST API.
Server URL https://api.propertiesapi.com/mcp · auth Authorization: Bearer YOUR_KEY
What the server does
The Model Context Protocol lets an AI client discover tools on a server and call them during a conversation. The PropertiesAPI server is remote: there is nothing to install or run on your machine, and it answers over HTTPS at one URL. Your client sends your key in a header, lists the tools, and calls them when a question needs property data.
Under the hood each tool runs the same code as the REST API. A lookup through MCP passes the same checks, uses the same cache and bills the same way as a call to the property endpoint, and it shows up on your dashboard next to your other calls. The JSON the model sees is the JSON your code would get.
A live lookup takes typically 8 seconds, up to about 20 seconds, so the model may pause while a tool runs. Repeat questions about the same home are answered from the cache for free, which is why the tool descriptions tell the model to look a home up again rather than guess.
The tools
Names and behaviour as the server lists them to every client.
| Tool | What it does |
|---|---|
| get_zillow_property | One home from a Zillow link, a zpid or an address. Returns the same JSON as the REST property endpoint, calculated fields included. |
| get_zillow_properties | Up to 50 items in one call, the same as the batch endpoint. Each home succeeds or fails on its own. |
| get_usage | The plan, credits used and credits left. Runs no lookup and costs nothing. |
Claude Code
One command adds the server for all your projects. Replace YOUR_KEY with your key.
claude mcp add --transport http --scope user propertiesapi https://api.propertiesapi.com/mcp \
--header "Authorization: Bearer YOUR_KEY"
# then check it is connected
claude mcp listClaude Desktop and claude.ai
Add PropertiesAPI as a custom connector. The steps are the same in the desktop app and on the web; on Team and Enterprise plans an owner adds it.
Customize > Connectors > + Add > Add custom connector
Name: PropertiesAPI
Server URL: https://api.propertiesapi.com/mcp
Authentication: No sign in
Request headers: Authorization = Bearer YOUR_KEYCursor
Add the server to .cursor/mcp.json in a project, or to the global mcp.json in your home folder's .cursor directory. Cursor reads the key from the PROPERTIESAPI_KEY environment variable, so it never sits in the file.
{
"mcpServers": {
"propertiesapi": {
"url": "https://api.propertiesapi.com/mcp",
"headers": {
"Authorization": "Bearer ${env:PROPERTIESAPI_KEY}"
}
}
}
}Any other MCP client
Clients that support the Streamable HTTP transport and custom headers can connect with these settings.
Transport: Streamable HTTP
URL: https://api.propertiesapi.com/mcp
Header: Authorization: Bearer YOUR_KEY
(or X-API-Key: YOUR_KEY)What to ask
| You ask | What happens |
|---|---|
| What's the asking price, Zestimate and rent Zestimate for this home? (paste a Zillow link) | Claude calls get_zillow_property with the link and reads the three fields back, saying which ones Zillow doesn't show. |
| Here are six listings I saved. Rank them by gross yield and tell me which had price cuts. | Claude sends all six to get_zillow_properties in one call and sorts by the calculated gross yield and price-drop count. |
| Look up the house at this address and summarize its price history. | Claude looks the home up by address. If Zillow's closest match is a different home, it gets that home's link back and asks you before going on. |
| How many lookups do I have left this month? | Claude calls get_usage, which is free, and answers from the same numbers your dashboard shows. |
MCP server or REST API?
Use the MCP server when the conversation happens in an MCP client you don't control: Claude, Cursor or a team assistant. Setup is one command or one form, and the tool descriptions already explain inputs, costs and errors to the model.
Use the REST API when you write the agent loop yourself or need the data outside a chat: a backend job, a spreadsheet, an automation. The function-calling guide for AI agents shows a tool definition and handler for that case. Both routes use the same key, credits and limits. To see a full research session, read Use Zillow property data in Claude with MCP.
When a lookup fails, the model gets the API's error code with a message it can act on. For example, address_ambiguous carries the Zillow link of the closest match so the model can ask you whether it is the right home, and credits_exhausted carries the link to your plan settings.
How to set it up, in short
- Get an API key. Sign in with your email (we send a one-time link), then create a key on your dashboard. The free plan includes 50 free lookups (a one-time trial) with no card.
- Add the server to your client. Use the command, connector or JSON for your client below, with the key in the Authorization header.
- Ask about a home. Paste a Zillow link or an address into the chat. The client calls the tools and shows you the answer.
Zillow MCP server questions
Is this Zillow's own MCP server?+
No. PropertiesAPI is an independent service and is not affiliated with Zillow. The server returns what the public Zillow page for a home shows, provided as-is.
Which clients work with it?+
Claude Code, Claude Desktop, claude.ai and Cursor, set up as shown above, and any other MCP client that supports the Streamable HTTP transport with a custom request header.
Does it work with ChatGPT?+
The server signs requests in with an API key header, not an interactive sign-in. Use it from a client that can send a custom header. If yours can't, call the REST API from your own tool instead.
Can the model search Zillow for homes?+
No. The tools look up homes you name, by link, zpid or address. There is no search by area, price or filters, and no listing alerts.
Is it safe to give an agent these tools?+
All three tools only read data: they are marked read-only and change nothing in your account. Lookups use credits, so if an agent runs unattended, have it check get_usage, and on a paid plan consider a monthly spending limit.
What does a tool call cost?+
Zillow links and addresses cost the same: 1 credit per successful lookup. Repeat lookups of the same home within 24 hours come from our cache and are free. Failed lookups and get_usage are free. You start with 50 free lookups.
Connect your client
50 free lookups, no card, no approval.
Claude is a product of Anthropic. Cursor is a product of Anysphere. Zillow is a trademark of Zillow, Inc. PropertiesAPI is an independent service and is not affiliated with, endorsed by or sponsored by Zillow.