@pipeworx/water-quality-portal

Connect: https://gateway.pipeworx.io/water-quality-portal/mcp · Install: one-click buttons

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 4

US ambient water-chemistry monitoring — station metadata and individual sample results from the joint USGS / EPA / NWQMC Water Quality Portal (NWIS, STORET and STEWARDS in one query surface).

Tools

  • wqp_search_sites(statecode?, countycode?, huc?, bbox?, siteType?, characteristicName?, organization?, limit?) — monitoring stations with coordinates, site type and how many results each holds. At least one filter is required.
  • wqp_get_results(siteid?, characteristicName?, statecode?, countycode?, startDate?, endDate?, sampleMedia?, limit?) — individual sample values with unit, method, depth and date.
  • wqp_results_near_point(latitude, longitude, within_miles?, characteristicName?, startDate?, endDate?, limit?) — the same results inside a radius.
  • wqp_list_characteristics(domain?, text?, limit?) — the controlled-vocabulary spellings the portal demands (“Nitrate”, not “nitrate”).

Auth

Keyless.

Data sources

  • https://www.waterqualitydata.us/data/Station/search — station metadata (GeoJSON).
  • https://www.waterqualitydata.us/data/Result/search — sample results (CSV only).
  • https://www.waterqualitydata.us/Codes/<domain> — controlled vocabularies (JSON).

Things the next person would otherwise rediscover:

  • Result/search has no JSON profile. mimeType=geojson works for Station and is rejected for Result; the CSV is parsed in-pack.
  • Dates on the wire are MM-DD-YYYY (startDateLo=01-01-2020), not ISO. The tools take YYYY-MM-DD and convert, so callers never see it.
  • zip=no is mandatory or the response is a zip archive.
  • Responses are large — one statewide station query is ~750 KB. Every tool caps its rows and reports truncated.

Tools

  • wqp_search_sites — Find US water-quality monitoring stations (streams, lakes, wells, estuaries) by state, county, HUC, bounding box or organization. AUTHORITATIVE for “where is water sampled near X” — returns the statio
  • wqp_get_results — Individual water-quality sample results for one or more monitoring stations — the measured value, unit, analytical method, sample depth and collection date. AUTHORITATIVE for “what was the nitrate/lea
  • wqp_results_near_point — Water-quality sample results within a radius of a latitude/longitude — the “is the water near me tested, and what did it say” tool. Returns measured values with their station, date and unit. Sourced f
  • wqp_list_characteristics — Look up the exact controlled-vocabulary spelling the Water Quality Portal expects for an analyte, site type, organization, state or county code. Call this FIRST when a name might not match — “nitrate”

Tools

  • wqp_get_results — Individual water-quality sample results for one or more monitoring stations — the measured value, unit, analytical method, sample depth and collection date. AUTHORITATIVE for what was the nitrate/lead
  • wqp_list_characteristics — Look up the exact controlled-vocabulary spelling the Water Quality Portal expects for an analyte, site type, organization, state or county code. Call this FIRST when a name might not match — nitrate i
  • wqp_results_near_point — Water-quality sample results within a radius of a latitude/longitude — the is the water near me tested, and what did it say tool. Returns measured values with their station, date and unit. Sourced fro
  • wqp_search_sites — Find US water-quality monitoring stations (streams, lakes, wells, estuaries) by state, county, HUC, bounding box or organization. AUTHORITATIVE for where is water sampled near X — returns the station

Regenerated from source · build September 18, 2026