mike-plus
The mike-plus server lets you inspect, edit, run, and analyze MIKE+ hydraulic models entirely headless — no GUI required — using natural language through an AI agent.
Model Inspection (requires MIKE+ license)
mike_model_info— Get an overview of a.sqlitemodel: active simulation/scenario, unit system, simulations, scenarios, and element counts.mike_get_values— Read parameter values from any MIKE+ table (e.g., pipe diameters, Manning roughness), optionally filtered by element MUIDs.
Model Editing (requires MIKE+ license)
mike_set_values— Modify parameter values for specific elements; returns before/after values for audit. Always use on a copy — changes are permanent.
Running Simulations (requires MIKE+ license)
mike_run— Execute a MIKE+ 1D simulation headlessly, returning result file paths (.res1d) and a parsed QA status from the engine log.
Results Analysis (no license needed)
mike_results_list— List contents of a.res1dfile: available quantities, element counts, and simulation time range.mike_results_summary— Get per-quantity peak summaries (value, element, chainage, time); supports skipping warm-up hours.mike_results_read— Extract a single time series for a quantity at a specific element, downsampled to a configurable number of points.
Plotting & Visualization (no license needed)
mike_plot_rain_flow— Stacked rainfall-runoff figure from a.res1d, with optional rainfall from a.dfs0file.mike_plot_timeseries— Single-panel time-series plot for any quantity at any element.mike_plot_network— Network layout map (pipes as lines, nodes as points) for a spatial overview.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mike-plusrun the baseline simulation and show the peak flow summary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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.
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+ 2026Sirius_RTCexample. 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 10 tools).
5. Tell me the tools and which need a MIKE+ license (run/edit do; read/plot don't).Needs Python 3.11 (x64). Two install profiles:
Read & plot. License-free and cross-platform:
pip install -e .(nomikeplus).Run & edit too. Windows + a licensed MIKE+ 2026:
pip install -e ".[run]"(orpip install -r requirements.lockfor the exact pinned environment).
mikeplus is an optional [run] extra, so teammates who only read results or make figures install nothing license-bound.
Related MCP server: SWMM-MCP
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)
Tool | Does | License |
| model overview: simulations, scenarios, element counts | yes |
| read / change parameters (e.g. pipe diameter) | yes |
| run a simulation headless, return | yes |
| list contents / peaks / one time series | no |
| stacked hydrograph / series / network map | no |
Five skills (mike-model, mike-params, mike-runner, mike-results, mike-plot) orchestrate them.
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 5; add --list to preview, or --skill <name> for oneDemo: Sirius_RTC (MIKE 1D, 568 nodes, 576 links)
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 requiredThe tests pin the result schema, the res1d column matcher, the engine-log QA parser, 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.
Maintenance
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Zhonghao1995/Agentic-MIKE-Plus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server