Skip to main content
Glama
chrischall

zillow-mcp

by chrischall

Get Zillow property details

zillow_get_property
Read-onlyIdempotent

Fetch a property's Zillow record by zpid or URL. Returns address, price, Zestimate, beds/baths, sq ft, lot size, and features. Optionally include description, price history, and tax history.

Instructions

Fetch a property's full Zillow record by zpid (numeric Zillow Property ID, e.g. 12345) or by homedetails URL. Returns address (Zillow's slugged form), mls_street_address (canonical MLS form — prefer this when it disagrees), neighborhood, price, Zestimate, rent Zestimate, beds/baths, square footage, lot_size (sq ft) plus the derived lot_size_acres (round(lot_size / 43560, 2); both null — never 0 — for condos and listings with no lot), year built, schools, and an extracted_features block (lake_front, hot_tub, basement, furnished, dock, community) keyword-parsed from the description. Also returns zest_vs_list_pct — the list-vs-Zestimate spread, (price − zestimate) / zestimate × 100 rounded to 1 decimal: POSITIVE means listed ABOVE the Zestimate, negative below (null when either input is missing). The raw description is omitted by default — pass include_description: true to keep it; in most cases the extracted features cover what callers need. Price-history and tax-history are also opt-in (include_price_history: true / include_tax_history: true) — bundle them in to skip a separate call. Provide exactly one of zpid or url. Read-only; safe to call repeatedly.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoA Zillow homedetails URL (or path beginning with /homedetails/)
zpidNoZillow Property ID (numeric)
include_descriptionNoInclude the raw `description` in the response. Defaults to `false` — `extracted_features` is always populated and usually sufficient.
include_tax_historyNoInclude the tax-history series (mirrors `zillow_get_tax_history`) on the response under `tax_history`. Defaults to `false`.
include_price_historyNoInclude the price-history series (mirrors `zillow_get_price_history`) on the response under `price_history`. Defaults to `false`. Saves a round trip when you already know you want the full picture.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, openWorldHint=true, idempotentHint=true. Description confirms 'Read-only; safe to call repeatedly'. Details response structure (address forms, derived fields like lot_size_acres and zest_vs_list_pct) and behavior of raw description omission. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single dense paragraph, but every sentence adds value. Front-loaded with primary purpose. Could be more structured (e.g., bullet points), but efficient for the information provided.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, yet description comprehensively covers return fields including derived calculations. Parameter count 5, none required — described well. Lacks error scenarios, but acceptable given detail level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage 100%, but description adds context: zpid explained as numeric with example, include_description highlights that extracted_features cover needs, price/tax history says they mirror other tools and save round trips. Clearly adds value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Fetch a property's full Zillow record by zpid or homedetails URL'. Identifies verb (fetch), resource (property record), and key identifiers. Distinguishes from siblings like zillow_get_price_history by noting bundling options.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Provide exactly one of zpid or url'. Suggests when to use optional parameters (include_description, include_price_history, include_tax_history) and that extracted_features usually suffice. Does not explicitly contrast with zillow_get_by_address, but provides sufficient context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/chrischall/zillow-mcp'

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