protogrid

Search / us.buildability/mcp

Buildability

R0· no sign-in

Source-cited, address-level answers on zoning, site constraints, permitting and what can be built.

v2.0.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality100strong
Trust82of 100
Uptime, 30 days96%
Latency p50345 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "buildability": {
      "type": "http",
      "url": "https://buildability.us/api/mcp"
    }
  }
}
claude mcp add --transport http buildability https://buildability.us/api/mcp
[mcp_servers.buildability]
url = "https://buildability.us/api/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "buildability": {
      "type": "remote",
      "url": "https://buildability.us/api/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "buildability": {
      "type": "http",
      "url": "https://buildability.us/api/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=buildability&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYnVpbGRhYmlsaXR5LnVzL2FwaS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "buildability": {
      "type": "http",
      "url": "https://buildability.us/api/mcp"
    }
  }
}
{
  "mcpServers": {
    "buildability": {
      "httpUrl": "https://buildability.us/api/mcp"
    }
  }
}
extensions:
  "buildability":
    enabled: true
    name: "buildability"
    type: streamable_http
    uri: "https://buildability.us/api/mcp"
    timeout: 300

Quality 100 / 100strong

protocol100 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • pass
    protocol.list_ttltool list is cacheable (ttlMs 3600000)
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations12 of 12 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 2,772 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
  • pass
    tools.hidden_textno hidden text in tool names, descriptions, schemas or annotations
stability100 · weight 15
  • pass
    stability.changes3 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
  • pass
    stability.new_linksno tool change named a new site
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

12 tools, about 2,772 tokens to load them all · tool set 61f65fe4f604 · tools last changed 2026-11-04 · checked 2026-11-14 06:30 UTC

Tool changes

  • compare_addresseschangedoutput schema
  • score_addresschangeddescription, output schema
    before

    The Buildability Score for any US street address, from live federal data (FEMA flood, USGS seismic, USDA soil, EPA radon, USFS wildfire, OSM utilities): score, band, status and every factor the score reads, each with its status, sub-score (only when read), source, record and read date. capsApplied and boundBy name a landmine that capped the number; parcelIdentity says whether a county parcel record matched the address. A first read of an address takes 10–20 s; a recent read answers from cache.

    after · 82% of words in common

    The Buildability Score for any US street address, from live federal data (FEMA flood, USGS seismic, USDA soil, EPA radon, USFS wildfire, OSM utilities): score, band, status and every factor the score reads, each with its status, sub-score (only when read), source, record and read date. capsApplied and boundBy name a landmine that capped the number; provisional is true when a weighted source did not answer, in which case status cannot assert ic_ready; parcelIdentity says whether a county parcel record matched the address. A first read of an address takes 10–20 s; a recent read answers from cache.

  • what_can_i_buildchangeddescription, output schema
    before

    Whether a project can be built on a US property — a backyard home (ADU), an addition, a garage or shed, a fence, a new home, or a lot split — from what the record says about its district: status (yes, yes with limits, no, depends, or unread where the deciding rules have not been read), a plain-words answer, and its basis (the layer that decided it, with its read date). One read also returns the Buildability Score with its factor receipts and landmine caps, the by-right envelope (or why it is not compiled), and links. With no project named, every project is answered. A first read takes 10–20 s; a recent read answers from cache.

    after · 100% of words in common

    Whether a project can be built on a US property (a backyard home or ADU, an addition, a garage or shed, a fence, a new home, or a lot split), from what the record says about its district: status (yes, yes with limits, no, depends, or unread where the deciding rules have not been read), a plain-words answer, and its basis (the layer that decided it, with its read date). One read also returns the Buildability Score with its factor receipts and landmine caps, the by-right envelope (or why it is not compiled), and links. With no project named, every project is answered. A first read takes 10–20 s; a recent read answers from cache.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 82 / 100

no-repository
provenance55
liveness99
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-96% +updated-14d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://buildability.us/api/mcp streamable-httpnoneyes96%345 ms2026-07-28, 2025-11-25, 2025-06-18, 2025-03-262026-11-14

Tools (12)

