From 6a50d316d9ff075deb08bb3c7245e7cc057a52b8 Mon Sep 17 00:00:00 2001 From: Soulter <37870767+Soulter@users.noreply.github.com> Date: Thu, 27 Nov 2025 16:22:26 +0800 Subject: [PATCH] fix: mcp server cannot reload successfully after updating mcp server config (#3797) fixes: #3780 --- astrbot/core/agent/mcp_client.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/astrbot/core/agent/mcp_client.py b/astrbot/core/agent/mcp_client.py index 88cab486e..c5ff123b2 100644 --- a/astrbot/core/agent/mcp_client.py +++ b/astrbot/core/agent/mcp_client.py @@ -345,9 +345,6 @@ class MCPClient: async def cleanup(self): """Clean up resources including old exit stacks from reconnections""" - # Set running_event first to unblock any waiting tasks - self.running_event.set() - # Close current exit stack try: await self.exit_stack.aclose() @@ -359,6 +356,9 @@ class MCPClient: # Just clear the list to release references self._old_exit_stacks.clear() + # Set running_event first to unblock any waiting tasks + self.running_event.set() + class MCPTool(FunctionTool, Generic[TContext]): """A function tool that calls an MCP service."""