An MCP server that connects AI agents to OPC UA-enabled industrial systems.
Project description
OPC UA MCP Server
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.
- Seamless Integration: Works with MCP clients like Claude Desktop for natural language interaction.
Tools
The server exposes two 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").
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.10 or higher
- An OPC UA server (e.g., a simulator or real industrial device)
Install Dependencies
Clone the repository and install the required Python packages:
git clone https://github.com/kukapay/opcua-mcp.git
cd opcua-mcp
pip install asyncua mcp[cli]
MCP Client Configuration
{
"mcpServers": {
"opcua-mcp": {
"command": "python",
"args": ["path/to/opcua_mcp/main.py"],
"env": {
"OPCUA_SERVER_URL": "your-opc-ua-server-url"
}
}
}
}
License
This project is licensed under the MIT License. See the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file opcua_mcp-0.1.0.tar.gz.
File metadata
- Download URL: opcua_mcp-0.1.0.tar.gz
- Upload date:
- Size: 3.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e152906cddf7623542e26c87c9c04cc249e41ffa8f34f39578754e80b0d67751
|
|
| MD5 |
c80f774849c6b6b1f7f25360939d69b2
|
|
| BLAKE2b-256 |
0e6df048f1f34dd8119448ceca591e7036cf7fd55bd38d154ebb5d254159040e
|
File details
Details for the file opcua_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: opcua_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1020f4bf3ebef456996f6b37bff4491d5f7ba40726784013de07407a77495319
|
|
| MD5 |
52bf8ac77364dfec110681be40c1aece
|
|
| BLAKE2b-256 |
7d6aecb2446589afe2c7327d9c8b0ced9b9c5fa2010566a580f22d92415fca2a
|