OPC UA MCP服务器

连接支持OPC UA的工业系统,允许AI代理实时监控、分析和控制操作数据,适用于将AI驱动的工作流与工业自动化系统连接的开发者和工程师。

  • by kukapay
  • Python
  • 本地部署
  • 31 星标
  • 更新于
在 GitHub 查看 kukapay/opcua-mcp

使用说明

OPC UA MCP服务器

连接到支持OPC UA的工业系统的MCP服务器,允许AI代理实时监控、分析和控制操作数据。

该项目非常适合希望将人工智能驱动的工作流程与工业自动化系统连接起来的开发人员和工程师。

特性

  • 读取OPC UA节点:从工业设备中检索实时值。
  • 写入OPC UA节点:通过向指定节点写入值来控制设备。
  • 浏览节点:请求列出所有节点
  • 读取多个OPC UA节点:从设备中检索多个实时值。
  • 写入多个OPC UA节点:通过向多个节点写入值来控制设备。
  • 无缝集成:与Claude Desktop等MCP客户端配合使用,进行自然语言交互。

工具

服务器公开了五个工具:

  • read_opcua_node:

    • 描述:读取特定OPC UA节点的值。
    • 参数:
      • node_id (str):OPC UA节点ID(例如。, ns=2;i=2).
    • 退货:具有节点ID及其值的字符串(例如,“节点ns=2;i=2值:42”)。
  • write_opcua_node:

    • 描述:将值写入特定的OPC UA节点。
    • 参数:
      • node_id (str):OPC UA节点ID(例如。, ns=2;i=3).
      • value (str):要写入的值(根据节点类型转换)。
    • 退货:成功或错误消息(例如,“已成功将100写入节点ns=2;i=3”)。
  • Browse nodes:

    • 描述:读取特定OPC UA节点的值。
  • Read multiple OPC UA Nodes:

    • 描述:读取特定OPC UA节点的值。
  • Write to multiple OPC UA Nodes:

    • 描述:读取特定OPC UA节点的值。

示例提示

  • “节点ns=2;i=2的值是多少?”→ 返回当前值。
  • “将节点ns=2;i=3设置为100。”→ 将100写入节点。

安装

先决条件

  • Python 3.13或更高版本
  • OPC UA服务器(例如模拟器或真实工业设备)

再进行

克隆存储库并安装所需的Python包:

git clone https://github.com/kukapay/opcua-mcp.git
cd opcua-mcp
pip install mcp[cli] opcua cryptography

MCP客户端配置

{
 "mcpServers": {
   "opcua-mcp": {
     "command": "python",
     "args": ["path/to/opcua_mcp/main.py"],
     "env": {
        "OPCUA_SERVER_URL": "your-opc-ua-server-url"
     }
   }
 }
}

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。