近来看到大家都在玩小智接入MCP,直接就将语音对话扩展到了HA设备的控制,通用性一下子提升到Max。这里我就通过大佬的例子来学习下怎么用MCP控制灯泡。
本篇主要学习和参考的是安信可AiPi-PalChatV1 + MCP通过HomeAssistant自动化控制设备 - 小安AI - 物联网开发者社区-安信可论坛 - Powered by Discuz!
1. 下载运行MCP服务器端代码
git clone https://gitee.com/lazy-ai/ai-pi-pal-chat-v1-ha.git
clone完成代码后,到代码目录下安装代码依赖的库,mcp是通过mqtt进行通信的,先来安装一个mqtt的库。
pip install paho-mqtt

之后便安装代码目录下requirements.txt中指定的库。

这里的需要安装的库有点多,需要稍等片刻。安装完成:

到这里mcp server就算是安装好了。我们后面再来启动它。
2. 启动小智客户端
掏出我们的Aipi-PalChatv1,上电,即可开始对话。这里要注意的是我们前面已经将Aipi-PalChatv1配置到我们的小智后台了。配置方式可参考
【开箱】AiPi-PalChatV1 语音开发板 - 小安AI - 物联网开发者社区-安信可论坛 - Powered by Discuz!
当然,如果手上没有板子,那么就可以使用如下的小智桌面版来代替板子
git clone https://gitee.com/tinytaro/py-xiaozhi0.git

同样的,在clone完成代码后安装依赖pip install -r requirements.txt。

安装完成,启动!将播报的设备码,配置到小智服务器后台,流程和板子的配置一样。

对话试试看

3. 配置MCP接入点
打开小智后台 https://xiaozhi.me/

复制这个mcp接入点。配置运行环境中的变量。

随后运行代码
python mcp_pipe.py switch_lamp.py
操作一把试试。没有问题,很好, 语音控制开灯了!

4. 注意事项
如果mcp server提示如下

并且在客户端上喊开灯总是说没有找到设备。这时候我们可以考虑去看看后台上的设置,然后重新启动下客户端来尝试解决。