mike-plus
A headless, natural-language-driven automated modelling workflow for MIKE+, enabling users to inspect models, change parameters, run simulations, and analyze results without the MIKE+ GUI.
README
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.
<p> <a href="https://github.com/Zhonghao1995/Agentic-MIKE-Plus/actions/workflows/ci.yml"><img src="https://github.com/Zhonghao1995/Agentic-MIKE-Plus/actions/workflows/ci.yml/badge.svg" alt="CI" /></a> <img src="https://img.shields.io/badge/python-3.11_x64-3776AB" alt="Python 3.11 x64" /> <img src="https://img.shields.io/badge/MIKE%2B-2026-0a7d8c" alt="MIKE+ 2026" /> <img src="https://img.shields.io/badge/MCP-1.28-7C3AED" alt="MCP 1.28" /> <img src="https://img.shields.io/badge/license-MIT-green" alt="MIT license" /> <img src="https://img.shields.io/badge/status-experimental-orange" alt="experimental" /> </p>
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 .
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); run/edit also needs a licensed MIKE+ 2026. Versions pinned in requirements.lock.
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. Deterministic tools, structured-JSON output, a pinned lockfile, 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.
<p align="center"> <img src="docs/figs/overview.png" alt="Agentic MIKE+ overview — agentic-workflow advantages, core functionality and tools, and which capabilities need a MIKE+ license" width="900" /> </p>
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)
<p align="center"> <img src="docs/figs/workflow.png" alt="From one plain-language sentence to a finished MIKE+ run, automatically and without the GUI" width="900" /> </p>
Tools (one server, mike-plus)
| Tool | Does | License |
|---|---|---|
mike_model_info |
model overview: simulations, scenarios, element counts | yes |
mike_get_values / mike_set_values |
read / change parameters (e.g. pipe diameter) | yes |
mike_run |
run a simulation headless, return .res1d |
yes |
mike_results_list / summary / read |
list contents / peaks / one time series | no |
mike_plot_rain_flow / timeseries / network |
stacked hydrograph / series / network map | no |
Five skills (mike-model, mike-params, mike-runner, mike-results, mike-plot) orchestrate them.
Demo — Sirius_RTC (MIKE 1D, 568 nodes, 576 links)
<p align="center"> <img src="docs/figs/sirius_rtc_network.png" alt="Sirius_RTC network layout" width="900" /> </p> <p align="center"> <img src="docs/figs/sirius_rtc_rain_flow.png" alt="Rainfall-runoff hydrograph for the busiest pipe" width="900" /> </p>
Full evidence — commands, outputs, and the honest license boundary — is in docs/verification.md.
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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.