Compare Compass properties side-by-side
compass_compare_propertiesFetch 2 or more Compass properties and align their facts side-by-side. Each target may supply url (a full Compass homedetails URL or path) or listing_id_sha alone — sha-only targets fetch /listing//view, which redirects to the…
Instructions
Fetch 2 or more Compass properties and align their facts side-by-side. Each target may supply url (a full Compass homedetails URL or path) or listing_id_sha alone — sha-only targets fetch /listing//view, which redirects to the homedetails page. Returns the full per-property record per row (with extracted_features populated). 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), retryable and error, and the envelope reports count / ok / errored. Calls are concurrent, and the whole call is bounded by an overall deadline: any row still unsettled when it is reached comes back as { status: "pending", retryable: true, error } with a top-level pending count — re-run just those targets. The raw description is omitted from each row by default — pass include_description: true to keep it. The redundant summary table is also opt-in via include_summary: true — by default only results[] is returned, which already carries every fact.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | Response shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact strips image/avatar URLs from the response; "full" returns Compass's payload untouched. No field projection: this server has no verified record of which Compass fields matter, and inventing one would risk dropping a field a caller needs. | |
| targets | Yes | Array of 2–25 properties to compare. (Cap raised from 8 to 25 in #53; for unbounded structured fetch without the summary table, use `compass_bulk_get`.) | |
| include_summary | No | Include the pivoted `summary` table (one row per compared field, one column per listing). Defaults to `false` — `results[].property.*` already carries every fact and the summary was roughly 30% of response weight. Useful only for human-readable rendering. | |
| include_description | No | Include the raw `description` (Compass marketing copy) on each row. Defaults to `false` — `extracted_features` is always populated. |