Minecraft Ops MCP
Minecraft Ops MCP
Ein MCP-stdio-Dienst für die Verwaltung und den Betrieb von Minecraft-Servern. Die aktuelle Version basiert auf dem offiziellen MCP Python SDK und unterstützt folgende Backends:
MCSManager API: Instanz-Lebenszyklus, Protokolle, Dateiverwaltung, Konsolenbefehle.
RCON: Fallback für traditionelle Konsolenbefehle.
Minecraft Server Management Protocol (MSMP): JSON-RPC over WebSocket-Verwaltungsprotokoll für Minecraft Java 1.21.9+.
Dokumentation
Benutzerhandbuch: docs/USER_MANUAL.md
Entwickler-Framework-Anleitung: docs/DEVELOPER_GUIDE.md
Aktuelle Einschränkungen und Roadmap: docs/LIMITATIONS.md
Integrationstestbericht: docs/TEST_REPORT_2026-04-14.md
Release-Checkliste: docs/RELEASE_CHECKLIST.md
Sicherheitshinweise: SECURITY.md
Änderungsprotokoll: CHANGELOG.md
Ausführung
Es wird empfohlen, die Projektabhängigkeiten in der aktuellen Python-Umgebung zu installieren und dann auszuführen:
cd /home/damoc/codes/minecraft-ops-mcp
python3 -m pip install -e .
minecraft-ops-mcpFür die Entwicklung und das Debugging kann auch explizit PYTHONPATH angegeben werden:
cd /home/damoc/codes/minecraft-ops-mcp
PYTHONPATH=src python3 -m minecraft_ops_mcpEntwicklung und Tests
Unit-Tests:
cd /home/damoc/codes/minecraft-ops-mcp
PYTHONPATH=src python3 -B -m unittest discover -s testsSyntaxprüfung:
python3 -m compileall -q src scriptsProtokoll-Ebene Integrationstests finden Sie unter docs/TEST_REPORT_2026-04-14.md und docs/RELEASE_CHECKLIST.md.
Beispiel für MCP-Client-Konfiguration
{
"mcpServers": {
"minecraft-ops": {
"command": "python3",
"args": ["-m", "minecraft_ops_mcp"],
"cwd": "/home/damoc/codes/minecraft-ops-mcp",
"env": {
"PYTHONPATH": "src",
"MCSM_BASE_URL": "http://127.0.0.1:23333",
"MCSM_API_KEY": "replace-me",
"MCSM_DEFAULT_DAEMON_ID": "replace-me",
"MCSM_DEFAULT_INSTANCE_UUID": "replace-me",
"RCON_HOST": "127.0.0.1",
"RCON_PORT": "25575",
"RCON_PASSWORD": "replace-me",
"MSMP_URL": "ws://127.0.0.1:25585",
"MSMP_SECRET": "replace-me",
"MINECRAFT_OPS_RAW_COMMAND_ALLOWLIST": "list,time,help",
"MINECRAFT_OPS_RAW_COMMAND_DENYLIST": "stop,op,deop,ban,ban-ip"
}
}
}
}Sie können sich auch auf .env.example beziehen und die Variablen in Ihre MCP-Client-Konfiguration einfügen. Der Dienst selbst liest die .env-Datei nicht automatisch, um zu vermeiden, dass die Herkunft der Laufzeitkonfiguration implizit wird.
Hauptwerkzeuge
MCSManager:
server.list_daemonsserver.get_daemon_systemserver.list_instancesserver.get_instanceserver.startserver.stopserver.restartserver.killserver.send_commandserver.get_logsinstance.createinstance.update_configinstance.update_config_patchinstance.clone_from_templateinstance.deleteinstance.reinstallinstance.run_update_taskfile.listfile.readfile.download_preparefile.download_localfile.upload_preparefile.upload_localfile.upload_urlfile.writefile.write_newfile.deletefile.movefile.copyfile.mkdirfile.touchfile.compressfile.uncompress
Backend-übergreifende Hilfsprogramme:
server.save_world: Priorität MSMP, dann RCON, dann MCSManager.server.broadcast: Priorität MSMP, dann RCON, dann MCSManager.
RCON:
rcon.commandrcon.list_playersrcon.time_queryrcon.save_all
MSMP:
msmp.discovermsmp.callmsmp.players.listmsmp.players.kickmsmp.server.statusmsmp.server.savemsmp.server.stopmsmp.bans.getmsmp.bans.addmsmp.bans.removemsmp.bans.setmsmp.bans.clearmsmp.ip_bans.getmsmp.ip_bans.addmsmp.ip_bans.removemsmp.ip_bans.setmsmp.ip_bans.clearmsmp.allowlist.getmsmp.allowlist.addmsmp.allowlist.removemsmp.allowlist.setmsmp.allowlist.clearmsmp.operators.getmsmp.operators.addmsmp.operators.removemsmp.operators.setmsmp.operators.clearmsmp.gamerules.getmsmp.gamerules.updatemsmp.server_settings.getmsmp.server_settings.listmsmp.server_settings.set
Sicherheitsrichtlinien
Operationen mit hohem Risiko erfordern explizite Parameter:
{ "confirm": true }Wenn Sie nur möchten, dass der Agent zuerst erklärt, was er tun wird, übergeben Sie:
{ "dry_run": true }Zu den risikoreichen Tools gehören das Starten/Stoppen/Neustarten/Beenden von Instanzen, Rohbefehle, Dateischreiben/-löschen/-verschieben/-komprimieren/-dekomprimieren/-hochladen, Herunterladen auf den MCP-Host, Kicken, Verbannen, Änderungen an Whitelist/OP/Spielregeln/Servereinstellungen usw. Alle Tool-Aufrufe werden in einem Audit-Protokoll protokolliert, Standardspeicherort:
/tmp/minecraft-ops-mcp-audit.jsonlDies kann durch Setzen von MINECRAFT_OPS_AUDIT_LOG= auf einen leeren Wert deaktiviert werden.
Rohbefehle können zusätzlich durch eine Allowlist/Denylist auf Präfix-Ebene weiter eingeschränkt werden:
MINECRAFT_OPS_RAW_COMMAND_ALLOWLIST=list,time,help
MINECRAFT_OPS_RAW_COMMAND_DENYLIST=stop,op,deop,ban,ban-ipBackend-Empfehlungen
Instanz-Lebenszyklus, Protokolle und Dateiverwaltung: Bevorzugen Sie die MCSManager API.
Spieler, Whitelist, OP, Spielregeln, Servereinstellungen: Bevorzugen Sie MSMP.
Ältere Serverversionen oder Funktionen, die von MSMP nicht abgedeckt werden: Verwenden Sie RCON oder MCSManager-Rohbefehle als Fallback.
Setzen Sie RCON, MSMP oder MCSManager API-Keys nicht dem öffentlichen Internet aus. MSMP/RCON sollten idealerweise nur auf localhost, VPN oder Tunneln lauschen; für MCSManager werden API-Keys mit niedrigen Berechtigungen empfohlen.
MSMP-Parameterbeschreibung
msmp.call übergibt JSON-RPC params unverändert, was für neue Methoden mit großen Server-/Versionsunterschieden geeignet ist:
{
"method": "minecraft:server/status",
"read_only": true
}Für Schreibvorgänge verwenden Sie bitte confirm=true oder führen Sie zuerst dry_run=true aus.
read_only=true überspringt die Bestätigung nur für schreibgeschützte MSMP-Methoden in der Whitelist, wie z. B. rpc.discover, minecraft:players, minecraft:server/status, Listenabfragen und das Lesen von Servereinstellungen.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/damocjwj/minecraft-ops-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server