Skip to main content
Glama

search_homes

Search Zillow for homes by city, ZIP, or neighborhood, filtered by status, price, beds, baths, and sort, returning addresses, prices, and listing URLs.

Instructions

Search Zillow for homes in an area. Give it a plain location -- a city and state ('Austin, TX'), a ZIP code ('78704'), or a neighborhood -- plus optional filters. Returns each listing's address, price, beds, baths, sqft, Zillow property ID (zpid), listing URL, and days on Zillow.

status: 'rent' (default), 'sale', or 'sold' (recently sold). sort: one of relevant, newest, price_asc, price_desc, beds, baths, sqft, lot_size (default 'relevant'). min_price/max_price, min_beds/max_beds, min_baths/max_baths: numeric filters, all optional and independent. page: 1-indexed results page (default 1).

This is an unofficial, reverse-engineered method -- it fetches Zillow's own search-results pages, not an API. It can get blocked by Zillow's bot detection, and it will say so clearly when that happens rather than return something that looks like results but isn't. Only searches an area; a full street address as the location will fail with an explanation rather than returning that one property's page.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
sortNorelevant
statusNorent
locationYes
max_bedsNo
min_bedsNo
max_bathsNo
max_priceNo
min_bathsNo
min_priceNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and rises to the occasion. It clearly discloses that this is an unofficial, reverse-engineered method that scrapes Zillow search pages, may be blocked by bot detection, and will report when that happens. Minor omissions like rate limits and data-completeness concerns keep it from a 5.

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

Conciseness2/5

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

The functional portion is well-organized: a lead sentence, return-field list, parameter lines, and a caveat. However, the description ends with a garbled, recursive tail ('But then there is this sentence...') that serves no purpose and would confuse an agent. This is a serious structural quality defect.

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?

For a 10-parameter tool with an output schema, the description is nearly complete: it covers input formats, all filter options, defaults, return fields, and the scraping caveat. It lacks only minor edge-case guidance such as behavior when no listings match or whether sort applies to all statuses, but nothing essential is missing.

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 description coverage is 0%, so the description must compensate, and it does. It explains location format, status values ('rent', 'sale', 'sold'), sort values (relevant, newest, price_asc, price_desc, beds, baths, sqft, lot_size), min/max numeric filters as optional and independent, and page as 1-indexed with a default. This fully compensates for the schema's bare property titles.

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?

The description opens with a specific action and target: 'Search Zillow for homes in an area.' It also enumerates the exact return fields (address, price, beds, baths, sqft, zpid, URL, days on Zillow), making the tool's purpose unmistakable. No sibling tools exist, so differentiation is not required.

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?

It gives concrete input guidance: a plain location as city/state, ZIP, or neighborhood, plus optional filters. It documents allowed values for status, sort, numeric filters, and page including defaults. It does not explicitly state when not to use the tool or name alternatives, but with no siblings the guidance is sufficiently explicit.

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

Deploy Server

Other Tools