メインコンテンツまでスキップ

minecraft-bedrock-command-mcp

Minecraft で MCP で検索すると Mod Coder Pack がでてくることが多いです。

また Minecraft の MPC サーバーは Java 版に対してのものが多いですが、こちらは Bedrock 版です。

Minecraft Bedrock Server の準備

ダウンロード

https://www.minecraft.net/ja-jp/download/server/bedrock

alt text

セットアップ

起動

  1. Open a command prompt or PowerShell from the Start Menu.
  2. Change directories to the folder you unzipped the package into, e.g., cd C:\MinecraftServer.
  3. Execute the server by typing bedrock_server.
D:\Minecraft\bedrock-server-1.21.95.1>dir
Volume in drive D is New Volume
Volume Serial Number is F81D-4E5A

Directory of D:\Minecraft\bedrock-server-1.21.95.1

2025/07/17 12:57 <DIR> .
2025/07/17 12:57 <DIR> ..
2025/07/17 12:56 4 allowlist.json
2025/07/17 12:56 98,008,152 bedrock_server.exe
2025/07/17 12:56 28,798 bedrock_server_how_to.html
2025/07/17 12:57 <DIR> behavior_packs
2025/07/17 12:56 <DIR> config
2025/07/17 12:57 <DIR> definitions
2025/07/17 12:56 4 permissions.json
2025/07/17 12:56 9,576 profanity_filter.wlist
2025/07/17 12:56 405 release-notes.txt
2025/07/17 12:57 <DIR> resource_packs
2025/07/17 12:56 10,784 server.properties
7 File(s) 98,057,723 bytes
6 Dir(s) 712,426,913,792 bytes free
D:\Minecraft\bedrock-server-1.21.95.1>bedrock_server
NO LOG FILE! - setting up server logging...
[2025-07-17 13:04:18:213 INFO] Starting Server
[2025-07-17 13:04:18:213 INFO] Version: 1.21.95.1
[2025-07-17 13:04:18:214 INFO] Session ID: 12518e2c-f840-4878-be10-9e4b3c85b336
[2025-07-17 13:04:18:214 INFO] Build ID: 35175437
[2025-07-17 13:04:18:214 INFO] Branch: r/21_u9
[2025-07-17 13:04:18:214 INFO] Commit ID: e3604a560ea37348c68cace9eb29ab52d42583b8
[2025-07-17 13:04:18:214 INFO] Configuration: Publish
[2025-07-17 13:04:18:215 INFO] Level Name: Bedrock level
[2025-07-17 13:04:18:217 INFO] No CDN config file found for dedicated server
[2025-07-17 13:04:18:218 INFO] Game mode: 0 Survival
[2025-07-17 13:04:18:218 INFO] Difficulty: 1 EASY
[2025-07-17 13:04:18:218 INFO] Content logging to console is enabled.
[2025-07-17 13:04:18:619 INFO] Opening level 'worlds/Bedrock level/db'
[2025-07-17 13:04:18:647 INFO] [SERVER] Pack Stack - None
[2025-07-17 13:04:19:881 INFO] IPv4 supported, port: 19132: Used for gameplay and LAN discovery
[2025-07-17 13:04:19:881 INFO] IPv6 supported, port: 19133: Used for gameplay
[2025-07-17 13:04:19:940 INFO] Server started.
[2025-07-17 13:04:19:941 INFO] ================ TELEMETRY MESSAGE ===================
[2025-07-17 13:04:19:941 INFO] Server Telemetry is currently not enabled.
[2025-07-17 13:04:19:941 INFO] Enabling this telemetry helps us improve the game.
[2025-07-17 13:04:19:941 INFO]
[2025-07-17 13:04:19:941 INFO] To enable this feature, add the line 'emit-server-telemetry=true'
[2025-07-17 13:04:19:941 INFO] to the server.properties file in the handheld/src-server directory
[2025-07-17 13:04:19:942 INFO] ======================================================

ファイヤーウォール

Windows Defender のファイヤーウォールのダイアログが出たら許可します。

ループバックの設定

ローカルホスト同士で通信するのでループバックの設定をします。

Powershell を管理者モードで起動してコマンドを入れます。

alt text

CheckNetIsolation.exe LoopbackExempt -a -p=S-1-15-2-1958404141-86561845-1752920682-3514627264-368642714-62675701-733520436

動作の確認

ローカルのマインクラフトを起動すると 「LAN ワールド」として表示されます。

alt text

プレイしてみると、サーバーを起動したコマンドプロンプトの方にもプレイヤーが接続したログが表示されるのが分かります。

alt text

サーバーを停止する

