otgate — OT policy gateway for VS Code
io.github.alikup-ai/otgate-opcua
Gates an LLM agent's writes to an OPC UA server on ranges, rate of change and live interlocks.
client:VS Code
transport:stdio
runtime:pypi
Install otgate — OT policy gateway in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "otgate-backend",
"description": "OTGATE_BACKEND",
"password": true
},
{
"type": "promptString",
"id": "otgate-policy",
"description": "OTGATE_POLICY",
"password": true
},
{
"type": "promptString",
"id": "otgate-audit",
"description": "OTGATE_AUDIT",
"password": true
},
{
"type": "promptString",
"id": "otgate-shadow",
"description": "OTGATE_SHADOW",
"password": true
},
{
"type": "promptString",
"id": "otgate-rate-history",
"description": "OTGATE_RATE_HISTORY",
"password": true
},
{
"type": "promptString",
"id": "otgate-opcua-endpoint",
"description": "OTGATE_OPCUA_ENDPOINT",
"password": true
}
],
"servers": {
"otgate-opcua": {
"type": "stdio",
"command": "uvx",
"args": [
"otgate"
],
"env": {
"OTGATE_BACKEND": "${input:otgate-backend}",
"OTGATE_POLICY": "${input:otgate-policy}",
"OTGATE_AUDIT": "${input:otgate-audit}",
"OTGATE_SHADOW": "${input:otgate-shadow}",
"OTGATE_RATE_HISTORY": "${input:otgate-rate-history}",
"OTGATE_OPCUA_ENDPOINT": "${input:otgate-opcua-endpoint}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs