新闻详情

新闻详情

首页 / 资讯中心 / 详情

Godot-MCP 开发者指南:如何为自己的项目扩展自定义 MCP 命令

发布时间:2026/9/25 2:57:51来源:尧图网络
Godot-MCP 开发者指南:如何为自己的项目扩展自定义 MCP 命令
Godot-MCP 开发者指南如何为自己的项目扩展自定义 MCP 命令【免费下载链接】Godot-MCPAn MCP for Godot that lets you create and edit games in the Godot game engine with tools like Claude项目地址: https://gitcode.com/gh_mirrors/god/Godot-MCPGodot-MCP 是一个让 AI 助手如 Claude直接操控 Godot 引擎的 MCPModel Context Protocol集成方案。本文面向希望扩展Godot MCP 命令的开发者手把手教你为 Godot-MCP 添加自定义命令让你的 AI 助手获得全新能力。为什么需要扩展自定义 MCP 命令Godot-MCP 内置了五大类命令节点、脚本、场景、项目和编辑器操作详见 docs/command-reference.md。但每个游戏项目都有自己的特殊需求——比如切换昼夜循环、重新生成关卡、导出指定资源。通过扩展自定义 MCP 命令你只需对 AI 说一句话就能触发这些项目专属操作。理解 Godot-MCP 的双端架构在动手之前先搞清楚命令的完整链路完整设计见 docs/architecture.mdClaudeAI 端通过 MCP 协议发起工具调用MCP ServerNode.js 端位于 server/用 FastMCP 定义工具通过 WebSocket 转发命令Godot Addon引擎端位于 addons/godot_mcp/WebSocket 服务器接收命令并执行引擎 API也就是说添加一条自定义命令需要改两个地方端作用关键文件Godot Addon真正执行命令addons/godot_mcp/command_handler.gdMCP Server向 AI 暴露工具server/src/index.ts第一步在 Godot Addon 端实现命令处理1. 创建命令处理器所有命令处理器都继承自 MCPBaseCommandProcessor它提供了_send_success()/_send_error()统一的成功/错误响应格式_get_editor_node()按路径查找场景节点_mark_scene_modified()修改场景后标记为已更改_parse_property_value()把字符串解析为 Godot 类型如Vector2、Color你可以参考现有的 node_commands.gd在process_command中用match匹配命令类型命中则执行逻辑并返回true不处理则返回false。2. 注册到你的项目打开 command_handler.gd在_initialize_command_processors()中做三件事以现有的MCPNodeCommands为模板var my_commands MCPMyCommands.new() my_commands._websocket_server _websocket_server _command_processors.append(my_commands) add_child(my_commands)MCPCommandHandler会依次遍历所有处理器直到某个处理器认领命令为止所以你的新处理器不会与内置命令冲突。第二步在 MCP Server 端注册工具AI 只能看到MCP Server 注册的工具。以 node_tools.ts 为例每个工具包含四部分export const myTools: MCPTool[] [ { name: my_command, description: 用自然语言描述这个命令做什么, parameters: z.object({ /* zod 参数校验 */ }), execute: async (args) { const godot getGodotConnection(); const result await godot.sendCommand(my_command, args); return 操作完成${JSON.stringify(result)}; }, }, ];注意sendCommand的第一个参数必须与 Addon 端match的命令类型完全一致。然后回到 server/src/index.ts把新工具数组加入注册列表[...nodeTools, ...scriptTools, ...sceneTools, ...editorTools, ...myTools].forEach(tool { server.addTool(tool); });工具类型定义见 utils/types.ts 中的MCPTool接口。遵循消息协议让命令可靠可追溯Godot 端与 Server 端通过 JSON 消息通信格式见 docs/architecture.md请求{ type: 命令名, params: {...}, commandId: cmd_123 }成功响应{ status: success, result: {...}, commandId: cmd_123 }错误响应{ status: error, message: 错误详情, commandId: cmd_123 }编写自定义命令时的最佳实践✅ 执行前先校验参数例如节点类型是否存在无效时尽早返回错误✅ 错误信息要带上上下文如Parent node not found: /root/Main方便 AI 自我修正✅ 修改场景后调用_mark_scene_modified()让编辑器正确标记未保存状态❌ 不要让异常直接崩溃编辑器所有错误都应走_send_error返回第三步重建 Server 并测试修改 Server 端后需要重新构建构建产物位于server/dist/cd server npm install npm run build然后重启 Claude Desktop在 Godot 中打开你的项目确保 project.godot 已启用插件对 AI 说帮我执行 my_command参数是 xxx观察 Godot 控制台输出的Processing command: my_command确认命令成功流转。若提示Unknown command说明 Addon 端注册有误若 AI 不识别工具则是 Server 端未注册或未重启。扩展思路清单 掌握这套流程后你可以为自己的项目添加项目专属操作一键切换昼夜循环、重置玩家存档调试辅助批量导出场景截图、打印关键节点状态资源工作流批量重命名纹理、检查未使用资源关卡工具程序化生成地形、校验碰撞层配置完整的命令参考文档见 docs/command-reference.md快速上手指南见 docs/getting-started.md。小结扩展 Godot-MCP 自定义命令的核心就三步Addon 端继承MCPBaseCommandProcessor实现执行逻辑 → 在command_handler.gd注册 → Server 端用 zod 定义工具并注册到index.ts。遵循统一的消息协议、做好参数校验你的 AI 助手就能丝滑地驱动 Godot 项目中的任何自定义能力。【免费下载链接】Godot-MCPAn MCP for Godot that lets you create and edit games in the Godot game engine with tools like Claude项目地址: https://gitcode.com/gh_mirrors/god/Godot-MCP创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

