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
|
| 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__
__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
audiencefelt) 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
|
Agentisk app-ID for agenten. |
|
auth_token
|
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
|
Valgfritt godkjenningsbehandlingsnavn som brukes med Default value: None
|
|
turn_context
|
Valgfri TurnContext brukt med Default value: None
|
Returnerer
| Type | Beskrivelse |
|---|---|
|
Returnerer listen over MCP-servere som er konfigurert, hver med en |
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")