From b5274a44766d095247037be18c1d1918ac67ddeb Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Tue, 22 Sep 2026 11:53:23 +0200 Subject: [PATCH] :bug: Bind MCP PluginBridge WebSocket to configured host (#11605) The plugin WebSocket bridge ignored PENPOT_MCP_SERVER_HOST and bound all interfaces, exposing unauthenticated task dispatch to the network in single-user mode. Pass mcpServer.host into WebSocketServer, mirroring the ReplServer fix, so the bridge binds localhost by default and 0.0.0.0 only on explicit opt-in. Closes #11603. AI-assisted-by: muse-spark-1.3-contributor --- mcp/packages/server/src/PluginBridge.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcp/packages/server/src/PluginBridge.ts b/mcp/packages/server/src/PluginBridge.ts index 6a1e07f9c5..305f5dc35e 100644 --- a/mcp/packages/server/src/PluginBridge.ts +++ b/mcp/packages/server/src/PluginBridge.ts @@ -94,7 +94,7 @@ export class PluginBridge { private readonly taskTimeoutSecs: number, private readonly redisBridge?: RedisBridge ) { - this.wsServer = new WebSocketServer({ port: port }); + this.wsServer = new WebSocketServer({ port: port, host: mcpServer.host }); this.setupWebSocketHandlers(); }