McpToolRegistrationService クラス
セマンティック カーネルのツールに関連するサービスを提供します。
このサービスは、セマンティック カーネル エージェントを使用した MCP (モデル コンテキスト プロトコル) ツール サーバーの登録と管理を処理します。
コンストラクター
McpToolRegistrationService()
パラメーター
| 名前 | 説明 |
|---|---|
|
logger
|
規定値: None
|
メソッド
| __init__ |
セマンティック カーネルの MCP ツール登録サービスを初期化します。 |
| __new__ | |
| add_tool_servers_to_agent |
指定したカーネルに A365 MCP ツール サーバーを追加します。 |
| cleanup_connections |
接続されているすべての MCP プラグインをクリーンアップします。 |
| send_chat_history |
セマンティック カーネル チャット履歴を MCP プラットフォームに送信します。 このメソッドは、セマンティック カーネル ChatHistory オブジェクトからメッセージを抽出し、それらを ChatHistoryMessage 形式に変換して、リアルタイムの脅威保護のために MCP プラットフォームに送信します。 |
| send_chat_history_messages |
セマンティック カーネル チャット履歴メッセージを MCP プラットフォームに送信します。 このメソッドは、セマンティック カーネル ChatMessageContent オブジェクトのシーケンスを受け入れ、それらを ChatHistoryMessage 形式に変換し、リアルタイムの脅威保護のために MCP プラットフォームに送信します。 |
__init__
__new__
__new__(**kwargs)
add_tool_servers_to_agent
指定したカーネルに A365 MCP ツール サーバーを追加します。
async add_tool_servers_to_agent(kernel: Kernel, auth: Authorization, auth_handler_name: str, context: TurnContext, auth_token: str | None = None) -> None
パラメーター
| 名前 | 説明 |
|---|---|
|
kernel
必須
|
ツールが追加されるセマンティック カーネル インスタンス。 |
|
auth
必須
|
トークン交換の承認ハンドラー。 |
|
auth_handler_name
必須
|
承認ハンドラーの名前。 |
|
context
必須
|
現在の操作のコンテキストを有効にします。 |
|
auth_token
|
MCP サーバーにアクセスするための認証トークン。 規定値: None
|
返品
| 型 | 説明 |
|---|---|
例外
| 型 | 説明 |
|---|---|
|
カーネルが None の場合、または必須パラメーターが無効です。 |
|
|
MCP サーバーへの接続または構成中にエラーが発生した場合。 |
cleanup_connections
send_chat_history
セマンティック カーネル チャット履歴を MCP プラットフォームに送信します。
このメソッドは、セマンティック カーネル ChatHistory オブジェクトからメッセージを抽出し、それらを ChatHistoryMessage 形式に変換して、リアルタイムの脅威保護のために MCP プラットフォームに送信します。
async send_chat_history(turn_context: TurnContext, chat_history: ChatHistory, limit: int | None = None, options: ToolOptions | None = None) -> OperationResult
パラメーター
| 名前 | 説明 |
|---|---|
|
turn_context
必須
|
会話情報を含む Agents SDK の TurnContext。 |
|
chat_history
必須
|
メッセージを含むセマンティック カーネル ChatHistory オブジェクト。 |
|
limit
|
送信するメッセージの最大数 (省略可能)。 指定した場合は、最新の N メッセージを送信します。 None の場合は、すべてのメッセージを送信します。 規定値: None
|
|
options
|
要求のオプションの構成。 規定値: None
|
返品
| 型 | 説明 |
|---|---|
|
成功または失敗を示す OperationResult。 |
例外
| 型 | 説明 |
|---|---|
|
turn_contextまたはchat_historyが None の場合。 |
例
>>> 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
セマンティック カーネル チャット履歴メッセージを MCP プラットフォームに送信します。
このメソッドは、セマンティック カーネル ChatMessageContent オブジェクトのシーケンスを受け入れ、それらを ChatHistoryMessage 形式に変換し、リアルタイムの脅威保護のために MCP プラットフォームに送信します。
async send_chat_history_messages(turn_context: TurnContext, messages: Sequence[ChatMessageContent], options: ToolOptions | None = None) -> OperationResult
パラメーター
| 名前 | 説明 |
|---|---|
|
turn_context
必須
|
会話情報を含む Agents SDK の TurnContext。 |
|
messages
必須
|
送信するセマンティック カーネル ChatMessageContent オブジェクトのシーケンス。 |
|
options
|
要求のオプションの構成。 規定値: None
|
返品
| 型 | 説明 |
|---|---|
|
成功または失敗を示す OperationResult。 |
例外
| 型 | 説明 |
|---|---|
|
turn_contextまたはメッセージが None の場合。 |
例
>>> 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")