File tree Expand file tree Collapse file tree 2 files changed +4
-7
lines changed
Expand file tree Collapse file tree 2 files changed +4
-7
lines changed Original file line number Diff line number Diff line change @@ -95,8 +95,8 @@ async def main():
9595 elicitation_callback : ElicitationFnT | None = None
9696 """Callback for handling elicitation requests."""
9797
98- _session : ClientSession | None = None
99- _exit_stack : AsyncExitStack | None = None
98+ _session : ClientSession | None = field ( init = False , default = None )
99+ _exit_stack : AsyncExitStack | None = field ( init = False , default = None )
100100 _transport : Transport = field (init = False )
101101
102102 def __post_init__ (self ) -> None :
@@ -113,10 +113,7 @@ async def __aenter__(self) -> Client:
113113 raise RuntimeError ("Client is already entered; cannot reenter" )
114114
115115 async with AsyncExitStack () as exit_stack :
116- # Transports may return additional values (e.g., streamable_http_client returns a 3-tuple)
117- # We only need the first two elements (read_stream, write_stream)
118- streams = await exit_stack .enter_async_context (self ._transport )
119- read_stream , write_stream = streams [0 ], streams [1 ]
116+ read_stream , write_stream = await exit_stack .enter_async_context (self ._transport )
120117
121118 self ._session = await exit_stack .enter_async_context (
122119 ClientSession (
Original file line number Diff line number Diff line change 3232logger = logging .getLogger (__name__ )
3333
3434
35+ # TODO(Marcelo): Put the TransportStreams in a module under shared, so we can import here.
3536SessionMessageOrError = SessionMessage | Exception
3637StreamWriter = MemoryObjectSendStream [SessionMessageOrError ]
3738StreamReader = MemoryObjectReceiveStream [SessionMessage ]
38- GetSessionIdCallback = Callable [[], str | None ]
3939
4040MCP_SESSION_ID = "mcp-session-id"
4141MCP_PROTOCOL_VERSION = "mcp-protocol-version"
You can’t perform that action at this time.
0 commit comments