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__
__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
|
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
|
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")