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