UniFi Gateway for VS Code
io.github.pete-builds/unifi
Safe-by-default UniFi MCP: Network + Protect + Access, multi-site, dry-run, audit log.
client:VS Code
transport:stdio
runtime:oci
Install UniFi Gateway in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "stub-mode",
"description": "STUB_MODE",
"password": true
},
{
"type": "promptString",
"id": "unifi-host",
"description": "UNIFI_HOST",
"password": true
},
{
"type": "promptString",
"id": "unifi-api-key",
"description": "UNIFI_API_KEY",
"password": true
},
{
"type": "promptString",
"id": "unifi-site",
"description": "UNIFI_SITE",
"password": true
},
{
"type": "promptString",
"id": "unifi-verify-ssl",
"description": "UNIFI_VERIFY_SSL",
"password": true
},
{
"type": "promptString",
"id": "mcp-unifi-controllers-file",
"description": "MCP_UNIFI_CONTROLLERS_FILE",
"password": true
},
{
"type": "promptString",
"id": "mcp-unifi-modules-enabled",
"description": "MCP_UNIFI_MODULES_ENABLED",
"password": true
},
{
"type": "promptString",
"id": "unifi-access-host",
"description": "UNIFI_ACCESS_HOST",
"password": true
},
{
"type": "promptString",
"id": "unifi-access-api-key",
"description": "UNIFI_ACCESS_API_KEY",
"password": true
},
{
"type": "promptString",
"id": "unifi-access-port",
"description": "UNIFI_ACCESS_PORT",
"password": true
},
{
"type": "promptString",
"id": "mcp-unifi-audit-sink",
"description": "MCP_UNIFI_AUDIT_SINK",
"password": true
},
{
"type": "promptString",
"id": "mcp-unifi-audit-path",
"description": "MCP_UNIFI_AUDIT_PATH",
"password": true
}
],
"servers": {
"unifi": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/pete-builds/mcp-unifi:0.23.0"
],
"env": {
"STUB_MODE": "${input:stub-mode}",
"UNIFI_HOST": "${input:unifi-host}",
"UNIFI_API_KEY": "${input:unifi-api-key}",
"UNIFI_SITE": "${input:unifi-site}",
"UNIFI_VERIFY_SSL": "${input:unifi-verify-ssl}",
"MCP_UNIFI_CONTROLLERS_FILE": "${input:mcp-unifi-controllers-file}",
"MCP_UNIFI_MODULES_ENABLED": "${input:mcp-unifi-modules-enabled}",
"UNIFI_ACCESS_HOST": "${input:unifi-access-host}",
"UNIFI_ACCESS_API_KEY": "${input:unifi-access-api-key}",
"UNIFI_ACCESS_PORT": "${input:unifi-access-port}",
"MCP_UNIFI_AUDIT_SINK": "${input:mcp-unifi-audit-sink}",
"MCP_UNIFI_AUDIT_PATH": "${input:mcp-unifi-audit-path}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs