{"id":"d49d4958-7fd2-4b28-a46b-2b8fa4e9338c","entityType":"agent","slug":"clawhub-chrischall-compass-mcp","name":"Tmp.Vb01j6Bvtm","canonicalUrl":"https://www.xpersona.co/agent/clawhub-chrischall-compass-mcp","canonicalPath":"/agent/clawhub-chrischall-compass-mcp","generatedAt":"2026-10-10T10:43:47.531Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":null},"description":"Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp... Skill: Tmp.Vb01j6Bvtm Owner: chrischall Summary: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp... Tags: latest:0.11.7 Version history: v0.11.7 | 2026-07-07T23:57:01.178Z | auto - Removed the sample file skill-card.md. - No changes to core functionality or user-facing features. v0.11.6 | 2026-06-15T14:34:31.","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.6K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:compass-mcp","sourceUrl":"https://clawhub.ai/chrischall/compass-mcp","homepage":"https://clawhub.ai/chrischall/skills/compass-mcp","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/chrischall/compass-mcp","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/chrischall/skills/compass-mcp","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":64,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp..."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":null},"stars":null,"forks":null,"downloads":1593,"packageName":null,"latestVersion":"0.11.7","tractionLabel":"1.6K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T07:24:33.213Z","lastCrawledAt":"2026-10-10T07:24:33.213Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T07:24:33.213Z","lastVerifiedAt":null,"highlights":[{"version":"0.11.7","createdAt":"2026-07-07T23:57:01.178Z","changelog":"- Removed the sample file skill-card.md. - No changes to core functionality or user-facing features.","fileCount":3,"zipByteSize":4950},{"version":"0.11.6","createdAt":"2026-06-15T14:34:31.466Z","changelog":"- Removed sample file: skill-card.md - No feature, API, or documentation changes; content and functionality remain unchanged.","fileCount":3,"zipByteSize":4968},{"version":"0.11.5","createdAt":"2026-06-13T00:54:51.546Z","changelog":"- Removed the skill-card.md file. - No changes to functionality or documentation.","fileCount":3,"zipByteSize":4828},{"version":"0.11.4","createdAt":"2026-06-10T02:10:19.264Z","changelog":"- Removed the file: skill-card.md - No new features or functional changes. - Internal cleanup to the repository structure only.","fileCount":3,"zipByteSize":4869},{"version":"0.11.3","createdAt":"2026-06-07T19:35:21.034Z","changelog":"- Removed the file skill-card.md. - No functional or documentation changes to the skill or its usage.","fileCount":3,"zipByteSize":5094},{"version":"0.11.2","createdAt":"2026-06-04T04:29:35.641Z","changelog":"- Removed the skill-card.md file. - No functional or API changes; documentation and skill description remain the same.","fileCount":3,"zipByteSize":4932},{"version":"0.11.1","createdAt":"2026-06-01T18:38:33.062Z","changelog":"- Removed the redundant sample file skill-card.md. - No changes to feature set or documentation. - Functionality and usage remain unchanged.","fileCount":3,"zipByteSize":4835},{"version":"0.11.0","createdAt":"2026-05-29T19:04:17.177Z","changelog":"**Major update: Expanded capabilities, new tools, improved address resolution, and changes to supported features.** - Adds support for property photos, price history, address resolution, comparable rentals, batch/bulk tools, and agent listings. - Most tools now extract data by parsing server-rendered React page scripts, not calling private JSON APIs. - Introduces address and batch resolution tools (`compass_get_by_address`, `compass_resolve_addresses`, `compass_bulk_get`, `compass_compare_properties`). - Expands mortgage tools with a new affordability calculator. - Saved homes/searches tools are no longer supported; their GraphQL endpoints can't be fetched this way. - Some triggers, feature descriptions, and \"gotchas\" updated for clarity and scope.","fileCount":3,"zipByteSize":4845}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:compass-mcp","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T10:43:47.528Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-compass-mcp/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":null},"readme":"Skill: Tmp.Vb01j6Bvtm\n\nOwner: chrischall\n\nSummary: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp...\n\nTags: latest:0.11.7\n\nVersion history:\n\nv0.11.7 | 2026-07-07T23:57:01.178Z | auto\n\n- Removed the sample file skill-card.md.\n- No changes to core functionality or user-facing features.\n\nv0.11.6 | 2026-06-15T14:34:31.466Z | auto\n\n- Removed sample file: skill-card.md\n- No feature, API, or documentation changes; content and functionality remain unchanged.\n\nv0.11.5 | 2026-06-13T00:54:51.546Z | auto\n\n- Removed the skill-card.md file.\n- No changes to functionality or documentation.\n\nv0.11.4 | 2026-06-10T02:10:19.264Z | auto\n\n- Removed the file: skill-card.md\n- No new features or functional changes.\n- Internal cleanup to the repository structure only.\n\nv0.11.3 | 2026-06-07T19:35:21.034Z | auto\n\n- Removed the file skill-card.md.\n- No functional or documentation changes to the skill or its usage.\n\nv0.11.2 | 2026-06-04T04:29:35.641Z | auto\n\n- Removed the skill-card.md file.\n- No functional or API changes; documentation and skill description remain the same.\n\nv0.11.1 | 2026-06-01T18:38:33.062Z | auto\n\n- Removed the redundant sample file skill-card.md.  \n- No changes to feature set or documentation.  \n- Functionality and usage remain unchanged.\n\nv0.11.0 | 2026-05-29T19:04:17.177Z | auto\n\n**Major update: Expanded capabilities, new tools, improved address resolution, and changes to supported features.**\n\n- Adds support for property photos, price history, address resolution, comparable rentals, batch/bulk tools, and agent listings.\n- Most tools now extract data by parsing server-rendered React page scripts, not calling private JSON APIs.\n- Introduces address and batch resolution tools (`compass_get_by_address`, `compass_resolve_addresses`, `compass_bulk_get`, `compass_compare_properties`).\n- Expands mortgage tools with a new affordability calculator.\n- Saved homes/searches tools are no longer supported; their GraphQL endpoints can't be fetched this way.\n- Some triggers, feature descriptions, and \"gotchas\" updated for clarity and scope.\n\nv0.10.0 | 2026-05-29T12:20:37.480Z | auto\n\nNo visible file changes were detected in this version.\n\n- No updates, improvements, or fixes were introduced in this release.\n- Functionality and documentation remain unchanged from the previous version.\n\nv0.9.0 | 2026-05-28T16:45:28.535Z | auto\n\n- Removed the sample file: skill-card.md\n- No functional changes to the skill itself; update is limited to file cleanup.\n\nv0.8.0 | 2026-05-28T01:30:10.028Z | auto\n\n- Removed the sample skill card file (skill-card.md).\n- No functional changes; documentation and usage remain the same.\n\nv0.7.0 | 2026-05-27T02:02:18.557Z | auto\n\nNo changes detected in this release.\n\n- Version 0.7.0 does not introduce any updates or modifications to the skill files or documentation.\n\nv0.6.2 | 2026-05-26T16:40:16.133Z | auto\n\n- Removed the skill-card.md file.\n- No changes made to functionality or documentation.\n\nv0.6.1 | 2026-05-26T00:30:58.128Z | auto\n\nVersion 0.6.1 of compass-mcp\n\n- No file changes detected in this release.\n- Documentation and capabilities remain unchanged from previous version.\n\nv0.6.0 | 2026-05-25T15:12:16.648Z | auto\n\n## compass-mcp 0.6.0\n\n- No file changes detected in this release.\n- Functionality, setup instructions, and tool descriptions remain the same as in the previous version.\n\nv0.5.0 | 2026-05-25T03:40:46.066Z | auto\n\ncompass-mcp v0.5.0\n\n- No file changes detected in this release.\n- No updates or new features documented.\n- Please refer to the previous release notes for existing functionality.\n\nv0.4.3 | 2026-05-25T02:17:34.020Z | auto\n\nVersion 0.4.3 of compass-mcp\n\n- No file changes were detected in this release.\n- No user-facing features, fixes, or updates were added.\n\nv0.4.2 | 2026-05-24T23:04:39.413Z | auto\n\n- Updated SKILL.md with detailed setup instructions, trigger examples, and descriptions of each tool.\n- Clarified requirements: compass-mcp must be installed and the fetchproxy extension active.\n- Added explanations covering public data tools, user-signed-in features, and potential issues (e.g., sign-in and AWS WAF challenges).\n- Listed several common trigger phrases for activating the skill.\n- Described read-only limitation and noted differences from other real-estate platforms.\n\nArchive index:\n\nArchive v0.11.7: 3 files, 4950 bytes\n\nFiles: skill-card.md (2553b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.7:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.7:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.7\",\n  \"publishedAt\": 1783468621178\n}\n\nFile v0.11.7:skill-card.md\n\n## Description:\n\nLook up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and real-estate researchers use this skill to ask an agent for Compass listing searches, property details, photos, price history, address resolution, comparisons, and local mortgage or affordability calculations.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Setup uses unpinned third-party package and repository install commands.\n\nMitigation: Pin compass-mcp package versions and fetchproxy repository commits, then review the exact package, repository, and extension permissions before installation.\n\nRisk: Network-backed tools route requests through a signed-in Compass browser session.\n\nMitigation: Use a dedicated browser profile or low-privilege environment for Compass access and avoid sharing unrelated sensitive browser sessions with the bridge.\n\nRisk: Compass data extraction depends on rendered page state, authentication, and WAF/session behavior rather than a public API.\n\nMitigation: Treat returned listing details as best-effort and verify important property, price, and availability information against Compass or other primary sources before decisions.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/chrischall/skills/compass-mcp)\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp)\n- [compass-mcp linked repository](https://github.com/chrischall/compass-mcp)\n- [fetchproxy linked repository](https://github.com/chrischall/fetchproxy)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown or structured text with tool results, JSON snippets, shell commands, and configuration examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Network-backed tools require compass-mcp, the fetchproxy extension, and an active signed-in Compass browser session; local mortgage and affordability calculations can run without the session.]\n\n## Skill Version(s):\n\n0.11.7 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.11.6: 3 files, 4968 bytes\n\nFiles: skill-card.md (2731b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.6:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.6:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.6\",\n  \"publishedAt\": 1781534071466\n}\n\nFile v0.11.6:skill-card.md\n\n## Description: <br>\nLooks up Compass real-estate listings, property details, photos, price history, comparable rentals, agent listings, and address resolutions through an MCP server. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and real-estate workflows use this skill to query Compass listing information, compare properties, inspect price history and photos, and run local mortgage or affordability calculations from an agent interface. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill uses the user's signed-in Compass browser session to fetch listing data. <br>\nMitigation: Install and use it only when that session-powered access is acceptable, and keep the browser session scoped to the account intended for the lookup. <br>\nRisk: Compass access may be subject to site restrictions, WAF challenges, or terms that limit bulk or commercial use. <br>\nMitigation: Confirm Compass permits the intended use before bulk or commercial workflows, and expect network tools to fail until browser sign-in or WAF challenges are resolved. <br>\nRisk: Network-backed listing tools depend on compass-mcp and the fetchproxy browser extension being active. <br>\nMitigation: Run the healthcheck before relying on results; use the local mortgage and affordability tools when Compass session access is unavailable. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [npm package: compass-mcp](https://www.npmjs.com/package/compass-mcp) <br>\n- [Source: chrischall/compass-mcp](https://github.com/chrischall/compass-mcp) <br>\n- [Fetchproxy browser extension](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, configuration, shell commands, guidance] <br>\n**Output Format:** [Markdown and structured MCP tool responses with inline JSON and shell command examples] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Network-backed Compass tools require compass-mcp, the fetchproxy browser extension, and a signed-in Compass browser session; local mortgage and affordability calculators do not require Compass sign-in.] <br>\n\n## Skill Version(s): <br>\n0.11.6 (source: server-resolved release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.5: 3 files, 4828 bytes\n\nFiles: skill-card.md (2318b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.5:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.5:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.5\",\n  \"publishedAt\": 1781312091546\n}\n\nFile v0.11.5:skill-card.md\n\n## Description: <br>\nLooks up Compass real-estate listings, property details, photos, price history, and addresses through a Compass MCP integration that requires compass-mcp and an active fetchproxy browser extension. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to have an agent query Compass listing pages, retrieve property details, compare listings, inspect photos and price history, resolve addresses, and calculate mortgage or affordability estimates. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Compass lookup tools route requests through the user's signed-in browser session. <br>\nMitigation: Use only after reviewing the compass-mcp and fetchproxy sources and keep activity to personal, read-only listing lookup. <br>\nRisk: Bulk or automated extraction from Compass may violate site terms or expectations. <br>\nMitigation: Avoid bulk extraction and any use that could violate Compass terms. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [compass-mcp source](https://github.com/chrischall/compass-mcp) <br>\n- [fetchproxy source](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and plain text with JSON configuration examples and shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Read-only Compass lookup guidance; network-backed tools depend on a signed-in Compass browser session and the fetchproxy extension, while local mortgage and affordability math can work without sign-in.] <br>\n\n## Skill Version(s): <br>\n0.11.5 (source: ClawHub release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.4: 3 files, 4869 bytes\n\nFiles: skill-card.md (2474b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.4:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.4:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.4\",\n  \"publishedAt\": 1781057419264\n}\n\nFile v0.11.4:skill-card.md\n\n## Description: <br>\nLook up Compass real-estate listings, property details, photos, price history, address resolutions, comparisons, and mortgage calculations through a Compass MCP server. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agents use this skill to configure and operate a read-only Compass MCP workflow for property search, property detail lookup, photo retrieval, price history review, address resolution, listing comparison, and local mortgage or affordability calculations. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Compass property lookups are routed through a signed-in Chrome session. <br>\nMitigation: Use the skill only for the listed read-only property-search workflows and avoid sensitive account areas. <br>\nRisk: The workflow depends on external MCP and browser-extension installs. <br>\nMitigation: Review the upstream compass-mcp package and fetchproxy extension before installation. <br>\nRisk: Compass data is extracted from server-rendered pages rather than a public API. <br>\nMitigation: Confirm important listing, price, and property details against Compass before relying on them for decisions. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [compass-mcp source link from artifact](https://github.com/chrischall/compass-mcp) <br>\n- [fetchproxy extension source link from artifact](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with JSON configuration examples and shell command blocks] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Produces read-only MCP setup guidance, tool-selection guidance, and user-facing summaries of Compass property data.] <br>\n\n## Skill Version(s): <br>\n0.11.4 (source: server-resolved release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.3: 3 files, 5094 bytes\n\nFiles: skill-card.md (2903b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.3:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.3:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.3\",\n  \"publishedAt\": 1780860921034\n}\n\nFile v0.11.3:skill-card.md\n\n## Description: <br>\nLook up Compass real-estate listings, property details, photos, price history, and address resolutions through an MCP server that uses a signed-in browser session and fetchproxy extension. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to let an agent search Compass listings, inspect property records and photos, resolve addresses, compare properties, and calculate mortgage or affordability estimates. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Network-backed tools operate through the user's signed-in Compass browser session via a browser extension. <br>\nMitigation: Install deliberately, review the external npm package and fetchproxy extension, consider pinning versions, keep tool-call approval enabled, and use only Compass data the user is comfortable accessing through their own account. <br>\nRisk: Compass requests may fail when the browser tab is not signed in, the extension is inactive, or a WAF challenge blocks rendered pages. <br>\nMitigation: Run the healthcheck, keep an authenticated Compass tab available, resolve browser challenges directly in Chrome, and treat session failures as unavailable data rather than property facts. <br>\nRisk: Listing and pricing details are extracted from rendered Compass pages and may be incomplete, unavailable, or outdated for high-stakes decisions. <br>\nMitigation: Verify material real-estate facts against Compass, MLS, listing agents, or other authoritative records before financial or legal decisions. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [fetchproxy extension](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance] <br>\n**Output Format:** [Markdown guidance with inline JSON and shell command snippets; MCP tools return structured property, listing, photo, price-history, and calculation results.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Network-backed tools require compass-mcp, the fetchproxy extension, and an active signed-in Compass browser session; local mortgage and affordability calculations do not require Compass sign-in.] <br>\n\n## Skill Version(s): <br>\n0.11.3 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.2: 3 files, 4932 bytes\n\nFiles: skill-card.md (2532b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.2:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.2:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.2\",\n  \"publishedAt\": 1780547375641\n}\n\nFile v0.11.2:skill-card.md\n\n## Description: <br>\nLook up Compass real-estate listings, property details, photos, price history, comparable rentals, and address resolutions through MCP. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and agent workflows can use this skill to query Compass listings, compare properties, inspect listing details and photos, resolve addresses, and calculate mortgage or affordability estimates. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill routes Compass requests through the user's signed-in browser session. <br>\nMitigation: Use it only with a Compass session whose listing data the user is willing for the agent to query, and review the active browser session before use. <br>\nRisk: The setup relies on an external npm MCP package and Chrome fetchproxy extension. <br>\nMitigation: Install from the expected package and extension sources, keep dependencies updated, and avoid use in environments where browser-session bridging is not allowed. <br>\nRisk: Compass does not provide a public consumer API for these lookups, so page-rendered data extraction may become incomplete or stale. <br>\nMitigation: Verify important property details directly on Compass before making financial or operational decisions. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [Publisher profile](https://clawhub.ai/user/chrischall) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [fetchproxy Chrome extension source](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, configuration, guidance] <br>\n**Output Format:** [Markdown responses with structured listing data and inline configuration snippets.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Read-only Compass listing lookup; network tools require compass-mcp, fetchproxy, the Chrome extension, and a signed-in Compass tab.] <br>\n\n## Skill Version(s): <br>\n0.11.2 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.1: 3 files, 4835 bytes\n\nFiles: skill-card.md (2307b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.1:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.1:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.1\",\n  \"publishedAt\": 1780339113062\n}\n\nFile v0.11.1:skill-card.md\n\n## Description: <br>\nLook up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and real-estate workflows can use this skill to search Compass listings, resolve addresses, inspect property records and photos, compare listings, and calculate mortgage or affordability estimates through an MCP server. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill depends on an external npm package and a browser extension that operate through a signed-in Compass browser session. <br>\nMitigation: Install only after confirming trust in the compass-mcp package and fetchproxy extension source, and prefer a separate browser profile for stronger session separation. <br>\nRisk: Compass network tools require an authenticated Compass tab and can fail when the session is missing, challenged, or unavailable. <br>\nMitigation: Use the healthcheck and session tools before lookup workflows, and keep use limited to read-only Compass lookup tasks. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [fetchproxy extension source](https://github.com/chrischall/fetchproxy) <br>\n- [compass-mcp project repository](https://github.com/chrischall/compass-mcp) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and structured MCP tool responses] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Read-only Compass lookup outputs; local mortgage and affordability calculations do not require network access.] <br>\n\n## Skill Version(s): <br>\n0.11.1 (source: release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.11.0: 3 files, 4845 bytes\n\nFiles: skill-card.md (2309b), SKILL.md (7311b), _meta.json (131b)\n\nFile v0.11.0:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `extracted_features` parsed from the description.\n- **`compass_get_property_photos`** — Full photo gallery from `listing.media[]` — original + thumbnail URLs and pixel dimensions. Floorplans/other media gated behind `include_all_categories`.\n- **`compass_get_price_history`** — Listing-history events (Listed / Sold / Pending / Price Change / Delisted) with date, price, status, MLS attribution. Returns both this-listing and prior-listing aggregates.\n- **`compass_get_comparable_rentals`** — Nearby rental listings for a property: lifts the target's city/state/zip, then searches rentals in the same locality. Returns `rentals: []` (with target context) when none come back.\n- **`compass_get_agent_listings`** — Other listings by the same agent, from `/agents/<slug>/` (active by default; closed deals via `include_closed`).\n\n### Resolution & batch\n\n- **`compass_get_by_address`** — Resolve a free-text street address to the canonical Compass URL, `listing_id_sha`, and `pid`. Walks the structured typeahead first (WAF-immune), then SSR fallbacks; verifies each candidate against the query before accepting. Returns `{ resolved: false, error }` rather than leaking a wrong URL.\n- **`compass_resolve_addresses`** — Bulk version of `get_by_address` — concurrent server-side resolution of many addresses in one round trip, sharing the same rung walker and per-row error contract.\n- **`compass_bulk_get`** — Unbounded structured fetch (up to 200 targets) by `url` or `listing_id_sha`. One row per target; per-target errors captured per-row. No summary table.\n- **`compass_compare_properties`** — Fetch and align up to 25 properties side-by-side. Per-target errors captured per-row; an opt-in pivoted summary table via `include_summary`.\n\n### Local math (no network)\n\n- **`compass_calculate_mortgage`** — PITI calculator. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown + total interest over the term.\n- **`compass_calculate_affordability`** — Max purchase price under the 28/36 DTI rule from income, debts, down payment, and rates.\n\n### Diagnostics & session\n\n- **`compass_healthcheck`** — Round-trips a no-op request (`/robots.txt`) through the full bridge to confirm the WebSocket bridge is up, the extension is connected, and the signed-in tab is responsive — in one call.\n- **`compass_get_session_context`** — Lists every registered session and the active one.\n- **`compass_set_active_session`** — Flips which registered session answers future requests.\n\n### Not yet supported\n\n- **`compass_get_saved_homes`** / **`compass_get_saved_searches`** — Compass renders `/overview/favorites` and saved searches via an auth-scoped GraphQL endpoint that isn't reachable from a one-shot fetch. Both throw a clear \"not yet supported\" error today.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_by_address` → `compass_get_property`\n- \"Show me the photos for that Compass listing\" → `compass_get_property_photos`\n- \"Price history for this Compass home\" → `compass_get_price_history`\n- \"Compare these three Compass listings\" → `compass_compare_properties`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required.** If the user isn't signed into compass.com in the bridged Chrome tab, network tools fail with `SessionNotAuthenticatedError`. Local-math tools work either way.\n- **AWS WAF challenge.** Compass serves a WAF challenge to fresh sessions and 403s some SSR free-text paths. The address resolver routes through the WAF-immune omnisuggest typeahead to avoid it, and sha-only lookups use the WAF-immune `/listing/<sha>/view` redirect; solving a challenge in the Chrome tab once unblocks the SSR pages.\n- **No write surface.** All tools are read-only — no saving homes/searches or submitting contact forms.\n- **No market-report / Zestimate-history tool.** Compass doesn't expose region-level market data or a historical estimate series in its SSR blob, so there's no equivalent to a market-report tool.\n- **Saved homes/searches are stubs.** See \"Not yet supported\" above.\n\nFile v0.11.0:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.0\",\n  \"publishedAt\": 1780081457177\n}\n\nFile v0.11.0:skill-card.md\n\n## Description: <br>\nLooks up Compass real-estate listings, property details, photos, price history, comparable rentals, agent listings, and address resolutions through an MCP server. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users, agents, and developers use this skill to retrieve read-only Compass property data and compare listings through an agent connected to the compass-mcp server. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The MCP server and fetchproxy browser extension can make read-only Compass page requests through a signed-in Chrome session. <br>\nMitigation: Install only after reviewing the npm package and extension source, and disable the extension or sign out when session-backed Compass access should not be available. <br>\nRisk: Compass data is extracted from server-rendered page state rather than a public consumer API, so fields may be incomplete or change as Compass changes its pages. <br>\nMitigation: Verify important property details, prices, and history against Compass or authoritative records before relying on them for decisions. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [fetchproxy browser extension](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance] <br>\n**Output Format:** [Markdown prose with JSON and shell snippets; MCP tools return structured property data.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Read-only Compass lookup results depend on a signed-in browser session and available server-rendered page data.] <br>\n\n## Skill Version(s): <br>\n0.11.0 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.10.0: 3 files, 3716 bytes\n\nFiles: skill-card.md (2279b), SKILL.md (4762b), _meta.json (131b)\n\nFile v0.10.0:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, market reports, and your saved homes/searches on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"show my saved compass homes\", \"what's my saved compass search seeing\", \"what does compass say about\", \"compass market report for\", or any request involving Compass properties, prices, or your saved Compass activity. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, market reports, and your saved homes/searches. Routes through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF / DataDome see a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. This server uses the same private `/stingray/...` endpoints the compass.com web app calls, dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Public data\n\n- **`compass_search_properties`** — Search by location + filters (price, beds/baths min, home type). Resolves the location via Compass's autocomplete then queries the `/stingray/api/gis` endpoint. Returns matching listings with price, beds/baths, sqft, year built, address, and the Compass home URL.\n- **`compass_get_property`** — Full property record by `url` (Compass homedetails URL or path) or `property_id` + `listing_id`. Two-round-trip API: `initialInfo` resolves the URL to IDs, then `aboveTheFold` fetches the data. Returns address, beds/baths, sqft, year built, price, status, days on market, primary photo.\n- **`compass_get_market_report`** — Median sale/list prices, price per sqft, days on market, year-over-year change, homes sold/on market for a Compass region. Provide either `location` (free-text) or `region_id` + `region_type`. All metrics returned as formatted strings (e.g. `\"$870K\"`, `\"+2.4%\"`).\n- **`compass_calculate_mortgage`** — Local PITI calculator. No network call. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown.\n\n### Signed-in user data (the unique value vs. paid scrapers)\n\n- **`compass_get_saved_homes`** — Your favorited homes, flattened across all collections. Returns address, price, beds/baths, status.\n- **`compass_get_saved_searches`** — Your saved searches with region URLs and display text.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_property`\n- \"Pull up my favorited homes on Compass\" → `compass_get_saved_homes`\n- \"What's new on my saved Compass searches?\" → `compass_get_saved_searches`\n- \"Brooklyn housing market trends on Compass\" → `compass_get_market_report`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required for saved-* tools.** If the user isn't signed into compass.com in the bridged Chrome tab, those tools fail with `SessionNotAuthenticatedError`. Public tools work either way.\n- **AWS WAF challenge.** Compass occasionally serves a WAF challenge to fresh sessions. Solving it in the Chrome tab once unblocks subsequent fetches.\n- **No write surface yet.** All tools are read-only. Saving a home / search / contact form are not implemented in v0.1.\n- **`for_rent` / `sold` listing statuses** map to entirely different Compass URL paths (`/apartments-for-rent/...`, `/recently-sold`). v0.1 of `compass_search_properties` supports `for_sale` only.\n- **No equivalent to Zillow's Zestimate history tool.** Compass's Compass Estimate is exposed as a current scalar inside `compass_get_property`; there's no historical-series endpoint yet.\n\nFile v0.10.0:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.10.0\",\n  \"publishedAt\": 1780057237480\n}\n\nFile v0.10.0:skill-card.md\n\n## Description: <br>\nLook up real-estate listings, property details, market reports, and saved homes or searches on Compass via MCP. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and real-estate workflows use this skill to query Compass listings, property records, market reports, mortgage estimates, and signed-in saved Compass activity through an MCP server. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The MCP server uses the user's signed-in Compass browser session and can access saved homes, saved searches, and other account-visible Compass pages. <br>\nMitigation: Install only on trusted machines, avoid shared browser profiles, and use it only with Compass accounts whose saved activity is appropriate for agent access. <br>\nRisk: The setup depends on a third-party npx package and browser extension that route Compass page requests through the active browser session. <br>\nMitigation: Review the compass-mcp package and fetchproxy extension before enabling them globally, and keep the extension limited to the browser profile intended for this workflow. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [fetchproxy extension source referenced by the skill](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with JSON and shell command snippets] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Returns read-only Compass listing, property, market, saved-search, saved-home, and mortgage-calculation results.] <br>\n\n## Skill Version(s): <br>\n0.10.0 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.9.0: 3 files, 3828 bytes\n\nFiles: skill-card.md (2639b), SKILL.md (4762b), _meta.json (130b)\n\nFile v0.9.0:SKILL.md\n\n---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, market reports, and your saved homes/searches on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"show my saved compass homes\", \"what's my saved compass search seeing\", \"what does compass say about\", \"compass market report for\", or any request involving Compass properties, prices, or your saved Compass activity. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, market reports, and your saved homes/searches. Routes through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF / DataDome see a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. This server uses the same private `/stingray/...` endpoints the compass.com web app calls, dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Public data\n\n- **`compass_search_properties`** — Search by location + filters (price, beds/baths min, home type). Resolves the location via Compass's autocomplete then queries the `/stingray/api/gis` endpoint. Returns matching listings with price, beds/baths, sqft, year built, address, and the Compass home URL.\n- **`compass_get_property`** — Full property record by `url` (Compass homedetails URL or path) or `property_id` + `listing_id`. Two-round-trip API: `initialInfo` resolves the URL to IDs, then `aboveTheFold` fetches the data. Returns address, beds/baths, sqft, year built, price, status, days on market, primary photo.\n- **`compass_get_market_report`** — Median sale/list prices, price per sqft, days on market, year-over-year change, homes sold/on market for a Compass region. Provide either `location` (free-text) or `region_id` + `region_type`. All metrics returned as formatted strings (e.g. `\"$870K\"`, `\"+2.4%\"`).\n- **`compass_calculate_mortgage`** — Local PITI calculator. No network call. Provide home price, interest rate, optional down payment / taxes / insurance / HOA / PMI; returns a full monthly breakdown.\n\n### Signed-in user data (the unique value vs. paid scrapers)\n\n- **`compass_get_saved_homes`** — Your favorited homes, flattened across all collections. Returns address, price, beds/baths, status.\n- **`compass_get_saved_searches`** — Your saved searches with region URLs and display text.\n\n## Trigger examples\n\n- \"Find me 2-bedroom condos under $1.5M in Brooklyn on Compass\" → `compass_search_properties`\n- \"What does Compass say about 42 Monroe St in Brooklyn?\" → `compass_get_property`\n- \"Pull up my favorited homes on Compass\" → `compass_get_saved_homes`\n- \"What's new on my saved Compass searches?\" → `compass_get_saved_searches`\n- \"Brooklyn housing market trends on Compass\" → `compass_get_market_report`\n- \"Monthly payment on a $500k home, 20% down, 6.5% rate\" → `compass_calculate_mortgage`\n\n## Gotchas\n\n- **Sign-in required for saved-* tools.** If the user isn't signed into compass.com in the bridged Chrome tab, those tools fail with `SessionNotAuthenticatedError`. Public tools work either way.\n- **AWS WAF challenge.** Compass occasionally serves a WAF challenge to fresh sessions. Solving it in the Chrome tab once unblocks subsequent fetches.\n- **No write surface yet.** All tools are read-only. Saving a home / search / contact form are not implemented in v0.1.\n- **`for_rent` / `sold` listing statuses** map to entirely different Compass URL paths (`/apartments-for-rent/...`, `/recently-sold`). v0.1 of `compass_search_properties` supports `for_sale` only.\n- **No equivalent to Zillow's Zestimate history tool.** Compass's Compass Estimate is exposed as a current scalar inside `compass_get_property`; there's no historical-series endpoint yet.\n\nFile v0.9.0:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.9.0\",\n  \"publishedAt\": 1779986728535\n}\n\nFile v0.9.0:skill-card.md\n\n## Description: <br>\nLook up Compass real-estate listings, property details, market reports, and saved homes or searches through an MCP server that uses a signed-in Compass browser session. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[chrischall](https://clawhub.ai/user/chrischall) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to ask an agent for Compass property searches, listing details, market reports, mortgage calculations, and saved Compass activity. It is useful when the user already has compass-mcp installed, the fetchproxy extension active, and any needed Compass browser session signed in. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill relies on a signed-in Compass browser session and can read saved Compass homes and searches. <br>\nMitigation: Enable it only in workspaces that need Compass access, prefer project-level MCP configuration, and use an account/session appropriate for the task. <br>\nRisk: The skill depends on the external compass-mcp package and the fetchproxy browser extension. <br>\nMitigation: Review those external components before enabling the skill globally and keep the installation scoped to trusted environments. <br>\nRisk: Compass access may depend on private web endpoints and browser challenges. <br>\nMitigation: Expect possible breakage or authentication prompts, and verify important listing or market data against Compass directly before relying on it. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/chrischall/compass-mcp) <br>\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp) <br>\n- [compass-mcp source](https://github.com/chrischall/compass-mcp) <br>\n- [fetchproxy source](https://github.com/chrischall/fetchproxy) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance] <br>\n**Output Format:** [Markdown with inline JSON and bash snippets] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include Compass listing details, property records, market metrics, mortgage breakdowns, setup configuration, and browser-session guidance.] <br>\n\n## Skill Version(s): <br>\n0.9.0 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>","readmeExcerpt":"Skill: Tmp.Vb01j6Bvtm Owner: chrischall Summary: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp... Tags: latest:0.11.7 Version history: v0.11.7 | 2026-07-07T23:57:01.178Z | auto - Removed the sample file skill-card.md. - No changes to core functionality or user-facing features. v0.11.6 | 2026-06-15T14:34:31.","codeSnippets":[],"executableExamples":[{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}"},{"language":"bash","snippet":"git clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build"},{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}"},{"language":"bash","snippet":"git clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build"},{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}"},{"language":"bash","snippet":"git clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: compass-mcp\ndescription: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on compass in\", \"compass property details for\", \"compass photos for\", \"compass price history for\", \"resolve this address on compass\", \"compare these compass listings\", \"what does compass say about\", or any request involving Compass properties, prices, or comparisons. Requires compass-mcp installed and the fetchproxy extension active (see Setup below).\n---\n\n# compass-mcp\n\nMCP server for Compass — natural-language access to listings, property records, photos, price history, and address resolution. Routes every request through your signed-in compass.com tab via the fetchproxy browser extension, so AWS WAF sees a real browser session instead of a Node process.\n\n- **npm:** [npmjs.com/package/compass-mcp](https://www.npmjs.com/package/compass-mcp)\n- **Source:** [github.com/chrischall/compass-mcp](https://github.com/chrischall/compass-mcp)\n\n> ⚠️ Compass does not publish a public consumer API. Unlike portals with a JSON API surface, **compass.com is a server-rendered React app** — there are no `/api/...` data endpoints to call. Every tool extracts state from the inline scripts each page server-renders (`global.uc.sharedReactAppProps.initialResults` for search, `window.__INITIAL_DATA__.props.listingRelation.listing` for homedetails). Requests are dispatched through your own signed-in browser tab via the fetchproxy extension. Use at your own discretion.\n\n## Setup\n\n### 1. Install compass-mcp\n\n`.mcp.json` (project) or `~/.claude/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"compass\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"compass-mcp\"]\n    }\n  }\n}\n```\n\n### 2. Install the fetchproxy extension (one-time, shared across all fetchproxy-based MCPs)\n\n```bash\ngit clone https://github.com/chrischall/fetchproxy\ncd fetchproxy\nnpm ci\nnpm --workspace=@fetchproxy/extension-chrome run build\n```\n\nThen in Chrome: `chrome://extensions` → Developer mode → Load unpacked → pick `packages/extension-chrome/dist/`.\n\n### 3. Open compass.com and sign in.\n\nThat's it. No API keys, no env vars.\n\n## Tools\n\n### Listing data (public)\n\n- **`compass_search_properties`** — Search by location + filters (price band, beds/baths min, home type). Slugifies free-text into Compass's `/homes-for-sale/<slug>/<filters>/` URL routing and extracts the SSR listings array. Returns matching listings with price, beds/baths, sqft, address, and the Compass home URL.\n- **`compass_get_property`** — Full record by `url` (a Compass homedetails URL or path) or `listing_id_sha` alone. When only the sha is supplied, the tool resolves the canonical path internally via the WAF-immune omnisuggest typeahead, then fetches the `/homedetails/<slug>/<sha>_lid/` page. Returns address, neighborhood, beds/baths, sqft, lot size, price + $/sqft, monthly charges, MLS status, amenities, schools, parcel number, listing agent, and `ext"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"compass-mcp\",\n  \"version\": \"0.11.7\",\n  \"publishedAt\": 1783468621178\n}"},{"path":"skill-card.md","content":"## Description:\n\nLook up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and real-estate researchers use this skill to ask an agent for Compass listing searches, property details, photos, price history, address resolution, comparisons, and local mortgage or affordability calculations.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Setup uses unpinned third-party package and repository install commands.\n\nMitigation: Pin compass-mcp package versions and fetchproxy repository commits, then review the exact package, repository, and extension permissions before installation.\n\nRisk: Network-backed tools route requests through a signed-in Compass browser session.\n\nMitigation: Use a dedicated browser profile or low-privilege environment for Compass access and avoid sharing unrelated sensitive browser sessions with the bridge.\n\nRisk: Compass data extraction depends on rendered page state, authentication, and WAF/session behavior rather than a public API.\n\nMitigation: Treat returned listing details as best-effort and verify important property, price, and availability information against Compass or other primary sources before decisions.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/chrischall/skills/compass-mcp)\n- [compass-mcp npm package](https://www.npmjs.com/package/compass-mcp)\n- [compass-mcp linked repository](https://github.com/chrischall/compass-mcp)\n- [fetchproxy linked repository](https://github.com/chrischall/fetchproxy)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown or structured text with tool results, JSON snippets, shell commands, and configuration examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Network-backed tools require compass-mcp, the fetchproxy extension, and an active signed-in Compass browser session; local mortgage and affordability calculations can run without the session.]\n\n## Skill Version(s):\n\n0.11.7 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp... Skill: Tmp.Vb01j6Bvtm Owner: chrischall Summary: Look up real-estate listings, property details, photos, price history, and resolve addresses on Compass via MCP. Triggers on phrases like \"find homes on comp... Tags: latest:0.11.7 Version history: v0.11.7 | 2026-07-07T23:57:01.178Z | auto - Removed the sample file skill-card.md. - No changes to core functionality or user-facing features. v0.11.6 | 2026-06-15T14:34:31.","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1316,"uniquenessScore":48,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T07:24:33.213Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T10:43:47.531Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}