diff --git a/samples/AspNetCoreSseServer/Program.cs b/samples/AspNetCoreSseServer/Program.cs index 774957e88..9f94eb2c7 100644 --- a/samples/AspNetCoreSseServer/Program.cs +++ b/samples/AspNetCoreSseServer/Program.cs @@ -1,5 +1,3 @@ -using ModelContextProtocol.AspNetCore; - var builder = WebApplication.CreateBuilder(args); builder.Services.AddMcpServer().WithToolsFromAssembly(); var app = builder.Build(); diff --git a/src/ModelContextProtocol.AspNetCore/McpEndpointRouteBuilderExtensions.cs b/src/ModelContextProtocol.AspNetCore/McpEndpointRouteBuilderExtensions.cs index 3dae6cde6..6ddbc6ce3 100644 --- a/src/ModelContextProtocol.AspNetCore/McpEndpointRouteBuilderExtensions.cs +++ b/src/ModelContextProtocol.AspNetCore/McpEndpointRouteBuilderExtensions.cs @@ -1,5 +1,4 @@ -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Routing; using Microsoft.AspNetCore.WebUtilities; using Microsoft.Extensions.DependencyInjection; @@ -12,7 +11,7 @@ using System.Collections.Concurrent; using System.Security.Cryptography; -namespace ModelContextProtocol.AspNetCore; +namespace Microsoft.AspNetCore.Builder; /// /// Extension methods for to add MCP endpoints. diff --git a/src/ModelContextProtocol.AspNetCore/README.md b/src/ModelContextProtocol.AspNetCore/README.md index 76f7c2ba6..457321d09 100644 --- a/src/ModelContextProtocol.AspNetCore/README.md +++ b/src/ModelContextProtocol.AspNetCore/README.md @@ -30,7 +30,6 @@ dotnet add package ModelContextProtocol.AspNetCore --prerelease ```csharp // Program.cs -using ModelContextProtocol.AspNetCore; using ModelContextProtocol.Server; using System.ComponentModel; diff --git a/src/ModelContextProtocol/Shared/McpJsonRpcEndpoint.cs b/src/ModelContextProtocol/Shared/McpJsonRpcEndpoint.cs index ac0337f9e..3f7417af3 100644 --- a/src/ModelContextProtocol/Shared/McpJsonRpcEndpoint.cs +++ b/src/ModelContextProtocol/Shared/McpJsonRpcEndpoint.cs @@ -94,25 +94,30 @@ public virtual async ValueTask DisposeUnsynchronizedAsync() { _logger.CleaningUpEndpoint(EndpointName); - if (_sessionCts is not null) + try { - await _sessionCts.CancelAsync().ConfigureAwait(false); - } - - if (MessageProcessingTask is not null) - { - try + if (_sessionCts is not null) { - await MessageProcessingTask.ConfigureAwait(false); + await _sessionCts.CancelAsync().ConfigureAwait(false); } - catch (OperationCanceledException) + + if (MessageProcessingTask is not null) { - // Ignore cancellation + try + { + await MessageProcessingTask.ConfigureAwait(false); + } + catch (OperationCanceledException) + { + // Ignore cancellation + } } } - - _session?.Dispose(); - _sessionCts?.Dispose(); + finally + { + _session?.Dispose(); + _sessionCts?.Dispose(); + } _logger.EndpointCleanedUp(EndpointName); } diff --git a/tests/ModelContextProtocol.TestSseServer/Program.cs b/tests/ModelContextProtocol.TestSseServer/Program.cs index 4bbc5bfc8..23afc1d6e 100644 --- a/tests/ModelContextProtocol.TestSseServer/Program.cs +++ b/tests/ModelContextProtocol.TestSseServer/Program.cs @@ -1,5 +1,4 @@ -using ModelContextProtocol.AspNetCore; -using ModelContextProtocol.Protocol.Types; +using ModelContextProtocol.Protocol.Types; using ModelContextProtocol.Server; using Serilog; using System.Text;