McpToolServerConfigurationService Klasse

Leverer tjenester for administrasjon av konfigurasjon av MCP-verktøyserver.

Denne tjenesten håndterer oppdaging og konfigurasjon av MCP-verktøyservere (Model Context Protocol) fra flere kilder:

  • Utvikling: Lokale ToolingManifest.json filer
  • Produksjon: Eksterne verktøygatewayendepunkter

Konstruktør

McpToolServerConfigurationService()

Parametere

Navn Beskrivelse
logger
Default value: None

Metoder

__init__

Initialiser konfigurasjonstjenesten for MCP-verktøyserveren.

__new__
list_tool_servers

Henter listen over MCP-servere som er konfigurert for agenten.

Når authorization, auth_handler_nameog turn_context er alle angitt, hentes OAuth-tokener per målgruppe for hver server etter oppdaging:

  • V1-servere (ingen audience felt) deler det delte ATG-tokenet (én utveksling).
  • V2-servere mottar et tokenområde til sin egen GUID for målgruppe.
send_chat_history

Sender chatteloggen til MCP-plattformen for trusselbeskyttelse i sanntid.

Bemerkning

Selv om chat_history_messages er tom, sendes forespørselen fortsatt til

MCP-plattformen. Dette sikrer brukermeldingen fra turn_context.activity.text

er riktig registrert for trusselbeskyttelse i sanntid.

__init__

Initialiser konfigurasjonstjenesten for MCP-verktøyserveren.

__init__(logger: Logger | None = None)

Parametere

Navn Beskrivelse
logger

Loggerforekomst for loggingsoperasjoner. Hvis Ingen oppretter en ny logger.

Default value: None

__new__

__new__(**kwargs)

list_tool_servers

Henter listen over MCP-servere som er konfigurert for agenten.

Når authorization, auth_handler_nameog turn_context er alle angitt, hentes OAuth-tokener per målgruppe for hver server etter oppdaging:

  • V1-servere (ingen audience felt) deler det delte ATG-tokenet (én utveksling).
  • V2-servere mottar et tokenområde til sin egen GUID for målgruppe.
async list_tool_servers(agentic_app_id: str, auth_token: str | None = None, options: ToolOptions | None = None, authorization: Authorization | None = None, auth_handler_name: str | None = None, turn_context: TurnContext | None = None) -> List[MCPServerConfig]

Parametere

Navn Beskrivelse
agentic_app_id
Obligatorisk
str

Agentisk app-ID for agenten.

auth_token
str | None

Godkjenningstoken som brukes til gateway-søk.

Default value: None
options

Valgfri ToolOptions-forekomst som inneholder valgfrie parametere.

Default value: None
authorization

Valgfri godkjenningskontekst for per målgruppetokenutveksling.

Default value: None
auth_handler_name
str | None

Valgfritt godkjenningsbehandlingsnavn som brukes med authorization.

Default value: None
turn_context

Valgfri TurnContext brukt med authorization.

Default value: None

Returnerer

Type Beskrivelse

Returnerer listen over MCP-servere som er konfigurert, hver med en Authorization topptekst vedlagt når godkjenningskontekst er angitt.

Unntak

Type Beskrivelse

Hvis nødvendige parametere er ugyldige eller tomme.

Hvis det oppstår en feil under kommunikasjon med verktøygatewayen eller en per målgruppe-tokenutveksling, mislykkes.

send_chat_history

Sender chatteloggen til MCP-plattformen for trusselbeskyttelse i sanntid.

Bemerkning

Selv om chat_history_messages er tom, sendes forespørselen fortsatt til

MCP-plattformen. Dette sikrer brukermeldingen fra turn_context.activity.text

er riktig registrert for trusselbeskyttelse i sanntid.

async send_chat_history(turn_context: TurnContext, chat_history_messages: List[ChatHistoryMessage], options: ToolOptions | None = None) -> OperationResult

Parametere

Navn Beskrivelse
turn_context
Obligatorisk

TurnContext fra Agents SDK som inneholder samtaleinformasjon. Må ha en gyldig aktivitet med conversation.id, activity.id og activity.text.

chat_history_messages
Obligatorisk

Liste over ChatHistoryMessage-objekter som representerer chatteloggen. Kan være tom – en tom liste sender fortsatt en forespørsel til MCP-plattformen med tom chatlogg.

options

Valgfri ToolOptions-forekomst som inneholder valgfrie parametere.

Default value: None

Returnerer

Type Beskrivelse
<xref:OperationResult>

En OperationResult som angir vellykket eller mislykket. Ved vellykket, returnerer OperationResult.success(). Ved feil returnerer OperationResult.failed() med feildetaljer.

Unntak

Type Beskrivelse

Hvis turn_context er Ingen, er chat_history_messages Ingen, turn_context.aktivitet er Ingen eller noen av de nødvendige feltene (conversation.id, activity.id, activity.text) mangler eller er tomme.

Eksempler


>>> from datetime import datetime, timezone
>>> from microsoft_agents_a365.tooling.models import ChatHistoryMessage
>>>
>>> history = [
...     ChatHistoryMessage("msg-1", "user", "Hello", datetime.now(timezone.utc)),
...     ChatHistoryMessage("msg-2", "assistant", "Hi!", datetime.now(timezone.utc))
... ]
>>>
>>> service = McpToolServerConfigurationService()
>>> result = await service.send_chat_history(turn_context, history)
>>> if result.succeeded:
...     print("Chat history sent successfully")