Dld Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Dld Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server (local stdio or remote HTTP) for querying Dubai property sales transactions and rental contracts through OfferBrief.
The server uses MCP Python SDK v2 and supports the MCP 2026-07-28 protocol.
Run the published package directly:
uvx dld-mcpClaude Code:
claude mcp add dld -- uvx dld-mcpClaude Desktop:
{
"mcpServers": {
"dld": {
"command": "uvx",
"args": ["dld-mcp"]
}
}
}Add that entry to ~/Library/Application Support/Claude/claude_desktop_config.json on macOS.
Remote (no install): add https://offerbrief.com/mcp as a custom connector in Claude or ChatGPT, or
claude mcp add --transport http dld https://offerbrief.com/mcpSelf-hosting the HTTP endpoint:
uvx dld-mcp --http --port 8765 --public-host example.comIt listens on 127.0.0.1 (put a TLS reverse proxy in front), is stateless, and rejects Host and Origin headers other than localhost and --public-host.
query_dld accepts:
| Parameter | Allowed values | Default |
|---|---|---|
area | Area or building name, at least 2 non-whitespace characters | Required |
type | sales, rentals | sales |
property_type | all, apartment, villa, townhouse | all |
bedrooms | all, studio, 1, 2, 3, 4, 5, 5+ | all |
date_from | A real date in YYYY-MM-DD format | OfferBrief default |
date_to | A real date in YYYY-MM-DD format | OfferBrief default |
metric | stats, count, list | stats |
limit | Integer from 1 through 50 | 10 |
bedrooms is supported only for sales: DLD's current rental feed has no bedroom data. date_from cannot be later than date_to. The default window is the last 12 months. list returns individual rows from the last 60 days only; stats and count cover any period. Each IP gets 300 queries a day.
Examples:
query_dld(area="Marina")
query_dld(area="Palm", property_type="villa", date_from="2024-01-01", metric="count")
query_dld(area="Downtown", type="rentals", property_type="apartment")
query_dld(area="JBR", metric="list", limit=10)Invalid arguments fail before an API request. OfferBrief's own message is passed through for rejected queries and empty results. HTTP, rate limit, timeout, connection, and malformed response failures set MCP isError and return structured errors with a message and status code. Results include both structured content and JSON text for client compatibility. The tool declares read-only, non-destructive, idempotent access to an external data source.
Each tool call sends its query parameters to https://offerbrief.com/api/query. No credentials are used. The package does not log query parameters or response bodies.
Results reflect the data available from OfferBrief when the call is made. This package does not claim a refresh schedule or transaction count.
git clone https://github.com/level09/dld-mcp
cd dld-mcp
uv sync --group dev
uv run pytest
uv run ruff check
uv buildMIT, OfferBrief
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.