Remove McpServerConfig and have McpClientFactory accept IClientTransport instances directly. (#230)

* Remove McpServerConfig and have McpClientFactory accept IClientTransport instances directly.

* Address feedback and use lists when representing stdio arguments.

* Use "Name" for transport descriptors and "EndpointName" for MCP clients and servers.

* Update code samples.

* Fix source file naming
This commit is contained in:
Eirik Tsarpalis 2025-04-08 17:37:41 +01:00 • committed by GitHub
commit 3e21f3594a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -16,20 +16,16 @@ namespace ModelContextProtocol.Tests;
public class SseIntegrationTests(ITestOutputHelper outputHelper) : KestrelInMemoryTest(outputHelper)
{
private McpServerConfig DefaultServerConfig = new()
private SseClientTransportOptions DefaultTransportOptions = new()
{
Id = "test_server",
Endpoint = new Uri("http://localhost/sse"),
Name = "In-memory Test Server",
TransportType = TransportTypes.Sse,
TransportOptions = [],
Location = $"http://localhost/sse"
};
private Task<IMcpClient> ConnectMcpClient(HttpClient httpClient, McpClientOptions? clientOptions = null)
=> McpClientFactory.CreateAsync(
DefaultServerConfig,
new SseClientTransport(DefaultTransportOptions, httpClient, LoggerFactory),
clientOptions,
(_, _) => new SseClientTransport(new(), DefaultServerConfig, httpClient, LoggerFactory),
LoggerFactory,
TestContext.Current.CancellationToken);