OPC UA MCP Server
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
An MCP server that connects to OPC UA-enabled industrial systems, allowing AI agents to monitor, analyze, and control operational data in real time.
This project is ideal for developers and engineers looking to bridge AI-driven workflows with industrial automation systems.
Features
- **Read OPC UA Nodes**: Retrieve real-time values from industrial devices.
- **Write to OPC UA Nodes**: Control devices by writing values to specified nodes.
- **Browse nodes**: Request to list allopcua nodes
- **Read multiple OPC UA Nodes**: Retrieve multiple real-time values from devices.
- **Write to multiple OPC UA Nodes**: Control devices by writing values to multiple nodes.
- **Seamless Integration**: Works with MCP clients like Claude Desktop for natural language interaction.
Tools
The server exposes five tools:
- **read_opcua_node**:
- **Description**: Read the value of a specific OPC UA node.
- **Parameters**:
- node_id (str): OPC UA node ID (e.g., ns=2;i=2).
- **Returns**: A string with the node ID and its value (e.g., "Node ns=2;i=2 value: 42").
- **write_opcua_node**:
- **Description**: Write a value to a specific OPC UA node.
- **Parameters**:
- node_id (str): OPC UA node ID (e.g., ns=2;i=3).
- value (str): Value to write (converted based on node type).
- **Returns**: A success or error message (e.g., "Successfully wrote 100 to node ns=2;i=3").
- **Browse nodes**:
- **Description**: Read the value of a specific OPC UA node.
- **Read multiple OPC UA Nodes**:
- **Description**: Read the value of a specific OPC UA node.
- **Write to multiple OPC UA Nodes**:
- **Description**: Read the value of a specific OPC UA node.
Example Prompts
- "What’s the value of node ns=2;i=2?" → Returns the current value.
- "Set node ns=2;i=3 to 100." → Writes 100 to the node.
Installation
Prerequisites
- Python 3.13 or higher
- An OPC UA server (e.g., a simulator or real industrial device)
Install Dependencies