项目简介

MQTT UNS Viewer是一个专为工业物联网设计的统一命名空间(UNS)数据可视化和管理平台,集成了完整的MCP服务器,允许AI助手直接查询和操作工厂设备数据。

主要功能

  • 实时MQTT数据监控:连接多个MQTT代理,支持Sparkplug B协议解码
  • AI集成网关:通过MCP服务器向Claude、ChatGPT等AI客户端提供数据上下文
  • 智能数据映射:内置ETL引擎,支持实时数据转换和标准化
  • 多层级存储:DuckDB热存储 + TimescaleDB常年存储
  • 可视化界面:动态主题树、SVG SCADA视图、高级图表分析
  • 历史数据分析:支持时间旅行、全文搜索、数据导出
  • 模拟器管理:内置多个工业场景模拟器,生成测试数据
  • 数据发布工具:支持手动发布消息和运行仿真场景

安装步骤

  1. 克隆仓库:'git clone https://github.com/slalaure/mqtt_uns_viewer.git'
  2. 复制配置文件:'cp .env.example .env'
  3. 配置MQTT连接信息:
    [
      {
        "id": "local",
        "host": "mosquitto",
        "port": 1883,
        "protocol": "mqtt",
        "subscribe": ["#"]
      }
    ]

4. 启动服务:'docker-compose up -d'
5. 访问界面:'http://localhost:8080'

## MCP服务器配置
在MCP客户端(如Claude Desktop)的配置文件中添加:

```json
{
  "mcpServers": {
    "mqtt_viewer": {
      "command": "node",
      "args": ["path/to/mcp-client.js"],
      "env": {
        "MCP_API_KEY": "your-api-key",
        "MCP_URL": "http://localhost:3000/mcp"
    }
  }
}

基本使用方法

  1. 连接MQTT代理:在'.env'文件中配置您的工业MQTT代理连接信息

AI工具能力

MCP服务器向AI客户端暴露以下工具:

  • 'get_topics_list':发现哪些设备在线
  • 'search_uns_concept':查找具有特定指标的机器
  • 'infer_schema':获取ERP工单的JSON模式
  • 'get_topic_history':分析最近一小时的数据异常
  • 'publish_message':控制设备操作(如打开警告灯)
  • 'get_topic_history':查询特定主题的历史数据
  • 'publish_message':发布MQTT消息
  • 'enable_files':读写配置文件
  • 'enable_simulator':启动/停止模拟器
  • 'enable_admin':更新模型、清理历史数据

安全配置:通过'MCP_API_KEY'环境变量保护AI访问权限

信息

分类

AI与计算