Skip to content
plugmcp
DirectorySkillsCategoriesBlog
EN/δΈ­ζ–‡
Sign inSign up
Home/Servers/EPANET MCP Server

EPANET MCP Server

I
by io.github.Applied-Artificial-Intelligence-Eurecat

MCP server for EPANET water-distribution network simulation and scenario analysis.

Power your agent

Add this server

The publisher's own command. Not a PlugMCP endpoint.

Local command
uvx epanet-mcp-server==0.1.2
Provider
Claude Code
claude mcp add io.github.applied-artificial-intelligence-eurecat-epanet-mcp-server -- uvx epanet-mcp-server==0.1.2

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "io.github.applied-artificial-intelligence-eurecat-epanet-mcp-server": {
      "command": "uvx",
      "args": [
        "epanet-mcp-server==0.1.2"
      ]
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

Run on PlugMCP

Host a copy with our keys and logs.

A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.

Launch

Related MCP

View more
  • FirecrawlπŸ”₯ Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
  • N
    NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
  • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

Related skills

View all
  • reaReverse engineer anything with agents, from app behavior down to native binaries.
  • rea-changelog-updatePrepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.
  • rea-tool-designDesign or change REA investigation tools, CLI/MCP contracts, provider capabilities, and Evidence semantics.

MCP server for EPANET water-distribution network simulation and scenario analysis.

EPANET MCP Server

A Model Context Protocol (MCP) server that exposes EPANET water-distribution network modelling capabilities through ePyT - the EPANET Python Toolkit.

Any MCP-compatible LLM can load water network models, run simulations, modify parameters, and generate complex what-if scenarios through natural language.


Features

CategoryTools
Load & Inspectload_network, unload_network, list_networks, list_bundled_networks, get_network_summary, get_nodes, get_links, get_patterns, get_controls, get_curves, get_options
Simulaterun_hydraulic_simulation, run_quality_simulation, run_full_simulation, get_pressure_at_time, get_flow_at_time
Modifyset_node_base_demand, set_pattern, add_pattern, set_pipe_diameter, set_pipe_roughness, set_pipe_status, set_pipe_length, set_pump_status, set_pump_speed, set_pump_head_curve, set_valve_setting, set_valve_status, set_tank_parameters, set_reservoir_head, set_simulation_duration, set_hydraulic_timestep, set_quality_timestep, set_quality_type, add_control, delete_control, save_network
Scenarioscreate_demand_perturbation, create_leakage_event, create_contamination_event, create_pressure_change_scenario, create_pump_control_scenario, create_valve_control_scenario, create_multi_failure_scenario

Requirements

  • Python β‰₯ 3.10
  • ePyT β‰₯ 2.0
  • mcp β‰₯ 1.0
pip install epyt mcp

Installation

git clone https://github.com/Applied-Artificial-Intelligence-Eurecat/epanet-mcp-server.git
cd epanet-mcp-server
pip install -e .

Running the server

stdio (for Claude Desktop / Claude Code)

epanet-mcp-server
# or
python -m epanet_mcp.server

SSE / HTTP

epanet-mcp-server --transport sse --port 8000

Claude Desktop configuration

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent on your platform:

{
  "mcpServers": {
    "epanet": {
      "command": "epanet-mcp-server",
      "args": []
    }
  }
}

If not on PATH:

{
  "mcpServers": {
    "epanet": {
      "command": "python",
      "args": ["-m", "epanet_mcp.server"],
      "cwd": "/path/to/epanet-mcp-server/src"
    }
  }
}

Claude Code (.mcp.json)

Place this in the root of your project or ~/.claude/:

{
  "mcpServers": {
    "epanet": {
      "command": "epanet-mcp-server",
      "args": []
    }
  }
}

Example interactions

Once the server is connected, you can ask things like:

"Load Net1.inp and show me a summary of the network."

"Run a full simulation and tell me which node has the lowest pressure at hour 12."

"Double the base demand at junction 11 and re-run the simulation. How does pressure change?"

"Simulate a burst on pipe 10 with a 20% leakage fraction."

"Inject 10 mg/L of chlorine at node 11 between hours 1 and 3 and show me the contamination spread."

"What happens to pressures if the reservoir head drops from 150 m to 120 m?"

"Schedule Pump 9 to start at 06:00 and stop at 22:00."

"Close pipes 10 and 11 and the pump simultaneously. Where are service disruptions?"


Architecture

src/epanet_mcp/
β”œβ”€β”€ server.py          # FastMCP server – tool registration + entry point
β”œβ”€β”€ session.py         # Thread-safe registry of open ePyT sessions
β”œβ”€β”€ utils.py           # numpy β†’ Python serialisation helpers
└── tools/
    β”œβ”€β”€ inspection.py  # load / inspect network models
    β”œβ”€β”€ simulation.py  # run hydraulic & quality simulations
    β”œβ”€β”€ modification.py# in-memory parameter changes
    └── scenarios.py   # what-if scenario generators (clone + modify + run)

Session model: Each loaded network lives in a named session. Scenario tools automatically clone the source session into a new independent session so the baseline network is never mutated.


Running the tests

pip install pytest
pytest tests/ -v

Bundled networks

ePyT ships with many standard benchmark networks including Net1, Net2, L-TOWN, Hanoi, Anytown, Balerma and others. Use list_bundled_networks to discover them all.


License

MIT

How do I install EPANET MCP Server?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does EPANET MCP Server need an API key?
No required environment variable is listed on this record.
What transport does EPANET MCP Server use?
EPANET MCP Server runs locally over stdio.
When was EPANET MCP Server last checked?
Last checked 2026-10-16. MCP server for EPANET water-distribution network simulation and scenario analysis.

No tool list yet. Remote servers get one after the first health check.

plugmcp

Plug any tool into any agent. MCP servers for people who do not write servers. Gateway for volume, n8n for apps.

  • github.com/TODO
  • x.com/TODO
  • linkedin.com/company/TODO

PlugMCP, 2026

Product
  • Browse
  • Install
  • Host your own
  • Voice mode
  • Browser
Directory
  • All MCP servers
  • Agent skills
  • Categories
  • New
  • Voice
  • Submit a server
Developers
  • Docs
  • Blog
  • What is MCP
  • What is WebMCP
  • Status
Company
  • About
  • Contact
  • Terms
  • Privacy
  • DPA