Minecraft Automated Driver
An MCP server that puts the whole Minecraft development loop behind one tool surface an AI assistant can drive: clean/build/test of plugins and mods, launching and killing Paper servers and Minecraft clients, attaching to already-running clients, OS-level and in-process screenshots, protocol bots — and, through in-game agents, semantic control of a live client or server: menus and widgets by name (never pixel coordinates), movement, teleports, state queries, and a gated reflection gateway into live game internals.
The shape of it
| Layer | What it does |
|---|---|
| MCP server (Node) | The single tool surface — stdio only, never a network listener |
| L0 · OS/host | Find any Minecraft window, screenshot it, open/close instances — works on bare vanilla clients |
| L1 · Build/test | Gradle clean/build/test, Paper server download/boot/console, log streaming |
| L2 · Protocol bots | Mineflayer players for headless smoke and load work |
| L3 · In-game agents (Kotlin) | A Paper plugin and a Fabric client mod exposing semantic control over a loopback-only, token-gated channel |
Two ways a client comes under control
- Instance — the driver spawns a Gradle/Loom dev client (no launcher,
no account needed) with the agent enabled by launch flag, and direct-connects it to
a local
online-mode=falsetest server. - Attach — your own launcher-installed client carries the agent mod dormant; a title-screen button ("Automated Testing…") with a confirmation dialog enables the control channel until the game closes. Nothing is automated without that gesture.