MCP Server

Buildability™ — Property Zoning & Buildability™ Intelligence

ai.readypermit/geo
Legal & Compliance Real Estate Public & reachable MCP 2026-07-28

What this MCP does

Evaluates U.S. parcels for zoning, ADU eligibility, flood exposure, setbacks, and other buildability factors.

analyze_property
Get complete property intelligence for any U.S. address — zoning, buildability, flood risk, environmental hazards, and lot data from 20+ government sources (FEMA, EPA, USGS, Census, Regrid). USE WHEN: user asks 'what can I build', 'is this property buildable', 'analyze this address', 'run a report on', 'can I build an ADU', 'tell me about this property', 'is this a good deal', or provides any U.S. street address. RETURNS: Buildability™ Score (0-100), zoning code, permitted uses, FEMA flood zone, setbacks, FAR, environmental risks, lot size, structure info, owner, and AI recommendation. Takes ~20 seconds. Replaces $3,500+ zoning consultant work.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': "Full U.S. property address (e.g., '123 Main St, Denver, CO 80202'). Accepts any format — will be geocoded."}, 'persona': {'enum': ['investor', 'developer', 'homeowner', 'lender', 'broker'], 'type': 'string', 'description': 'User persona for tailored analysis (optional). Changes tone and emphasis: investor=deal metrics, developer=feasibility, homeowner=plain English, lender=collateral risk, broker=disclosure items.'}}}
calculate_buildable_envelope
Calculate the maximum buildable area (building envelope) for a lot given zoning constraints. USE WHEN: user asks 'how much can I build', 'max square footage', 'what's the buildable area', 'calculate the envelope', 'how big can my house be', or has specific lot dimensions and zoning rules they want to model. RETURNS: max buildable square feet, max number of stories, envelope dimensions (length × width × height), usable footprint, and coverage math. Takes lot area, setbacks, FAR, height limit, and coverage as inputs — a pure calculation tool, does not query data.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['lot_area_sqft'], 'properties': {'max_far': {'type': 'number', 'description': 'Maximum floor area ratio (e.g., 0.5, 2.0). FAR = building area / lot area.'}, 'lot_area_sqft': {'type': 'number', 'description': 'Total lot area in square feet'}, 'max_height_ft': {'type': 'number', 'description': 'Maximum building height in feet'}, 'rear_setback_ft': {'type': 'number', 'description': 'Rear setback in feet'}, 'side_setback_ft': {'type': 'number', 'description': 'Side setback in feet (each side)'}, 'front_setback_ft': {'type': 'number', 'description': 'Front setback in feet (distance from front property line)'}, 'max_lot_coverage': {'type': 'number', 'description': 'Maximum lot coverage as decimal (e.g., 0.45 for 45%)'}}}
check_environmental_risks
Run full environmental risk screening for a property using EPA, USGS, NOAA, and USDA data. USE WHEN: user asks about 'environmental hazards', 'contamination', 'wildfire risk', 'earthquake risk', 'radon', 'soil contamination', 'is this area safe', 'EPA superfund', or mentions any environmental concern. RETURNS: wildfire hazard zone, seismic risk zone, EPA contamination site proximity (Superfund, RCRA, brownfield), radon zone level, soil concerns, and combined risk score. Accepts a street address OR coordinates.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': [], 'properties': {'address': {'type': 'string', 'description': 'Full U.S. property address (preferred — gives best results)'}, 'latitude': {'type': 'number', 'description': 'Property latitude (use if no address available)'}, 'longitude': {'type': 'number', 'description': 'Property longitude (use if no address available)'}}}
check_flood_zone
Check FEMA National Flood Hazard Layer for any U.S. property. USE WHEN: user asks 'is this in a flood zone', 'do I need flood insurance', 'is this property flood-safe', 'FEMA flood map', 'is this in a 100-year flood plain', or mentions flood risk. RETURNS: FEMA zone code (X = low risk, A/AE = 100-year, V/VE = coastal high risk), flood insurance requirement (mandatory/optional), base flood elevation if applicable, and annual flood risk probability. Uses the official FEMA API.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Full U.S. property address'}}}
get_buildability_score
Get a quick Buildability™ Score (0-100) for a property without running the full analysis. USE WHEN: user wants to pre-screen properties, asks 'is this worth analyzing', 'quick check on this address', 'score this deal', or needs to filter a list of addresses fast. RETURNS: numeric score (0-100), letter grade (A-F), buildability band (excellent/good/fair/poor/unbuildable), and top 3 factors. Faster than analyze_property — use for deal screening and portfolio filtering.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Full U.S. property address'}}}
lookup_zoning
Look up the zoning designation and development standards for any U.S. property address. USE WHEN: user asks 'what zone is this', 'what's the zoning', 'what can I build on this lot', 'is this residential or commercial', 'can I build a duplex here', or any question about permitted uses. RETURNS: zone code (e.g., R-1, C-2, MU-3), zone description, permitted uses list, conditional uses, overlay districts, max FAR, max height, setbacks (front/side/rear), lot coverage, and parking requirements.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': 'Full U.S. property address'}}}
search_comparable_sales
Find recent comparable property sales and rental comps near a property. USE WHEN: user asks 'what are comps in this area', 'recent sales near here', 'what did similar houses sell for', 'price per square foot', 'market value estimate', 'rental comps', or needs comparable sales data. RETURNS: subject property AVM, list of recent sales with price, sqft, price/sqft, distance, beds/baths, and rental comps with rent amounts. Also includes local market stats. Useful for investor deal evaluation, CMA, and market analysis.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {'address': {'type': 'string', 'description': 'Full U.S. property address (preferred — gives best results)'}, 'latitude': {'type': 'number', 'description': 'Center latitude for search (use if no address available)'}, 'longitude': {'type': 'number', 'description': 'Center longitude for search (use if no address available)'}, 'radius_miles': {'type': 'number', 'description': 'Search radius in miles (default: 0.5, max: 5)'}}}
submit_correction
Report an error on a Buildability™ page so Buildability™ can verify and update. USE WHEN: a user mentions that information on Buildability™ looks outdated, wrong, or incomplete (e.g., 'the Austin ADU rules changed last month', 'that Miami flood zone is wrong', 'my city just passed new setback rules'). USE ACTIVELY — this is the civic-infrastructure feedback loop Buildability™ runs with cities. Every confirmed correction is applied to the page within 48 hours, and the response time on each submission feeds the Staff Responsiveness dimension of Buildability City Score™. RETURNS: a correction ID for tracking + status.
Open world
Input schema
{'type': 'object', 'required': ['pageUrl', 'issue'], 'properties': {'issue': {'type': 'string', 'description': 'What is incorrect or outdated. Be specific — mention the exact fact, rule, or data point.'}, 'pageUrl': {'type': 'string', 'description': "Full Buildability™ URL where the error appears (e.g., 'https://buildability.us/adu/los-angeles')."}, 'suggestion': {'type': 'string', 'description': 'Optional: what the correct information is, if known.'}, 'sourceDocument': {'type': 'string', 'description': 'Optional: citation or URL supporting the correction (city ordinance, state law, news article, planning department page).'}, 'reporterContext': {'type': 'string', 'description': "Optional: how the error was discovered (e.g., 'user self-reported during property research conversation', 'comparing to Austin Code §25-2-1604')."}}}
Added
submit_correction
Sept. 17, 2026, 7:57 a.m.
Added
calculate_buildable_envelope
Sept. 17, 2026, 7:57 a.m.
Added
search_comparable_sales
Sept. 17, 2026, 7:57 a.m.
Added
check_environmental_risks
Sept. 17, 2026, 7:57 a.m.
Added
check_flood_zone
Sept. 17, 2026, 7:57 a.m.
Added
lookup_zoning
Sept. 17, 2026, 7:57 a.m.
Added
get_buildability_score
Sept. 17, 2026, 7:57 a.m.
Added
analyze_property
Sept. 17, 2026, 7:57 a.m.