Any US address: flood, HUD rent, county tax. Parcel zoning/STR rules: Nashville, Denver, Scottsdale.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Deprecated: use ziplot_deal_check. Public-record due-diligence facts for a US residential address. Any US address: FEMA flood zone at the geocoded point, HUD FY2026 Small Area FMR (or area FMR) by bedrooms, and a property-tax estimate: official rates in Nashville (Metro rate), Denver (levy by tax district), Chicago (Cook County tax code) and Maricopa County cities (tax area code), elsewhere a rough county-level estimate from Census ACS, labeled as such. Full parcel-level coverage (zoning district, overlays, STR permit eligibility for owner-occupied vs non-owner-occupied, caps, existing STR permits/licenses) only in Nashville/Davidson County TN, Denver CO, Scottsdale AZ, and Chicago IL (building size, Prohibited Buildings List, Restricted Residential Zones). New York City (city-wide rules plus a per-building Prohibited Buildings List and registration check by BIN) and Austin TX (city-wide rules plus a per-parcel full/limited-purpose/ETJ check) are also covered, as are Phoenix, Mesa, and Tempe AZ (city-wide rules); str.granularity says which. Elsewhere zoning/STR return not_covered. Every value carries a source and as-of date. HOA/deed restrictions are not checked. Informational only; not legal/tax/insurance/lending advice. Ziplot tool (original name kept for compatibility; ziplot_deal_check is the same tool). Status values. Top-level status: ok = every evaluated section answered; needs_review = partial answer, at least one section needs a person or a retry (read each section's status and the warnings); unavailable = no section could be answered (address not found, or every source failed); out_of_scope = no evaluated section applies at this address. Section status uses the same words plus not_covered (this area is not evaluated). str.status follows the two permit determinations: new_non_owner_occupied_permit.value (allowed, not_allowed, needs_review, out_of_scope, not_covered, unavailable) and owner_occupied_permit.value (possible, not_allowed, needs_review, out_of_scope, not_covered, unavailable). Both firm = ok, one firm and one not = needs_review, none usable = unavailable. str.supporting_data_status appears when side lookups such as permit counts or building lists were incomplete.
US street address including city and state, e.g. '321 50th Ave N, Nashville, TN'
Optional purchase price or value in USD. Echoed in query.value. Where no Assessor value exists it drives property_tax.estimated_annual_tax; where one exists, the estimate at your value is in property_tax.estimate_at_your_value.
For HUD rent benchmark. Defaults to 2.
Deprecated: use ziplot_deal_check. Public-record due-diligence facts for a US residential address. Any US address: FEMA flood zone at the geocoded point, HUD FY2026 Small Area FMR (or area FMR) by bedrooms, and a property-tax estimate: official rates in Nashville (Metro rate), Denver (levy by tax district), Chicago (Cook County tax code) and Maricopa County cities (tax area code), elsewhere a rough county-level estimate from Census ACS, labeled as such. Full parcel-level coverage (zoning district, overlays, STR permit eligibility for owner-occupied vs non-owner-occupied, caps, existing STR permits/licenses) only in Nashville/Davidson County TN, Denver CO, Scottsdale AZ, and Chicago IL (building size, Prohibited Buildings List, Restricted Residential Zones). New York City (city-wide rules plus a per-building Prohibited Buildings List and registration check by BIN) and Austin TX (city-wide rules plus a per-parcel full/limited-purpose/ETJ check) are also covered, as are Phoenix, Mesa, and Tempe AZ (city-wide rules); str.granularity says which. Elsewhere zoning/STR return not_covered. Every value carries a source and as-of date. HOA/deed restrictions are not checked. Informational only; not legal/tax/insurance/lending advice. Ziplot tool (original name kept for compatibility; ziplot_deal_check is the same tool). Status values. Top-level status: ok = every evaluated section answered; needs_review = partial answer, at least one section needs a person or a retry (read each section's status and the warnings); unavailable = no section could be answered (address not found, or every source failed); out_of_scope = no evaluated section applies at this address. Section status uses the same words plus not_covered (this area is not evaluated). str.status follows the two permit determinations: new_non_owner_occupied_permit.value (allowed, not_allowed, needs_review, out_of_scope, not_covered, unavailable) and owner_occupied_permit.value (possible, not_allowed, needs_review, out_of_scope, not_covered, unavailable). Both firm = ok, one firm and one not = needs_review, none usable = unavailable. str.supporting_data_status appears when side lookups such as permit counts or building lists were incomplete.
| Argument | Type | Description |
|---|---|---|
| value | number | Optional purchase price or value in USD. Echoed in query.value. Where no Assessor value exists it drives property_tax.estimated_annual_tax; where one exists, the estimate at your value is in property_tax.estimate_at_your_value. |
| address* | string | US street address including city and state, e.g. '321 50th Ave N, Nashville, TN' |
| include | array | |
| bedrooms | integer | For HUD rent benchmark. Defaults to 2. |
{
"type": "object",
"required": [
"address"
],
"properties": {
"value": {
"type": "number",
"description": "Optional purchase price or value in USD. Echoed in query.value. Where no Assessor value exists it drives property_tax.estimated_annual_tax; where one exists, the estimate at your value is in property_tax.estimate_at_your_value."
},
"address": {
"type": "string",
"description": "US street address including city and state, e.g. '321 50th Ave N, Nashville, TN'"
},
"include": {
"type": "array",
"items": {
"enum": [
"rent",
"tax",
"flood",
"str",
"zoning"
]
}
},
"bedrooms": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "For HUD rent benchmark. Defaults to 2."
}
}
}Public-record due-diligence facts for a US residential address. Any US address: FEMA flood zone at the geocoded point, HUD FY2026 Small Area FMR (or area FMR) by bedrooms, and a property-tax estimate: official rates in Nashville (Metro rate), Denver (levy by tax district), Chicago (Cook County tax code) and Maricopa County cities (tax area code), elsewhere a rough county-level estimate from Census ACS, labeled as such. Full parcel-level coverage (zoning district, overlays, STR permit eligibility for owner-occupied vs non-owner-occupied, caps, existing STR permits/licenses) only in Nashville/Davidson County TN, Denver CO, Scottsdale AZ, and Chicago IL (building size, Prohibited Buildings List, Restricted Residential Zones). New York City (city-wide rules plus a per-building Prohibited Buildings List and registration check by BIN) and Austin TX (city-wide rules plus a per-parcel full/limited-purpose/ETJ check) are also covered, as are Phoenix, Mesa, and Tempe AZ (city-wide rules); str.granularity says which. Elsewhere zoning/STR return not_covered. Every value carries a source and as-of date. HOA/deed restrictions are not checked. Informational only; not legal/tax/insurance/lending advice. Same tool as nashville_deal_check. Status values. Top-level status: ok = every evaluated section answered; needs_review = partial answer, at least one section needs a person or a retry (read each section's status and the warnings); unavailable = no section could be answered (address not found, or every source failed); out_of_scope = no evaluated section applies at this address. Section status uses the same words plus not_covered (this area is not evaluated). str.status follows the two permit determinations: new_non_owner_occupied_permit.value (allowed, not_allowed, needs_review, out_of_scope, not_covered, unavailable) and owner_occupied_permit.value (possible, not_allowed, needs_review, out_of_scope, not_covered, unavailable). Both firm = ok, one firm and one not = needs_review, none usable = unavailable. str.supporting_data_status appears when side lookups such as permit counts or building lists were incomplete.
| Argument | Type | Description |
|---|---|---|
| value |
| number |
| Optional purchase price or value in USD. Echoed in query.value. Where no Assessor value exists it drives property_tax.estimated_annual_tax; where one exists, the estimate at your value is in property_tax.estimate_at_your_value. |
| address* | string | US street address including city and state, e.g. '321 50th Ave N, Nashville, TN' |
| include | array |
| bedrooms | integer | For HUD rent benchmark. Defaults to 2. |
{
"type": "object",
"required": [
"address"
],
"properties": {
"value": {
"type": "number",
"description": "Optional purchase price or value in USD. Echoed in query.value. Where no Assessor value exists it drives property_tax.estimated_annual_tax; where one exists, the estimate at your value is in property_tax.estimate_at_your_value."
},
"address": {
"type": "string",
"description": "US street address including city and state, e.g. '321 50th Ave N, Nashville, TN'"
},
"include": {
"type": "array",
"items": {
"enum": [
"rent",
"tax",
"flood",
"str",
"zoning"
]
}
},
"bedrooms": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "For HUD rent benchmark. Defaults to 2."
}
}
}