使用说明
Godot MCP服务器(GMS)
Godot游戏引擎的基本模型上下文协议(MCP)服务器,使AI助手能够与Godot项目交互和操纵Godot项目。 通常,此服务器使用 Godot命令行 使用项目,因此不需要Godot插件。
目录
概述
GMS在AI助手(如Claude)和Godot游戏引擎之间提供了一座桥梁。它允许AI模型:
- 创建和管理Godot项目
- 启动Godot编辑器
- 运行Godot项目
- 操纵场景和节点
- 读取和写入文件
此服务器实现 模型上下文协议 (MCP),它规范了人工智能助手与外部工具和服务的交互方式。
设置
先决条件
安装
-
克隆此存储库:
git clone https://github.com/matula/godot-mcp-server.git cd godot-mcp-server -
安装依赖项:
npm install -
构建项目:
npm run build
配置
服务器将自动尝试定位您的Godot命令行可执行文件。如果找不到,您可以设置 GODOT_PATH 将环境变量设置为Godot可执行文件的路径:
export GODOT_PATH=/path/to/your/godot
在不同的平台上,服务器在以下默认位置查找Godot:
-
macOS:
/Applications/Godot.app/Contents/MacOS/Godot/Applications/Godot_4.app/Contents/MacOS/Godot/Applications/Godot_4.2.app/Contents/MacOS/Godot
-
Linux:
/usr/bin/godot/usr/local/bin/godot
-
视窗:
C:\Program Files\Godot\Godot.exeC:\Program Files (x86)\Godot\Godot.exe
用法
启动服务器
npm start
或者在开发模式下:
npm run dev
与MCP检查器一起使用
您可以使用MCP检查器测试服务器:
npm run inspector
与Claude Desktop一起使用
您可以通过将GMS添加到Claude Desktop配置中来将其与Claude Desktop集成:
-
找到Claude Desktop配置文件:
- 通常在macOS上:
/Users/{username}/Library/Application Support/Claude/claude_desktop_config.json
- 通常在macOS上:
-
将以下配置添加到文件中:
{
"mcpServers": {
"godot-mcp": {
"command": "node",
"args": ["{full path to mcp}/godot-mcp-server/build/index.js"],
"env": {
"MCP_TRANSPORT": "stdio"
}
}
}
}
笔记:
- 如果配置文件已包含
mcpServers对象,添加godot-mcp进入现有对象。 - 替换
{full path to mcp}带有克隆存储库的实际路径。 - 您可能需要使用到的完整路径
node如果它不在您的系统PATH中,则可执行。
可用工具
GMS提供以下工具:
Godot工具
- godot_版本:获取已安装的Godot版本
- launch_editor:启动项目的Godot编辑器
- list_项目:在目录中列出Godot项目
- 创建项目:创建新的Godot项目(3D、2D或空)
- run_工程:运行Godot项目
- 停工工程:停止正在运行的项目
- get_debug_output:从正在运行的项目中获取调试输出
- get_scene_tree:从项目中获取场景树
- create_scene:在项目中创建新场景
- add_node:向场景中添加节点
文件工具
- write_file:将内容写入文件
- read_file:从文件中读取内容
建筑
GMS采用模块化架构构建:
-
MCP服务器核心:使用
@modelcontextprotocol/sdk创建一个与AI助手通信的服务器。 -
工具注册工具已在MCP服务器上注册,以便向AI助手展示其功能。
-
Godot集成:服务器通过三种主要方式与Godot交互:
- 命令:通过命令行界面直接执行Godot命令
- 运营:通过GDScript执行的复杂操作
- 公用事业:用于查找Godot、运行命令等的帮助函数。
-
文件操作:读取和写入文件的基本文件I/O操作。
运作原理
- 服务器启动并向MCP框架注册所有可用工具。
- 它连接到标准输入/输出,以便与AI助手进行通信。
- 当调用工具时:
- 对于简单的命令,它使用适当的命令行参数执行Godot
- 对于复杂的操作,它会创建一个临时GDScript文件,并使用Godot执行它
- 结果以结构化格式返回给AI助手
发展
项目结构
src/index.ts:主要入口点src/godot/commands.ts:基本Godot命令src/godot/operations.ts:使用GDScript的复杂Godot操作src/tools/godot-tools.ts:Godot的MCP工具定义src/tools/file-tools.ts:文件操作的MCP工具定义src/utils/godot-utils.ts:Godot集成的实用函数
建筑
npm run build
使用Claude Desktop-Mac的示例
在工具中,您应该看到活动的MCP:
以下是一个示例提示:
如果你感兴趣, 这是完整的代码 这是用那个提示创建的。我试着运行它 虽然有错误,但看起来是可以修复的。
许可证
ISC许可证
