OPC UA MCP Server for Zed
io.github.midhunxavier/opcua
Connect AI assistants to industrial OPC UA: browse, read, history, subscriptions, events and alarms.
client:Zed
transport:stdio
runtime:npm
Install OPC UA MCP Server in Zed
~/.config/zed/settings.json · windows: %APPDATA%\Zed\settings.json
{
"context_servers": {
"opcua": {
"command": "npx",
"args": [
"-y",
"opcua-mcp-server"
],
"env": {
"OPCUA_SERVER_URL": "<OPCUA_SERVER_URL>",
"OPCUA_PYTHON_BACKEND": "<OPCUA_PYTHON_BACKEND>",
"OPCUA_SECURITY_POLICY": "<OPCUA_SECURITY_POLICY>",
"OPCUA_SECURITY_MODE": "<OPCUA_SECURITY_MODE>",
"OPCUA_CLIENT_CERT": "<OPCUA_CLIENT_CERT>",
"OPCUA_CLIENT_KEY": "<OPCUA_CLIENT_KEY>",
"OPCUA_APPLICATION_URI": "<OPCUA_APPLICATION_URI>",
"OPCUA_SERVER_CERT": "<OPCUA_SERVER_CERT>",
"OPCUA_SERVER_TRUST_STORE": "<OPCUA_SERVER_TRUST_STORE>",
"OPCUA_SERVER_APPLICATION_URI": "<OPCUA_SERVER_APPLICATION_URI>",
"OPCUA_USERNAME": "<OPCUA_USERNAME>",
"OPCUA_PASSWORD": "<OPCUA_PASSWORD>",
"OPCUA_USER_CERT": "<OPCUA_USER_CERT>",
"OPCUA_USER_KEY": "<OPCUA_USER_KEY>",
"OPCUA_PROFILE": "<OPCUA_PROFILE>",
"OPCUA_POLICY_FILE": "<OPCUA_POLICY_FILE>",
"OPCUA_ALLOWED_TOOLS": "<OPCUA_ALLOWED_TOOLS>",
"OPCUA_ALLOWED_WRITE_NODES": "<OPCUA_ALLOWED_WRITE_NODES>",
"OPCUA_ALLOWED_METHODS": "<OPCUA_ALLOWED_METHODS>",
"OPCUA_ALLOW_ACKNOWLEDGE_ALARMS": "<OPCUA_ALLOW_ACKNOWLEDGE_ALARMS>",
"OPCUA_ALLOW_INSECURE_CONTROL": "<OPCUA_ALLOW_INSECURE_CONTROL>",
"OPCUA_ALLOW_UNVERIFIED_SERVER_CONTROL": "<OPCUA_ALLOW_UNVERIFIED_SERVER_CONTROL>",
"OPCUA_ALLOW_OUT_OF_RANGE_WRITES": "<OPCUA_ALLOW_OUT_OF_RANGE_WRITES>",
"OPCUA_AUDIT_FILE": "<OPCUA_AUDIT_FILE>",
"OPCUA_AUDIT_FSYNC": "<OPCUA_AUDIT_FSYNC>",
"OPCUA_AUDIT_CHAIN": "<OPCUA_AUDIT_CHAIN>",
"OPCUA_AUDIT_CHAIN_KEY_FILE": "<OPCUA_AUDIT_CHAIN_KEY_FILE>",
"OPCUA_OPERATOR_ID": "<OPCUA_OPERATOR_ID>",
"OPCUA_RECONNECT_INITIAL_DELAY_MS": "<OPCUA_RECONNECT_INITIAL_DELAY_MS>",
"OPCUA_RECONNECT_MAX_DELAY_MS": "<OPCUA_RECONNECT_MAX_DELAY_MS>",
"OPCUA_RECONNECT_MAX_RETRY": "<OPCUA_RECONNECT_MAX_RETRY>",
"OPCUA_SESSION_TIMEOUT_MS": "<OPCUA_SESSION_TIMEOUT_MS>"
}
}
}
}
Merge this into your existing settings object — do not replace the file. Zed docs