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__
__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
|
Nome do responsável pela autorização. |
|
context
Necessário
|
Muda o contexto para a operação atual. |
|
auth_token
|
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
|
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")