McpToolRegistrationService Classe

Fornece serviços relacionados com ferramentas no Kernel Semântico.

Este serviço trata do registo e gestão dos servidores de ferramentas MCP (Model Context Protocol) com agentes Semantic Kernel.

Construtor

McpToolRegistrationService()

Parâmetros

Name Description
logger
Default value: None

Métodos

__init__

Inicialize o serviço de registo da ferramenta MCP para kernel semântico.

__new__
add_tool_servers_to_agent

Adiciona os servidores de ferramentas MCP do A365 ao kernel especificado.

cleanup_connections

Limpa todos os plugins MCP ligados.

send_chat_history

Envie o histórico de chat do Semantic Kernel para a plataforma MCP.

Este método extrai mensagens de um objeto Semantic Kernel ChatHistory, converte-as para o formato ChatHistoryMessage e envia-as para a plataforma MCP para proteção contra ameaças em tempo real.

send_chat_history_messages

Envie mensagens do histórico de chat do Semantic Kernel para a plataforma MCP.

Este método aceita uma sequência de objetos Semantic Kernel ChatMessageContent, converte-os para o formato ChatHistoryMessage e envia-os para a plataforma MCP para proteção contra ameaças em tempo real.

__init__

Inicialize o serviço de registo da ferramenta MCP para kernel semântico.

__init__(logger: Logger | None = None)

Parâmetros

Name Description
logger

Instância do logger para operações de registo.

Default value: None

__new__

__new__(**kwargs)

add_tool_servers_to_agent

Adiciona os servidores de ferramentas MCP do A365 ao kernel especificado.

async add_tool_servers_to_agent(kernel: Kernel, auth: Authorization, auth_handler_name: str, context: TurnContext, auth_token: str | None = None) -> None

Parâmetros

Name Description
kernel
Necessário

A instância Semântic Kernel à qual as ferramentas serão adicionadas.

auth
Necessário

Gestor de autorização para troca de tokens.

auth_handler_name
Necessário
str

Nome do responsável pela autorização.

context
Necessário

Muda o contexto para a operação atual.

auth_token
str | None

Token de autenticação para aceder aos servidores MCP.

Default value: None

Devoluções

Tipo Description

Exceções

Tipo Description

Se o kernel for Nenhum ou os parâmetros necessários forem inválidos.

Se houver um erro ao ligar ou configurar servidores MCP.

cleanup_connections

Limpa todos os plugins MCP ligados.

async cleanup_connections() -> None

Devoluções

Tipo Description

send_chat_history

Envie o histórico de chat do Semantic Kernel para a plataforma MCP.

Este método extrai mensagens de um objeto Semantic Kernel ChatHistory, converte-as para o formato ChatHistoryMessage e envia-as para a plataforma MCP para proteção contra ameaças em tempo real.

async send_chat_history(turn_context: TurnContext, chat_history: ChatHistory, limit: int | None = None, options: ToolOptions | None = None) -> OperationResult

Parâmetros

Name Description
turn_context
Necessário

TurnContext do SDK Agents que contém informações de conversa.

chat_history
Necessário

Objecto Semântic Kernel ChatHistory contendo mensagens.

limit
int | None

Número máximo opcional de mensagens a enviar. Se especificado, envia as N mensagens mais recentes. Se não houver, envia todas as mensagens.

Default value: None
options

Configuração opcional para o pedido.

Default value: None

Devoluções

Tipo Description

Operação Resultado indica sucesso ou fracasso.

Exceções

Tipo Description

Se turn_context ou chat_history for Nenhum.

Exemplos


>>> from semantic_kernel.contents import ChatHistory
>>> from microsoft_agents_a365.tooling.extensions.semantickernel import (
...     McpToolRegistrationService
... )
>>>
>>> service = McpToolRegistrationService()
>>> chat_history = ChatHistory()
>>> chat_history.add_user_message("Hello!")
>>> chat_history.add_assistant_message("Hi there!")
>>>
>>> result = await service.send_chat_history(
...     turn_context, chat_history, limit=50
... )
>>> if result.succeeded:
...     print("Chat history sent successfully")

send_chat_history_messages

Envie mensagens do histórico de chat do Semantic Kernel para a plataforma MCP.

Este método aceita uma sequência de objetos Semantic Kernel ChatMessageContent, converte-os para o formato ChatHistoryMessage e envia-os para a plataforma MCP para proteção contra ameaças em tempo real.

async send_chat_history_messages(turn_context: TurnContext, messages: Sequence[ChatMessageContent], options: ToolOptions | None = None) -> OperationResult

Parâmetros

Name Description
turn_context
Necessário

TurnContext do SDK Agents que contém informações de conversa.

messages
Necessário

Sequência de objetos ChatMessageContent do Kernel Semântico a enviar.

options

Configuração opcional para o pedido.

Default value: None

Devoluções

Tipo Description

Operação Resultado indica sucesso ou fracasso.

Exceções

Tipo Description

Se turn_context ou mensagens for Nenhum.

Exemplos


>>> from semantic_kernel.contents import ChatMessageContent, AuthorRole
>>> from microsoft_agents_a365.tooling.extensions.semantickernel import (
...     McpToolRegistrationService
... )
>>>
>>> service = McpToolRegistrationService()
>>> messages = [
...     ChatMessageContent(role=AuthorRole.USER, content="Hello!"),
...     ChatMessageContent(role=AuthorRole.ASSISTANT, content="Hi there!"),
... ]
>>>
>>> result = await service.send_chat_history_messages(
...     turn_context, messages
... )
>>> if result.succeeded:
...     print("Chat history sent successfully")