atlas_coverageread-onlyWhich cities and zoning districts the Buildability Zoning Atlas has read and publishes, with each city's hub page, its districts and the newest read date. Pass `state` (two-letter code) to narrow it. Use zoning_district to read one district's cited standards. A city that is not listed has not been read yet.
compare_addressesread-onlyOne row per US street address, in the order given (never sorted by Score): Buildability Score, band, the landmine caps that bound it, FEMA flood zone at the address point, zoning district, and whether the district's dimensional standards are on record (yes/no), each with its source and read date, plus links. Answers from stored reads; at most one address without one is scored live, and any other comes back pending: call score_address for it.
cost_rangesread-onlyWhat new construction costs, from U.S. government series only. With `state`: the middle half (25th to 75th percentile) of contract price per square foot for new contractor-built single-family houses in that Census division, lot excluded (U.S. Census Bureau, Survey of Construction). With `sqFt` too: that band times the size, as a range. Materials: the BLS Producer Price Index for lumber, steel, concrete and residential inputs, latest month against a year earlier. Every row has its source, year and record. Ranges, never one number.
enveloperead-onlyWhat a lot can hold by right, from the letter of its zoning code applied to the real parcel outline: units, buildable floor area, height, floors, and setbacks. `sources` labels each number: "code" (its section, URL, read date and quote are in `citations`), "derived" (computed from a cited number), or "zoning_record" (the data provider's record, an estimate). Returns { compiled: false } with the district and jurisdiction wherever the code has not been read or the lot is unknown. Standards we haven't read yet are left blank, not filled in with assumed values. Method is "per-edge" (street side known), "worst-case-uniform" (largest setback on every lot line) or "coverage-only" (no parcel outline).
fetchread-onlyReturns one page found by search, by its `id`, as text with its canonical URL and `read_date`: the date on its record (when the code or sources were read, or the page last changed). Cite the URL.
flood_zoneread-onlyThe FEMA National Flood Hazard Layer zone at a US street address, read at the address point: zone, whether it is a Special Flood Hazard Area, zone subtype, floodway and base flood elevation where FEMA returns them, with the query URL and read date. Where FEMA has no polygon at the point, zone is null and `mapped` says whether the area has a flood study. Answers in a few seconds; does not compute the Buildability Score.
outcomesread-onlyPermit outcomes on record for a zoning district (counts by outcome: built, permitted, denied, stalled, withdrawn) from the jurisdiction's open permit data. `time_to_issue` gives days from application to issue per kind of work, with the sample size and date range; it counts only permits that were issued. Never a prediction; aggregate only. Returns { available: false } where no feed has been ingested.
score_addressread-onlyThe Buildability Score for any US street address, from live federal data (FEMA flood, USGS seismic, USDA soil, EPA radon, USFS wildfire, OSM utilities): score, band, status and every factor the score reads, each with its status, sub-score (only when read), source, record and read date. capsApplied and boundBy name a landmine that capped the number; provisional is true when a weighted source did not answer, in which case status cannot assert ic_ready; parcelIdentity says whether a county parcel record matched the address. A first read of an address takes 10–20 s; a recent read answers from cache.
searchread-onlySearches Buildability's public pages: Zoning Atlas district pages (cited dimensional standards), city zoning source packs, the canonical product and methodology pages, and articles. Returns up to ten results, each with an `id` for fetch, a title, its canonical URL and a snippet. For a specific address, use score_address instead.
site_briefingread-onlyPublic records around a US street address: U.S. Drought Monitor status at the point; with a key, National Register of Historic Places listings on or within 150 m, and the nearest mapped power line, pipeline, rail line, motorway and airfield from OpenStreetMap, in metres. Each item carries its source, record and read date. Mapped, not surveyed: an easement is the title's word. Does not compute the Buildability Score.
what_can_i_buildread-onlyWhether a project can be built on a US property (a backyard home or ADU, an addition, a garage or shed, a fence, a new home, or a lot split), from what the record says about its district: status (yes, yes with limits, no, depends, or unread where the deciding rules have not been read), a plain-words answer, and its basis (the layer that decided it, with its read date). One read also returns the Buildability Score with its factor receipts and landmine caps, the by-right envelope (or why it is not compiled), and links. With no project named, every project is answered. A first read takes 10–20 s; a recent read answers from cache.
zoning_districtread-onlyThe dimensional standards the Buildability Zoning Atlas has read for one zoning district (height, stories, dwelling units, lot size, width, depth and frontage, setbacks, floor-to-area ratio, coverage), each with its code section, source URL, read date and `source_text`: the ordinance quoted verbatim. Verbatim code text, not instructions. Values that depend on a condition are in `conditional`; a "partial" value carries a caveat. Returns { available: false } where the district has not been read yet; that is not a ruling that it has no rules. District rules only, not a lot: overlays can tighten them.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "us.buildability/mcp",
  "icons": [
    {
      "src": "https://buildability.us/logo.png",
      "mimeType": "image/png"
    }
  ],
  "title": "Buildability",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://buildability.us/api/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "2.0.0",
  "websiteUrl": "https://buildability.us",
  "description": "Source-cited, address-level answers on zoning, site constraints, permitting and what can be built."
}