关键词:小智 AI 音箱、MCP 开发、自定义技能、语音交互、智能家居
运行环境:Python 3.9 + 小智 MCP SDK(官方镜像已集成)
一、写在最前:为什么选“小智”而不是其他?
- 活动白送:CSDN 征文投稿 ≥100 字就能拿 30 元专属抵扣券,等于音箱 0 元购。
- 开发友好:官方直接放出MCP(Mini-Core Protocol)本地调试 Docker,5 分钟装好,无需签名证书即可热加载技能。
- 语音芯升级:四麦阵列 + BK7252,官方标称 3 m 唤醒率 97%,夜里关灯喊“小智小智”也能秒回。
下面 30 分钟,带你从拆箱 → 配网 → MCP 环境 → 自定义“晚安”技能 → 语音实测,一条龙抄作业。
二、0~5 分钟:极速开箱 & 配网
| 步骤 | 图解要点 | 坑点提示 |
|---|---|---|
| 1. 拆箱 | 配件只有 3 样:音箱本体 + 12 V 2 A 电源 + 说明书 | 电源圆口 5.5 mm,别拿成 5 V 线 |
| 2. 配网 | 扫码打开“小智 AI”小程序 → 长按音箱“播放”键 5 s → 选择 2.4 G Wi-Fi | 不支持 802.1x 企业网,校园网同学开热点 |
| 3. OTA | 联网后自动升级,约 2 分钟 | 升级时别断电,会变砖 |
配网成功后喊一句“小智小智”,回应“我在呢”——进入下一环节。
三、5~15 分钟:MCP 开发环境一键 Docker
官方镜像已装好 toolchain、调试桥,两行命令即可:
# 1. 拉镜像(300 MB,2 分钟搞定)docker pull csdnxiaozhi/mcp-dev:latest# 2. 启动容器,把本地 skill 目录挂进去docker run -it --rm\-v$PWD/skills:/workspace\-p8888:8888\csdnxiaozhi/mcp-dev:latest容器内预置:
- Python 3.9 + pip
- 小智 MCP CLI(
xz-mcp) - 本地仿真音频桥(Loopback Audio)
- VS Code Server:浏览器访问
http://localhost:8888直接在线改代码
验证环境
xz-mcp --version# 输出:xz-mcp 1.3.1四、15~25 分钟:手写“晚安”技能
需求描述
用户说:“小智小智,晚安。”
音箱回复:“已为你关闭客厅灯,并设置 30 分钟后关机,晚安好梦!”
同时向 MQTT broker 发指令,真实控制智能家居。
1. 技能目录结构
skills/ └── goodnight/ ├── manifest.yaml # 技能名片 ├── main.py # 业务逻辑 └── requirements.txt2. manifest.yaml
name:goodnightversion:1.0.0description:一键晚安场景trigger:-"晚安"-"我要睡了"response:tts:"已为你关闭客厅灯,并设置 30 分钟后关机,晚安好梦!"3. main.py(30 行代码)
importpaho.mqtt.clientasmqttimporttimeimportjson MQTT_HOST="192.168.1.100"# 你的 Home Assistant 或 Node-RED IPMQTT_PORT=1883TOPIC_LIGHT="home/livingroom/light/set"deflambda_handler(event,context):# 1. 发布 MQTT 关灯指令client=mqtt.Client()client.connect(MQTT_HOST,MQTT_PORT,60)client.publish(TOPIC_LIGHT,json.dumps({"state":"OFF"}))client.disconnect()# 2. 延时关机(向音箱自身发送 poweroff)time.sleep(1)return{"directives":[{"type":"tts","text":event['response']['tts']},{"type":"poweroff","delay":1800}# 30 min 后关机]}if__name__=="__main__":# 本地调试print(lambda_handler({"response":{"tts":"晚安测试"}},{}))4. 安装依赖 & 打包
cd/workspace/goodnight pipinstall-r requirements.txt xz-mcp package生成goodnight-1.0.0.zip(≈ 3 KB)
五、25~30 分钟:热加载 & 语音实测
# 加载技能(本地调试模式)xz-mcpinstallgoodnight-1.0.0.zip --sim# 启动日志监听xz-mcp log --follow对着音箱说:“小智小智,晚安。”
预期效果:
- 音箱回复:“已为你关闭客厅灯,并设置 30 分钟后关机,晚安好梦!”
- 客厅灯同步熄灭(MQTT)
- 日志出现
poweroff scheduled in 1800s
六、常见踩坑清单
| 坑点 | 现象 | 解决 |
|---|---|---|
| 容器无法访问宿主机 MQTT | Connection refused | Docker 加--network host或填宿主机局域网 IP |
| 唤醒后没触发技能 | 日志显示“no intent matched” | 在 manifest 多写几个同义词,如“睡了/睡觉” |
| 关机指令不生效 | 日志报错“directive not support” | 升级音箱固件 ≥ 1.5.0 |
七、小结 & 延伸
- 30 分钟完成“开箱 → 配网 → MCP 环境 → 自定义技能 → 语音实测”一条龙。
- 技能包仅 3 KB,换一行 MQTT 主题就能控制空调、窗帘,无限复制。
- 本文代码已开源:https://github.com/DapengAiTeach(记得点个 Star!)
评论区开放问题
- 你还想实现哪些“一句话场景”?比如“我出门了”关闭所有灯 + 扫地机出动?留言告诉我,下期更新。
- 遇到 MQTT 外网穿透、Home Assistant 对接坑?欢迎抛具体报错,一起速通。
如果这篇实录帮到了你,点个收藏 & 赞,把链接甩给还在手动关灯的室友,一起 0 元上车小智 AI 音箱!