Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Alternative to `RunSessionHandler` for accessing MCP servers

Ouverte
#1,416 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
Calme
Stack technique
csharp

Piste de recherche

Commencez par examiner les API de RunSessionHandler et McpServer, en particulier McpServer.SessionId et RunAsync, et comparez-les à la discussion liée depuis issue 1382. Déterminez la manière prise en charge de conserver l’accès aux serveurs MCP actifs et d’envoyer des notifications ultérieurement, notamment la façon dont les serveurs sans état doivent être gérés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

blocked enhancement needs confirmation P2

Now that RunSessionHandler has been marked as experimental, what is the correct way to access the MCP servers in order to send notifications at a later time?

We currently have:

var mcpServers = new ConcurrentDictionary<string, McpServer>();

options.RunSessionHandler = async (_, mcpServer, token) =>
{
    if (mcpServer.SessionId == null)
    {
        // There is no sessionId if serverOptions.Stateless is true.
        await mcpServer.RunAsync(token);
        return;
    }

    try
    {
        mcpServers[mcpServer.SessionId] = mcpServer;
        await mcpServer.RunAsync(token);
    }
    finally
    {
        // This code runs when the session ends.
        mcpServers.TryRemove(mcpServer.SessionId, out var _);
    }
};

We are then able to send notifications to the active servers.

(initially posted here)

Langage dominant
C#
Étoiles
4.6k
Forks
817
Merge moyen
8 j 7 h
PR mergées (30 j)
3

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de modelcontextprotocol/csharp-sdk

Toutes les issues de modelcontextprotocol/csharp-sdk

Issues similaires

Plus d'issues C#

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.