McpToolRegistrationService Klasse

Stellt Dienste im Zusammenhang mit Tools im semantischen Kernel bereit.

Dieser Dienst verarbeitet die Registrierung und Verwaltung von MCP-Toolservern (Model Context Protocol) mit semantischen Kernel-Agents.

Konstruktor

McpToolRegistrationService()

Parameter

Name Beschreibung
logger
Standardwert: None

Methoden

__init__

Initialisieren Sie den MCP-Toolregistrierungsdienst für den semantischen Kernel.

__new__
add_tool_servers_to_agent

Fügt dem angegebenen Kernel die A365 MCP-Toolserver hinzu.

cleanup_connections

Bereinigen Sie alle verbundenen MCP-Plug-Ins.

send_chat_history

Senden Sie den Chatverlauf des semantischen Kernels an die MCP-Plattform.

Diese Methode extrahiert Nachrichten aus einem semantischen Kernel-ChatHistory-Objekt, konvertiert sie in das ChatHistoryMessage-Format und sendet sie zur Echtzeit-Bedrohungsschutz an die MCP-Plattform.

send_chat_history_messages

Senden sie Nachrichten des Semantischen Kernel-Chatverlaufs an die MCP-Plattform.

Diese Methode akzeptiert eine Sequenz von Semantik Kernel ChatMessageContent-Objekten, konvertiert sie in das ChatHistoryMessage-Format und sendet sie zur Echtzeit-Bedrohungsschutz an die MCP-Plattform.

__init__

Initialisieren Sie den MCP-Toolregistrierungsdienst für den semantischen Kernel.

__init__(logger: Logger | None = None)

Parameter

Name Beschreibung
logger

Loggerinstanz für Protokollierungsvorgänge.

Standardwert: None

__new__

__new__(**kwargs)

add_tool_servers_to_agent

Fügt dem angegebenen Kernel die A365 MCP-Toolserver hinzu.

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

Parameter

Name Beschreibung
kernel
Erforderlich

Die semantische Kernelinstanz, der die Tools hinzugefügt werden.

auth
Erforderlich

Autorisierungshandler für den Tokenaustausch.

auth_handler_name
Erforderlich
str

Name des Autorisierungshandlers.

context
Erforderlich

Kontext für den aktuellen Vorgang drehen.

auth_token
str | None

Authentifizierungstoken für den Zugriff auf die MCP-Server.

Standardwert: None

Gibt zurück

Typ Beschreibung

Ausnahmen

Typ Beschreibung

Wenn kernel keine oder erforderliche Parameter sind ungültig.

Wenn beim Herstellen einer Verbindung mit oder beim Konfigurieren von MCP-Servern ein Fehler auftritt.

cleanup_connections

Bereinigen Sie alle verbundenen MCP-Plug-Ins.

async cleanup_connections() -> None

Gibt zurück

Typ Beschreibung

send_chat_history

Senden Sie den Chatverlauf des semantischen Kernels an die MCP-Plattform.

Diese Methode extrahiert Nachrichten aus einem semantischen Kernel-ChatHistory-Objekt, konvertiert sie in das ChatHistoryMessage-Format und sendet sie zur Echtzeit-Bedrohungsschutz an die MCP-Plattform.

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

Parameter

Name Beschreibung
turn_context
Erforderlich

TurnContext aus dem Agents SDK mit Unterhaltungsinformationen.

chat_history
Erforderlich

Semantischer Kernel-ChatHistory-Objekt, das Nachrichten enthält.

limit
int | None

Optionale maximale Anzahl von zu sendenden Nachrichten. Wenn angegeben, sendet die neuesten N-Nachrichten. Wenn keine, werden alle Nachrichten gesendet.

Standardwert: None
options

Optionale Konfiguration für die Anforderung.

Standardwert: None

Gibt zurück

Typ Beschreibung

OperationResult, das Erfolg oder Fehler angibt.

Ausnahmen

Typ Beschreibung

Wenn turn_context oder chat_history keine ist.

Beispiele


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

Senden sie Nachrichten des Semantischen Kernel-Chatverlaufs an die MCP-Plattform.

Diese Methode akzeptiert eine Sequenz von Semantik Kernel ChatMessageContent-Objekten, konvertiert sie in das ChatHistoryMessage-Format und sendet sie zur Echtzeit-Bedrohungsschutz an die MCP-Plattform.

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

Parameter

Name Beschreibung
turn_context
Erforderlich

TurnContext aus dem Agents SDK mit Unterhaltungsinformationen.

messages
Erforderlich

Sequenz der zu sendenden semantischen Kernel-ChatMessageContent-Objekte.

options

Optionale Konfiguration für die Anforderung.

Standardwert: None

Gibt zurück

Typ Beschreibung

OperationResult, das Erfolg oder Fehler angibt.

Ausnahmen

Typ Beschreibung

Wenn turn_context oder Nachrichten keine sind.

Beispiele


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