Back to Catalog

opcua-mcp

kukapay/opcua-mcp
πŸ”— Latest commit:ac56b8a
πŸ•’ Updated:Sep 9, 2025, 01:06 PM
Python
AI Tools

An MCP server that connects to OPC UA-enabled industrial systems.

MCP Trust Score
Based on our comprehensive evaluation criteria
πŸ€– Evaluated by gemini-2.5-flashFix
Trust Score60/100
GitHub Metrics
Repository statistics and activity
⭐ GitHub Stars:15
πŸ‘₯ Contributors:2
πŸ“‹ Total Issues:2
πŸ“¦ Has Releases:No
πŸ”§ Has CI/CD Pipeline:No
Configuration
Configuration example extracted from README.md for Claude Desktop and other clients.
πŸ€– Evaluated by gemini-2.5-flashFix
{
  "opcua-mcp": {
    "command": "python",
    "args": [
      "path/to/opcua_mcp/main.py"
    ],
    "env": {
      "OPCUA_SERVER_URL": "your-opc-ua-server-url"
    }
  }
}
MCP Protocol Support
Implemented MCP protocol features
πŸ€– Evaluated by gemini-2.5-flashFix
Tools:βœ“
Prompts:βœ“
Resources:βœ“
Sampling:βœ“
Roots:βœ—
Logging:βœ—
STDIO Transport:βœ“
HTTP Transport:βœ—
OAuth2 Auth:βœ—
Dependencies
3 dependencies
Libraries and frameworks used by this MCP server
πŸ€– Evaluated by gemini-2.5-flashFix
Add Quality Badge
Show your MCP trust score in your README
Trust Score Badge
[![Trust Score](https://archestra.ai/mcp-catalog/api/badge/quality/kukapay/opcua-mcp)](https://archestra.ai/mcp-catalog/kukapay__opcua-mcp)
README.md

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.

GitHub License
Python Version
Status

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

Clone the repository and install the required Python packages:

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

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.

opcua-mcp MCP Server | Documentation & Integration | Archestra