diff --git a/tools/server/webui/src/lib/stores/agentic.svelte.ts b/tools/server/webui/src/lib/stores/agentic.svelte.ts index 560062c619..26c0d9aafe 100644 --- a/tools/server/webui/src/lib/stores/agentic.svelte.ts +++ b/tools/server/webui/src/lib/stores/agentic.svelte.ts @@ -202,6 +202,13 @@ class AgenticStore { return { handled: true, error: normalizedError }; } finally { this._isRunning = false; + // Lazy Disconnect: Close MCP connections after agentic flow completes + // This prevents continuous keepalive/heartbeat polling when tools are not in use + await mcpStore.shutdown().catch((err) => { + console.warn('[AgenticStore] Failed to shutdown MCP after flow:', err); + }); + + console.log('[AgenticStore] MCP connections closed (lazy disconnect)'); } }