Clean up (use of) McpException and McpTransportException (#321)

* Clean up (use of) McpException

* Replace McpTransportException with InvalidOperationException

* Add cancellation test
This commit is contained in:
Stephen Toub 2025-04-18 12:25:29 -04:00 • committed by GitHub
commit 7d77be68cf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -36,7 +36,7 @@ public static class McpServerExtensions
if (server.ClientCapabilities?.Sampling is null)
{
throw new ArgumentException("Client connected to the server does not support sampling.", nameof(server));
throw new InvalidOperationException("Client does not support sampling.");
}
return server.SendRequestAsync(
@ -166,7 +166,7 @@ public static class McpServerExtensions
if (server.ClientCapabilities?.Sampling is null)
{
throw new ArgumentException("Client connected to the server does not support sampling.", nameof(server));
throw new InvalidOperationException("Client does not support sampling.");
}
return new SamplingChatClient(server);
@ -204,7 +204,7 @@ public static class McpServerExtensions
if (server.ClientCapabilities?.Roots is null)
{
throw new ArgumentException("Client connected to the server does not support roots.", nameof(server));
throw new InvalidOperationException("Client does not support roots.");
}
return server.SendRequestAsync(