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。尽管工具生态、推理精度仍是瓶颈,但自动化生成+边缘部署已证明其提效潜力------未来不属于会写代码的人,而属于会提需求的人。

相关推荐
小陈工2 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
xiaotao1316 小时前
第九章:Vite API 参考手册
前端·vite·前端打包
午安~婉7 小时前
Electron桌面应用聊天(续)
前端·javascript·electron
彧翎Pro7 小时前
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
前端·jvm
小码哥_常7 小时前
解锁系统设置新姿势:Activity嵌入全解析
前端
之歆8 小时前
前端存储方案对比:Cookie-Session-LocalStorage-IndexedDB
前端
哟哟耶耶8 小时前
vue3-单文件组件css功能(:deep,:slotted,:global,useCssModule,v-bind)
前端·javascript·css
是罐装可乐8 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全
华科易迅8 小时前
Vue如何集成封装Axios
前端·javascript·vue.js
康一夏8 小时前
Next.js 13变化有多大?
前端·react·nextjs