Skip to main content
Glama
skandru

Waterboards MCP Server

by skandru

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_TRANSPORTNoTransport mode. Defaults to stdio; set to streamable-http for HTTP mode (what Databricks Apps runs).stdio
DATABRICKS_HOSTNoDatabricks workspace host, e.g. https://<workspace>.cloud.databricks.com, used with DATABRICKS_TOKEN for unified auth.
DATABRICKS_TOKENNoDatabricks personal access token used with DATABRICKS_HOST for unified auth.
DATABRICKS_CONFIG_PROFILENoDatabricks CLI profile used for local auth via the Databricks SDK's unified auth.
DATABRICKS_SQL_WAREHOUSE_IDYesThe Databricks SQL warehouse ID used to query the Gold views (set in .env).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
waterboards_list_datasetsA

List the water datasets (Gold views) available through this server.

Source: Unity Catalog information_schema for the configured Gold schema. Refresh cadence: reflects the current catalog; underlying data refresh varies by dataset (see each view's comment).

Returns a pagination envelope; each result has table_name and table_comment.

waterboards_find_water_systems_near_zipA

Find drinking water systems serving the area near a ZIP code.

Source: Gold view v_water_systems_near_zip (California State Water Board SDWIS inventory + SAFER risk assessment). Refreshed when the pipeline reloads the open data; each result has data_as_of. Only systems with coordinates in the SAFER assessment can be located. Distance is from the ZIP centroid to the system's location, so a nearby system does not necessarily serve that ZIP. Ordered nearest first.

Set flagged_only to return only systems that are Failing, At-Risk, or have an MCL, E. coli, or treatment-technique violation.

Each result has pws_id, system_name, county, city, federal_type, total_population, distance_km, safer_status, is_failing, violation flags/analytes, risk levels, and source_url. Use pws_id with waterboards_get_water_system for the full profile. SAFER status is a regulatory screening, not a tap-water safety determination.

waterboards_get_water_systemA

Get the profile and compliance/risk summary of one water system.

Source: Gold view v_water_systems (California State Water Board SDWIS inventory + SAFER risk assessment). Refreshed when the pipeline reloads the open data; the result carries data_as_of.

The single result has system name, county, city, type, owner, source type, population, service connections, last sanitary survey, safer_status, is_failing, economic_status (DAC/SDAC), violation flags with analytes (primary/secondary MCL, E. coli, treatment technique, monitoring), risk levels by category, and source_url. has_risk_assessment is false when the system is not in the SAFER file, in which case the violation/risk fields are null (unknown, not "none"). This is a regulatory screening, not a tap-water safety determination.

waterboards_get_source_chemistry_near_zipA

Get latest source-water chemistry for wells near a ZIP code.

Source: Gold view v_source_chemistry_near_zip (DDW/GAMA drinking water source chemistry, 2020 to present). Refreshed when the pipeline reloads the open data; each result has last_observed. Ordered nearest well first, then most recent.

chemical is a case-insensitive name fragment (e.g. 'arsenic', 'nitrate', 'PFOA'); omit it to see every chemical, which is large. Set detected_only to skip non-detects.

Each result is the latest sample for one well and chemical: pws_id, system_name, well_id, chemical_name, result_numeric, units, reporting_limit, is_non_detect, last_observed (sample date), sample_count, and source_url. When is_non_detect is true, result_numeric is null and the chemical was not found above reporting_limit. This is raw source water before treatment, not tap water, and not a health determination; units vary by chemical (UG/L, NG/L, MG/L, ...) so never compare across units.

waterboards_get_system_source_chemistryA

Get latest source-water chemistry for one water system's wells.

Source: Gold view v_source_chemistry_latest (DDW/GAMA drinking water source chemistry, 2020 to present). Refreshed when the pipeline reloads the open data; each result has last_observed. Ordered by chemical, then well. Get pws_id from waterboards_find_water_systems_near_zip.

chemical is a case-insensitive name fragment; detected_only skips non-detects.

Each result is the latest sample for one well and chemical: pws_id, system_name, well_id, chemical_name, result_numeric, units, reporting_limit, is_non_detect, last_observed (sample date), sample_count, and source_url. When is_non_detect is true, result_numeric is null and the chemical was not found above reporting_limit. This is raw source water before treatment, not tap water, and not a health determination; units vary by chemical (UG/L, NG/L, MG/L, ...) so never compare across units.

waterboards_get_school_lead_near_zipA

Get lead-in-drinking-water results at K-12 schools near a ZIP code.

Source: Gold view v_school_lead_near_zip (California State Water Board school lead sampling, 2020 onward; the data on file stops at the newest last_observed, so say so when results are old). Distance is between ZIP centroids. Ordered nearest first, then most recent.

exceedances_only returns only samples the state flagged as above the lead action level.

Each result has school_name, district, school_zip, sample_location, result_numeric and units (UG/L), reporting_limit, is_non_detect (result_numeric is null when true), action_level_exceeded, follow_up_action, last_observed (sample date), pws_id, and source_url. These are point-in-time samples, not a health determination.

waterboards_get_tap_water_for_zipA

Get the latest tap-water test results for a California ZIP code.

Source: Gold view v_tap_water_for_zip (DDW SDWIS sample results, 2023 to present, joined to water-system service-area boundaries). Refreshed when the pipeline reloads the open data; each result has last_observed. Systems are ordered by how much of the ZIP they serve (pct_of_zip_covered, highest first); a ZIP can be served by several systems, so use the largest coverage as the likely supplier.

stage is 'distribution' (samples from the pipes that reach customers, the closest to tap water; default) or 'treated' (leaving the treatment plant). chemical is a case-insensitive name fragment (e.g. 'lead', 'arsenic', 'pfas', 'nitrate'). detected_only (default true) hides non-detects; exceeds_mcl_only shows only results above the legal limit. min_coverage_pct (default 10) hides systems covering less of the ZIP than that; lower it to 0 to see every overlapping system.

Each result: zip, pct_of_zip_covered, pws_id, system_name, total_population, water_stage, analyte_name, result_numeric, units, is_non_detect, reporting_limit, mcl, exceeds_mcl, any_exceeds_mcl, max_result_numeric, sample_count, last_observed, sampling_point, method, source_url. When is_non_detect is true, result_numeric is null and the analyte was below reporting_limit.

These are system-level samples, not results for an individual address or home. A single sample above the MCL is not a violation by itself (many limits apply to running averages), and this is not a health determination. Units vary by analyte; never compare across units.

Prompts

Interactive templates invoked by user choice

NameDescription
drinking_water_questionAsk what drinking water information exists near a ZIP code.

Resources

Contextual data attached and managed by the client

NameDescription
aboutData provenance, citations, and caveats for this server.

TDQS

A4.4/5.0

Scored across 7 tools

Disambiguation4/5

Tools are largely distinct by resource and input key (ZIP vs pws_id), so most selections are clear. The two source-chemistry tools could be briefly confused because they share the same output schema, but the descriptions and name qualifiers ('near_zip' vs 'system') clarify scope.

Naming Consistency5/5

All names use a consistent waterboards_ prefix and snake_case verb_noun pattern. Verb choices (list/find/get) are appropriate and no mixed conventions appear.

Tool Count5/5

7 tools is well-scoped for a read-only water-data server. Each tool covers a clear data domain or lookup mode, with no redundant or filler tools.

Completeness4/5

The surface covers dataset discovery, water-system lookup, source chemistry by geography and system, school lead, and ZIP tap water. Minor gaps remain, such as direct tap-water or school-lead lookup by pws_id/system and broader search by county or system name, but core workflows are supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues