Skip to content

Commit a5951b9

Browse files
committed
Use larger buffer in for PipeReader
1 parent d050187 commit a5951b9

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

src/ModelContextProtocol.Core/Client/StreamClientSessionTransport.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ namespace ModelContextProtocol.Client;
1010
internal class StreamClientSessionTransport : TransportBase
1111
{
1212
private static readonly byte[] s_newlineBytes = "\n"u8.ToArray();
13+
private static readonly StreamPipeReaderOptions s_pipeReaderOptions = new(bufferSize: 64 * 1024); // 64KB minimum buffer
1314

1415
private readonly PipeReader _serverOutputPipe;
1516
private readonly Stream _serverInputStream;
@@ -43,7 +44,7 @@ public StreamClientSessionTransport(Stream serverInput, Stream serverOutput, str
4344
Throw.IfNull(serverOutput);
4445

4546
_serverInputStream = serverInput;
46-
_serverOutputPipe = PipeReader.Create(serverOutput);
47+
_serverOutputPipe = PipeReader.Create(serverOutput, s_pipeReaderOptions);
4748

4849
SetConnected();
4950

src/ModelContextProtocol.Core/Server/StreamServerTransport.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ namespace ModelContextProtocol.Server;
1818
public class StreamServerTransport : TransportBase
1919
{
2020
private static readonly byte[] s_newlineBytes = "\n"u8.ToArray();
21+
private static readonly StreamPipeReaderOptions s_pipeReaderOptions = new(bufferSize: 64 * 1024); // 64KB minimum buffer
2122

2223
private readonly ILogger _logger;
2324

@@ -48,7 +49,7 @@ public StreamServerTransport(Stream inputStream, Stream outputStream, string? se
4849
_logger = loggerFactory?.CreateLogger(GetType()) ?? NullLogger.Instance;
4950

5051
_inputStream = inputStream;
51-
_inputPipeReader = PipeReader.Create(inputStream);
52+
_inputPipeReader = PipeReader.Create(inputStream, s_pipeReaderOptions);
5253
_outputStream = outputStream;
5354

5455
SetConnected();

0 commit comments

Comments
 (0)