|
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 |
@@ -560,7 +561,7 @@ def get_session_id(self) -> str | None: |
560 | 561 |
|
561 | 562 |
|
562 | 563 | @asynccontextmanager |
563 | | -async def streamablehttp_client( |
| 564 | +async def streamable_http_client( |
564 | 565 | url: str, |
565 | 566 | headers: dict[str, str] | None = None, |
566 | 567 | timeout: float | timedelta = 30, |
@@ -629,3 +630,23 @@ def start_get_stream() -> None: |
629 | 630 | finally: |
630 | 631 | await read_stream_writer.aclose() |
631 | 632 | await write_stream.aclose() |
| 633 | + |
| 634 | + |
| 635 | +@deprecated("Use `streamable_http_client` instead.") |
| 636 | +@asynccontextmanager |
| 637 | +async def streamablehttp_client( |
| 638 | + url: str, |
| 639 | + headers: dict[str, str] | None = None, |
| 640 | + timeout: float | timedelta = 30, |
| 641 | + sse_read_timeout: float | timedelta = 60 * 5, |
| 642 | + terminate_on_close: bool = True, |
| 643 | +) -> AsyncGenerator[ |
| 644 | + tuple[ |
| 645 | + MemoryObjectReceiveStream[SessionMessage | Exception], |
| 646 | + MemoryObjectSendStream[SessionMessage], |
| 647 | + GetSessionIdCallback, |
| 648 | + ], |
| 649 | + None, |
| 650 | +]: |
| 651 | + async with streamable_http_client(url, headers, timeout, sse_read_timeout, terminate_on_close) as streams: |
| 652 | + yield streams |
0 commit comments