|
17 | 17 | from anyio.abc import TaskGroup |
18 | 18 | from anyio.streams.memory import MemoryObjectReceiveStream, MemoryObjectSendStream |
19 | 19 | from httpx_sse import EventSource, ServerSentEvent, aconnect_sse |
| 20 | +from typing_extensions import deprecated |
20 | 21 |
|
21 | 22 | from mcp.shared._httpx_utils import McpHttpClientFactory, create_mcp_http_client |
22 | 23 | from mcp.shared.message import ClientMessageMetadata, SessionMessage |
@@ -447,7 +448,7 @@ def get_session_id(self) -> str | None: |
447 | 448 |
|
448 | 449 |
|
449 | 450 | @asynccontextmanager |
450 | | -async def streamablehttp_client( |
| 451 | +async def streamable_http_client( |
451 | 452 | url: str, |
452 | 453 | headers: dict[str, str] | None = None, |
453 | 454 | timeout: float | timedelta = 30, |
@@ -516,3 +517,23 @@ def start_get_stream() -> None: |
516 | 517 | finally: |
517 | 518 | await read_stream_writer.aclose() |
518 | 519 | await write_stream.aclose() |
| 520 | + |
| 521 | + |
| 522 | +@deprecated("Use `streamable_http_client` instead.") |
| 523 | +@asynccontextmanager |
| 524 | +async def streamablehttp_client( |
| 525 | + url: str, |
| 526 | + headers: dict[str, str] | None = None, |
| 527 | + timeout: float | timedelta = 30, |
| 528 | + sse_read_timeout: float | timedelta = 60 * 5, |
| 529 | + terminate_on_close: bool = True, |
| 530 | +) -> AsyncGenerator[ |
| 531 | + tuple[ |
| 532 | + MemoryObjectReceiveStream[SessionMessage | Exception], |
| 533 | + MemoryObjectSendStream[SessionMessage], |
| 534 | + GetSessionIdCallback, |
| 535 | + ], |
| 536 | + None, |
| 537 | +]: |
| 538 | + async with streamable_http_client(url, headers, timeout, sse_read_timeout, terminate_on_close) as streams: |
| 539 | + yield streams |
0 commit comments