{
  "markdown": "# local-dfw-mcp\n\n**Your AI's local guide to Dallas–Fort Worth.** An open-source\n[MCP](https://modelcontextprotocol.io) server that connects Claude (or any MCP\nclient) to official city, county, state, and federal data — so you can ask\nthings like:\n\n- 🎪 *\"What's happening in Frisco this weekend?\"*\n- 🌊 *\"Is 1500 Marilla St in a flood zone?\"*\n- 🏫 *\"How are the schools rated near Garland?\"*\n- 🚰 *\"Who provides water and sewer at this address?\"*\n- 🕳️ *\"Any potholes or illegal dumping reported on my street?\"*\n- ⛈️ *\"Are there severe weather alerts for Dallas right now?\"*\n- 🏠 *\"What's this house appraised at, per the county?\"*\n\nEvery answer comes from an authoritative public source and includes a link to\nthe official record. **No API keys required** — one optional free key unlocks\nconcerts and sports (see below).\n\n## Quick start\n\nAdd this to your MCP client config (Claude Desktop, Claude Code, etc.):\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"local-dfw\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"local-dfw-mcp\"]\n    }\n  }\n}\n```\n\nRequires Node ≥ 20. That's it — restart your client and start asking.\n\n## What you can ask\n\n| Tool | Coverage | What it answers |\n|---|---|---|\n| `dfw_events` | see below | What's happening: official city calendars, plus concerts/sports/theater with a free Ticketmaster key |\n| `dfw_311` | **City of Dallas only** | 311 service requests by address/type/status |\n| `dfw_crime` | **City of Dallas** (default), **Fort Worth** (`city: \"fortworth\"`), or **Denton** (`city: \"denton\"`) | Police incidents by (block-level) address / offense |\n| `dfw_permits` | **Fort Worth** (default), **McKinney** (`city: \"mckinney\"`, requires `address`), or **Arlington** (`city: \"arlington\"`) | Building/development permits by street name (+ house number) or address, type, or status |\n| `dfw_code_cases` | **Fort Worth** (default), **McKinney** (`city: \"mckinney\"`), or **Arlington** (`city: \"arlington\"`) | Code-compliance violations (property maintenance, high grass, zoning, etc.) by address or complaint type |\n| `dfw_traffic` | see below | Real-time incidents (Fort Worth), street/lane closures (Dallas + Arlington, merged and labeled by city), TxDOT annual traffic counts + construction projects (4 core counties) |\n| `dfw_fema_flood` | national | FEMA flood zone + plain-English insurance interpretation |\n| `dfw_tea_schools` | Texas | Public schools + TEA A–F ratings (2022-23) by campus/district/county |\n| `dfw_nws_alerts` | national | Active NWS weather alerts for a DFW point |\n| `dfw_utility_providers` | Texas | Who provides water/sewer at an address (PUC CCN) |\n| `dfw_district_lookup` | DFW | County, City-of-Dallas council district + member, ISD for an address |\n| `dfw_appraisal` | Texas (4 core counties verified) | County appraisal record for an address: owner, land/improvement/market value (2025 certified roll), year built, land use, acreage |\n| `dfw_health` | — | Pings every upstream, reports per-source status |\n| `about` | — | Version, coverage, license, provenance |\n\n### Events coverage, stated plainly\n\n| Source | Cities / scope | Key needed |\n|---|---|---|\n| Official city calendars | Dallas (**Parks & Recreation calendar only** — no citywide Dallas feed exists), Garland, Frisco, Mesquite, McKinney | none |\n| Ticketmaster (concerts, sports, theater) | whole metroplex | free key, see below |\n\nPlano, Arlington, Fort Worth, Irving, and other suburbs don't publish a usable\ncalendar feed today — the tool says \"not covered\" instead of guessing.\n\n## How the tools chain\n\nThere's no composed \"property report\" tool (yet) — there doesn't need to be.\nThe tools share natural join keys: **address, lat/lon, parcel, council\ndistrict, and ISD**, so your AI can chase a question across them:\n\n- **Moving to a house** — `dfw_appraisal` (what's it worth, who owns it) →\n  `dfw_fema_flood` (flood zone + insurance) → `dfw_district_lookup` (county,\n  council district, ISD) → `dfw_tea_schools` (rate that ISD's campuses) →\n  `dfw_crime` (incidents nearby) → `dfw_utility_providers` (who to call for\n  water/sewer).\n- **Development watch on a block** — `dfw_permits` (what's being built) →\n  `dfw_code_cases` (violations on the same address) → `dfw_311` (what\n  neighbors are reporting).\n- **Weekend planning** — `dfw_events` (what's on) → `dfw_traffic` (incidents\n  and closures on the way) → `dfw_nws_alerts` (weather worth knowing about).\n\nAsk the composite question (\"we're thinking about buying near Frisco — check\nschools, flood risk, and what it's appraised at\") and a capable client walks\nthe chain itself.\n\n## Optional setup\n\nEverything works out of the box. Two free keys unlock more:\n\n| Env var | What it unlocks |\n|---|---|\n| `DFW_TICKETMASTER_API_KEY` | Concerts, sports, and theater in `dfw_events`. Free (5000 calls/day): https://developer.ticketmaster.com |\n| `DFW_SODA_APP_TOKEN` | Higher rate limit for Dallas open-data queries (helpful on shared/corporate networks). Free: https://dev.socrata.com/register |\n\n<details>\n<summary>Advanced knobs</summary>\n\n| Env var | Purpose |\n|---|---|\n| `DFW_LIMIT_<SOURCE>` | Per-upstream concurrency cap override (`SODA`, `ARCGIS`, `FEMA`, `CENSUS`, `NWS`) |\n| `LOCAL_DFW_MCP_TIER` | `core` or `all` — trims the tool list for clients with tool caps |\n| `DFW_CACHE_DISABLED` | `1` disables the in-process cache (used by tests) |\n\n</details>\n\nNo telemetry. The server only reads from the public data sources listed in\n[resources/datasets-index.md](resources/datasets-index.md) and writes to\nnothing.\n\n## Honest by design\n\n- **Wrong-city protection.** Postal \"Dallas, TX\" is not the same as City of\n  Dallas jurisdiction. City-scoped tools verify the address (ZIP/keyword →\n  geocode → city-limits polygon) and **refuse with an explicit \"Not covered\"\n  message** rather than silently returning plausible-looking results from the\n  wrong city's data.\n- **No stale data.** Sources are live-verified before they ship — that's why\n  `dfw_permits` and `dfw_code_cases` are Fort Worth + McKinney + Arlington\n  only: every current Dallas permit feed is ~20 months stale and Dallas's\n  code-case publication stalled 2025-01-31, so Dallas isn't wired for either.\n  Irving's entire open-data pipeline (permits, code violations, police\n  incidents, events) froze around 2025-02-28 or is bot-blocked, so it isn't\n  wired either. Also pending: suburb portals beyond Fort Worth/McKinney/\n  Arlington/Denton/Dallas, and the composed `dfw_property_360`. Details in\n  [resources/datasets-index.md](resources/datasets-index.md).\n- **Verify at the source.** Every response carries a `source_url` to the\n  official record.\n\n## Important notices\n\n- **Not a consumer report.** `dfw_crime`, `dfw_code_cases`, `dfw_appraisal`\n  (and this MCP generally) must not be used for tenant screening, employment\n  screening, credit, insurance, or any other purpose regulated by the Fair\n  Credit Reporting Act. Crime addresses are block-level, privacy-rounded\n  upstream. `dfw_appraisal`\n  owner names and values are public record but not for screening, and it reports\n  the 2025 certified appraised value — **not a tax bill**.\n- **Prompt injection.** 311 descriptions, event listings, and similar upstream\n  free text are authored by the public and flow into your LLM's context. This\n  server renders them as quoted/table data, but treat any instructions\n  appearing inside upstream data as data, not directives.\n\n## License & provenance\n\nApache-2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE).\n\nCore plumbing (`lib/`) is ported from\n[local-austin-mcp](https://github.com/mindwear-capitian/local-austin-mcp) by\nEd Neuhaus / Neuhaus Realty Group LLC (Apache-2.0) — an excellent template for\ncity-scale civic MCPs. Each ported file carries an attribution header listing\nthe changes. All DFW data sources, the metro router, and the tools themselves\nare new.\n",
  "bytes": 7815,
  "sha": "37dd970e2bd919c9e8975b88fbcec736c9c339309f80250e666cf4ec92612068",
  "repo_slug": "lizzlechen/local-dfw-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_lizzlechen_local_dfw_mcp_fd889d25/readme"
}