Как захватить и сохранить идентификаторы сеанса при использовании сервера модели ContextProtocol (MCP) с SSE в .net? [заC#

Место общения программистов C#
Ответить
Anonymous
 Как захватить и сохранить идентификаторы сеанса при использовании сервера модели ContextProtocol (MCP) с SSE в .net? [за

Сообщение Anonymous »

Я строю сервер MCP (протокол контекста модели) в ядре .NET с SSE Communication. Сервер работает -я могу подключить и получать идентификатор сеанса на первом соединении.
Среда:
.net 8
nuget packages:
modelcontextprotocol --prelease
microsoft. /> код: < /p>

Код: Выделить всё

Tool.cs

using Microsoft.Extensions.AI;
using ModelContextProtocol;
using ModelContextProtocol.Protocol;
using ModelContextProtocol.Server;
using System.ComponentModel;

namespace Tools;

[McpServerToolType]
public sealed class GreetingTools
{
[McpServerTool, Description("Says Hello to a user")]
public static string Echo(string username)
{
return "Hello " + username;
}
}

Program.cs

using Microsoft.Extensions.DependencyInjection;
using ModelContextProtocol;
using ModelContextProtocol.Server;

var builder = WebApplication.CreateBuilder(args);

// Register MCP server and discover tools from the current assembly
builder.Services.AddMcpServer()
.WithHttpTransport()
.WithToolsFromAssembly();

var app = builder.Build();

// Add MCP middleware
app.MapMcp();

app.Run();
Когда я нажимаю http: // localhost: 5000/sse (через почтальон), сервер генерирует идентификатор сеанса, как:
/message? sessionId = b7ty0l9x9qaxis96s7nopkq
на идентификаторы клиента. /> Проблема:
Мне нужно захватить этот идентификатор сеанса, когда клиент подключается в первый раз, и сохранить его в моей базе данных.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... -mcp-serve
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»