【Code With SOLO】从付费到开源:我用 SOLO 26分钟逆向复现了 Godot MCP Pro Server
一、摘要
Godot MCP Pro 是一个将 AI 助手(Claude、Cursor 等)通过 MCP 协议直连 Godot 4 编辑器的强大工具,提供 169 个工具覆盖场景管理、节点操作、脚本编辑、输入模拟、运行时分析等全流程。但它的 Server 端代码需要付费 $15 才能获取。我用 TRAE SOLO 的 Code 模式,仅凭其开源的 Godot 插件端代码,26 分钟逆向复现了完整的 Node.js MCP Server,并以 MIT 协议开源,让所有 Godot 开发者免费使用。
项目地址:https://github.com/wuke3/Godot-MCP-Pro-Server
二、背景
2.1 My
我是一名初中技术佬,开学的时候恶搞同学,打算使用 Godot 开发一款游戏叫做“朱哥快跑”(类似于熊大快跑),但是我又没有学过 Godot游戏开发,于是我就一直在寻找能让 AI 更深度地参与 Godot 项目开发的工具,于是我就找到了我们本篇的主角“Godot-MCP-Pro”!
2.2 发现 Godot MCP Pro
偶然发现了日本开发者 youichi-uda 开发的 godot-mcp-pro,这个工具通过 WebSocket 将 AI 助手直接连接到 Godot 编辑器,提供 169 个工具、23 个分类,功能非常强大:
- 实时双向 WebSocket 通信,无文件轮询
- 完整的撤销/重做支持(通过 Godot UndoRedo 系统)
- 智能类型解析(自动将字符串转为 Vector2、Color 等 Godot 类型)
- 输入模拟与录制回放
- 运行时分析(15 个工具)
- 3D 场景构建、物理设置、粒子效果、导航网格等
架构如下:
AI Assistant ←—stdio/MCP—→ Node.js Server ←—WebSocket:6505—→ Godot Editor Plugin
2.3 问题来了
这个插件的 Godot 端代码(addons/godot_mcp/)是开源的,但 Server 端(Node.js)是付费的,售价 $15。作者在 README 中明确写道:
server/目录仅在付费完整包中提供。
更离谱的是,我还发现了一个盗版倒卖网站 godot-mcp.abyo.net,直接镜像了原作者的全部内容,甚至把原作者 $15 的工具加价到 $25 倒卖,比原作者还多卖 $10!这种行为实在令人不齿。
既然 Godot 端的代码是开源的,协议通信格式都写在 GDScript 里,那 Server 端完全可以根据协议规范独立实现。
三、实践过程
3.1 任务拆解
逆向工程的核心思路:Godot 插件端是开源的,它定义了所有工具的名称、参数和返回格式。Server 端本质上就是一个 MCP 协议的 stdio 服务 + WebSocket 客户端,转发 AI 的请求到 Godot 编辑器。
我将任务拆解为以下步骤:
| 步骤 | 内容 | 说明 |
|---|---|---|
| 1 | 分析 Godot 插件源码 | 提取所有工具定义、参数格式、返回值结构 |
| 2 | 实现 MCP 协议层 | JSON-RPC 2.0 处理器 + MCP 类型定义 |
| 3 | 实现 WebSocket 客户端 | 连接 Godot 编辑器插件 |
| 4 | 实现 169 个工具定义 | 根据 Godot 端代码逐一对应 |
| 5 | 实现 CLI 模式 | 供不支持 MCP 的客户端使用 |
| 6 | 支持三种运行模式 | Full / Lite / Minimal |
3.2 使用 SOLO 的过程
我使用的是 TRAE SOLO 的 Code 模式,整个过程非常流畅:
第一步:给 SOLO 明确的 Spec
我直接将原始仓库的 URL 作为 Spec 传给 SOLO,并说明了目标:
“这个插件的作者很狡猾,居然要 5 美元才肯给我们 server 的文件,但是因为她太好用所以我们自己来根据代码复现 server 文件!!!”
第二步:SOLO 自动分析并实现
SOLO 自动完成了以下工作:
- 克隆并分析了
godot-mcp-pro的 Godot 端源码 - 提取了所有 169 个工具的签名和协议格式
- 从零实现了完整的 TypeScript MCP Server
总耗时:25 分 55 秒
3.3 最终项目结构
SOLO 生成的项目结构清晰、模块化:
server/
├── src/
│ ├── index.ts # MCP Server 入口(stdio 模式)
│ ├── cli.ts # CLI 模式入口
│ ├── websocket-client.ts # WebSocket 客户端
│ ├── protocol/
│ │ ├── jsonrpc.ts # JSON-RPC 2.0 处理器
│ │ └── mcp-types.ts # 协议类型定义
│ └── tools/ # 169 个工具定义
│ ├── project.ts # 项目工具
│ ├── scene.ts # 场景工具
│ ├── node.ts # 节点工具
│ ├── script.ts # 脚本工具
│ ├── editor.ts # 编辑器工具
│ ├── input.ts # 输入模拟工具
│ ├── runtime.ts # 运行时分析工具
│ └── ... # 更多工具分类
├── package.json
└── tsconfig.json
3.4 踩过的坑
坑 1:路径配置问题
初始版本发布后,有用户反馈配置 .mcp.json 时直接使用了 README 中的示例路径 /path/to/server/build/index.js,导致 Cannot find module 错误。SOLO 帮我快速排查并给出了解决方案——需要替换为实际的绝对路径。
坑 2:法律风险规避
为了确保项目的合法性,我让 SOLO 修改了 README,添加了清晰的法律免责声明,强调这是独立实现的干净版本(clean-room implementation),避免任何与原始项目相关的名称或声明。
四、成果展示
4.1 核心功能
- MCP 协议支持:完整的 JSON-RPC 2.0 实现
- WebSocket 通信:连接 Godot 编辑器插件(端口 6505-6514)
- 三种运行模式:
- Full(全部 169 个工具)
- Lite(精简版 80 个工具)
- Minimal(最小版 35 个工具)
- CLI 模式:供不支持 MCP 的客户端直接使用
4.2 使用方式
# 安装
cd server
npm install
npm run build
# MCP 模式(供 Claude Code 等使用)
node build/index.js --lite
# CLI 模式
node build/cli.js project info
node build/cli.js node add --type CharacterBody3D --name Player
4.3 MCP 配置
在 .mcp.json 中添加:
{
"mcpServers": {
"godot-mcp": {
"command": "node",
"args": ["/你的实际路径/server/build/index.js", "--lite"]
}
}
}
4.4 项目链接
- GitHub 仓库:https://github.com/wuke3/Godot-MCP-Pro-Server
- 原版 godot-mcp-pro:https://github.com/youichi-uda/godot-mcp-pro
- 协议:MIT License(完全免费开源)
五、效果与总结
5.1 效率对比
| 维度 | 原始方案 | 本次实践 |
|---|---|---|
| 获取 Server 端 | 付费 $15 | 免费开源 |
| 开发耗时 | — | 26 分钟(SOLO Code 模式) |
| 功能覆盖 | 169 个工具 | 169 个工具 |
| 协议兼容 | 原版 | 完全兼容 |
| 代码质量 | — | TypeScript 严格类型,模块化设计 |
5.2 SOLO 在整个流程中做了什么
- 自动分析:克隆并阅读了原始仓库的 Godot 端 GDScript 源码
- 协议提取:从插件代码中提取了所有工具的名称、参数、返回值格式
- 独立实现:从零编写了完整的 TypeScript MCP Server,不涉及任何原始 Server 端代码
- 调试修复:快速定位并修复了路径配置问题和法律风险
- 文档生成:自动生成了 README、使用说明和法律免责声明
5.3 思考与总结
这次实践让我深刻体会到 SOLO Code 模式在逆向工程场景下的强大能力:
- 协议逆向不需要看原始实现:只要有一端的代码(Godot 插件端),就能推断出通信协议,独立实现另一端
- Clean-room implementation 是合法的:通过只分析公开的接口定义而非付费的 Server 源码,实现了合法的独立复现
- AI 让逆向工程的门槛大幅降低:26 分钟完成 169 个工具的协议复现,这在纯人工时代是不可想象的
最后,关于那个盗版倒卖网站——支持正版,但更要支持开源。原作者 $15 的定价是否合理见仁见智,但倒卖者加价到 $25 就纯粹是恶心人了。希望这个开源项目能让更多 Godot 开发者免费享受到 AI 辅助开发的便利。
这个游戏被搁置了,等什么时候再做!
如果这个项目对你有帮助,欢迎去 GitHub 点个 Star!
https://github.com/wuke3/Godot-MCP-Pro-Server





