SWMM-MCP
MCP serverCommunity
An MCP toolbox for SWMM that inspects, edits and runs models through pyswmm and plots results in the chat. By kLabUM (University of Michigan).
8 starsUpdated 5 months agoGitHub data from 5 Nov 2026
At a glance
- Type
- MCP server
- Works with
- EPA SWMM
- How it connects
- Reads and writes files; the tool isn't needed
- Access
- Can modify models
- Tool versions
- SWMM engine bundled with pyswmm 2.0.1 or later
- Operating systems
- Not stated in its documentation
- Needs a EPA SWMM licence
- No
- Transport
- Local (stdio)
- AI clients documented
- Claude Desktop
- Licence
- MIT
- Language
- Python
What it can do
- Lists and duplicates models, and reads input file sections, report sections and output variables.
- Replaces a junction with a cylindrical storage node, changes circular conduit diameters and sets a 24-hour SCS Type II design storm.
- Runs a model and returns report and output data for comparison between scenarios.
- Includes UI apps for model upload, time-series plots, rainfall plots and an interactive network map, plus ready-made prompts.
Limitations
- Edits are limited to storage, conduit diameter and design storm changes.
- Clone-and-run only, with no published package; needs Python 3.12 and uv.
Install
uv sync{
"mcpServers": {
"SWMM": {
"command": "uv",
"args": [
"run",
"--directory",
"/<path/to/directory>/SWMM-MCP",
"server.py"
]
}
}
}MCP servers and skills run code on your computer. Review the source before installing.
AI-generated models, drawings and results must be checked by a qualified engineer before use.