BAML Gradle 插件(com.boundaryml.baml):在构建期从 baml_src 生成类型安全 Java SDK 的完整指南 2026/9/25 3:41:16

BAML Gradle 插件(com.boundaryml.baml):在构建期从 baml_src 生成类型安全 Java SDK 的完整指南

编程语言AI Agent编译器CLI人工智能 【免费下载链接】baml The programming language for agents 项目地址: https://gitcode.com/gh_mirrors/ba/baml 点击查看 免费下载 导读 BAML 是面向 Agent 的编程语言,而 com.boundaryml.baml Gradle 插件让 Jav…

阅读更多 →
用 Secure Enclave 保护 SSH 密钥:Secretive 的存储、认证与使用全解析 2026/9/25 3:41:10

用 Secure Enclave 保护 SSH 密钥:Secretive 的存储、认证与使用全解析

桌面应用应用安全密码学 【免费下载链接】secretive Protect your SSH keys with your Macs Secure Enclave 项目地址: https://gitcode.com/gh_mirrors/se/secretive 点击查看 免费下载 Secretive 是一款面向 macOS 的 SSH 密钥管理与签名工具,核心思路…

阅读更多 →
TypeChat 入门:用 TypeScript 类型为 LLM 搭建自然语言接口 2026/9/25 3:41:10

TypeChat 入门:用 TypeScript 类型为 LLM 搭建自然语言接口

大模型AI 应用后端 【免费下载链接】TypeChat TypeChat is a library that makes it easy to build natural language interfaces using types. 项目地址: https://gitcode.com/gh_mirrors/ty/TypeChat 点击查看 免费下载 本文面向希望把大语言模型(LLM…

阅读更多 →
OpenShell 实战指南:为自主 AI Agent 构建安全、私有且受策略治理的沙箱运行时 2026/9/25 3:41:10

OpenShell 实战指南:为自主 AI Agent 构建安全、私有且受策略治理的沙箱运行时

【免费下载链接】OpenShell OpenShell is the safe, private runtime for autonomous AI agents. 项目地址: https://gitcode.com/gh_mirrors/op/OpenShell 点击查看 免费下载 OpenShell 是为自主 AI Agent 打造的安全、私有运行时:它以容器/MicroVM 为…

阅读更多 →
Apache Beam 2021 年设计提案索引:52 份 dev 邮件列表文档与它们在仓库中的落地 2026/9/25 3:41:10

Apache Beam 2021 年设计提案索引:52 份 dev 邮件列表文档与它们在仓库中的落地

大数据批处理流处理数据工程 【免费下载链接】beam Apache Beam is a unified programming model for Batch and Streaming data processing. 项目地址: https://gitcode.com/gh_mirrors/beam4/beam 点击查看 免费下载 本文基于 Apache Beam 仓库中的年度文档索引 …

阅读更多 →
Conventional Commits 1.0.0 規範完整解析:慣例式提交語法、重大變更標記與工具鏈實戰指南 2026/9/25 3:41:10

Conventional Commits 1.0.0 規範完整解析:慣例式提交語法、重大變更標記與工具鏈實戰指南

文档 【免费下载链接】conventionalcommits.org The conventional commits specification 项目地址: https://gitcode.com/gh_mirrors/co/conventionalcommits.org 点击查看 免费下载 慣例式提交(Conventional Commits)是一套作用於 Git 提交…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