零门槛为小智接入MCP,小智Pro焕新上线:MCP广场+自定义服务
本文分享了`小智Pro: 零门槛为小智接入MCP`的核心功能和架构设计。
前文,分享了【小智Pro】系列文章:
30天,AI 陪我写了3万行代码,上线一款应用,3点血泪教训
小智Pro:在线点歌+歌词同步,支持打断和搜索,端云协同方案
以上所有工具,均基于设备端 MCP 实现。
我们知道,要让小智 AI 接入 MCP,有两种方式:
- 设备端代码新增 MCP tool;
- 通过官方暴露的 MCP 接入点;
两种方式各有利弊:
- 前者需要制作固件,适用于批量生产;
- 后者无需制作固件,定制化程度高,可玩性高,但需要自己接入服务;
关于通过接入点接入MCP服务,具体原理,可见笔者前文:
尽管官方给出了示例教程,对于缺乏编程基础的小伙伴来说,接入门槛还是略高。
为了让大家零门槛给小智接入MCP,小智Pro进行了焕新升级:
在设备端MCP的基础上,新增接入点MCP一级目录:

欢迎体验👇:
今日分享,聊聊:
- 用户侧:
接入点MCP的核心功能,用户如何接入 - 平台侧:
接入点MCP的架构设计,平台如何实现
1. ‘接入点MCP’核心功能
当前实现了两个界面:
- MCP广场
- MCP绑定管理
为用户提供 MCP 服务管理、设备绑定一条龙服务。
无需编写一行代码,在小智Pro平台,简单四步,即可为你的小智接入 MCP 服务:

1.1 MCP广场
MCP广场分为两个标签页:
- 公共MCP服务:平台所有用户的公开MCP服务
- 我的MCP服务:当前用户创建的私有MCP服务

每个MCP服务以卡片形式展示,包括服务名称、描述、标签等信息。
MCP服务交互操作:
- 查看:点击眼睛图标,查看MCP服务详情
- 点赞:对公共MCP服务表示认可和支持
- 绑定:将MCP服务绑定到指定设备

除了平台接入的公共MCP服务,我的MCP服务标签页,支持用户根据自己的需求,创建定制化的MCP服务。

对于自定义 MCP 服务,目前支持主流的 MCP 协议:

1.2 MCP绑定管理
MCP绑定管理页面,专注于设备与MCP服务之间的关联。
设备选择与连接状态监控:
该页面展示当前账户下的所有设备,可以选择特定设备查看MCP绑定情况。

接入点配置:
前往小智控制台(xiaozhi.me),复制当前设备的接入点地址:

绑定成功后,支持修改。
连接状态控制:
点击设备卡片上的连接状态,切换连接和断开状态,控制设备与MCP接入点的通信。

连接成功后,前往小智控制台查看:

2. ‘接入点MCP’架构设计
2.1 概览
整体采用前后端分离的设计模式,前端负责用户交互和可视化管理,后端提供 API 接口和服务治理,底层通过WebSocket和进程管理实现实时通信。

2.2 核心组件
MCP管理器:负责协调和管理所有的MCP连接。
主要功能包括:
- 测试连接
- 连接管理
- 断开连接
- 自动重连
- 资源清理
进程管理器:负责管理MCP服务的本地实例。
- 启动和监控MCP服务进程
- 管理进程的输入输出管道
- 终止不再需要的进程实例
- 为不同设备提供共享进程
共享进程:
实测发现,每个 MCP 服务占用的资源并不低:
root 25130 0.0 0.7 306088 61192 pts/4 python -m mcp_proxy https://mcp.xx.net/5x/sse
root 5204 0.0 1.1 11687744 96600 pts/4 node /root/.bin/12306-mcp
sse 类服务需 61 MB 内存,而 stdio 类服务占用内存更高。
因此生产环境中,每个 MCP 服务,必须采用共享进程模式运行。
这样,所有调用该 MCP 服务的设备,都会复用同一个进程,大幅减少系统资源消耗。

2.3 MCP协议支持
后端支持主流的 MCP 通信协议,以适应不同类型MCP服务:
- STDIO协议: 通过标准输入输出与本地进程通信
- SSE协议: 通过Server-Sent Events实现实时推送
- StreamableHttp协议: 通过HTTP请求进行异步通信
写在最后
本文分享了小智Pro: 零门槛为小智接入MCP的核心功能和架构设计。
如果对你有帮助,不妨点赞收藏备用。
欢迎体验 小智Pro 更多功能,请戳👇:
有任何问题,欢迎进群交流:

更多推荐



所有评论(0)