Skip to content

Connect via MCP

Six underwriting tools inside Claude (or any MCP client), backed by live Cook + Lake County data. Endpoint: https://chicago-value-map.mohammad210.workers.dev/mcp · transport: streamable HTTP · auth: none — public beta (30 calls/min/IP; OAuth 2.1 arrives in F2)

Catalog auto-generated from GET /api/mcp-tools (never hand-maintained): search_deals (screen live scored listings), underwrite (address/point → gated comp ARV + risk + offer solvers + DSCR), comps (transparent comp set with rejected-with-reasons), risk_report (separate 0–100 risk + flags), get_tract_report (every signal for a tract), market_pulse (county pulse: top tracts, S8 arbitrage, reassessment leaders).

Settings → Connectors → Add custom connector → paste:

https://chicago-value-map.mohammad210.workers.dev/mcp
claude mcp add --transport http cvm "https://chicago-value-map.mohammad210.workers.dev/mcp"
{"type":"http","url":"https://chicago-value-map.mohammad210.workers.dev/mcp"}

Paste into Claude: “Use market_pulse to show me this week’s top BRRRR tracts.” A correct response names tracts with geoids, scores, S8-arbitrage ZIPs, and reassessment-shock townships.

  1. “Underwrite 3214 W Fullerton at $450k as a 2-flat — give me both offers and the risk flags.”
  2. “Pull comps for this address and show me what you rejected and why.”
  3. “Compare tract 17031222900 vs 17031840300 for BRRRR.”
  4. “Which ZIPs pay MORE in Section-8 voucher than market rent right now?”
  5. “Screen live deals: 2-4 units, offer at/below ask, DSCR ≥ 1.1.”
  6. “What’s the reassessment-shock story for Berwyn township?”
  7. “Risk report for a 1908 3-flat near 63rd & Woodlawn.”
  8. “Explain why this listing scored 58 — decompose it.”
Symptom Cause → fix
401 unauthorized Only private endpoints (state/deals/run-listings) need a key — /mcp is open in beta
Connector shows “requires authentication” Stale state from before the beta opened → remove + re-add the connector (plain URL, no key)
429 rate limited Public beta cap: 30 calls/min per IP → wait a minute
Tool not found Client cached an old catalog → remove + re-add the connector
“Cannot value — no confident comps” Working as designed: dispersion/similarity gates refused a garbage comp set. Use the tract heuristic number or widen the search.
Empty search_deals Filters too tight, or the daily 13:00 UTC run hasn’t populated yet — check /api/health last_run

Read-only tract intelligence is the free tier; per-address underwriting and the deal feed require a key. Beta rate limit: 30 calls/min per IP, subject to change; self-serve keys + higher limits ship with F2. Outputs may not be used for tenant screening or credit decisions (FCRA). Every valuation is an automated model, not an appraisal — error rates: /methodology/accuracy.