以下のように stop コマンドを送信し、正常に終了させるか、Ctrl + C などで強制終了させましょう。

alt text

サーバーは停止状態である必要がある

MCP サーバー側で自動でMinecraftサーバーを起動するため、必ず停止状態にしておいてください。

MCP サーバーの準備

uv の導入

https://docs.self-taught-code-tokushima.com/docs/others/uv

上記のページを参考に uv を導入してください。

WinGet を使う方法が手早くてオススメです。

サーバーファイルの用意

uv init minecraft-bedrock-command-mcp
cd minecraft-bedrock-command-mcp
uv add mcp

実行ファイルの追加

以下のファイルをコピーし、作成したフォルダに同名 (bedrock_mcp_server.py)でファイルを作成します。

https://github.com/hanweg/minecraft-bedrock-command-mcp/blob/main/bedrock_mcp_server.py

AI アプリケーションとの連携設定

ここでは配置を以下のようにした前提での設定を記載します。

  • MCP サーバーの場所
    • D:\Minecraft\minecraft-bedrock-command-mcp
  • Bedrock サーバーの場所
    • D:\Minecraft\bedrock-server-1.21.95

Claude Desktop の場合

{
"mcpServers": {
"minecraft-bedrock": {
"command": "uv",
"args": [
"--directory",
"D:\\Minecraft\\minecraft-bedrock-command-mcp",
"run",
"D:\\Minecraft\\minecraft-bedrock-command-mcp\\bedrock_mcp_server.py",
"--server-path",
"D:\\Minecraft\\bedrock-server-1.21.95",
"--auto-start"
]
}
}
}

VS Code の場合

.vscode/mcp.json
{
"servers": {
"minecraft-bedrock": {
"command": "uv",
"args": [
"--directory",
"D:\\Minecraft\\minecraft-bedrock-command-mcp",
"run",
"D:\\Minecraft\\minecraft-bedrock-command-mcp\\bedrock_mcp_server.py",
"--server-path",
"D:\\Minecraft\\bedrock-server-1.21.95",
"--auto-start"
]
}
},
"inputs": []
}

MCP サーバーの起動

VS Code

.vscode/mcp.json を開くと、以下のように設定に起動オプション等が出ていることが分かります。

alt text

Start をクリックすると、MCP サーバーが起動します。
また、More を押すことで、さらにオプションが出てくるので Show Output を選択しましょう。

alt text

すると、以下のように VS Code の OUTPUT ウィンドウに MCP サーバーのログが表示されます。
もし、正常に Running 状態にならなかった場合などは、ここにログが出ているはずなので調査の参考にしましょう。

alt text

ここまで来ると、以下の Copilot Chat のツールマークをクリックすると

alt text

ツールの一覧に minecraft-bedrock の MCP Server が出てきます。

alt text

これで準備は完了です。

すでにマインクラフトサーバーは起動している

MCP サーバーの設定をしている時に気づいた方もいるかもしれませんが、この MCP サーバーはマインクラフトサーバーを内部で起動します。

よって、この時点ですでにマインクラフトサーバーは起動しています。

MCP 経由でマインクラフトを操作する

自分でマインクラフトサーバーにログインし、試しに以下の要求をしてみます。

alt text

自分だけがログインしているのでプレイヤーは一人です。

基本的なコマンドですが、時間帯も変えてみます。

alt text

成功しました。

では、続いてアイテムを付与してみましょう。

alt text

確かに受け取れました。

alt text

このように命令に応じて、MCP サーバーが対応しているコマンドを呼び出し処理していってくれます。

建築させてみる

以下のページにあるような既存のマイクラの建物を参考画像に読み込ませて、作らせてみました。 https://ar.pinterest.com/pin/minecrafthow-to-build-a-japanese-house-youtube--750975306625422709/

結果はこのような感じです。

alt text

今回は、まずは「添付画像に従って家を作ってください。場所は xxx です」のように指示したのですが、ただの箱を作ってきました。

なので、「屋根や窓、玄関などを何度も観察し、できるだけ近づけてください」と命令を追加しました。

この辺りはモデルの性能や、プロンプトの工夫も必要なので、あくまでシンプルな例として見てください。

皆さんの工夫でいくらでもよくなると思います。

停止する

必ずサーバーを停止させましょう

プレイしているユーザーがセーブして終了しても、マインクラフトサーバーが終了する訳ではありません。
また、マインクラフトサーバーは MCP サーバー経由で起動しているため、直接終了コマンドを送信できません。

以下の手順で終了させましょう。

終了を依頼するだけです。一応 stop コマンドが送信されているか確認しておくと確実でしょう。

alt text

マインクラフトを起動して、LANワールドが表示されないことを確認してもいいですね。