From 9fb4d27333f56a6fe36cefefd8e1bbfd09167665 Mon Sep 17 00:00:00 2001 From: dadachann <185672915+dadachann@users.noreply.github.com> Date: Fri, 3 Jul 2026 21:46:46 -0400 Subject: [PATCH] fix(mcp): use uniform session memory_mb=1024 to avoid BoxSessionConflictError All MCPs share one Box session (mcp-shared). When session memory_mb differed by command type (512 for python, 1024 for node), the second MCP to call create_session raised BoxSessionConflictError. Fix: always use 1024 MB for the shared session so python and node MCPs coexist without conflict. --- src/langbot/pkg/provider/tools/loaders/mcp_stdio.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/langbot/pkg/provider/tools/loaders/mcp_stdio.py b/src/langbot/pkg/provider/tools/loaders/mcp_stdio.py index 57b5e60c5..a2b8ddf3d 100644 --- a/src/langbot/pkg/provider/tools/loaders/mcp_stdio.py +++ b/src/langbot/pkg/provider/tools/loaders/mcp_stdio.py @@ -146,11 +146,7 @@ class BoxStdioSessionRuntime: # load WebAssembly modules (llhttp) on startup; the default 512 MB # cgroup_mem_max is too small and causes OOM kills (return_code=137). # Auto-bump to 1024 MB when the runner is npx/bunx/pnpm dlx. - memory_mb=( - (self.config.memory_mb or 1024) - if self.server_config.get('command', '') in ('npx', 'bunx', 'pnpm') - else self.config.memory_mb - ), + memory_mb=self.config.memory_mb or 1024, pids_limit=self.config.pids_limit, persistent=True, )