* Remove `McpEndpoint` & `IMcpClient` * Revise naming, add abstract classes * Fix missing renames * Move extension methods to instance methods * Add back old API, but obsoleted * Add back obsoleted factory classes * Move deprecation attributes * `SseClientTransport` -> `HttpClientTransport` * Update src/ModelContextProtocol.Core/Server/AugmentedServiceProvider.cs Co-authored-by: Stephen Halter <halter73@gmail.com> * PR feedback * PR feedback * Add back dispose lock * Fix docs projects * PR feedback * Undo `docs/*.md` changes --------- Co-authored-by: Stephen Halter <halter73@gmail.com>
23 lines
735 B
C#
23 lines
735 B
C#
using Microsoft.Extensions.Hosting;
|
|
using ModelContextProtocol;
|
|
using ModelContextProtocol.Server;
|
|
|
|
internal class SubscriptionMessageSender(McpServer server, HashSet<string> subscriptions) : BackgroundService
|
|
{
|
|
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
|
|
{
|
|
while (!stoppingToken.IsCancellationRequested)
|
|
{
|
|
foreach (var uri in subscriptions)
|
|
{
|
|
await server.SendNotificationAsync("notifications/resource/updated",
|
|
new
|
|
{
|
|
Uri = uri,
|
|
}, cancellationToken: stoppingToken);
|
|
}
|
|
|
|
await Task.Delay(5000, stoppingToken);
|
|
}
|
|
}
|
|
}
|