Use PropertiesAPI with Claude

PropertiesAPI runs a remote MCP server. Connect Claude with your API key, then ask about any Zillow home by its link, zpid or address. Claude gets the same JSON as the API.

Server URL: https://api.propertiesapi.com/mcp

Same key, same credits and same limits as the REST API. No separate sign-up.

Get a key

Sign in with your email and create a key on your dashboard. The free plan includes 50 free lookups (a one-time trial) with no card. In the examples below, replace YOUR_KEY with your key.

Claude Code

Add the server with one command:

Terminal
claude mcp add --transport http propertiesapi https://api.propertiesapi.com/mcp \
  --header "Authorization: Bearer YOUR_KEY"

That adds it to the current project, for you only. Add --scope user to use it in all your projects:

Terminal (all projects)
claude mcp add --transport http --scope user propertiesapi https://api.propertiesapi.com/mcp \
  --header "Authorization: Bearer YOUR_KEY"

Then run /mcp inside Claude Code, or claude mcp list in your shell, to check that propertiesapi is connected. Claude Code saves the command without checking the key, so a wrong key only shows up there, as a failed connection.

To share the setup with your team without sharing a key, put it in the project's .mcp.json and let each person set PROPERTIESAPI_KEY in their environment:

.mcp.json
{
  "mcpServers": {
    "propertiesapi": {
      "type": "http",
      "url": "https://api.propertiesapi.com/mcp",
      "headers": {
        "Authorization": "Bearer ${PROPERTIESAPI_KEY}"
      }
    }
  }
}

Claude Desktop and claude.ai

Add PropertiesAPI as a custom connector. It works the same in Claude Desktop and on claude.ai:

  1. Open Customize > Connectors, click + Add, then Add custom connector.
  2. Name it PropertiesAPI and enter the server URL https://api.propertiesapi.com/mcp.
  3. Under Authentication, choose No sign in.
  4. Under Request headers, add Authorization with the value Bearer YOUR_KEY.
  5. Click Add. In a chat, click +, open Connectors and turn PropertiesAPI on.

Claude connects to the server from Anthropic's cloud, so the key is stored with the connector. On Team and Enterprise plans an owner adds the connector, and everyone who uses it shares that key and its credits. See Anthropic's custom connector guide for the current steps on your plan.

Other MCP clients

Any client that supports the Streamable HTTP transport and custom headers can connect:

Connection settings
URL:     https://api.propertiesapi.com/mcp
Header:  Authorization: Bearer YOUR_KEY
         (or X-API-Key: YOUR_KEY)

Tools

ToolWhat it does
get_zillow_propertyOne home, from exactly one of url, zpid or address. Returns the same data and meta as GET /v1/zillow/property. Set raw to true for Zillow's full original record.
get_zillow_propertiesUp to 50 items in one call, the same as POST /v1/zillow/batch. Each item succeeds or fails on its own.
get_usageYour plan and the credits used and left this period, the same numbers as your dashboard. Free: it runs no lookup.

Each tool's description tells Claude when to use a link rather than an address and what each error means, so you can just ask in plain words:

  • “What's the Zestimate and rent Zestimate for this home? https://www.zillow.com/homedetails/...”
  • “Compare price per square foot for these listings and flag any with a recent price cut.”
  • “How many PropertiesAPI credits do I have left?”

Credits and limits

The tools run the same lookups as the API, so billing is the same: 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 cost nothing. A live lookup takes typically 8 seconds, up to about 20 seconds. Your plan's rate limit and credits apply across the API and Claude together, and the calls show up on your dashboard like any other.

When a lookup fails, Claude gets a tool error with the API's status and error code, the same ones listed in the docs. For example, 409 address_ambiguous means Zillow's closest match is a different home; the error includes that home's Zillow link in details.candidate.detailUrl, and Claude can look it up by link if it's the one you meant. 402 credits_exhausted includes the upgrade link.

Results are the same JSON as the REST API, sent once as the tool's text result. If a batch with raw records gets too large for one response, the items that don't fit come back as batch_response_too_large and aren't billed; ask for fewer homes at a time, or leave raw off.

Troubleshooting

  • 401 missing_api_key or 401 invalid_api_key: the header is missing or the key is wrong. The value must be Bearer, a space, then the whole key.
  • 401 revoked_api_key: the key was revoked. Create a new one on your dashboard and update the header.
  • Claude Code doesn't fall back to a browser sign-in when your header is rejected. Fix the key with claude mcp remove propertiesapi and add it again.

Protocol details

The server speaks the Streamable HTTP transport and answers each POST with JSON. It keeps no session, so every request stands alone. It supports MCP protocol versions 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26: the initialize handshake of the older versions and the per-request metadata of the newest.

Data is provided as-is, as shown on public Zillow pages, without any guarantee of accuracy or completeness. Claude is a product of Anthropic. Zillow is a trademark of Zillow, Inc. PropertiesAPI is an independent service and is not affiliated with, endorsed by or sponsored by Zillow.