Agentic MIKE Plus

Community AI and agents

Headless DHI MIKE+ urban-water modelling: model inspection, parameter editing, simulation runs with QA status, .res1d results reading and plotting.

Install

The installation steps are in the documentation below. Documentation

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Agentic MIKE+
  2. Install: just tell your agent
  3. Why it matters
  4. How it works
  5. Tools (one server, mike-plus)
  6. Demo: Sirius_RTC (MIKE 1D, 568 nodes, 576 links)
  7. Development
  8. License

Agentic MIKE+

A headless, natural-language-driven, automated modelling workflow for MIKE+. Skills + an MCP server for Claude Code, Codex, Hermes, or OpenClaw: describe a goal in plain language and the agent inspects, edits, runs, reads, and plots a MIKE+ model. Automated modelling and analysis, end to end, without ever opening the GUI.

[!TIP] Need a model to run? SWMMCanada builds one anywhere in Canada. It is the upstream, open-data model builder for this agentic workflow: draw an area on a map and it assembles a ready-to-run stormwater model from Canadian open data (real municipal storm networks for 8 cities, synthesized everywhere else), giving the agent a real network to run, edit, read, and plot. Try the hosted demo with no install at swmm.h2ox.me, or see the project at h2ox.me.

Experimental / pre-release. One MCP server + skills wrapping DHI's Python stack (mikeplus / mikeio / mikeio1d). Verified end to end on the MIKE+ 2026 Sirius_RTC example. Sibling of agentic-swmm-workflow.

Install: just tell your agent

It is the AI era. You don't wire this up by hand. Paste this to your AI coding agent (Claude Code, Codex, Hermes, OpenClaw):

Install "Agentic MIKE+" for me: an MCP server + skills to drive MIKE+ headless.

1. Clone https://github.com/Zhonghao1995/Agentic-MIKE-Plus and skim its README.
2. With Python 3.11 x64 (mikeplus needs 3.9-3.11, not 3.12+):
     py -3.11 -m venv .venv
     .venv\Scripts\python.exe -m pip install -r requirements.lock
     .venv\Scripts\python.exe -m pip install -e ".[run]"
   (read/plot only, no license: drop the lock and use `pip install -e .`)
3. Register with me (Claude Code):
     claude mcp add mike-plus -- "<abs-repo>\.venv\Scripts\python.exe" -m mikeplus_mcp.server
   (Codex / Hermes / OpenClaw: copy config/mcp.sample.json)
4. Copy skills/* into ~/.claude/skills/, then run scripts/smoke_test.py (should find 18 tools).
5. Tell me the tools and which need a MIKE+ license (run/edit/import do; read/plot/compare don't).

Needs Python 3.11 (x64). Two install profiles:

  • Read & plot. License-free and cross-platform: pip install -e . (no mikeplus).
  • Run & edit too. Windows + a licensed MIKE+ 2026: pip install -e ".[run]" (or pip install -r requirements.lock for the exact pinned environment).

mikeplus is an optional [run] extra, so teammates who only read results or make figures install nothing license-bound.

Why it matters

  • Natural-language-driven. Describe the task in plain words; the agent plans and runs it: no scripting, no GUI clicking. (A sub-agent did this autonomously.)
  • Fully headless. Runs with no GUI, on a workstation, a server, in CI, or under an agent. Built for batch and scenario automation.
  • MCP-native and portable. One server speaks the Model Context Protocol; works with Claude Code, Codex, Hermes, or OpenClaw via a single config line, and installs with pip.
  • Low barrier to share. Reading results and plotting need no MIKE+ license; only running or editing does. Teammates analyse model output with nothing but pip install.
  • Reproducible & tested. Deterministic tools, structured-JSON output, a pinned lockfile, and a license-free unit-test suite in CI, verified on a real model, not a chat-to-model black box.
  • Engine-agnostic and extensible. Results use a common schema (ready to sit beside SWMM and LSTM); add a tool or skill by dropping in a file.

How it works

Skills (markdown playbooks) tell the agent when and how; the agent calls MCP tools; each tool runs in an isolated worker subprocess that imports only mikeplus or mikeio*: the two cannot share a process. The server itself imports neither.

agent  ->  reads skills/*.md  ->  calls MCP tools  ->  workers (mikeplus / mikeio1d)

Tools (one server, mike-plus)

ToolDoesLicense
mike_model_infomodel overview: simulations, scenarios, model type, element countsyes
mike_set_scenarioactivate an existing scenario (verified by re-opening the model)yes
mike_get_values / mike_set_valuesread / change parameters (e.g. pipe diameter)yes
mike_runrun a simulation headless, return .res1d + a parsed QA status (completed / errors / warnings)yes
mike_import_swmmimport an EPA SWMM (or EPANET) .inp into a new MIKE+ model: the SWMMCanada bridgeyes
mike_results_list / summary / readlist contents / peaks / one time seriesno
mike_results_floodingwhich nodes flood: peak water level vs ground level, rankedno
mike_results_comparebaseline vs scenario: delta peak / volume / timing, RMSE, NSE; or every element ranked by changeno
mike_plot_rain_flow / timeseries / networkstacked hydrograph / series / network mapno
mike_plot_compare / mike_plot_profileoverlay of two runs / longitudinal profile (bed, crown, ground, max water level)no
mike_rain_to_dfs0rainfall CSV to a MIKE+ .dfs0 (intensity, read-back verified)no
mike_manifest_writeprovenance manifest: model, inputs, edits, run QA, results, figures, each with sha256no

Ten skills orchestrate them: mike-end-to-end (the SOP: modes, run directory, stop rules, QA gates), mike-model, mike-params, mike-runner, mike-import, mike-results, mike-compare, mike-plot, mike-rain, mike-audit.

Install the skills into any skills-aware agent (Claude Code, Codex, OpenCode, …) in one command, no clone needed:

npx skills add Zhonghao1995/Agentic-MIKE-Plus      # all 10; add --list to preview, or --skill <name> for one

Full evidence (commands, outputs, and the honest license boundary) is in docs/verification.md.

Development

The engine-agnostic core is covered by a license-free test suite (no MIKE+ / mikeplus needed) that also runs in CI:

pip install -e .            # read/plot core (add ".[run]" for run/edit)
pip install pytest
pytest                      # ~0.5 s, no license required

The tests pin the result schema, the res1d column matcher, the engine-log QA parser, the compare / rain / manifest / SWMM-inp helpers, and tool discovery, so a change can't silently break them. Add a tool or skill by dropping a file under mikeplus_mcp/tools/ or skills/ (auto-discovered), and ship a test with it.

License

MIT © 2026 Zhonghao Zhang, University of Victoria. Built on DHI's mikeplus / mikeio / mikeio1d and the Model Context Protocol. MIKE+ is a product of DHI; running models requires a valid DHI license.

Frequently asked questions

What is Agentic MIKE Plus?

Headless DHI MIKE+ urban-water modelling: model inspection, parameter editing, simulation runs with QA status, .res1d results reading and plotting.

How do I install Agentic MIKE Plus?

Follow the installation steps in its documentation, shown on this page and in its repository.

Is Agentic MIKE Plus open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Agentic MIKE Plus?

It is published by Zhonghao1995. AI.tn lists it but does not maintain or endorse it.

From the community awesome-mcp-servers lists and the project's GitHub repository. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.