McpToolRegistrationService Classe

Fornisce servizi correlati agli strumenti nel kernel semantico.

Questo servizio gestisce la registrazione e la gestione dei server degli strumenti MCP (Model Context Protocol) con agenti semantici del kernel.

Costruttore

McpToolRegistrationService()

Parametri

Nome Descrizione
logger
Valore predefinito: None

Metodi

__init__

Inizializzare il servizio di registrazione dello strumento MCP per il kernel semantico.

__new__
add_tool_servers_to_agent

Aggiunge i server degli strumenti MCP A365 al kernel specificato.

cleanup_connections

Pulire tutti i plug-in MCP connessi.

send_chat_history

Inviare la cronologia delle chat del kernel semantico alla piattaforma MCP.

Questo metodo estrae i messaggi da un oggetto Semantic Kernel ChatHistory, li converte in formato ChatHistoryMessage e li invia alla piattaforma MCP per la protezione dalle minacce in tempo reale.

send_chat_history_messages

Inviare messaggi della cronologia delle chat del kernel semantico alla piattaforma MCP.

Questo metodo accetta una sequenza di oggetti Semantic Kernel ChatMessageContent, li converte in formato ChatHistoryMessage e li invia alla piattaforma MCP per la protezione dalle minacce in tempo reale.

__init__

Inizializzare il servizio di registrazione dello strumento MCP per il kernel semantico.

__init__(logger: Logger | None = None)

Parametri

Nome Descrizione
logger

Istanza del logger per le operazioni di registrazione.

Valore predefinito: None

__new__

__new__(**kwargs)

add_tool_servers_to_agent

Aggiunge i server degli strumenti MCP A365 al kernel specificato.

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

Parametri

Nome Descrizione
kernel
Necessario

Istanza del kernel semantico a cui verranno aggiunti gli strumenti.

auth
Necessario

Gestore di autorizzazione per lo scambio di token.

auth_handler_name
Necessario
str

Nome del gestore di autorizzazione.

context
Necessario

Contesto di turno per l'operazione corrente.

auth_token
str | None

Token di autenticazione per accedere ai server MCP.

Valore predefinito: None

Valori restituiti

Tipo Descrizione

Eccezioni

Tipo Descrizione

Se il kernel è None o i parametri obbligatori non sono validi.

Se si verifica un errore durante la connessione o la configurazione dei server MCP.

cleanup_connections

Pulire tutti i plug-in MCP connessi.

async cleanup_connections() -> None

Valori restituiti

Tipo Descrizione

send_chat_history

Inviare la cronologia delle chat del kernel semantico alla piattaforma MCP.

Questo metodo estrae i messaggi da un oggetto Semantic Kernel ChatHistory, li converte in formato ChatHistoryMessage e li invia alla piattaforma MCP per la protezione dalle minacce in tempo reale.

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

Parametri

Nome Descrizione
turn_context
Necessario

TurnContext da Agents SDK contenente informazioni di conversazione.

chat_history
Necessario

Oggetto Semantic Kernel ChatHistory contenente messaggi.

limit
int | None

Numero massimo facoltativo di messaggi da inviare. Se specificato, invia i messaggi N più recenti. Se Nessuno invia tutti i messaggi.

Valore predefinito: None
options

Configurazione facoltativa per la richiesta.

Valore predefinito: None

Valori restituiti

Tipo Descrizione

OperationResult indica l'esito positivo o negativo.

Eccezioni

Tipo Descrizione

Se turn_context o chat_history è Nessuno.

Esempio


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

Inviare messaggi della cronologia delle chat del kernel semantico alla piattaforma MCP.

Questo metodo accetta una sequenza di oggetti Semantic Kernel ChatMessageContent, li converte in formato ChatHistoryMessage e li invia alla piattaforma MCP per la protezione dalle minacce in tempo reale.

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

Parametri

Nome Descrizione
turn_context
Necessario

TurnContext da Agents SDK contenente informazioni di conversazione.

messages
Necessario

Sequenza di oggetti Semantic Kernel ChatMessageContent da inviare.

options

Configurazione facoltativa per la richiesta.

Valore predefinito: None

Valori restituiti

Tipo Descrizione

OperationResult indica l'esito positivo o negativo.

Eccezioni

Tipo Descrizione

Se turn_context o i messaggi sono Nessuno.

Esempio


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