Identify a city or county open-data portal that publishes a Building Permits dataset on Socrata (e.g., data.sfgov.org, data.cityofnewyork.us) and note its 4-4 character dataset identifier
Request https://{portal-domain}/resource/{dataset-id}.json (or .csv) — every Socrata dataset automatically exposes this SODA endpoint
Use SoQL parameters such as $where, $select, $limit, and $offset to filter permits by issue date, permit/work type, or address
Register a free Socrata app token and pass it via the X-App-Token header to raise your throttling limits
Paginate with $limit/$offset (using a stable $order) to pull the full permit history for a jurisdiction
Known gotchas
Each city runs its own Socrata portal with its own dataset ID and column names — a query built for one city's permits dataset will not work unmodified against another
Without an app token, requests are subject to low, unauthenticated throttling limits that make bulk historical pulls unreliable
Not every city publishes permits on Socrata — confirm the specific portal and dataset exist for your target jurisdiction before building against this pattern
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?