Connect via MCP
Six underwriting tools inside Claude (or any MCP client), backed by live Cook + Lake County data.
Endpoint: https://mcp.plantedmoney.ai/mcp · transport: streamable HTTP · auth: OAuth 2.1 (consent screen) — or keyless while the beta lasts (30 calls/min/IP)
What you get
Section titled “What you get”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).
Connect — Claude (web/desktop/mobile)
Section titled “Connect — Claude (web/desktop/mobile)”Settings → Connectors → Add custom connector → paste the URL below, then approve the consent screen when Claude opens it (or dismiss it and connect keyless while the beta lasts):
https://mcp.plantedmoney.ai/mcpConnect — Claude Code
Section titled “Connect — Claude Code”claude mcp add --transport http planted https://mcp.plantedmoney.ai/mcpConnect — any MCP client
Section titled “Connect — any MCP client”{"type":"http","url":"https://mcp.plantedmoney.ai/mcp"}Verify
Section titled “Verify”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.
Prompt cookbook
Section titled “Prompt cookbook”- “Underwrite 3214 W Fullerton at $450k as a 2-flat — give me both offers and the risk flags.”
- “Pull comps for this address and show me what you rejected and why.”
- “Compare tract 17031222900 vs 17031840300 for BRRRR.”
- “Which ZIPs pay MORE in Section-8 voucher than market rent right now?”
- “Screen live deals: 2-4 units, offer at/below ask, DSCR ≥ 1.1.”
- “What’s the reassessment-shock story for Berwyn township?”
- “Risk report for a 1908 3-flat near 63rd & Woodlawn.”
- “Explain why this listing scored 58 — decompose it.”
Troubleshooting
Section titled “Troubleshooting”| Symptom | Cause → fix |
|---|---|
| 401 unauthorized | Only private endpoints (state/deals/run-listings) need a key — /mcp is open in beta |
| Connector shows “requires authentication” | Expected — approve the OAuth consent screen Claude opens (leaf-green “Planted Money” page, one Approve click). Or connect keyless while the beta lasts. |
| 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 |
Scopes & fair use
Section titled “Scopes & fair use”Read-only access to property valuations and market data is the free beta tier. Connect with OAuth 2.1 (authorization code + PKCE, read scope, anonymous consent — no account needed in beta) or keyless while the beta lasts. Beta rate limit: 30 calls/min per IP, subject to change; higher limits and scoped keys arrive post-beta. 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.