diff --git a/navi/core/container.py b/navi/core/container.py index 6fa0a34..31c695d 100644 --- a/navi/core/container.py +++ b/navi/core/container.py @@ -92,6 +92,10 @@ kv_store = KvStore(pool) scheduler = RecallScheduler(pool) + # Create MCP manager early so build_default_registries can wire it in + mcp_manager = McpManager() + await mcp_manager.load_all() + tool_registry, profile_registry, backend_registry, cp_registry = build_default_registries( memory_store=memory_store, session_store=session_store, @@ -118,9 +122,6 @@ workers = build_default_workers() - mcp_manager = McpManager() - await mcp_manager.load_all() - # Register MCP tools as external try: tools = await mcp_manager.get_all_tools() @@ -133,10 +134,6 @@ manager=mcp_manager, ) tool_registry.register_external(mcp_tool) - for tool_name in ("reload_tools", "mcp_status", "test_mcp_tool", "spawn_agent", "list_tools"): - tool = tool_registry.get(tool_name) - if hasattr(tool, "_mcp_manager"): - tool._mcp_manager = mcp_manager except Exception: pass