Back to MCP directory
publicPublicdnsLocal runtime

opcua-mcp

OPC UA MCP服务器项目,连接工业系统与AI代理,实现实时监控与控制。

article

README

🚀 OPC UA MCP 服务器

OPC UA MCP 服务器可连接支持 OPC UA 的工业系统,让 AI 代理能够实时监控、分析和控制操作数据。该项目为想把 AI 驱动工作流与工业自动化系统进行桥接的开发者和工程师提供了理想解决方案。

![GitHub License](https://img Shields io/github/license/kukapay/opcua-mcp) ![Python Version](https://img Shields io/badge/python-3.10+-blue) ![Status](https://img Shields io/badge/status-active-brightgreen SVG)

🚀 快速开始

此项目适合希望将 AI 驱动的工作流与工业自动化系统桥接的开发者和工程师,可借助该服务器实现 AI 代理对工业系统操作数据的实时监控、分析和控制。

✨ 主要特性

  • 读取 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”)。

示例提示

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

📦 安装指南

先决条件

  • Python 3.10 或更高版本
  • OPC UA 服务器(例如仿真器或实际工业设备)

安装依赖项

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

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

MCP 客户端配置

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

📄 许可证

此项目根据 MIT License 分发。有关详细信息,请参阅 LICENSE 文件。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client