From 60789a4fa47ea1369f2a0109a8df7d4d48ddc0ec Mon Sep 17 00:00:00 2001 From: Gordon Date: Thu, 12 Feb 2026 16:22:18 +0800 Subject: [PATCH 1/2] fix: clean up session when disconnected --- src/mcp/server/sse.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mcp/server/sse.py b/src/mcp/server/sse.py index 5be6b78ca..b2e3a003c 100644 --- a/src/mcp/server/sse.py +++ b/src/mcp/server/sse.py @@ -186,6 +186,7 @@ async def response_wrapper(scope: Scope, receive: Receive, send: Send): ) await read_stream_writer.aclose() await write_stream_reader.aclose() + self._read_stream_writers.pop(session_id) logging.debug(f"Client session disconnected {session_id}") logger.debug("Starting SSE response task") From 1de88550b0f1ad0032147fcd712f9da20429725c Mon Sep 17 00:00:00 2001 From: Gordon Date: Thu, 12 Feb 2026 16:28:41 +0800 Subject: [PATCH 2/2] nit --- src/mcp/server/sse.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcp/server/sse.py b/src/mcp/server/sse.py index b2e3a003c..e8eeff5cd 100644 --- a/src/mcp/server/sse.py +++ b/src/mcp/server/sse.py @@ -186,7 +186,7 @@ async def response_wrapper(scope: Scope, receive: Receive, send: Send): ) await read_stream_writer.aclose() await write_stream_reader.aclose() - self._read_stream_writers.pop(session_id) + self._read_stream_writers.pop(session_id, None) logging.debug(f"Client session disconnected {session_id}") logger.debug("Starting SSE response task")