article
README
🚀 MCP百叶窗控制器
本项目借助模型上下文协议(MCP),通过Bond Bridge API实现对电动百叶窗的控制,为用户提供便捷的百叶窗操控体验。
✨ 主要特性
- 可控制百叶窗的开启、关闭或停止动作。
- 支持按名称、位置或排数对百叶窗进行筛选。
- 集成了异步HTTP API。
- 配备MCP服务器,便于与AI助手集成。
📦 安装指南
- 安装依赖项:
pip install aiohttp mcp
- 设置环境变量:
export MY_TOKEN="your_bond_token"
export MY_IP="192.168.x.x"
- 在
data/devices.json中配置设备:
[
{
"id": "device_id",
"name": "front",
"location": "foyer",
"row": "top"
}
]
💻 使用示例
基础用法
作为MCP服务器运行
python blinds.py
直接调用函数
from blinds import set_blinds_state
# 打开所有百叶窗
await set_blinds_state("Open")
# 关闭办公室的百叶窗
await set_blinds_state("Close", blind_location="office")
📚 详细文档
set_blinds_state(action, blind_name="all", blind_location="all", blind_row="all")
参数说明:
action:可选值为 "Open"(打开)、"Close"(关闭)或 "Hold"(停止)。blind_name:可选值为 "all"(所有)、"front"(前部)、"sunrise"(日出侧)、"sunset"(日落侧)。blind_location:可选值为 "all"(所有)、"foyer"(门厅)、"office"(办公室)。blind_row:可选值为 "all"(所有)、"top"(顶部)、"bottom"(底部)。
🧪 测试
运行测试命令:
pytest test_blinds.py -v
Scan to contact