Overview
An open-source agent that works through rent, buy and off-plan decisions with sourced numbers, charts and maps.
This project is an AI agent for property-market decisions: should a household keep renting, buy a ready home or buy off-plan? It works toward the user's goal instead of answering one question at a time:
- Goal. The user states it with their own numbers: income, savings, bedrooms, an area, a time horizon.
- Plan. The agent shows a checklist of the tools it will run. The checklist ticks off as each tool completes.
- Re-plan. When a constraint fails, for example the anchor area is above the user's regulatory price ceiling, it says so and widens the search to the nearest areas.
- Decision summary. A shortlist sorted by the user's own criteria, the key figures, the assumptions and every source.
- Consented actions. Sending the brief to a partner the deployer configures (by default a local test inbox) runs only after the user approves it on screen.
What makes it different
- Every number comes from a tool. The tools return figures with provenance (dataset, as-of month, sample size, method) and attribution, and the charts draw both inside the card.
- Facts, not advice. No buy, sell or hold recommendations, no price forecasts, no "you qualify". Affordability is a regulatory ceiling, not a lending decision.
- Bring your own model. The agent runs on Anthropic, OpenAI, Google or any OpenAI-compatible endpoint, or with no model at all.
- Interoperable. The same tools are a REST API and an MCP server, so other agents can use them with their own model.
The data in this build
The default data is SYNTHETIC – not Dubai data: a seeded generator invents areas and values so that anyone can run the project without a data licence. Every result, chart and map carries that label. See Methodology for how real data plugs into the same schema.
Surfaces
| Surface | Path | Needs a model? |
|---|---|---|
| Chat (live or replay) | / | Live needs one; replay does not |
| REST API | /api/v1/tools/<name> | No |
| OpenAPI document | /api/v1/openapi.json | No |
| MCP server (Streamable HTTP) | /mcp | No |
| MCP server (stdio) | pnpm mcp:stdio | No |
| Docs | /docs | No |
Code: Apache-2.0. Original docs text and diagrams: CC BY 4.0. Excluded from both: data, figures and charts derived from DLD or Data.Dubai (governed by DATA_LICENSE.md and any DLD grant); EIBOR values (CBUAE terms); third-party names and logos; and the product and operator names and logos (no trademark licence).
The default data is SYNTHETIC – not Dubai data. Nothing here is financial, legal or investment advice.