File tree Expand file tree Collapse file tree 5 files changed +21
-21
lines changed
samples/AspNetCoreSseServer
ModelContextProtocol.AspNetCore
ModelContextProtocol/Shared
tests/ModelContextProtocol.TestSseServer Expand file tree Collapse file tree 5 files changed +21
-21
lines changed Original file line number Diff line number Diff line change 1- using ModelContextProtocol . AspNetCore ;
2-
31var builder = WebApplication . CreateBuilder ( args ) ;
42builder . Services . AddMcpServer ( ) . WithToolsFromAssembly ( ) ;
53var app = builder . Build ( ) ;
Original file line number Diff line number Diff line change 1- using Microsoft . AspNetCore . Builder ;
2- using Microsoft . AspNetCore . Http ;
1+ using Microsoft . AspNetCore . Http ;
32using Microsoft . AspNetCore . Routing ;
43using Microsoft . AspNetCore . WebUtilities ;
54using Microsoft . Extensions . DependencyInjection ;
1211using System . Collections . Concurrent ;
1312using System . Security . Cryptography ;
1413
15- namespace ModelContextProtocol . AspNetCore ;
14+ namespace Microsoft . AspNetCore . Builder ;
1615
1716/// <summary>
1817/// Extension methods for <see cref="IEndpointRouteBuilder"/> to add MCP endpoints.
Original file line number Diff line number Diff line change @@ -30,7 +30,6 @@ dotnet add package ModelContextProtocol.AspNetCore --prerelease
3030
3131``` csharp
3232// Program.cs
33- using ModelContextProtocol .AspNetCore ;
3433using ModelContextProtocol .Server ;
3534using System .ComponentModel ;
3635
Original file line number Diff line number Diff line change @@ -94,25 +94,30 @@ public virtual async ValueTask DisposeUnsynchronizedAsync()
9494 {
9595 _logger . CleaningUpEndpoint ( EndpointName ) ;
9696
97- if ( _sessionCts is not null )
97+ try
9898 {
99- await _sessionCts . CancelAsync ( ) . ConfigureAwait ( false ) ;
100- }
101-
102- if ( MessageProcessingTask is not null )
103- {
104- try
99+ if ( _sessionCts is not null )
105100 {
106- await MessageProcessingTask . ConfigureAwait ( false ) ;
101+ await _sessionCts . CancelAsync ( ) . ConfigureAwait ( false ) ;
107102 }
108- catch ( OperationCanceledException )
103+
104+ if ( MessageProcessingTask is not null )
109105 {
110- // Ignore cancellation
106+ try
107+ {
108+ await MessageProcessingTask . ConfigureAwait ( false ) ;
109+ }
110+ catch ( OperationCanceledException )
111+ {
112+ // Ignore cancellation
113+ }
111114 }
112115 }
113-
114- _session ? . Dispose ( ) ;
115- _sessionCts ? . Dispose ( ) ;
116+ finally
117+ {
118+ _session ? . Dispose ( ) ;
119+ _sessionCts ? . Dispose ( ) ;
120+ }
116121
117122 _logger . EndpointCleanedUp ( EndpointName ) ;
118123 }
Original file line number Diff line number Diff line change 1- using ModelContextProtocol . AspNetCore ;
2- using ModelContextProtocol . Protocol . Types ;
1+ using ModelContextProtocol . Protocol . Types ;
32using ModelContextProtocol . Server ;
43using Serilog ;
54using System . Text ;
You can’t perform that action at this time.
0 commit comments