{
  "schemaVersion": "1.0",
  "protocolVersion": "2024-11-05",
  "name": "ai.readypermit/geo",
  "version": "1.2.4",
  "displayName": "Buildability™ Property Intelligence",
  "description": "Instant U.S. property intelligence from 20+ government sources — zoning, buildability, FEMA flood zones, environmental risk, comps, and buildable envelope calculations. First 100 requests/day are free with no signup required; higher volume unlocks via API key.",
  "homepage": "https://buildability.us",
  "documentation": "https://buildability.us/api",
  "privacyPolicy": "https://buildability.us/privacy",
  "termsOfService": "https://buildability.us/terms",
  "license": "Proprietary — commercial use via API",
  "publisher": {
    "name": "Buildability™",
    "legalName": "ReadyPermit.AI, Inc.",
    "url": "https://buildability.us",
    "email": "team@buildability.us",
    "address": {
      "streetAddress": "10718 South Beckstead, Suite 200",
      "addressLocality": "South Jordan",
      "addressRegion": "UT",
      "postalCode": "84095",
      "addressCountry": "US"
    }
  },
  "transport": {
    "type": "streamable-http",
    "protocol": "jsonrpc-2.0",
    "endpoint": "https://rnfonkwthefktfvfwypr.supabase.co/functions/v1/mcp-server",
    "methods": [
      "POST",
      "DELETE",
      "OPTIONS"
    ],
    "sse": false
  },
  "authentication": {
    "required": false,
    "type": "api_key",
    "scheme": "bearer",
    "header": "Authorization",
    "prefix": "Bearer",
    "signupUrl": "https://buildability.us/api",
    "freeTier": {
      "requestsPerDay": 100,
      "requestsPerMinute": 10,
      "note": "First 100 requests/day are free — no signup required. Authenticated tier via API key unlocks higher volume."
    }
  },
  "configSchema": {
    "type": "object",
    "required": [],
    "properties": {
      "apiKey": {
        "type": "string",
        "title": "Buildability API Key",
        "description": "Optional — first 100 requests/day are free with no auth. Get a key at https://buildability.us/api for higher volume.",
        "format": "password"
      }
    }
  },
  "capabilities": {
    "tools": {
      "listChanged": false
    },
    "prompts": {
      "listChanged": false
    },
    "resources": {
      "subscribe": false,
      "listChanged": false
    }
  },
  "tools": [
    {
      "name": "analyze_property",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "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": {
            "type": "string",
            "enum": [
              "investor",
              "developer",
              "homeowner",
              "lender",
              "broker"
            ],
            "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."
          }
        },
        "required": [
          "address"
        ]
      },
      "annotations": {
        "title": "Analyze Property (Full Buildability Report)",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "get_buildability_score",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "Full U.S. property address"
          }
        },
        "required": [
          "address"
        ]
      },
      "annotations": {
        "title": "Get Buildability Score (Quick Screen)",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "lookup_zoning",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "Full U.S. property address"
          }
        },
        "required": [
          "address"
        ]
      },
      "annotations": {
        "title": "Lookup Zoning (Permitted Uses)",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "check_flood_zone",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "Full U.S. property address"
          }
        },
        "required": [
          "address"
        ]
      },
      "annotations": {
        "title": "Check FEMA Flood Zone",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "check_environmental_risks",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "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)"
          }
        },
        "required": []
      },
      "annotations": {
        "title": "Check Environmental Risks",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "search_comparable_sales",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "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)"
          }
        },
        "required": []
      },
      "annotations": {
        "title": "Search Comparable Sales",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true
      }
    },
    {
      "name": "calculate_buildable_envelope",
      "description": "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.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "lot_area_sqft": {
            "type": "number",
            "description": "Total lot area in square feet"
          },
          "front_setback_ft": {
            "type": "number",
            "description": "Front setback in feet (distance from front property line)"
          },
          "side_setback_ft": {
            "type": "number",
            "description": "Side setback in feet (each side)"
          },
          "rear_setback_ft": {
            "type": "number",
            "description": "Rear setback in feet"
          },
          "max_far": {
            "type": "number",
            "description": "Maximum floor area ratio (e.g., 0.5, 2.0). FAR = building area / lot area."
          },
          "max_height_ft": {
            "type": "number",
            "description": "Maximum building height in feet"
          },
          "max_lot_coverage": {
            "type": "number",
            "description": "Maximum lot coverage as decimal (e.g., 0.45 for 45%)"
          }
        },
        "required": [
          "lot_area_sqft"
        ]
      },
      "annotations": {
        "title": "Calculate Buildable Envelope",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "submit_correction",
      "description": "Report an error on a Buildability™ page so Buildability™ can verify and update. USE WHEN: a user mentions that information on a Buildability™ page 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.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pageUrl": {
            "type": "string",
            "description": "Full Buildability™ URL where the error appears (e.g., 'https://buildability.us/adu/los-angeles')."
          },
          "issue": {
            "type": "string",
            "description": "What is incorrect or outdated. Be specific — mention the exact fact, rule, or data point."
          },
          "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')."
          }
        },
        "required": [
          "pageUrl",
          "issue"
        ]
      },
      "annotations": {
        "title": "Submit Correction",
        "readOnlyHint": false,
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true
      }
    }
  ],
  "prompts": [
    {
      "name": "investor_analysis",
      "description": "Analyze a property as a real estate investment. Includes cap rate estimate, comparable deals, risk flags, value-add potential, and a go/no-go recommendation. USE FOR: deal evaluation, portfolio screening, value-add identification.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address to analyze",
          "required": true
        }
      ]
    },
    {
      "name": "developer_feasibility",
      "description": "Run a feasibility study on a development site. Covers FAR, setbacks, height limits, environmental clearances, entitlement path, permit timeline, and estimated costs. USE FOR: site selection, entitlement planning, pro forma inputs.",
      "arguments": [
        {
          "name": "address",
          "description": "Site address to evaluate",
          "required": true
        }
      ]
    },
    {
      "name": "homeowner_guide",
      "description": "Explain what a homeowner can build on their property in plain English. ADU eligibility, addition potential, setback requirements, permit steps, and estimated costs. USE FOR: ADU questions, renovation planning, permit guidance.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address to check",
          "required": true
        }
      ]
    },
    {
      "name": "risk_assessment",
      "description": "Assess a property for collateral, insurance, or compliance risk. Covers zoning conformance, environmental liability (Phase I triggers), flood insurance requirements, wildfire/seismic exposure, and a risk grade. USE FOR: loan underwriting, insurance underwriting, due diligence, title review.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address to assess",
          "required": true
        }
      ]
    },
    {
      "name": "deal_screening",
      "description": "Quick screen one or more properties for investment viability. Returns buildability score, fatal flaws, and a rank recommendation. USE FOR: wholesaler deal flow, portfolio filtering, batch pre-screening, 'is this worth a deeper look' questions.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address (or comma-separated list of addresses) to screen",
          "required": true
        }
      ]
    },
    {
      "name": "broker_intel",
      "description": "Generate a client-ready property brief a broker can share immediately. Covers buildability, zoning, risks, and next steps in professional but accessible language. USE FOR: client meetings, listing presentations, buyer consultations, 'can I build on this?' questions from clients.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address the client is asking about",
          "required": true
        }
      ]
    },
    {
      "name": "raw_data",
      "description": "Return structured property data as clean JSON without narrative or persona framing. USE FOR: API integrations, data pipelines, proptech product feeds, programmatic analysis where you need machine-readable output rather than human-readable summaries.",
      "arguments": [
        {
          "name": "address",
          "description": "Property address to pull data for",
          "required": true
        }
      ]
    }
  ],
  "categories": [
    "real-estate",
    "property-intelligence",
    "zoning",
    "flood-risk",
    "environmental-data",
    "proptech",
    "buildability",
    "government-data"
  ],
  "keywords": [
    "property",
    "zoning",
    "buildability",
    "FEMA",
    "flood zone",
    "ADU",
    "real estate",
    "feasibility",
    "land use",
    "development",
    "due diligence",
    "EPA",
    "environmental risk",
    "FAR",
    "setbacks",
    "permitted uses",
    "parcel data",
    "government APIs"
  ],
  "regions": [
    "US"
  ],
  "languages": [
    "en"
  ],
  "dataSources": [
    "FEMA National Flood Hazard Layer",
    "EPA Envirofacts + ECHO",
    "USGS Seismic Hazards + 3DEP Elevation",
    "U.S. Census Bureau (ACS + TIGER/Line)",
    "HUD Open Data",
    "USDA Soil Survey (SSURGO)",
    "NOAA Climate + Wildfire Risk",
    "Regrid Parcel Data",
    "County GIS Records",
    "Municipal Zoning Databases"
  ],
  "generatedAt": "2026-04-27T20:59:26.956Z",
  "generatedBy": "scripts/generate-mcp-server-card.mjs"
}