An OPC-UA MCP Server - talk to your robots and PLCs
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add opc-ua --env OPCUA_ENDPOINT='<OPCUA_ENDPOINT>' --env OPCUA_PASSWORD='<OPCUA_PASSWORD>' -- docker run -i --rm -e OPCUA_ENDPOINT -e OPCUA_PASSWORD ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4~/.codex/config.toml
[mcp_servers.opc-ua]
command = "docker"
args = ["run", "-i", "--rm", "-e", "OPCUA_ENDPOINT", "-e", "OPCUA_PASSWORD", "ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"]
env = { OPCUA_ENDPOINT = "<OPCUA_ENDPOINT>", OPCUA_PASSWORD = "<OPCUA_PASSWORD>" }
# codex mcp add opc-ua --env OPCUA_ENDPOINT='<OPCUA_ENDPOINT>' --env OPCUA_PASSWORD='<OPCUA_PASSWORD>' -- docker run -i --rm -e OPCUA_ENDPOINT -e OPCUA_PASSWORD ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4~/.cursor/mcp.json
{
"mcpServers": {
"opc-ua": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPCUA_ENDPOINT",
"-e",
"OPCUA_PASSWORD",
"ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"
],
"env": {
"OPCUA_ENDPOINT": "<OPCUA_ENDPOINT>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"opc-ua": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPCUA_ENDPOINT",
"-e",
"OPCUA_PASSWORD",
"ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"
],
"env": {
"OPCUA_ENDPOINT": "<OPCUA_ENDPOINT>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"opc-ua": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPCUA_ENDPOINT",
"-e",
"OPCUA_PASSWORD",
"ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"
],
"env": {
"OPCUA_ENDPOINT": "<OPCUA_ENDPOINT>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"opc-ua": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPCUA_ENDPOINT",
"-e",
"OPCUA_PASSWORD",
"ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"
],
"env": {
"OPCUA_ENDPOINT": "<OPCUA_ENDPOINT>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"opc-ua": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPCUA_ENDPOINT",
"-e",
"OPCUA_PASSWORD",
"ghcr.io/mwieczorkiewicz/opcua-mcp:main-29734c4"
],
"env": {
"OPCUA_ENDPOINT": "<OPCUA_ENDPOINT>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>"
}
}
}
}Environment variables
OPCUA_ENDPOINTOPCUA_PASSWORD
Replace the placeholders with your own credentials and keep them out of version control.