Files
yuanzhipeng ec7e7fd7dc feat(lzwcai-demp-tool-server-dify-to-mcp): 初始化 Dify 集成工具模块
新增 Dify 到 MCP 的集成工具,支持通过 Dify API 将模型部署到 MCP 平台并进行推理。
该模块包含完整的服务器实现、依赖配置和命令行启动脚本。

主要功能:
- 支持 Workflow 和 Completion 模式的调用
- 自动翻译工具名称为驼峰命名格式
- 提供文件上传与任务停止接口
- 兼容流式与非流式响应处理
2025-12-16 17:52:04 +08:00
..

lzwcai-mcp-iot

Version Python License

IoT设备控制服务器使用 FastMCP 框架提供智能设备的查询、定位和控制功能

特性

  • 支持位置筛选查询设备
  • 支持获取所有可用空间列表
  • 支持精确的设备ID控制
  • 支持用户空间定位
  • 自动格式化设备列表输出
  • 完整的错误处理和日志记录

📦 安装

pip install lzwcai-mcp-iot

或从源码安装:

git clone <repository-url>
cd lzwcai_mcp_iot
pip install -e .

🚀 快速开始

启动服务

lzwcai-mcp-iot

配置要求

服务启动时需要配置 employeeId系统会自动初始化企业ID。

🔧 核心工具

本服务提供 4 个核心工具,用于智能设备的查询、定位和控制。

1. iot_get_devices_by_location - 根据位置获取设备

功能:查询指定位置/房间的所有智能设备

使用场景

  • "办公室有哪些设备"
  • "会议室有什么设备"
  • "客厅设备列表"

参数

  • location (必填):位置/房间名称

返回该位置的设备清单设备ID、名称、类型、状态、控制命令等


2. iot_get_all_spaces_and_devices - 获取所有空间位置信息

功能:获取系统中所有可用空间位置的列表(仅空间名称,不包含设备详情)

使用场景

  • "显示所有空间"
  • "有哪些位置"
  • "空间列表"
  • "一共有多少个房间"

参数:无需参数

返回

  • 空间总数
  • 所有空间名称的列表

注意:此工具只返回空间清单,如需查看某个空间的设备,请使用 iot_get_devices_by_location 工具


3. iot_device_precise_controller - IoT设备精确控制

功能通过设备ID精确控制特定设备

使用场景

  • 控制特定的灯光、空调、门禁等
  • 需配合查询工具获取设备信息后使用

参数

  • entityId (必填)设备唯一ID
  • command (必填):操作命令(如 turn_on、turn_off、set_temperature
  • params (必填):操作参数(根据命令类型提供,如温度值、亮度等)
  • userId (可选)用户ID

返回:设备操作结果(成功/失败、设备反馈)


4. smart_space_device_locator_matcher - 智能空间设备定位

功能:查询用户当前所属的空间/位置

使用场景

  • "我现在在哪"
  • "当前位置是什么"
  • "确认一下位置"

参数

  • userId (必填)用户ID

返回:用户所属的空间名称


💡 典型使用流程

方式一:查看所有空间

1. 调用 iot_get_all_spaces_and_devices 获取所有空间列表
2. 选择感兴趣的空间
3. 调用 iot_get_devices_by_location 查看该空间的设备

方式二:查看特定位置的设备

1. 调用 iot_get_devices_by_location 指定位置
2. 查看该位置的设备清单和状态

方式三:控制设备(两步操作)

1. 调用 iot_get_devices_by_location 获取设备列表
2. 从结果中提取 entityId 和 command
3. 调用 iot_device_precise_controller 执行控制

方式四:定位用户

1. 调用 smart_space_device_locator_matcher
2. 获取用户当前所属空间
3. 基于位置查询或控制设备

📝 注意事项

  1. 企业ID初始化:服务启动时需要配置 employeeId系统会自动初始化企业ID
  2. 日志记录:所有操作都会记录到日志文件 lzwcai_mcp_iot.log
  3. 传输方式:使用 stdio标准输入输出方式运行
  4. 控制工具配合:精确控制工具必须配合查询工具使用,不能单独随意填写参数

🛠️ 开发

安装开发依赖

pip install -e ".[dev]"

代码格式化

# 使用 black 格式化
black lzwcai_mcp_iot/

# 使用 isort 排序导入
isort lzwcai_mcp_iot/

代码检查

# 使用 flake8
flake8 lzwcai_mcp_iot/

# 使用 mypy
mypy lzwcai_mcp_iot/

运行测试

pytest

📄 许可证

专有软件 - 版权所有 © LZWCAI开发团队

📧 联系方式

📚 更多文档

详细的工具使用说明请参考 IoT设备工具说明.md