From 84a9ddc2d814f250f3f4949c77d3f7bf9de99f2b Mon Sep 17 00:00:00 2001 From: hoffer Date: Thu, 13 Nov 2025 20:19:48 +0800 Subject: [PATCH] fix: StreamableHTTPTransport got invalid json exception when receive a ping event from mcp server #28111 (#28116) --- api/core/mcp/client/streamable_client.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/api/core/mcp/client/streamable_client.py b/api/core/mcp/client/streamable_client.py index a9c1eda624..805c16c838 100644 --- a/api/core/mcp/client/streamable_client.py +++ b/api/core/mcp/client/streamable_client.py @@ -138,6 +138,10 @@ class StreamableHTTPTransport: ) -> bool: """Handle an SSE event, returning True if the response is complete.""" if sse.event == "message": + # ping event send by server will be recognized as a message event with empty data by httpx-sse's SSEDecoder + if not sse.data.strip(): + return False + try: message = JSONRPCMessage.model_validate_json(sse.data) logger.debug("SSE message: %s", message)