OpenClaw 白皮书
小度 MCP 设备控制 Server (官方版)
注意: 该集成由小度 DuerOS 官方提供。允许 AI 模型通过标准化接口控制您的小度设备。
小度 MCP 设备控制 Server 是一个基于 Model Context Protocol (MCP) 构建的智能设备控制服务。它允许 AI 模型(如 Claude 等大语言模型)通过标准化接口控制您的:
- ✦小度智能屏设备(如小度添添、小度智能屏等)
- ✦小度 IoT 智能家电(如智能灯、空调、插座等生态链设备)
功能特性
1. 智能屏控制(Mcporter)
首先您需要进行授以获得访问凭证(mcporter),这是控制智能屏的基础。授权完成后,您可以:
- ✦📱 获取设备列表 (
get_devices): 查询您账号下所有的在线小度智能屏设备信息 - ✦🗣️ 文本播报 (
text_to_speech): 让指令设备朗读指定的文本内容 - ✦🎤 执行语音指令 (
execute_voice_command): 模拟用户对设备说出的语音指令(例如“播放周杰伦的歌”、“设置明天早上8点的闹钟”) - ✦📸 远程拍照 (
take_picture): 控制设备的摄像头拍摄照片并返回图像 - ✦🖼️ 推送展示资源 (
push_resource): 向设备屏幕推送图片或文本进行展示
2. IoT 智能家电控制
通过提供 xiaodu_token (见下方配置说明),您可以直接控制小度智能家居生态中的设备:
- ✦🏠 查询家电列表 (
get_appliances): 获取您绑定的所有智能家电设备列表及其支持的控制操作 - ✦⚙️ 控制家电设备 (
control_appliance): 向指定家电发送控制指令(如开灯、调温、切换模式等)
3. 智能场景触发
同样需要 xiaodu_token:
- ✦🎭 查询场景列表 (
get_scenes): 获取您在小度 App 中预设的所有智能场景 - ✦▶️ 执行场景 (
execute_scene): 一键触发执行预设的智能家居场景
安装
bashnpm install -g @dueros-mcp/xiaodu-control
配置指南
您有两种方式提供所需的认证凭证(可以只提供其中一个或全部提供,MCP 将自动暴露对应的工具组):
方式一:环境变量(推荐)
bashexport MCPORTER="[您的MCPORTER配置JSON字符串]" export XIAODU_TOKEN="[您的小度Token]"
如果您使用 Claude Desktop,请在 Claude 配置文件中添加:
json{ "mcpServers": { "xiaodu-control": { "command": "npx", "args": ["-y", "@dueros-mcp/xiaodu-control"], "env": { "MCPORTER": "[您的MCPORTER配置JSON字符串]", "XIAODU_TOKEN": "[您的小度Token]" } } } }
方式二:命令行参数
bashnpx -y @dueros-mcp/xiaodu-control --mcporter="[配置]" --xiaodu-token="[token]"
凭证获取指南
1. 获取 MCPORTER(用于控制智能屏)
- ✦确保您的小度智能屏与您的手机处于**同一局域网(同一 Wi-Fi)**下。
- ✦使用手机访问:小度 MCP 授权页面
- ✦页面会自动发现局域网内的小度设备。点击目标设备后的【授权】按钮。
- ✦智能屏会弹出授权确认窗口,在屏幕上点击【同意】。
- ✦手机页面会生成并显示您的
mcporter凭据信息(一段 JSON 字符串,包含密钥和设备信息)。 - ✦将这段 JSON 字符串复制应用到您的配置中(如作为环境变量
MCPORTER的值)。
2. 获取 XIAODU_TOKEN(用于控制 IoT 家电和场景)
- ✦在任意终端(如您的电脑),执行以下 curl 命令:
bashcurl -X 'POST' \ 'https://xiaodu.baidu.com/saiya/auth/v1/app/getQrcode' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{}'
- ✦
运行后,您会得到一个类似如下的 JSON 响应,记录下其中的
imageUrl和authCode。 - ✦
在浏览器中打开
imageUrl对应的链接,您会看到一个二维码。 - ✦
打开小度 App(手机端),使用 App 内的扫码功能扫描该二维码,并在手机上确认登录授权。
- ✦
授权完成后,使用之前保存的
authCode执行下面第二个命令获取 Token:
bashcurl -X 'POST' \ 'https://xiaodu.baidu.com/saiya/auth/v1/app/getToken' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "authCode": "<将这里的文本替换为你刚才获取的authCode>" }'
- ✦
响应的 JSON 中会包含所需的 Token 信息,记录下
accessToken(即您的 XIAODU_TOKEN)。 - ✦
将获取到的
accessToken应用到您的配置中(如作为环境变量XIAODU_TOKEN的值)。
缺陷与排障
可以通过访问开源仓库寻求帮助: GitHub: dueros-mcp/xiaodu-control-official