McpToolRegistrationService Classe

Fournit des services d’inscription d’outils MCP pour les agents Agent Framework.

Ce service gère l’inscription et la gestion des serveurs d’outils MCP (Model Context Protocol) avec des agents Agent Framework.

Constructeur

McpToolRegistrationService()

Paramètres

Nom Description
logger
Valeur par défaut: None

Méthodes

__init__

Initialisez le service d’inscription de l’outil MCP pour Agent Framework.

__new__
add_tool_servers_to_agent

Ajoutez des serveurs d’outils MCP à un RawAgent (implémentation .NET miroirs).

cleanup

Nettoyez les ressources utilisées par le service.

send_chat_history_from_store

Envoyez l’historique des conversations à partir d’un HistoryProvider à la plateforme MCP.

Il s’agit d’une méthode pratique qui extrait les messages du magasin et des délégués à send_chat_history_messages().

send_chat_history_messages

Envoyez des messages d’historique des conversations à la plateforme MCP pour la protection contre les menaces en temps réel.

Il s’agit de la méthode d’implémentation principale qui gère la conversion et la délégation de messages vers le service d’outils principal.

Note

Même si chat_messages est vide ou que tous les messages sont filtrés pendant

conversion, la demande sera toujours envoyée à la plateforme MCP. Ceci

garantit que le message utilisateur de turn_context.activity.text est inscrit

correctement pour la protection contre les menaces en temps réel.

__init__

Initialisez le service d’inscription de l’outil MCP pour Agent Framework.

__init__(logger: Logger | None = None)

Paramètres

Nom Description
logger

Instance d’enregistreur d’événements pour les opérations de journalisation.

Valeur par défaut: None

__new__

__new__(**kwargs)

add_tool_servers_to_agent

Ajoutez des serveurs d’outils MCP à un RawAgent (implémentation .NET miroirs).

async add_tool_servers_to_agent(chat_client: OpenAIChatClient, agent_instructions: str, initial_tools: List[object], auth: Authorization, auth_handler_name: str, turn_context: TurnContext, auth_token: str | None = None) -> RawAgent

Paramètres

Nom Description
chat_client
Obligatoire
<xref:OpenAIChatClient>

L’instance cliente de conversation (OpenAIChatClient prend en charge OpenAI et Azure OpenAI)

agent_instructions
Obligatoire
str

Instructions pour le comportement de l’agent

initial_tools
Obligatoire

Liste des outils initiaux à ajouter à l’agent

auth
Obligatoire
<xref:Authorization>

Contexte d’autorisation pour l’échange de jetons

auth_handler_name
Obligatoire
str

Nom du gestionnaire d’autorisation.

turn_context
Obligatoire
<xref:TurnContext>

Activer le contexte de l’opération

auth_token

Jeton de porteur facultatif pour l’authentification

Valeur par défaut: None

Retours

Type Description
<xref:RawAgent>

Instance RawAgent avec les outils MCP inscrits.

Exceptions

Type Description

Si la création de l’agent échoue.

cleanup

Nettoyez les ressources utilisées par le service.

async cleanup()

send_chat_history_from_store

Envoyez l’historique des conversations à partir d’un HistoryProvider à la plateforme MCP.

Il s’agit d’une méthode pratique qui extrait les messages du magasin et des délégués à send_chat_history_messages().

async send_chat_history_from_store(chat_message_store: HistoryProvider, turn_context: TurnContext, tool_options: ToolOptions | None = None) -> OperationResult

Paramètres

Nom Description
chat_message_store
Obligatoire
<xref:agent_framework._sessions.HistoryProvider>

HistoryProvider contenant l’historique des conversations.

turn_context
Obligatoire

TurnContext à partir du Kit de développement logiciel (SDK) Agents contenant des informations de conversation.

tool_options

Configuration facultative pour la demande.

Valeur par défaut: None

Retours

Type Description

OperationResult indiquant la réussite ou l’échec de l’opération.

Exceptions

Type Description

Si chat_message_store ou turn_context est None.

Exemples


>>> service = McpToolRegistrationService()
>>> result = await service.send_chat_history_from_store(
...     thread.chat_message_store, turn_context
... )

send_chat_history_messages

Envoyez des messages d’historique des conversations à la plateforme MCP pour la protection contre les menaces en temps réel.

Il s’agit de la méthode d’implémentation principale qui gère la conversion et la délégation de messages vers le service d’outils principal.

Note

Même si chat_messages est vide ou que tous les messages sont filtrés pendant

conversion, la demande sera toujours envoyée à la plateforme MCP. Ceci

garantit que le message utilisateur de turn_context.activity.text est inscrit

correctement pour la protection contre les menaces en temps réel.

async send_chat_history_messages(chat_messages: Sequence[Message], turn_context: TurnContext, tool_options: ToolOptions | None = None) -> OperationResult

Paramètres

Nom Description
chat_messages
Obligatoire
Sequence[<xref:agent_framework._types.Message>]

Séquence d’objets Message d’Agent Framework à envoyer. Peut être vide : la demande est toujours envoyée pour inscrire le message de l’utilisateur à partir de turn_context.activity.text.

turn_context
Obligatoire

TurnContext à partir du Kit de développement logiciel (SDK) Agents contenant des informations de conversation.

tool_options

Configuration facultative pour la demande. Par défaut, les options spécifiques à AgentFramework ne sont pas fournies.

Valeur par défaut: None

Retours

Type Description

OperationResult indiquant la réussite ou l’échec de l’opération.

Exceptions

Type Description

Si chat_messages ou turn_context n’est pas.

Exemples


>>> service = McpToolRegistrationService()
>>> messages = [Message(role="user", text="Hello")]
>>> result = await service.send_chat_history_messages(messages, turn_context)
>>> if result.succeeded:
...     print("Chat history sent successfully")