-
Notifications
You must be signed in to change notification settings - Fork 2
Description
环境信息:
操作系统: Windows (用户未指定具体版本,可能是 10 或 11)
moling_mc 版本: windows_amd64_v0.2.1_2025-04-22 14:15:29 (根据日志)
AI 客户端: Cherry Studio
Minecraft 版本: 1.21.5 (根据日志)
用户地点: 杭州 (Hangzhou)
目标:
希望通过 Cherry Studio 连接 moling_mc,使用 AI 助手执行简单的 Minecraft 命令,例如 /say hello 或 /time set 1000。
问题描述:
在按照 README 文件配置好 moling_mc 和 Cherry Studio,并让 moling_mc 负责启动和管理 Minecraft 服务器后,尝试通过 Cherry Studio 的 AI 助手发送简单命令(如 /say hello)时,AI 总是尝试使用 execute 相关的工具,并且执行失败。
AI 返回的错误信息如下(即使输入参数包含了 run 子命令):
JSON
{
"params": {
"subcommands": "run say hello"
},
"response": {
"content": [
{
"type": "text",
"text": "execute command must contain 'run' subcommand"
}
],
"isError": true
}
}
复现步骤 (根据与用户的交流过程):
按照 README 配置 config.json (设置 serverRootPath 和 serverJarFile)。
在 Cherry Studio 中配置 MCP 服务器,类型为 Stdio,命令指向 moling_mc.exe 的完整路径。
(初期尝试) 用户曾手动启动 Minecraft 服务器,导致 moling_mc 尝试启动服务器时因文件锁定 (另一个程序已锁定文件的一部分...) 而失败(根据 moling_mc 日志分析)。
用户停止了手动启动的 Minecraft 服务器。
通过 Cherry Studio 激活 MCP 连接,让 moling_mc 自行启动和管理服务器。
尝试通过 Cherry Studio 发送 /say hello 或 /time set 1000 等简单命令。
AI 助手返回上述 JSON 错误。
预期行为:
发送 /say hello 命令后,AI 助手应能成功执行,并在 Cherry Studio 中给出成功反馈。
实际行为:
AI 助手返回上述包含 execute command must contain 'run' subcommand 错误的 JSON 响应。命令未在 Minecraft 中执行。
已进行的故障排除:
确认 Minecraft 服务器本身可以正常运行(通过直接在服务器控制台输入 say 你好,服务器有响应,虽然控制台显示中文乱码)。
分析了 moling_mc 的日志文件,确认了其设计为自行管理服务器进程,并发现了之前由于手动服务器运行导致的文件锁定错误。
确认在解决文件锁定问题后,moling_mc 本身可以启动(根据其日志),但命令执行依然失败。
确认尝试纯英文命令 /say hello 结果相同。