Skip to main content
Glama
Capital-W-Holdings

DFX Real Estate Intelligence

Resolve a US street address to a property or parcel

resolve_address
Read-onlyIdempotent

Resolve a street address to canonical DFX property and parcel IDs, returning match basis and ambiguity for free. Use this tool first, then call get_property_record with the resulting ID.

Instructions

Turn a street address into canonical DFX object ids, with the match basis and any ambiguity stated. Returns typed objects: a 'property' (national federal programme multifamily) and/or a 'parcel' (Massachusetts assessor and registry layer). These are separate populations that barely overlap, so an address may return one, the other, or both. Free. Start here, then call get_property_record with an id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNoCity or town, for example 'Cambridge'. Optional: a one-line address carrying its own city and state is split here, so pass the whole line rather than splitting it yourself. Given explicitly it wins over anything parsed out of `address`.
limitNoMax 50. This is candidates for ONE address, not a page of a search. Raise it only when `address_group_size` on a result says several published records share the address.
stateNoTwo letter state code
addressYesStreet address including the house number, for example '100 Binney St'

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.10.0

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds functional context by noting it is 'Free' and by explaining that the response includes typed objects ('property' and/or 'parcel') and states the match basis and ambiguity. This enriches the behavioral understanding beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively brief yet packs essential information: the primary action, return types, overlap caveat, cost, and a forward pointer. No redundant sentences; each clause adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacking an output schema, the description adequately conveys the high-level response structure (canonical ids, typed objects, match basis) but does not detail the exact fields or shape of the result. Still, it provides enough context for an agent to understand what to expect and how to proceed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters have meaningful descriptions that go beyond basic type information. The city description clarifies precedence over parsed values, the limit description explains when to raise it (based on address_group_size), and the address description includes a concrete example. This exceeds the baseline for full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: converting a street address into canonical DFX object ids, specifying the match basis and ambiguity handling. It differentiates from siblings by noting it returns both 'property' and 'parcel' types and by explicitly directing to 'get_property_record' next.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides usage context: 'Start here' signals the intended entry point for address-based queries, and the limit parameter description gives conditional guidance on when to increase it. However, it does not explicitly contrast with sibling tools like resolve_organization or search_parcels, which would make the 'when not to use' clearer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.