Skip to content

Commit 488a424

Browse files
committed
ruff E501
1 parent 4f1bca6 commit 488a424

File tree

4 files changed

+67
-23
lines changed

4 files changed

+67
-23
lines changed

mcp_python/client/session.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,13 @@ def __init__(
3838
write_stream: MemoryObjectSendStream[JSONRPCMessage],
3939
read_timeout_seconds: int | float | None = None,
4040
) -> None:
41-
super().__init__(read_stream, write_stream, ServerRequest, ServerNotification, read_timeout_seconds=read_timeout_seconds)
41+
super().__init__(
42+
read_stream,
43+
write_stream,
44+
ServerRequest,
45+
ServerNotification,
46+
read_timeout_seconds=read_timeout_seconds,
47+
)
4248

4349
async def initialize(self) -> InitializeResult:
4450
from mcp_python.types import (

mcp_python/server/memory.py

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,21 @@
1414

1515

1616
@asynccontextmanager
17-
async def create_client_server_memory_streams() -> AsyncGenerator[ Tuple[
18-
Tuple[MemoryObjectReceiveStream[JSONRPCMessage | Exception], MemoryObjectSendStream[JSONRPCMessage]],
19-
Tuple[MemoryObjectReceiveStream[JSONRPCMessage | Exception], MemoryObjectSendStream[JSONRPCMessage]]
20-
], None]:
17+
async def create_client_server_memory_streams() -> (
18+
AsyncGenerator[
19+
Tuple[
20+
Tuple[
21+
MemoryObjectReceiveStream[JSONRPCMessage | Exception],
22+
MemoryObjectSendStream[JSONRPCMessage],
23+
],
24+
Tuple[
25+
MemoryObjectReceiveStream[JSONRPCMessage | Exception],
26+
MemoryObjectSendStream[JSONRPCMessage],
27+
],
28+
],
29+
None,
30+
]
31+
):
2132
"""
2233
Creates a pair of bidirectional memory streams for client-server communication.
2334
@@ -26,42 +37,55 @@ async def create_client_server_memory_streams() -> AsyncGenerator[ Tuple[
2637
(read_stream, write_stream)
2738
"""
2839
# Create streams for both directions
29-
server_to_client_send, server_to_client_receive = anyio.create_memory_object_stream[JSONRPCMessage | Exception](1)
30-
client_to_server_send, client_to_server_receive = anyio.create_memory_object_stream[JSONRPCMessage | Exception](1)
40+
server_to_client_send, server_to_client_receive = anyio.create_memory_object_stream[
41+
JSONRPCMessage | Exception
42+
](1)
43+
client_to_server_send, client_to_server_receive = anyio.create_memory_object_stream[
44+
JSONRPCMessage | Exception
45+
](1)
3146

3247
# Return streams grouped by client/server
3348
client_streams = (server_to_client_receive, client_to_server_send)
3449
server_streams = (client_to_server_receive, server_to_client_send)
3550

36-
async with (server_to_client_receive, client_to_server_send,
37-
client_to_server_receive, server_to_client_send):
51+
async with (
52+
server_to_client_receive,
53+
client_to_server_send,
54+
client_to_server_receive,
55+
server_to_client_send,
56+
):
3857
yield client_streams, server_streams
3958

4059

4160
@asynccontextmanager
42-
async def create_connected_server_and_client_session(server: Server) -> AsyncGenerator[ClientSession, None]:
61+
async def create_connected_server_and_client_session(
62+
server: Server,
63+
) -> AsyncGenerator[ClientSession, None]:
4364
"""Creates a ServerSession that is connected to the `server`."""
44-
async with create_client_server_memory_streams() as (client_streams, server_streams):
65+
async with create_client_server_memory_streams() as (
66+
client_streams,
67+
server_streams,
68+
):
4569
# Unpack the streams
4670
client_read, client_write = client_streams
4771
server_read, server_write = server_streams
4872
print("stream-1")
4973

5074
# Create a cancel scope for the server task
5175
async with anyio.create_task_group() as tg:
52-
5376
tg.start_soon(
5477
server.run,
5578
server_read,
5679
server_write,
57-
server.create_initialization_options()
80+
server.create_initialization_options(),
5881
)
5982

6083
print("stream2")
6184

6285
try:
63-
# Client session could be created here using client_read and client_write
64-
# This would allow testing the server with a client in the same process
86+
# Client session could be created here using client_read and
87+
# client_write This would allow testing the server with a client
88+
# in the same process
6589
async with ClientSession(
6690
read_stream=client_read, write_stream=client_write
6791
) as client_session:

mcp_python/shared/session.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,17 @@ async def send_request(
155155
response_or_error = await response_stream_reader.receive()
156156
except TimeoutError:
157157
# TODO: make sure this response comes back correctly to the client
158-
raise McpError(ErrorData(code=408, message=f"Timed out while waiting for response to {request.__class__.__name__}. Waited {READ_TIMEOUT_SECONDS} seconds."))
158+
raise McpError(
159+
ErrorData(
160+
code=408,
161+
message=(
162+
f"Timed out while waiting for response to "
163+
f"{request.__class__.__name__}. Waited "
164+
f"{self._read_timeout_seconds} seconds."
165+
),
166+
)
167+
168+
)
159169

160170
if isinstance(response_or_error, JSONRPCError):
161171
raise McpError(response_or_error.error)

tests/test_memory.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,22 @@
1212

1313

1414
@pytest.fixture
15-
async def client_connected_to_server(mcp_server: Server) -> AsyncGenerator[ClientSession, None]:
16-
print('11111')
15+
async def client_connected_to_server(
16+
mcp_server: Server,
17+
) -> AsyncGenerator[ClientSession, None]:
18+
print("11111")
1719
async with create_connected_server_and_client_session(mcp_server) as client_session:
18-
print('2222k')
20+
print("2222k")
1921
yield client_session
20-
print('33')
22+
print("33")
2123

2224

2325
@pytest.mark.anyio
24-
async def test_memory_server_and_client_connection(client_connected_to_server: ClientSession):
26+
async def test_memory_server_and_client_connection(
27+
client_connected_to_server: ClientSession,
28+
):
2529
"""Shows how a client and server can communicate over memory streams."""
2630
response = await client_connected_to_server.send_ping()
27-
print('foo')
31+
print("foo")
2832
assert isinstance(response, EmptyResult)
29-
print('bar')
33+
print("bar")

0 commit comments

Comments
 (0)