McpToolRegistrationService Clase

Proporciona servicios de registro de herramientas MCP para agentes de Agent Framework.

Este servicio controla el registro y la administración de servidores de herramientas MCP (Protocolo de contexto de modelo) con agentes de Agent Framework.

Constructor

McpToolRegistrationService()

Parámetros

Nombre Description
logger
Valor predeterminado: None

Métodos

__init__

Inicialice el servicio de registro de herramientas de MCP para Agent Framework.

__new__
add_tool_servers_to_agent

Agregue servidores de herramientas MCP a rawAgent (refleja la implementación de .NET).

cleanup

Limpie los recursos utilizados por el servicio.

send_chat_history_from_store

Envíe el historial de chat desde historyProvider a la plataforma MCP.

Este es un método de conveniencia que extrae los mensajes del almacén y los delegados a send_chat_history_messages().

send_chat_history_messages

Envíe mensajes del historial de chat a la plataforma MCP para la protección contra amenazas en tiempo real.

Este es el método de implementación principal que controla la conversión de mensajes y la delegación al servicio de herramientas principal.

Nota:

Incluso si chat_messages está vacío o se filtran todos los mensajes durante

conversión, la solicitud se seguirá enviando a la plataforma MCP. Éste

garantiza que el mensaje de usuario de turn_context.activity.text esté registrado.

correctamente para la protección contra amenazas en tiempo real.

__init__

Inicialice el servicio de registro de herramientas de MCP para Agent Framework.

__init__(logger: Logger | None = None)

Parámetros

Nombre Description
logger

Instancia del registrador para las operaciones de registro.

Valor predeterminado: None

__new__

__new__(**kwargs)

add_tool_servers_to_agent

Agregue servidores de herramientas MCP a rawAgent (refleja la implementación de .NET).

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

Parámetros

Nombre Description
chat_client
Requerido
<xref:OpenAIChatClient>

La instancia de cliente de chat (OpenAIChatClient admite OpenAI y Azure OpenAI)

agent_instructions
Requerido
str

Instrucciones para el comportamiento del agente

initial_tools
Requerido

Lista de herramientas iniciales que se van a agregar al agente

auth
Requerido
<xref:Authorization>

Contexto de autorización para el intercambio de tokens

auth_handler_name
Requerido
str

Nombre del controlador de autorización.

turn_context
Requerido
<xref:TurnContext>

Activar el contexto de la operación

auth_token

Token de portador opcional para la autenticación

Valor predeterminado: None

Devoluciones

Tipo Description
<xref:RawAgent>

Instancia rawAgent con herramientas de MCP registradas.

Excepciones

Tipo Description

Si se produce un error en la creación del agente.

cleanup

Limpie los recursos utilizados por el servicio.

async cleanup()

send_chat_history_from_store

Envíe el historial de chat desde historyProvider a la plataforma MCP.

Este es un método de conveniencia que extrae los mensajes del almacén y los delegados a send_chat_history_messages().

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

Parámetros

Nombre Description
chat_message_store
Requerido
<xref:agent_framework._sessions.HistoryProvider>

HistoryProvider que contiene el historial de conversaciones.

turn_context
Requerido

TurnContext del SDK de agentes que contiene información de conversación.

tool_options

Configuración opcional para la solicitud.

Valor predeterminado: None

Devoluciones

Tipo Description

OperationResult indica que la operación se ha realizado correctamente o no.

Excepciones

Tipo Description

Si chat_message_store o turn_context es None.

Ejemplos


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

send_chat_history_messages

Envíe mensajes del historial de chat a la plataforma MCP para la protección contra amenazas en tiempo real.

Este es el método de implementación principal que controla la conversión de mensajes y la delegación al servicio de herramientas principal.

Nota:

Incluso si chat_messages está vacío o se filtran todos los mensajes durante

conversión, la solicitud se seguirá enviando a la plataforma MCP. Éste

garantiza que el mensaje de usuario de turn_context.activity.text esté registrado.

correctamente para la protección contra amenazas en tiempo real.

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

Parámetros

Nombre Description
chat_messages
Requerido
Sequence[<xref:agent_framework._types.Message>]

Secuencia de objetos message del marco de agente que se van a enviar. Puede estar vacío: la solicitud se seguirá enviando para registrar el mensaje de usuario desde turn_context.activity.text.

turn_context
Requerido

TurnContext del SDK de agentes que contiene información de conversación.

tool_options

Configuración opcional para la solicitud. El valor predeterminado es AgentFramework-specific options (Opciones específicas de AgentFramework) si no se proporciona.

Valor predeterminado: None

Devoluciones

Tipo Description

OperationResult indica que la operación se ha realizado correctamente o no.

Excepciones

Tipo Description

Si chat_messages o turn_context es Ninguno.

Ejemplos


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