【技术文档摘要】: 这是一个用Swift编写的适用于Godot的MCP服务器。该实现与https://github.com/ee0pdt/Godot-MCP兼容,因此您可以在使用该实现提供的插件目录中的Godot支持基础设施的同时使用此MCP服务器。
之所以需要这个独立的实现是因为在iPad上使用Xogot时,我们无法运行一个进程外的MCP服务器,所以这个版本包含了可插拔的提供者基础设施。作为额外的好处,它也适用于桌面版Godot,并生成了一个自包含的MCP服务器。
您需要完成以下三步操作:
您需要安装Swift工具链,一旦安装完毕,键入swift build,这将在.build目录下生成一个调试构建:.build/debug/godot-mcp-server-cli。
此命令充当了您的聊天客户端与Godot之间的桥梁。
godot_mcp扩展添加到您的Godot项目中为了让Godot能够处理请求,您需要将godot_mcp项目添加到您的项目中。
如果您尚未安装该插件,只需将'addons/godot_mcp'目录的内容复制到您的Godot项目中,在Godot中启用该插件,当屏幕底部出现标签时,点击“启动服务器”。
一旦完成上述步骤,您可以配置您的聊天客户端来与其通信。例如,在我的系统上,我使用Claude桌面版,我进入设置->开发者,然后选择“编辑配置”,并添加如下内容:
{
"mcpServers": {
"godot": {
"command": "/Users/miguel/bin/godot-mcp-server-cli",
"args": [
]
}
}
}
然后重新加载我的Claude。之后,您可以开始请求其操作。
您可以构建该项目,然后使用MCP检查器进行测试,如下所示:
bash$ npx @modelcontextprotocol/inspector
然后连接到检查器给出的HTTP地址,并确保您将其配置如下:
然后您可以启动它,并检查您拥有的各种方法。
为了测试此实现,我实现了GodotLocalSocketProvider,它使用WebSockets与Godot通信。
在Xogot中,这被替换为一个直接通过SwiftGodot与Godot通信的进程内版本。
除了基本的Godot-MCP之外,我还实现了pull request #9中的附加功能。
通常来说,这应该可以作为一个即插即用的替代品用于Node编写的MCP服务器。