For developers & AI agents
Query TapWaterMap from your tools
TapWaterMap runs a free, public Model Context Protocol (MCP) server so AI assistants — ChatGPT, Claude, or any MCP client — can query US tap-water quality directly from the EPA's own data. No signup, no API key.
The endpoint
Streamable-HTTP MCP, public and read-only:
https://mcp.tapwatermap.com/mcp
Connect it
- ChatGPT: Settings → Connectors (Developer Mode) → Add → paste the URL above → no authentication.
- Claude: Settings → Connectors → Add custom connector → paste the URL → no authentication.
- Any MCP client: point it at the endpoint; tools are discoverable via
tools/list.
Tools
-
search/fetch— find a city, then fetch its full record (ChatGPT-compatible). -
get_city_water— the systems serving a city and what the EPA has on record. get_water_system— a single water system by PWSID.-
search_cities/list_state_cities— discovery by name or state. -
find_cities— filter/rank across the dataset (by state, contaminant, health-based, population, open violations). compare_cities— compare several cities side by side.-
explain_contaminant— what a contaminant is, plus whether the EPA classifies it as health-based. coverage_stats— what's covered (states, cities, records, data quarter).
Data & the rules of the road
- Source: U.S. EPA Envirofacts SDWIS — the same data behind every page here. ~19,000 cities, all 50 states + DC, ~1.5M violation records.
- Every response reports what the EPA recorded — never a safety verdict. The absence of a violation is not a guarantee of safety. Please preserve that framing when you cite it.
- Read-only and public. Be reasonable with request volume.
Machine-readable summary for agents: /llms.txt. How the data is built: Methodology & Sources.