Skip to content

Commit 6e629ea

Browse files
author
Alexey Kharlamov
committed
fix: HTTP timeout correctly passed to httpx
1 parent 1bb16fa commit 6e629ea

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/mcp/client/sse.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ async def sse_client(
6161
client,
6262
"GET",
6363
url,
64+
timeout=httpx.Timeout(timeout, read=sse_read_timeout),
6465
) as event_source:
6566
event_source.response.raise_for_status()
6667
logger.debug("SSE connection established")
@@ -106,7 +107,7 @@ async def sse_reader(
106107
case _:
107108
logger.warning(f"Unknown SSE event: {sse.event}")
108109
except Exception as exc:
109-
logger.error(f"Error in sse_reader: {exc}")
110+
logger.error(f"Error in sse_reader: {exc.__class__.__name__}", exc_info=True)
110111
await read_stream_writer.send(exc)
111112
finally:
112113
await read_stream_writer.aclose()
@@ -127,7 +128,8 @@ async def post_writer(endpoint_url: str):
127128
response.raise_for_status()
128129
logger.debug("Client message sent successfully: " f"{response.status_code}")
129130
except Exception as exc:
130-
logger.error(f"Error in post_writer: {exc}")
131+
logger.error(f"Error in post_writer: {exc.__class__.__name__}", exc_info=True)
132+
await read_stream_writer.send(exc)
131133
finally:
132134
await write_stream.aclose()
133135

0 commit comments

Comments
 (0)