From ee2241079aea3387f6d3246f25a0090072b75a36 Mon Sep 17 00:00:00 2001 From: nandanadileep <116407139+nandanadileep@users.noreply.github.com> Date: Tue, 15 Sep 2026 14:08:04 +0000 Subject: [PATCH] Fix #3281: streamable_http (legacy mode): early response.aclose() discard --- src/mcp/client/streamable_http.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mcp/client/streamable_http.py b/src/mcp/client/streamable_http.py index 82de50fd05..21a8f0a2cc 100644 --- a/src/mcp/client/streamable_http.py +++ b/src/mcp/client/streamable_http.py @@ -483,7 +483,10 @@ async def _handle_sse_response( # If the SSE event indicates completion, like returning response/error # break the loop if is_complete: - await response.aclose() + try: + await response.aread() + finally: + await response.aclose() return # Normal completion, no reconnect needed except Exception: logger.debug("SSE stream ended", exc_info=True) # pragma: lax no cover