MCP Tool Routing

Conduit proxies standard MCP JSON-RPC methods to the upstream MLS data feed. Responses pass through the governance pipeline, which applies field-level access control based on the MLS's policy.

Supported JSON-RPC methods

tools/list

Discover available tools on the MLS data feed.

json
{
  "jsonrpc": "2.0",
  "method": "tools/list",
  "id": 1
}

tools/call

Execute a tool with arguments. This is the primary method for querying property data.

json
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "search_properties",
    "arguments": {
      "city": "Austin",
      "propertyType": "Residential",
      "minPrice": 300000,
      "maxPrice": 500000
    }
  },
  "id": 2
}

resources/read

Read a specific resource by URI (e.g., a single listing by ID).

json
{
  "jsonrpc": "2.0",
  "method": "resources/read",
  "params": {
    "uri": "listing://MLS-2024-12345"
  },
  "id": 3
}

Governed responses

When you query through the gateway, responses are filtered according to the MLS's governance policy. Fields may be visible, masked, or hidden entirely.

Visible

Field passes through unchanged. Most address, property, and listing fields are visible by default.

Masked

Field value is replaced with a mask pattern. Example: ListAgentEmail "***@***.com"

Hidden

Field is removed entirely from the response. You will not see the key at all. Example: ListAgentDirectPhone is omitted.

RESO field structure

Conduit recognizes 60 RESO Data Dictionary fields across 7 categories. MLS policies control access at the individual field level.

CategoryFieldsExamples
address8StreetAddress, City, PostalCode
property10PropertyType, BedroomsTotal, LivingArea, YearBuilt
listing12ListingId, StandardStatus, ListPrice, DaysOnMarket
agent12ListAgentFullName, ListOfficeName, BuyerAgentEmail
financial8TaxAnnualAmount, TaxAssessedValue, AssociationFee
media5Media, PhotosCount, MainImageURL
compliance5CopyrightNotice, DisclaimerText, DataSource

[i]Field sensitivity levels

Each field has a base sensitivity: public, restricted, or private. MLS policies can override these defaults. For example, an MLS might hide a public field or make a restricted field visible to trusted vendors.

Result limits

MLS policies enforce a maximum number of results per query. Arrays of listing objects are truncated to the policy limit:

PolicyMax results/query
Standard Access50
Restricted Access25
Open Data100