Homes MCP
homes.com real-estate for Claude — search, property details, photos, compare, mortgage math
Connector by chrischall · GitHub account verified by the MCP Registry
Chalk Labs
Need help deploying Homes MCP?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/chrischall-homes-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 15 read · 0 write · 0 deleteRead-only
- Secrets
- None asked for
- Install scripts
- Not scanned yet
- Runs as
- Node.js package
Tools by what they do 15
Read from the source code; the running server may list different tools.
Read 15 · Look things up without changing anything.
homes_bulk_gethomes_compare_propertieshomes_estimate_rent_vs_buyhomes_get_by_addresshomes_get_historyhomes_get_market_reporthomes_get_nearby_listingshomes_get_propertyhomes_get_property_historyhomes_get_property_photoshomes_get_saved_homeshomes_get_saved_searches
Show 3 more tools
homes_get_tax_historyhomes_resolve_addresseshomes_search_properties
Secrets and settings it asks for
Other settings (environment variables or headers).
HOMES_COMMUNITIES_FILEHOMES_WS_PORT
Tools (15)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
homes_bulk_getBulk-fetch homes.com properties (structured records only)read-onlyFetch up to 200 homes.com properties in one call and return their structured records. Pass `urls: string[]`. Results are ordered to match the input array and per-row errors are captured (one bad URL won't fail the whole call). Each row carries a `status`: `ok`, `pending`, or — on failure — the error kind (`timeout` / `bridge_down` / `protocol` / `other`, also in `error_kind`) with a `retryable` flag; the envelope reports `count` / `ok` / `errored` (+ `pending` when non-zero). Mirrors `homes_get_property` per-row, including `extracted_features`, `hoa_fee`, `highlights`, `schools`, `lot_size_sqf…
homes_compare_propertiesCompare homes.com properties side-by-sideread-onlyFetch 2 or more homes.com properties and align their facts side-by-side. Each target supplies a `url` — the full homes.com property URL (e.g. from a homes_search_properties result's `url` field). Returns the full per-property record (with server-side `extracted_features`, `hoa_monthly_usd`, `days_on_market`, `price_drop_*`, `lot_size_sqft` + the derived `lot_size_acres`, and `portal_url_hyperlink`). Per-target errors are captured per-row — one bad target will not fail the whole call: a failed row carries `status` = `error_kind` (`timeout` / `bridge_down` / `protocol` / `other`) plus `retryable…
homes_estimate_rent_vs_buyProject cumulative buy-vs-rent cost over N yearsread-onlyProject the cumulative cost of buying a home versus renting a comparable place over N years. Accounts for down payment, closing costs, monthly PITI, maintenance (~1%/yr default), appreciation (~3%/yr default), rent growth (~3%/yr default), and the opportunity cost of the down payment + closing costs (renter invests it at investment_return_rate, default 6%/yr). P&I stops once the loan term ends. Each year is the buyer's net position if they sold that year (cash out minus equity) versus the renter's net cost, so break-even year is independent of the horizon. Returns year-by-year cumulative net c…
homes_get_by_addressResolve a street address to a homes.com property URLread-onlyResolve a US street address to its canonical homes.com property URL + opaque property hash. Pass `address` (street), `city`, `state`, and optional `zip`. Walks three rungs: first the structured smartsearch typeahead (POST /routes/res/consumer/smartsearch/autocomplete/ — the primary rung, the same address-suggest API homes.com's search box fires, returning the real /property/<slug>/<hash>/ URL directly), then a slug-routed page (parsing the embedded Schema.org JSON-LD — both the CollectionPage search-results shape and the single-RealEstateListing detail redirect), and finally a city/zip search …
homes_get_historyGet homes.com property + tax history (combined)read-onlyCombined history endpoint — replaces `homes_get_property_history` + `homes_get_tax_history` with a single fetch. Returns `{ property_id, url, listing_events, ownership_events, lien_events, events_normalized, tax_records }`. Pass `url` — the full property detail URL. Series are `[]` when the listing doesn't carry that section. Cross-MCP-normalized `events_normalized` carries the same enum across siblings (Listed/PriceChange/Pending/Contingent/Sold/Withdrawn/Relisted/Delisted). Each `events_normalized` row is `{ date, type, price?, price_change_pct?, list_to_sale_pct? }` — `price_change_pct` onl…
homes_get_market_reportGet a homes.com market report for a locationread-onlyFetch homes.com's recently-sold listings for a city/ZIP/neighborhood and derive a market summary: count, median sale price, and average $/sqft across the sample. Pass `location` — free-text (e.g. 'Brooklyn, NY', '30311'). `location` is required and must contain Latin letters or digits — a blank or unsluggable location (e.g. only punctuation or non-Latin script) is rejected with an error rather than returning an empty result. Returns `{ region, slug, sold_summary, sample_sold }`. Note: homes.com's sold page typically returns ~40 recent listings — this is a sample-based summary, not an exhaustiv…
homes_get_nearby_listingsGet nearby homes.com listings for a propertyread-onlyScrape the nearby-links section of a homes.com detail page (the tabbed list of `<ul id="nb-Property">` near the bottom of the page) and return the nearby active listings. Pass `url` (the property whose neighborhood to inspect). By default returns the For Sale tab; pass `include_rentals: true` to also include the Rentals tab. Optional `limit` caps the count. Returns `{ property_id, url, count, listings: [{ property_id, url, address?, tab }] }`. Note: the nearby section is a curated cross-link list, not a comparable-sales set — only URL + address are exposed (no price/beds/baths/sqft/photo). To …
homes_get_propertyGet homes.com property detailsread-onlyFetch a property's full homes.com record. Pass `url` — the full property detail URL (e.g. from a homes_search_properties result's `url` field). Parses the page's Schema.org JSON-LD plus DOM-side sections to return address, lat/lng, beds/baths, sqft, year built, price, status, listing agent + brokerage, highlights, estimated monthly payment, total views, Matterport tour URL, floorplan URLs, schools, HOA fee, lot_size_sqft plus the derived lot_size_acres (round(lot_size_sqft / 43560, 2); both null — never 0 — for condos and listings with no lot), parking, heating/cooling, MLS ID/source, and date…
homes_get_property_historyGet homes.com property history (DEPRECATED — use homes_get_history)read-onlyDEPRECATED — prefer `homes_get_history` (combined timelines + tax) or `homes_get_property({ url, include_price_history: true })`. Same data, fewer round trips. Will be removed in a future major version. Three timelines for a homes.com property in one call: `listing_events`, `ownership_events`, `lien_events`. Also returns `events_normalized` mapped onto the cross-MCP enum. Each `events_normalized` row is `{ date, type, price?, price_change_pct?, list_to_sale_pct? }` — `price_change_pct` only on `PriceChange` rows; every other row carries homes.com's "List to Sale" figure as `list_to_sale_pct` (…
homes_get_property_photosGet homes.com property photo galleryread-onlyThe full photo gallery for a homes.com listing. homes.com's JSON-LD only exposes one primary image, so this tool scrapes every <img> tag on the property detail page and filters to the homes.com CDN. Pass `url` — the full homes.com property URL or path (e.g. from a homes_search_properties result's `url` field). Returns `{ property_id, url, count, photos: [{ url, position, alt? }] }`. Read-only; safe to call repeatedly.
homes_get_saved_homesGet the signed-in user's saved homes on homes.comread-onlyThe signed-in user's saved (favorited) homes on homes.com. Scrapes /customer/dashboard/favorites/. Returns `{ count, homes: [{ property_id, url, address?, price?, beds?, baths?, sqft?, status? }] }`. REQUIRES the user to be signed into homes.com in their browser tab — if not, the request throws SessionNotAuthenticatedError. Card fields (price/beds/baths/sqft) are best-effort DOM scrapes — they may be missing on some card variants; treat absence as 'not surfaced on the saved-homes card', not 'no value'. Call `homes_get_property(url)` per row when you need the canonical record. Read-only; safe t…
homes_get_saved_searchesGet the signed-in user's saved searches on homes.comread-onlyThe signed-in user's saved searches on homes.com. Scrapes /customer/dashboard/saved-searches/. Returns `{ count, searches: [{ name?, url, filters? }] }`. REQUIRES the user to be signed into homes.com in their browser tab — if not, the request throws SessionNotAuthenticatedError. `name` and `filters` are DOM-scraped from the saved-search card; absence means homes.com didn't render them, not that the search has none. Read-only; safe to call repeatedly.
homes_get_tax_historyGet homes.com property tax history (DEPRECATED — use homes_get_history)read-onlyDEPRECATED — prefer `homes_get_history` (combined timelines + tax) or `homes_get_property({ url, include_tax_history: true })`. Same data, fewer round trips; note that `homes_get_history` returns the tax array as `tax_records` (not `records`). Will be removed in a future major version. Year-by-year property-tax records: tax paid, total assessed value, land/improvement split.
homes_resolve_addressesBulk-resolve street addresses to homes.com property URLsread-onlyResolve up to 100 street addresses to canonical homes.com property URLs + opaque property hashes in one call. Pass `addresses: [{ address, city, state, zip? }, ...]`. Fans out to the same rungs `homes_get_by_address` runs (structured smartsearch typeahead → slug → city/zip search fallback), verifying each candidate with the same whole-token street + unit match. Per-row outcomes parallel `homes_get_by_address` (with `property_hash` renamed to `property_id` here so the field name lines up with `homes_bulk_get`): `{ resolved: true, url, property_id, street_address, matched_via }` on success — `ma…
homes_search_propertiesSearch homes.com listingsread-onlySearch homes.com listings by free-text location (city, ZIP, neighborhood). Optionally filter by property_type (single_family/condo/townhouse/land/mobile/multi_family), listing_type (for_sale/sold/for_rent/open_houses/new_construction), and sort (newest). Slugifies the location into homes.com's URL routing (e.g. 'Atlanta, GA' + condo + for_sale → /atlanta-ga/condos-for-sale/). Parses the embedded Schema.org JSON-LD to return each listing's address, price, beds/baths, sqft, primary photo, listing agent + brokerage, and the homes.com property URL. `location` is required and must contain Latin let…
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit
- Oct 19, 2026 (13 days ago)
- Last release
- Oct 16, 2026 (17 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.chrischall/homes-mcp- Version
- 2.1.11
- Auth
- No auth
- Packages
- npm homes-mcp
- License
- MIT
- Repository
- github.com/chrischall/homes-mcp
- First seen
- Oct 24, 2026
- Last checked
- Nov 1, 2026
More from chrischall
- 0.596score
Musescore MCP
chrischall
MuseScore for Claude — search sheet music and read score metadata via your signed-in browser
ConnectorAFreshness: ALocal↓ 257/wkClaude Code +5 - 0.580score
Insync MCP
chrischall
Use an InSync (Qualifacts) patient portal: reads, file transfer, messages and care requests
ConnectorAFreshness: ALocalClaude Code +5 - 0.580score
Therapyportal MCP
chrischall
TherapyNotes client portal: appointments, documents, billing, messages; confirm-gated sends, uploads
ConnectorAFreshness: ALocalClaude Code +5 - 0.580score
Rxlocal MCP
chrischall
RxLocal pharmacy portal MCP — prescriptions, messages, confirm-gated refill requests
ConnectorAFreshness: ALocalClaude Code +5 - 0.580score
Toasttab MCP
chrischall
Toast restaurants and menus: find places that order via Toast, read online or register menus.
ConnectorAFreshness: ALocalClaude Code +5 - 0.571score
Booli MCP
chrischall
Booli.se real estate for Claude: search listings, sold prices, areas & market stats
ConnectorAFreshness: ALocalRead-only★ 4↓ 467/wkClaude Code +5
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get Homes MCP running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
Homes MCP. Agent Mart. https://agentmart.dev/connectors/chrischall-homes-mcp (last updated 2026-11-01)