Minecraft Ops MCP
Minecraft Ops MCP
Minecraftサーバーの管理および運用を目的としたMCP stdioサービスです。現在のバージョンは公式のMCP Python SDKに基づいて実装されており、以下のバックエンドに対応しています:
MCSManager API:インスタンスのライフサイクル、ログ、ファイル管理、コンソールコマンド。
RCON:従来のコンソールコマンドによるフォールバック。
Minecraft Server Management Protocol(MSMP):Minecraft Java 1.21.9+ 用の JSON-RPC over WebSocket 管理プロトコル。
ドキュメント
ユーザーマニュアル:docs/USER_MANUAL.md
開発者フレームワークガイド:docs/DEVELOPER_GUIDE.md
現在の制限事項と今後のロードマップ:docs/LIMITATIONS.md
統合テストレポート:docs/TEST_REPORT_2026-04-14.md
リリースチェックリスト:docs/RELEASE_CHECKLIST.md
セキュリティに関する説明:SECURITY.md
変更履歴:CHANGELOG.md
実行方法
現在のPython環境にプロジェクトの依存関係をインストールしてから実行することを推奨します:
cd /home/damoc/codes/minecraft-ops-mcp
python3 -m pip install -e .
minecraft-ops-mcp開発やデバッグ時には、PYTHONPATH を明示的に指定することも可能です:
cd /home/damoc/codes/minecraft-ops-mcp
PYTHONPATH=src python3 -m minecraft_ops_mcp開発とテスト
ユニットテスト:
cd /home/damoc/codes/minecraft-ops-mcp
PYTHONPATH=src python3 -B -m unittest discover -s tests構文チェック:
python3 -m compileall -q src scriptsプロトコルレベルの統合プローブについては、docs/TEST_REPORT_2026-04-14.md および docs/RELEASE_CHECKLIST.md を参照してください。
MCPクライアント設定例
{
"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"
}
}
}
}.env.example を参考に、変数をMCPクライアントの設定に組み込むこともできます。このサービス自体は .env ファイルを自動的に読み込まないため、実行時の設定ソースが暗黙的になることを防いでいます。
主要ツール
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
バックエンド横断型ユーティリティ:
server.save_world:MSMPを優先し、次にRCON、最後にMCSManagerを使用。server.broadcast:MSMPを優先し、次にRCON、最後に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
セキュリティポリシー
高リスクな操作には明示的なパラメータが必要です:
{ "confirm": true }エージェントにまず何を行うかを説明させたい場合は、以下を渡してください:
{ "dry_run": true }高リスクなツールには、インスタンスの起動/停止/再起動/kill、生のコマンド実行、ファイルの書き込み/削除/移動/圧縮/解凍/アップロード、MCPホストへのダウンロード、キック、BAN、ホワイトリスト/OP/ゲームルール/サーバー設定の変更などが含まれます。すべてのツール呼び出しは監査ログに記録されます。デフォルトの場所:
/tmp/minecraft-ops-mcp-audit.jsonlMINECRAFT_OPS_AUDIT_LOG= を空に設定することで無効化できます。
生のコマンドは、プレフィックスベースの許可リスト/拒否リストを使用してさらに制限できます:
MINECRAFT_OPS_RAW_COMMAND_ALLOWLIST=list,time,help
MINECRAFT_OPS_RAW_COMMAND_DENYLIST=stop,op,deop,ban,ban-ipバックエンドの推奨事項
インスタンスのライフサイクル、ログ、ファイル管理:MCSManager APIを優先してください。
プレイヤー、ホワイトリスト、OP、ゲームルール、サーバー設定:MSMPを優先してください。
古いバージョンのサーバーやMSMPがカバーしていない機能:RCONまたはMCSManagerのrawコマンドをフォールバックとして使用してください。
RCON、MSMP、MCSManagerのAPIキーをパブリックインターネットに公開しないでください。MSMP/RCONはlocalhost、VPN、またはトンネル経由でのみリッスンすることを推奨します。MCSManagerには権限を制限したAPIキーを使用してください。
MSMPパラメータの説明
msmp.call はJSON-RPCの params をそのまま渡すため、サーバーやバージョンによって差異がある新しいメソッドに適しています:
{
"method": "minecraft:server/status",
"read_only": true
}書き込み操作を行う際は confirm=true を使用するか、事前に dry_run=true を実行してください。
read_only=true は、ホワイトリストに含まれる読み取り専用のMSMPメソッド(例:rpc.discover、minecraft:players、minecraft:server/status、リストクエリ、サーバー設定の読み取りなど)に対してのみ確認をスキップします。
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