Commercial real estate MCP server
FactLot's MCP server gives AI agents commercial real estate tools they can rely on: deterministic calculators that return every step and a versioned formula ID, lease-document verification, canonical IDs for parcels, entities and documents, and public-record facts that cite their source. The hosted server needs no API key.
| Remote URL | https://api.factlot.com/mcp |
|---|---|
| Transport | Streamable HTTP, stateless |
| Authentication |
None on the free tier (60 requests a minute per IP address). Paid plans
send Authorization: Bearer <key>.
|
| Registry name |
io.github.9mp96ygnbk-alt/factlot in the
official MCP Registry
|
| Tool annotations | Every tool is read-only and has a title |
| Licence | Apache-2.0 (server and calculators), MIT (schema and SDKs). The same server runs locally or in Docker. |
Connect a client
| Client | How |
|---|---|
| Claude (web, Desktop, mobile) |
Settings, Connectors, Add custom connector, then enter
https://api.factlot.com/mcp.
|
| Claude Code |
claude mcp add --transport http factlot
https://api.factlot.com/mcp, or install the plugin with CRE skills:
/plugin marketplace add 9mp96ygnbk-alt/factlot then
/plugin install factlot@factlot.
|
| ChatGPT |
Settings, Apps, Advanced settings, Developer mode; create an app with
https://api.factlot.com/mcp. For a Custom GPT Action,
import https://api.factlot.com/openapi-3.0.json.
|
| Cursor |
.cursor/mcp.json:
{"mcpServers": {"factlot": {"url":
"https://api.factlot.com/mcp"}}}
|
| VS Code (agent mode) |
.vscode/mcp.json:
{"servers": {"factlot": {"type": "http", "url":
"https://api.factlot.com/mcp"}}}
|
| Gemini CLI |
~/.gemini/settings.json:
{"mcpServers": {"factlot": {"httpUrl":
"https://api.factlot.com/mcp"}}}
|
| Any client, run locally |
npx -y
https://github.com/9mp96ygnbk-alt/factlot/releases/download/v0.4.0/factlot-mcp-standalone-0.4.0.tgz
(Node.js 22.6 or newer; the local server makes no network calls). More
options:
getting started.
|
| Docker |
docker run -p 8787:8787
ghcr.io/9mp96ygnbk-alt/factlot:0.4.0
serves MCP at /mcp and REST at /v1.
|
Menu names change between client releases; the URL stays the same. Per-client guides: connectors.
Check the connection
The server answers a plain JSON-RPC initialize request, so you
can test it without a client:
curl -s https://api.factlot.com/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"check","version":"1"}}}'
The reply names the server and carries its instructions: which tool to use for which task, and how to cite the result.
What the tools do
-
Calculators (
calc_*): lease economics, CAM, debt sizing, prepayment, ASC 842, valuation, returns, waterfalls, 1031 timing, hotel and multifamily metrics. Each returns the value, every intermediate step with its formula, warnings, and a versioned formula ID. See the calculator pages. -
Document verification (
doc_*): the agent extracts a lease term with its verbatim quote and page; FactLot checks that the quote is on that page and states the value, and returns a cited fact or the reason it could not. No model runs on FactLot's side and nothing is stored. -
IDs and facts (
id_*,fact_*): deterministic IDs for parcels, entities, buildings, spaces and documents, and cited fact packages a counterparty can check. -
Rules (
rules_*): the Texas property tax protest deadline, with statute citations. -
Lease comps and registry: 6,994 federal (GSA) lease comps
on the hosted server; the
registry_*parcel and owner lookups run on a self-hosted copy with a registry file. -
Discovery:
search,fetchandschema_gethelp an agent find the right tool.
Full definitions with every input described: tools.json · REST and OpenAPI: openapi.json
Agent frameworks
LangGraph and LangChain (langchain-mcp-adapters), the OpenAI
Agents SDK, CrewAI, the MCP Python and TypeScript SDKs and the Vercel AI SDK
connect with their standard MCP clients. The
framework guide
has tested recipes: loading only some tools, backing off on HTTP 429, naming
your client, and sending a key.
Limits
-
The free tier allows 60 requests a minute per IP address. Every HTTP request
counts, including
initializeandtools/list; cache the tool list. - Hosted registry lookups are not open yet. The coverage page lists what the registry holds and the downloadable samples.
- Calculators check their inputs and return warnings; they do not replace professional judgment on lease terms, valuation or tax positions.