Daily US building permits for 30 cities and counties. Free counts; records paid per call via x402.
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.
How many permits match a search (area, category, city, zip, dates, minimum value) before paying for the records. Free.
Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names.
City name, case-insensitive
Issued on or after (YYYY-MM-DD)
Issued on or before (YYYY-MM-DD)
Permit category, e.g. roof, pool, solar, hvac, new_residential
Minimum job valuation in USD
Include New York renewals of existing permits (left out by default)
Tool list last changed Oct 27, 2026.
How many permits match a search (area, category, city, zip, dates, minimum value) before paying for the records. Free.
| Argument | Type | Description |
|---|---|---|
| zip | string | |
| city | string | City name, case-insensitive |
| since | string | Issued on or after (YYYY-MM-DD) |
| until | any | Issued on or before (YYYY-MM-DD) |
| category | string | Permit category, e.g. roof, pool, solar, hvac, new_residential |
| minValue | number | Minimum job valuation in USD |
| jurisdiction* | string | Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names. |
| includeRenewals | boolean | Include New York renewals of existing permits (left out by default) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"zip": {
"type": "string",
"pattern": "^\\d{5}$"
},
"city": {
"type": "string",
"maxLength": 80,
"description": "City name, case-insensitive"
},
"since": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Issued on or after (YYYY-MM-DD)"
},
"until": {
"$ref": "#/properties/since",
"description": "Issued on or before (YYYY-MM-DD)"
},
"category": {
"enum": [
"pool",
"roof",
"solar",
"hvac",
"electrical",
"plumbing",
"addition",
"foundation",
"windows",
"fence",
"remodel",
"new_residential",
"commercial",
"demolition",
"other"
],
"type": "string",
"description": "Permit category, e.g. roof, pool, solar, hvac, new_residential"
},
"minValue": {
"type": "number",
"description": "Minimum job valuation in USD",
"exclusiveMinimum": 0
},
"jurisdiction": {
"enum": [
"austin-tx",
"dallas-tx",
"collin-county-tx",
"fort-worth-tx",
"san-antonio-tx",
"new-york-ny",
"los-angeles-ca",
"chicago-il",
"seattle-wa",
"miami-dade-fl",
"orlando-fl",
"mesa-az",
"maricopa-county-az",
"new-orleans-la",
"montgomery-county-md",
"nashville-tn",
"columbus-oh",
"louisville-ky",
"phoenix-az",
"denver-co",
"raleigh-nc",
"philadelphia-pa",
"washington-dc",
"boston-ma",
"minneapolis-mn",
"cape-coral-fl",
"riverside-county-ca",
"detroit-mi",
"cleveland-oh",
"new-hanover-county-nc"
],
"type": "string",
"description": "Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names."
},
"includeRenewals": {
"type": "boolean",
"description": "Include New York renewals of existing permits (left out by default)"
}
},
"additionalProperties": false
}List covered US cities and counties (ids, names, permit counts, newest permit date), permit categories and prices. Free.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Every known building permit at a street address in any covered area. Costs $0.10 in USDC (x402; Base, Solana, Polygon or Arbitrum); no charge when nothing matches.
| Argument | Type | Description |
|---|---|---|
| zip | string | |
| address* | string | Street address, e.g. 1712 Bluebonnet Ln |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"zip": {
"type": "string",
"pattern": "^\\d{5}$"
},
"address": {
"type": "string",
"maxLength": 120,
"minLength": 3,
"description": "Street address, e.g. 1712 Bluebonnet Ln"
}
},
"additionalProperties": false
}Count building permits issued in the last N days (1-90) by category, for one area or all. Free.
| Argument | Type | Description |
|---|---|---|
| days | integer | |
| jurisdiction | string | Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"jurisdiction": {
"enum": [
"austin-tx",
"dallas-tx",
"collin-county-tx",
"fort-worth-tx",
"san-antonio-tx",
"new-york-ny",
"los-angeles-ca",
"chicago-il",
"seattle-wa",
"miami-dade-fl",
"orlando-fl",
"mesa-az",
"maricopa-county-az",
"new-orleans-la",
"montgomery-county-md",
"nashville-tn",
"columbus-oh",
"louisville-ky",
"phoenix-az",
"denver-co",
"raleigh-nc",
"philadelphia-pa",
"washington-dc",
"boston-ma",
"minneapolis-mn",
"cape-coral-fl",
"riverside-county-ca",
"detroit-mi",
"cleveland-oh",
"new-hanover-county-nc"
],
"type": "string",
"description": "Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names."
}
},
"additionalProperties": false
}Daily permit counts and the busiest cities and zip codes for one category over the last N days. Free.
| Argument | Type | Description |
|---|---|---|
| days | integer | |
| category* | string | Permit category, e.g. roof, pool, solar, hvac, new_residential |
| jurisdiction | string | Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"category"
],
"properties": {
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"category": {
"enum": [
"pool",
"roof",
"solar",
"hvac",
"electrical",
"plumbing",
"addition",
"foundation",
"windows",
"fence",
"remodel",
"new_residential",
"commercial",
"demolition",
"other"
],
"type": "string",
"description": "Permit category, e.g. roof, pool, solar, hvac, new_residential"
},
"jurisdiction": {
"enum": [
"austin-tx",
"dallas-tx",
"collin-county-tx",
"fort-worth-tx",
"san-antonio-tx",
"new-york-ny",
"los-angeles-ca",
"chicago-il",
"seattle-wa",
"miami-dade-fl",
"orlando-fl",
"mesa-az",
"maricopa-county-az",
"new-orleans-la",
"montgomery-county-md",
"nashville-tn",
"columbus-oh",
"louisville-ky",
"phoenix-az",
"denver-co",
"raleigh-nc",
"philadelphia-pa",
"washington-dc",
"boston-ma",
"minneapolis-mn",
"cape-coral-fl",
"riverside-county-ca",
"detroit-mi",
"cleveland-oh",
"new-hanover-county-nc"
],
"type": "string",
"description": "Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names."
}
},
"additionalProperties": false
}Newly issued building permits with address, permit type, description, contractor, job value and issue date, filtered by area, category, city, zip, dates and minimum value. Up to 100 per call. Costs $0.05 in USDC (x402; Base, Solana, Polygon or Arbitrum); no charge when nothing matches.
| Argument | Type | Description |
|---|---|---|
| zip | string | |
| city | string | City name, case-insensitive |
| limit | integer | |
| since | string | Issued on or after (YYYY-MM-DD) |
| until | any | Issued on or before (YYYY-MM-DD) |
| category | string | Permit category, e.g. roof, pool, solar, hvac, new_residential |
| minValue | number | Minimum job valuation in USD |
| jurisdiction* | string | Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names. |
| includeRenewals | boolean | Include New York renewals of existing permits (left out by default) |
All building permits issued in the last 7 days for one area, with counts by category. Costs $0.50 in USDC (x402; Base, Solana, Polygon or Arbitrum); no charge when nothing matches.
| Argument | Type | Description |
|---|---|---|
| category | string | Permit category, e.g. roof, pool, solar, hvac, new_residential |
| jurisdiction* | string | Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"category": {
"enum": [
"pool",
"roof",
"solar",
"hvac",
"electrical",
"plumbing",
"addition",
"foundation",
"windows",
"fence",
"remodel",
"new_residential",
"commercial",
"demolition",
"other"
],
"type": "string",
"description": "Permit category, e.g. roof, pool, solar, hvac, new_residential"
},
"jurisdiction": {
"enum": [
"austin-tx",
"dallas-tx",
"collin-county-tx",
"fort-worth-tx",
"san-antonio-tx",
"new-york-ny",
"los-angeles-ca",
"chicago-il",
"seattle-wa",
"miami-dade-fl",
"orlando-fl",
"mesa-az",
"maricopa-county-az",
"new-orleans-la",
"montgomery-county-md",
"nashville-tn",
"columbus-oh",
"louisville-ky",
"phoenix-az",
"denver-co",
"raleigh-nc",
"philadelphia-pa",
"washington-dc",
"boston-ma",
"minneapolis-mn",
"cape-coral-fl",
"riverside-county-ca",
"detroit-mi",
"cleveland-oh",
"new-hanover-county-nc"
],
"type": "string",
"description": "Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"zip": {
"type": "string",
"pattern": "^\\d{5}$"
},
"city": {
"type": "string",
"maxLength": 80,
"description": "City name, case-insensitive"
},
"limit": {
"type": "integer",
"default": 100,
"maximum": 100,
"minimum": 1
},
"since": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Issued on or after (YYYY-MM-DD)"
},
"until": {
"$ref": "#/properties/since",
"description": "Issued on or before (YYYY-MM-DD)"
},
"category": {
"enum": [
"pool",
"roof",
"solar",
"hvac",
"electrical",
"plumbing",
"addition",
"foundation",
"windows",
"fence",
"remodel",
"new_residential",
"commercial",
"demolition",
"other"
],
"type": "string",
"description": "Permit category, e.g. roof, pool, solar, hvac, new_residential"
},
"minValue": {
"type": "number",
"description": "Minimum job valuation in USD",
"exclusiveMinimum": 0
},
"jurisdiction": {
"enum": [
"austin-tx",
"dallas-tx",
"collin-county-tx",
"fort-worth-tx",
"san-antonio-tx",
"new-york-ny",
"los-angeles-ca",
"chicago-il",
"seattle-wa",
"miami-dade-fl",
"orlando-fl",
"mesa-az",
"maricopa-county-az",
"new-orleans-la",
"montgomery-county-md",
"nashville-tn",
"columbus-oh",
"louisville-ky",
"phoenix-az",
"denver-co",
"raleigh-nc",
"philadelphia-pa",
"washington-dc",
"boston-ma",
"minneapolis-mn",
"cape-coral-fl",
"riverside-county-ca",
"detroit-mi",
"cleveland-oh",
"new-hanover-county-nc"
],
"type": "string",
"description": "Area id, e.g. new-york-ny, miami-dade-fl. Use list_coverage for names."
},
"includeRenewals": {
"type": "boolean",
"description": "Include New York renewals of existing permits (left out by default)"
}
},
"additionalProperties": false
}