Skip to content

Authentication and rate limits

Surface Auth Limit
Reads: /api/health, /api/tracts/*, /api/listings/*, /api/underwrite, /api/metrics/scorecard, /api/mcp-tools, /api/openapi.json none 30 calls/min/IP
/mcp (all six tools) OAuth 2.1 (consent screen) or none (keyless beta) 30 calls/min/IP
Private: /api/state, /api/deals, /api/run-listings shared write secret — operator-only, not issued

Exceeding the limit returns 429 with a JSON error; wait a minute. The limiter is a sliding per-minute window per IP. Limits are enforceable under the terms and may change during beta; changes land in the changelog.

There is nothing to sign up for yet. The private endpoints are the operator’s personal write rail (UI state sync, deal ledger, manual runs); no external keys exist for them.

MCP clients can authenticate with OAuth 2.1 (authorization code + PKCE; public, no-secret clients via Dynamic Client Registration). Discovery is standard:

  • GET /.well-known/oauth-authorization-server — issuer + authorize/token/register endpoints, S256 only.
  • GET /.well-known/oauth-protected-resource — the /mcp resource and its authorization server.

Paste https://mcp.plantedmoney.ai/mcp into your client; on first connect you approve a consent screen granting the read scope (anonymous — no account in beta). Access tokens are prefixed pmt_ (30-day); refresh tokens pmr_ (90-day, rotated on use). Keyless connection still works while the beta lasts — unauthenticated /mcp responses carry a WWW-Authenticate header pointing at the resource metadata so clients can discover the flow. Authenticated tool calls are audit-logged (token prefix, tool, timestamp — no PII).

  • Self-serve API keys for REST clients, issued from a dashboard, revocable.
  • Scopes beyond read (e.g. read:deals, run:underwrite) buying higher limits and stability, not different numbers.

Billing and paid tiers remain deferred behind an explicit product gate (P8); the beta is free.

No output of this system may be used for tenant screening or for credit decisions. This is a Fair Credit Reporting Act prohibition, not a courtesy note: the service is not a consumer reporting agency and its outputs are not consumer reports. Automated valuations are not appraisals — median ARV miss 20.1% against 744 resales, as-of 2026-06 (accuracy).