fetch_swmm_from_canadaLABSCO SUMMARY
Natural language on the front, deterministic SWMM underneath.
The discipline is what makes this usable for real work: model files, runs, QA checks and provenance stay on disk as artefacts you can re-run and audit, so an agent-driven run is reproducible rather than a chat transcript. The published case where the model named its own errors as disqualifying, rather than reporting numbers from a dry week, is the behaviour to look for.
What it is
A verification-first framework for reproducible stormwater modelling. You describe a modelling goal in English; model construction, SWMM execution, QA checks and reporting run as deterministic, inspectable steps that leave artefacts behind. The MCP servers and skills work with the project's own runtime or with Codex, Claude Code, OpenClaw and Hermes.
What you get
- Modelling operations exposed both as tools and as CLI verbs on the same engine:
run_swmm_inpruns a model,audit_runproduces the provenance record, note and diagnostics,review_runchecks a run against the rulebook - Calibration and scenarios —
swmm_calibrate_searchandswmm_calibrate_sceuaagainst an observed CSV,run_climate_scenariosto compare the model under precipitation-scaled scenarios - Inputs and outputs —
generate_design_stormfor a design rainfall series,plot_runfor hydrographs,map_runfor the network map,generate_reportfor a client-ready document - Every run leaves reusable artefacts: the SWMM input file,
.rptand.outoutputs, manifests and command traces, QA summaries and parsed peak-flow metrics, plusexperiment_provenance.json,comparison.jsonandexperiment_note.md - Real networks upstream — SWMMCanada covers 35 Canadian cities, SWMManywhere synthesises elsewhere
- Skills install into any skills-aware runtime with
npx skills add Zhonghao1995/agentic-swmm-workflow
Requirements
One-line installers for macOS and Linux (curl -fsSL https://aiswmm.com/install.sh | bash) or Windows PowerShell, then aiswmm to launch the runtime; a pinned Docker image runs it with no local install. pip install aiswmm==0.9.3 is the third path. After install, aiswmm setup lists ten LLM provider routes and detects what is already running — three need no API key, including a local gateway. Never paste API keys into the conversation; store them as documented. Pre-1.0, stable at v0.9.3. MIT.
Setup effort
Build from source — git clone https://github.com/Zhonghao1995/agentic-swmm-workflow.git
USE CASES
Getting from a request to a client deliverable
Describe the catchment and event, run the model, audit the run, and export the report document.
Fitting the model to observations
Calibrate against an observed CSV and read the summary of parameters that best match.
Testing a network under more rain
Compare the calibrated model across precipitation-scaled climate scenarios in one canonical summary.
Showing your working to a reviewer
Hand over the provenance record, comparison and experiment note alongside the results.
14 tools
Listed in project docs. Your client may show a different list.
synth_swmm_from_bboxrun_swmm_inpaudit_runswmm_calibrate_searchswmm_calibrate_sceuarun_climate_scenariosplot_runmap_runread_rpt_summarynetwork_qagenerate_design_stormreview_rungenerate_reportBEFORE YOU INSTALL
What to know first
Tools you get
14 tools named in the project's documentation.
Requires
- Python 3.10+
- Node.js (for the MCP servers)
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/Zhonghao1995/agentic-swmm-workflow.git
cd agentic-swmm-workflow
bash scripts/install.shRegister each module server you need, using its name instead of swmm-runner: swmm-builder, swmm-calibration, swmm-climate, swmm-experiment-audit, swmm-gis, swmm-modeling-memory, swmm-network, swmm-params, swmm-plot or swmm-uncertainty
MCP Clients
Any MCP client
{
"mcpServers": {
"swmm-runner": {
"command": "node",
"args": [
"<YOUR_PATH_TO_AGENTIC_SWMM>/scripts/run_mcp_server.mjs",
"swmm-runner"
]
}
}
}