README
🚀 OpenHAB MCP 服务器
OpenHAB MCP 服务器是一个与实际 openHAB 实例交互的 MCP(模型上下文协议)服务器,它借助 REST API 连接真实的 openHAB 实例,让 Claude 和 Cline 等 AI 助手能够与您的 openHAB 智能家居系统进行交互。
✨ 主要特性
物品管理
list_items- 列出所有 openHAB 物品,可选择按标签过滤get_item- 通过名称获取特定的 openHAB 物品create_item- 创建新的 openHAB 物品update_item- 更新现有的 openHAB 物品delete_item- 删除 openHAB 物品update_item_state- 仅更新 openHAB 物品的状态
设备管理
list_things- 列出所有 openHAB 设备get_thing- 通过 UID 获取特定的 openHAB 设备
规则管理
list_rules- 列出所有 openHAB 规则,可选择按标签过滤get_rule- 通过 UID 获取特定的 openHAB 规则create_rule- 创建新的 openHAB 规则update_rule- 部分更新现有的 openHAB 规则update_rule_script_action- 更新 openHAB 规则中的脚本操作delete_rule- 删除 openHAB 规则run_rule_now- 立即执行 openHAB 规则
脚本管理
list_scripts- 列出所有 openHAB 脚本(标记为 'Script' 且无触发器的规则)get_script- 通过 ID 获取特定的 openHAB 脚本create_script- 创建新的 openHAB 脚本update_script- 更新现有的 openHAB 脚本delete_script- 删除 openHAB 脚本
📦 安装指南
环境要求
- Python 3.8 或更高版本
安装步骤
- 克隆此仓库到本地:
git clone https://github.com/yourusername/openhab-mcp-server.git cd openhab-mcp-server - 安装依赖项:
pip install -r requirements.txt - 配置环境变量或修改配置文件,设置 OpenHAB 服务器的 URL 和 API 密钥。
- 运行服务器:
python server.py
与 Claude 和 Cline 集成
要在 Claude 或 Cline 中使用此 MCP 服务器,请按照以下步骤进行配置:
对于 Claude
- 将 MCP 服务器的地址添加到
config.json文件中:{ "mcp_url": "http://localhost:8080" } - 在您的技能中导入 MCP 工具模块:
from mcp_tools import *
对于 Cline
- 更新
config.yaml文件,添加 MCP 服务器的配置:mcp_server: url: http://localhost:8080 - 在您的脚本中导入 MCP 工具模块:
from mcp_tools import *
示例问题
要测试连接,可以向 Claude/Cline 提问:
你能列出我 OpenHAB 系统中的所有物品吗?
如果配置正确,Claude/Cline 将使用 MCP 服务器获取并显示您的 OpenHAB 物品。
📚 详细文档
对于开发,请参考 DEVELOPER.md 文件了解基于 Docker 的开发工作流。
⚠️ 注意事项
此实现通过 REST API 连接到实际的 openHAB 实例。为了生产环境使用,建议增强以下功能:
- 更全面的错误处理和日志记录
- 额外的身份验证和安全功能
- 更复杂的缓存机制
- 对更多 openHAB 功能(规则、设备等)的支持
📄 许可证
本项目采用 MIT 许可证。
Scan to contact