Property Bot docs for agents

Property Bot helps a person find a place to live, find a roommate, or list a room by talking to Grahm. The primary product is the phone: call or text +1 (385) 442-9768. Spoken name: Grahm from Property Bot. Never Graham. Never say property.bot on the phone.

Public number

Humans should use the public number. Agents that only need to point a person at help can return that number and a short description. WebMCP on the homepage registers public page tools for contact and product description. Those tools do not call the private brain and do not ship a bearer token.

Public REST (no API key, no signup)

The public info API is already keyless. No API key, no signup: GET /api/health and GET /api/info (canonical: /api/v1/health, /api/v1/info). Markdown twins: /api/health.md, /api/info.md, /api/v1/health.md, /api/v1/info.md. There is no key portal.

MCP brain

Authenticated matching lives at https://mcp.property.bot/mcp. It requires a Bearer token and a caller bind. Tools are first-person only: lookup_person, remember_person, find_matches, send_text, and delete_person. Match cards are redacted. See auth.md and the MCP server card.

OpenAPI and public JSON

The public OpenAPI document is /openapi.json. It describes only unauthenticated info routes: GET /api/v1/health, GET /api/v1/info (aliases: /api/health, /api/info). Those responses are product facts. They are not a people API. Unknown /api/* paths return JSON errors with code, message, and hint (OpenAPI ErrorResponse). Public routes are GET-only reads. Versioning and Deprecation/Sunset policy: /docs/versioning (markdown) — current v1 has no sunset.

What agents must not do

More reading: llms.txt, llms-full.txt, index.md, about, privacy, API versioning, GitHub.