MCP在CocosCreator中的探索

MCP是什么

MCP全称是Model Context Protocol(模型上下文协议),是由Anthropic于2024年推出的开放协议,旨在为大型语言模型(LLM)与外部数据源、工具之间建立标准化的通信框架3。它类似于AI应用领域的"USB-C接口",能打通不同系统间的技术隔阂。

blender mcp 的探索

json 复制代码
{
    "mcpServers": {
        "blender": {
            "command": "C:/Users/Administrator/.local/bin/uvx",
            "args": [
                "blender-mcp"
            ]
        }
}

uvx是Python的一个包管理工具,类似npm

参考blender-mcp,他是通过uvx blender-mcp安装了这个package,这个package是给config用的,server里面会启动一个socket服务器,用于和blender插件进行命令交互。

使用的时候需要一个client(vscode等)配置下mcp,client启动配置mcp server,然后这个mcp server收到mcp的调用后,通过socket将命令分发到Creator插件。

那么针对Creator架构就变成清晰了。

方案1

一种是我将mcp-sever携带在插件里面,一起发布

  • packages
    • cocos-mcp
      • package.json
      • mcp-server.js -- mpc server config需要只想这里

那么client里面就需要配置

json 复制代码
{
    "mcpServers": {
        "blender": {
            "command": "node",
            "args": [
                "cocos-project/packages/cocos-mcp/mcp-server.js"
            ]
        }
}

这样会有一个问题,用户在切换项目的时候,需要频繁的变更mcp server config,显然这种方案不太合理。

唯一的好处就是mcp-server随插件一块发布,用户不购买插件是无法体验到mcp,但是其实mcp-server的运行环境和Creator是隔离的,只能通过网络进行交互。

方案2

也只能参考blend-mcp的模式,发布一个独立的cocos-mcp,让用户自己通过npm安装好

json 复制代码
{
    "mcpServers": {
        "blender": {
            "command": "npx",
            "args": [
                "cocos-mcp"
            ]
        }
}

这样用户只需要配置一次就行了,但是mcp的list tools就需要通过网络去插件里面查询了,

这样好像也没有版本的问题,因为这个mcp-server其实就是个壳子,具体的tools实现是在插件里面,还是能够满足插件的商业化需求。

而且这种方案,因为cocos-mcp是发布在npm上的,所以所有人都能免费安装,但是具体的mcp能力是需要付费的,所以这个就很有意思啦,很好玩,我的cc-plugin还可以支持对接cocos-mcp,棒极了,又是一波宣传。

blender-mcp是插件启动了一个server,我这个要相反,是cocos-mcp启动了一个server,然后插件去链接,这样方便更多的插件来提供tools能力

插件的tools能力一定要写在主进程,或者单开一个渲染进程的窗口,方便调试。

总结

以上就是个人对cocos mcp的一个探索,用嘴做游戏"的时代,是MCP最直观的注脚。它让开发者脱离底层代码束缚,通过自然语言调用工具链,聚焦创意表达67。尽管工具生态、推理精度仍是瓶颈,但自动化生成+边缘部署已证明其提效潜力------未来不属于会写代码的人,而属于会提需求的人。

相关推荐
秃顶老男孩.14 小时前
web中的循环遍历
开发语言·前端·javascript
龙在天14 小时前
vue 请求接口快慢 覆盖 解决方案
前端
跟橙姐学代码14 小时前
Python 类的正确打开方式:从新手到进阶的第一步
前端·python·ipython
Jagger_14 小时前
SonarQube:提升代码质量的前后端解决方案
前端·后端·ai编程
Becauseofyou13714 小时前
如果你刚入门Three.js,这几个开源项目值得你去学习
前端·three.js
菜市口的跳脚长颌14 小时前
前端大文件上传全攻略(秒传、分片上传、断点续传、并发控制、进度展示)
前端
不一样的少年_14 小时前
同事以为要重写,我8行代码让 Vue 2 公共组件跑进 Vue 3
前端·javascript·vue.js
云枫晖15 小时前
JS核心知识-数据转换
前端·javascript
xuyanzhuqing15 小时前
代码共享方案-多仓库合并单仓库
前端
RaidenLiu15 小时前
Riverpod 3:重建控制的实践与性能优化指南
前端·flutter