Skip to main content
Glama
hjlrosales

EPANET MCP Server

by hjlrosales

EPANET MCP Server

Ein MCP Server, der die EPANET Hydraulik-/Wasserqualitäts-Engine vor KI-Assistenten (Claude Desktop, Cursor, VS Code Copilot, Claude Code, …) über stdio platziert — kein Cloud-Roundtrip, kein Browser.

Es ermöglicht einem KI-Assistenten, ein EPANET-.inp/.net-Modell zu laden, es zu inspizieren, Simulationen auszuführen, Ergebnisse pro Knoten/pro Verbindung zu lesen und validierte Änderungen vorzunehmen – alles lokal.

Werkzeuge

  • Netzwerk-I/Oload_network, save_network, list_networks

  • Inspektionget_network_summary, get_nodes, get_links, get_coordinates

  • Simulationrun_simulation, get_node_results, get_link_results

  • Mutation (engine-validiert, Ergebnisse invalidierend) — set_pipe_diameter, set_junction_demand, set_pump_speed, set_valve_setting, set_node_elevation, set_demand_pattern, add_tank, remove_tank, add_valve

  • Modellaufbaucreate_network, assign_demands, sample_elevations, fetch_road_network, generate_network_from_bbox

  • Entwurfshilfenlookup_pipe_diameters, recommend_diameter, friction_loss, calculate_minor_loss, pipe_sizing_wizard, pump_selection, list_fitting_kfactors

  • Optimierungoptimize_network, run_candidate

generate_network_from_bbox legt automatisch ein Knoten-/Rohrskelett aus echten OpenStreetMap-Straßendaten für eine Begrenzungsbox an, mit einem Reservoir am nächsten Wasserweg und Geländehöhen, die aus einem gebündelten IFSAR-10-m-DEM abgetastet werden.

Related MCP server: idfkit-mcp

Voraussetzungen

Anforderung

Version

Node.js

20.x oder 21.x

Betriebssystem

Windows, macOS oder Linux – Transport ist stdio, keine Netzwerkports geöffnet

Installation

npm install

Lokal ausführen

Das Datenverzeichnis, aus dem der Server liest (load_network) und in das er schreibt (save_network), ist pfadgebunden – der Server verweigert jede Datei außerhalb davon.

mkdir -p data
cp your-model.inp data/
export EPANET_DATA_DIR=$(pwd)/data
npm start

Der Server startet und wartet auf einen Client auf stdio.

An eine KI-App anbinden

Claude Desktop

Bearbeiten Sie claude_desktop_config.json (%APPDATA%\Claude\claude_desktop_config.json unter Windows, ~/Library/Application Support/Claude/claude_desktop_config.json unter macOS):

{
  "mcpServers": {
    "epanet": {
      "command": "npm",
      "args": ["start"],
      "cwd": "<absolute path to this repo>",
      "env": {
        "EPANET_DATA_DIR": "<absolute path to this repo>/data"
      }
    }
  }
}

Cursor / VS Code

Dasselbe Muster funktioniert in Cursor (%APPDATA%\Cursor\User\globalStorage\mcp.json) oder VS Code (%APPDATA%\Code\User\mcp.json) – command: "npm", gleiche args/env.

Konfiguration

Der Server liest diese Umgebungsvariablen:

Umgebungsvariable

Standard

Zweck

EPANET_DATA_DIR

aktuelles Verzeichnis

Ordner, den load_network/save_network lesen/schreiben dürfen

EPANET_DEM_DIR

nicht gesetzt

Ordner, aus dem die DEM-/Höhenwerkzeuge lesen

EPANET_AUTH_PUBLIC_KEY

nicht gesetzt

RS256-öffentlicher Schlüssel für optionale Token-Authentifizierung

EPANET_AUTH_VALIDATE_URL

nicht gesetzt

Loopback-URL für die Token-Validierung

EPANET_AUTH_ISSUER

nicht gesetzt

Erwarteter JWT-iss

EPANET_AUTH_AUDIENCE

nicht gesetzt

Erwarteter JWT-aud

EPANET_AUTH_TOKEN

nicht gesetzt

Statisches Bearer-Token (für CI)

EPANET_AUTH_TOKEN_FILE

nicht gesetzt

Pfad zu einer Datei, die das Bearer-Token enthält

Die Authentifizierung ist standardmäßig deaktiviert; setzen Sie die EPANET_AUTH_*-Variablen, um den Server hinter einem RS256-Bearer-Token zu schützen.

Tests

npm test

Unit-Tests treiben den In-Memory-MCP-Transport gegen eingecheckte .inp-Fixtures – sie erfordern keinen laufenden Server.

Paketinstaller erstellen

npm run package:win    # or package:mac / package:linux

Erzeugt ein eigenständiges Installationsprogramm (mit gebündelter Node-Laufzeit, kein System-Node erforderlich) unter dist/.

Lizenz

MIT – siehe LICENSE.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to create, edit, and simulate EnergyPlus building energy models via natural language. Supports schema exploration, model editing, simulation execution, and documentation search.
    39
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI clients to interact with EDA projects via natural language by wrapping EDI's gRPC interface, CLI tools, and ANSYS HFSS as MCP tools supporting SSE and stdio transports.
    1
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hjlrosales/EPAnet-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server