把 Godot 编辑器接入 AI:Funplay MCP for Godot 介绍
Funplay 的引擎 MCP 系列从 Unity 起步扩展到了 Cocos这次轮到 Godot。三者共用同一套设计取向默认工具面收敛、一键配置 AI 客户端、以一个高灵活度执行工具为主线。但每个引擎的编辑器环境不同落地细节也就不同——Godot 这一版有几个值得单独说的设计。Funplay MCP for Godot 是一个 MIT 协议的 Godot 编辑器 MCP server让 Claude Code、Cursor、Windsurf、Codex、VS Code Copilot 等 AI 助手直接在你正在运行的 Godot 项目内部工作。它工作在标准的 Godot4.2项目也可用于Godot .NET项目。一个 Godot 编辑器插件安装就是普通的 Godot addon把addons/funplay_mcp放进项目的res://addons/目录也可以直接下载 Release 里的 zip 解压或克隆仓库当 Godot 项目打开。然后在Project → Project Settings → Plugins里启用Funplay MCP for Godot右侧会出现Funplay MCPdock。MCP server 默认在http://127.0.0.1:8765/启动端口被占用时自动挑另一个空闲本地端口并把它存进user://funplay_mcp_settings.cfg。dock 里能看到已装版本号并提供Check Updates动作。HTTP JSON-RPCAI 客户端Claude Code / Cursor / WindsurfGodot 编辑器 addon嵌入式 MCP Serverexecute_code主执行工具120 个注册工具Resources / Prompts跟 Cocos 版一样这是一个纯编辑器addon——不会给导出的游戏引入运行时组件。execute_code 与 120 个工具主执行工具是execute_codeAI 客户端提交一段代码做编辑器 / 运行时编排附带可选的对象式上下文辅助、日志、变更追踪元数据。当许多细粒度小工具会让工具列表变得嘈杂时一个高灵活度执行工具更合适。但execute_code之外Funplay MCP for Godot 还注册了120 个工具函数覆盖范围相当广分类代表工具场景 / PackedSceneget_scene_tree、open_scene、instantiate_scene、create_packed_scene_from_node节点create_node、reparent_node、set_node_property、set_transform_2d/3d、set_node_script节点反射list_node_properties、list_node_signals、list_node_methods脚本create_script、patch_script、validate_script、get_script_errors工程地图map_project、find_usages项目设置 / 输入 / 自动加载set_project_setting、add_input_action、set_autoload运行时桥 / 撤销install_runtime_bridge、editor_undo、editor_redoPlay / 输入模拟enter_play_mode、simulate_action、simulate_key_event、set_time_scaleUI / Controlcreate_control、create_button、set_control_layout、connect_node_signal动画 / 相机 / 材质create_animation_clip、set_camera_3d、create_material跟前两版一致工具暴露分core/full两档core暴露一个紧凑的高信号工具集减少工具列表噪声full暴露完整自动化面。dock 里的 Tool Exposure 面板还能在当前档位内单独关掉某些工具。工具的 JSON 输出会镜像进 MCP 的structuredContent节点 / 资源摘要里带上会话级instance_id——后续调用直接用 ID 引用不用反复按名字解析。语言感知GDScript 与 .NET 项目Godot 这一版有一个 Unity / Cocos 版没有的设计脚本工具是语言感知的。addon 本身用 GDScript 实现但它导出的脚本工作流会根据检测到的项目语言切换GDScript 项目.NET 项目混合项目检测项目语言项目类型暴露 GDScript 工作流暴露 C# / .NET 工作流两者都暴露GDScript 项目看到 GDScript 工作流.NET 项目看到 C# / .NET 工作流混合项目两者都暴露。.NET项目还会额外暴露get_dotnet_project_info之类的资源。脚本相关工具的有效集合由检测到的项目语言和 dock 的 Tool Exposure 设置共同过滤。Runtime Bridge让 AI 验证运行时编辑器自动化容易运行时验证难——游戏跑起来之后AI 怎么知道它的改动真的生效了Funplay MCP for Godot 的答案是Runtime Bridge一个可选安装的轻量 autoload在 play 模式下写出心跳状态供 AI 驱动的运行时验证读取。配合enter_play_mode、simulate_action/simulate_key_event/simulate_mouse_button等输入模拟工具以及capture_editor_view截图AI 可以在同一个 MCP 会话里完成进入 play 模式 → 模拟输入 → 检查日志 → 截图验证的闭环。诊断侧还有一组断言工具assert_node_exists、assert_node_property、assert_signal_connected让 AI 把运行时验证写成显式断言而不是靠截图肉眼判断。Project Skills 与一键配置连接 AI 客户端用 dock 里的One-Click MCP Configuration选目标客户端点Configureaddon 把推荐的 MCP 配置项写进去。支持 Codex、Claude Code、Cursor、VS Code。更进一步的是Configure Skills——除了写配置还会在res://.funplay/skills/下生成项目本地的 skill 文件以及一个给读仓库指令的 AI 客户端用的AGENTS.md桥接文件。这些 skill 文件捕获当前端点、工具档位、项目上下文和推荐的 Funplay 工作流让 AI 客户端开箱就知道该怎么用这个 server。手动配置的话HTTP 形式{mcpServers:{funplay:{type:http,url:http://127.0.0.1:8765/}}}仓库还在stdio-wrapper/下提供了 npm 形式的 stdio 包装器给那些不能直连 HTTP MCP 的客户端或注册表使用并由server.json描述以便发布到 MCP Registry。与 Unity / Cocos 版本的关系Funplay MCP 系列三个引擎版本共用设计原则差异来自引擎编辑器环境维度Funplay MCP for GodotFunplay MCP for UnityFunplay MCP for Cocos编辑器集成Godot 编辑器 addonUnity Editor 包Cocos Creator 扩展主执行工具execute_codeGDScriptexecute_codeC#execute_javascriptJS工具总数1207989默认 / 完整档位core/fullcore/fullcore/full/custom语言感知GDScript / .NET / 混合C#scene / editor 上下文运行时验证Runtime Bridge autoload 断言PlayMode 工具 截图运行时控制 截图三个版本的心智模型一致默认core收敛工具面execute_code/execute_javascript作为主线输入模拟 截图做视觉校验需要时切full。写在最后Godot 这一版除了沿用系列的设计取向还针对 Godot 生态做了两件事脚本工具按 GDScript / .NET 语言感知切换以及用 Runtime Bridge 把运行时验证做成一等能力。对同时维护 GDScript 与 .NET 项目的团队前者省去了大量工具不匹配语言的摩擦。项目开源在 FunplayAI/funplay-godot-mcpMIT 协议支持 Godot 4.2含 .NET 项目。如果它对你的 Godot 工作流有帮助欢迎在 GitHub 上点个 Star。