Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il modulo Strumenti consente agli sviluppatori di individuare, configurare e integrare server MCP (Model Context Protocol) nei flussi di lavoro dell'agente IA. I server MCP espongono funzionalità esterne come strumenti che gli agenti IA possono richiamare. Per una panoramica dei server di strumenti disponibili, vedi Server di strumenti di Agent 365.
Panoramica
L'integrazione degli strumenti di Agent 365 segue questo flusso di lavoro:
- Configura i server MCP: usa l'interfaccia della riga di comando di Agent 365 per individuare e aggiungere server MCP
-
Genera il manifesto: l'interfaccia della riga di comando crea
ToolingManifest.jsonnella cartella del progetto con le configurazioni del server. -
Applica le autorizzazioni al progetto: un amministratore globale concede le autorizzazioni OAuth2 al progetto dell'agente eseguendo
a365 setup all(prima configurazione) oa365 setup permissions mcp(se il progetto esiste già). In ogni caso, il comando leggeToolingManifest.jsone richiede il consenso dell'amministratore. Questo passaggio è sempre separato dall'aggiunta di server al manifesto. - Esegui l'integrazione nel codice: carica il manifesto e registra gli strumenti con l'orchestratore.
- Richiama gli strumenti: l'agente chiama gli strumenti durante l'esecuzione per eseguire operazioni.
Prerequisiti
Prima di configurare i server MCP, assicurati di disporre di:
- Interfaccia della riga di comando di Agent 365 installata e configurata
- SDK .NET 8.0 o versione successiva: Download
- Privilegi di amministratore globale nel tenant di Microsoft 365
Configurazione dell'identità dell'agente
Se stai utilizzando l'autenticazione dell'agente, completa il processo di registrazione dell'agente per creare l'identità dell'agente prima di configurare i server MCP. Questo processo crea l'Entra agent ID e l'utente dell'agente che consente all'agente di autenticare e accedere agli strumenti MCP.
Configurazione autenticazione OBO
Se utilizzi l'autenticazione On-Behalf-Of (OBO) invece dell'autenticazione agentica, il tuo agente può accedere agli strumenti MCP usando permessi utente delegato senza un'identità utente agente. Nel flusso OBO, l'agente scambia il token delegato di un utente per eseguire azioni per conto dell'utente.
Per ulteriori informazioni su come funziona il flusso OBO, consulta Flussi di autenticazione. Per un esempio completo di implementazione, vedi l'esempio di autorizzazione OBO nell'SDK per agenti Microsoft 365.
Impostare l'entità servizio
Esegui questo script di installazione una tantum per creare l'entità servizio per gli strumenti di Agent 365 nel tenant.
Importante
Si tratta di un'operazione una tantum per tenant che richiede privilegi di amministratore globale.
Scarica lo script New-Agent365ToolsServicePrincipalProdPublic.ps1.
Apri PowerShell come amministratore e passa alla directory degli script.
Esegui lo script.
.\New-Agent365ToolsServicePrincipalProdPublic.ps1Accedi con le tue credenziali di Azure quando viene richiesto.
Al termine, il tenant è pronto per lo sviluppo dell'agente e la configurazione del server MCP.
Configurare i server MCP
Usa l'interfaccia della riga di comando di Agent 365 per individuare, aggiungere e gestire i server MCP per l'agente. Per un elenco completo dei server MCP disponibili e delle relative funzionalità, vedi il catalogo dei server MCP.
Individuare i server disponibili
Elenca tutti i server MCP che possono essere configurati:
a365 develop list-available
Aggiungere server MCP
Aggiungi uno o più server MCP alla configurazione dell'agente:
a365 develop add-mcp-servers mcp_MailTools
Importante
Questo comando aggiorna ToolingManifest.json nella cartella del progetto e non assegna alcuna autorizzazione al progetto. Come vengono applicate le autorizzazioni dipende dalla fase del processo di configurazione:
-
Prima dell'installazione iniziale: esegui prima
a365 develop add-mcp-serversquindi procedi cona365 setup all. Il comandosetup allinclude il passaggio delle autorizzazioni MCP come parte della creazione del progetto. -
Dopo la creazione del progetto: un amministratore globale deve eseguire
a365 setup permissions mcpseparatamente. L'amministratore di sistemaa365.config.jsondeve puntaredeploymentProjectPathalla cartella del progetto contenenteToolingManifest.jsonaggiornato. Fino al completamento di questo passaggio, le nuove autorizzazioni del server MCP non sono visibili nel progetto.
Elencare i server configurati
Visualizza i server MCP attualmente configurati:
a365 develop list-configured
Rimuovere i server MCP
Rimuovi un server MCP dalla configurazione:
a365 develop remove-mcp-servers mcp_MailTools
Per informazioni di riferimento complete dell'interfaccia della riga di comando, vedi comando per lo sviluppo a365.
Usare il server di strumenti simulato per i test
Per test e sviluppo, usa il server di strumenti simulato dell'interfaccia della riga di comando di Agent 365 invece di collegarti ai server MCP reali. Il server simulato simula le interazioni con il server MCP, così puoi testare il tuo agente localmente senza dipendenze esterne come l'autenticazione.
Il server simulato offre i seguenti vantaggi per lo sviluppo e i test in locale:
- Sviluppo offline: puoi testare il tuo agente senza la connettività Internet o dipendenze esterne.
- Test coerenti: ricevi risposte prevedibili per i test di casi limite.
- Debug: puoi visualizzare tutte le richieste e le risposte in tempo reale
- Iterazione veloce: nessun bisogno di attendere chiamate di API esterne o di configurare ambienti di test complessi.
Avvia il server di strumenti simulato utilizzando il comando a365 develop start-mock-tooling-server.
Informazioni su come impostare e configurare il server di strumenti simulato.
Nota
Le sezioni seguenti per la configurazione dei manifest e l'integrazione degli strumenti nel tuo agente funzionano allo stesso modo sia che tu stia utilizzando il server simulato sia i server MCP reali. Imposta la variabile di ambiente MCP_PLATFORM_ENDPOINT per puntare al server simulato (ad esempio: http://localhost:5309) anziché all'endpoint di produzione.
Comprendere il manifesto degli strumenti
Quando esegui a365 develop add-mcp-servers, l'interfaccia della riga di comando genera un file ToolingManifest.json contenente la configurazione per tutti i server MCP. L'esecuzione dell'agente usa questo manifesto per comprendere quali server sono disponibili e come eseguire l'autenticazione con essi.
Struttura del manifesto
Esempio ToolingManifest.json:
{
"mcpServers": [
{
"mcpServerName": "mcp_MailTools",
"mcpServerUniqueName": "mcp_MailTools",
"scope": "McpServers.Mail.All",
"audience": "api://05879165-0320-489e-b644-f72b33f3edf0"
}
]
}
Parametri del manifesto
Ogni voce del server MCP contiene:
| Parametro | Descrizione |
|---|---|
| mcpServerName | Nome visualizzato del server MCP. |
| mcpServerUniqueName | Identificatore univoco per l'istanza del server MCP. |
| ambito | Ambito OAuth obbligatorio per accedere alle funzionalità del server MCP (ad esempio McpServers.Mail.All per le operazioni di posta elettronica). Il comando add-mcp-servers recupera questo valore dal catalogo del server MCP. |
| gruppo di destinatari | URI di Microsoft Entra ID che identifica la risorsa API di destinazione. Il comando add-mcp-servers recupera questo valore dal catalogo del server MCP. |
Nota
L'interfaccia della riga di comando di Agent 365 popola automaticamente i valori scope e audience quando aggiungi un server MCP. Questi valori provengono dal catalogo dei server MCP e definiscono le autorizzazioni obbligatorie per accedere a ogni server MCP.
Integrare gli strumenti nell'agente
Dopo aver generato il manifesto degli strumenti, integra i server MCP configurati nel codice dell'agente. Questa sezione illustra il passaggio facoltativo di ispezione e i passaggi di integrazione obbligatori.
Elencare i server degli strumenti (facoltativo)
Suggerimento
Questo passaggio è facoltativo. Usa il servizio di configurazione del server degli strumenti per controllare i server degli strumenti disponibili dal manifesto degli strumenti prima di aggiungerli all'agente di orchestrazione.
Usa il servizio di configurazione del server degli strumenti per individuare quali server di strumenti sono disponibili per l'agente dal manifesto degli strumenti. Questo metodo consente di:
- Eseguire query su tutti i server MCP configurati dal file
ToolingManifest.json. - Recuperare metadati e funzionalità del server.
- Verificare la disponibilità del server prima della registrazione.
Il metodo per elencare i server degli strumenti è disponibile nei pacchetti di strumenti di base:
# Use McpToolServerConfigurationService.list_tool_servers
from microsoft.agents.a365.tooling import McpToolServerConfigurationService
config_service = McpToolServerConfigurationService()
tool_servers = await config_service.list_tool_servers(agentic_app_id, auth_token)
Parametri:
| Parametro | Type | Descrizione | Valore previsto | Obbligatorio/Facoltativo |
|---|---|---|---|---|
agentic_app_id |
str | Identificatore univoco dell'istanza dell'applicazione agente | Stringa ID applicazione agente valida | Richiesto |
auth_token |
str | Token di connessione per l'autenticazione con il gateway server MCP | Token di connessione OAuth valido | Richiesto |
Pacchetto: microsoft_agents_a365.tooling
Registrare gli strumenti con l'orchestratore
Usa il metodo di estensione specifico del framework per registrare tutti i server MCP con il framework di orchestrazione:
-
AddToolServersToAgentAsync(.NET) -
add_tool_servers_to_agent(Python) -
addToolServersToAgent(Node.js)
Questi metodi:
- Registrano tutti gli strumenti dai server MCP configurati con l'agente di orchestrazione
- Configurano automaticamente i dettagli di autenticazione e connessione
- Rendono immediatamente disponibili gli strumenti che l'agente può richiamare
Scegliere l'estensione dell'agente di orchestrazione
Il modulo Strumenti di Agent 365 offre pacchetti di estensione dedicati per diversi framework di orchestrazione:
- microsoft_agents_a365.tooling: funzionalità di base degli strumenti
- microsoft_agents_a365.tooling.extensions.agentframework: integrazione di Agent Framework
- microsoft_agents_a365.tooling.extensions.azureaifoundry: integrazione di Azure AI Foundry
- microsoft_agents_a365.tooling.extensions.openai: integrazione di OpenAI
- microsoft_agents_a365.tooling.extensions.semantickernel: integrazione di Kernel semantico
Nota
Quando esegui a365 develop add-mcp-servers, l'interfaccia della riga di comando recupera automaticamente gli ambiti OAuth e i del gruppo di destinatari dal catalogo del server MCP e li scrive in ToolingManifest.json. I metodi di estensione utilizzano questi valori per configurare l'autenticazione in fase di esecuzione: non è richiesta alcuna configurazione manuale nel codice dell'agente. Tuttavia, un amministratore globale deve comunque concedere queste autorizzazioni al progetto dell'agente prima che quest'ultimo possa utilizzarle in produzione: tramite a365 setup all (prima configurazione) o a365 setup permissions mcp (se il progetto esiste già).
Per esempi di implementazione dettagliati, vedi Esempi di Agent 365.
Esempi di implementazione
Gli esempi seguenti illustrano come integrare gli strumenti di Agent 365 con framework di orchestrazione diversi.
Python con OpenAI
Questo esempio illustra come integrare gli strumenti MCP con OpenAI in un'applicazione Python.
1. Aggiungi istruzioni di importazione
Aggiungi le importazioni necessarie per accedere al modulo Strumenti e alle estensioni OpenAI:
from microsoft.agents.a365.tooling import McpToolServerConfigurationService
from microsoft.agents.a365.tooling.extensions.openai import mcp_tool_registration_service
2. Inizializza i servizi di strumenti
Crea istanze dei servizi di registrazione degli strumenti e della configurazione:
# Create configuration service and tool service with dependency injection
self.config_service = McpToolServerConfigurationService()
self.tool_service = mcp_tool_registration_service.McpToolRegistrationService()
3. Registra gli strumenti MCP con l'agente OpenAI
Usa il metodo add_tool_servers_to_agent per registrare tutti gli strumenti MCP configurati con l'agente OpenAI. Questo metodo gestisce scenari di autenticazione con agenti e senza agenti:
async def setup_mcp_servers(self, auth: Authorization, context: TurnContext):
"""Set up MCP server connections"""
try:
use_agentic_auth = os.getenv("USE_AGENTIC_AUTH", "false").lower() == "true"
if use_agentic_auth:
self.agent = await self.tool_service.add_tool_servers_to_agent(
agent=self.agent,
agentic_app_id=agentic_app_id,
auth=auth,
context=context,
)
else:
self.agent = await self.tool_service.add_tool_servers_to_agent(
agent=self.agent,
agentic_app_id=agentic_app_id,
auth=auth,
context=context,
auth_token=self.auth_options.bearer_token,
)
except Exception as e:
logger.error(f"Error setting up MCP servers: {e}")
Parametri del metodo
La tabella seguente descrive i parametri da utilizzare con add_tool_servers_to_agent.
| Parametro | Descrizione |
|---|---|
agent |
Istanza dell'agente OpenAI con cui registrare gli strumenti. |
agentic_app_id |
Identificatore univoco per l'agente (ID app dell'agente). |
auth |
Contesto di autorizzazione per l'utente. |
context |
Contesto del turno di conversazione corrente dall'SDK Agents. Fornisce l'identità dell'utente, i metadati della conversazione e il contesto di autenticazione per la registrazione sicura degli strumenti. |
auth_token |
(Facoltativo) Token di connessione per scenari di autenticazione senza agenti. |
4. Chiama durante l'inizializzazione
Assicurati di chiamare il metodo di installazione durante l'inizializzazione prima di eseguire l'agente:
# Setup MCP servers during initialization
await self.setup_mcp_servers(auth, context)
Il metodo add_tool_servers_to_agent automaticamente:
- Carica tutti i server MCP dal file ToolingManifest.json.
- Registra gli strumenti con l'agente OpenAI.
- Configura l'autenticazione in base alla configurazione del manifesto.
- Rende disponibili gli strumenti che l'agente può richiamare.
Per esempi di lavoro completi, vedi il repository degli esempi di Agent 365.
Altri modi per accedere ai server MCP di Agent 365
Oltre all'SDK di Agent 365, puoi accedere ai server MCP di Agent 365 tramite altre esperienze di sviluppo:
- Visual Studio Code - Collegati direttamente ai server MCP per flussi di lavoro di sviluppo personalizzati.
- Microsoft Copilot Studio - Integra i server MCP nei flussi conversazionali utilizzando un'esperienza con poco codice.
- Azure AI Foundry - Utilizza server MCP con il supporto completo per l'SDK e le funzionalità di orchestrazione avanzate.
Per una panoramica completa dei server MCP disponibili e delle opzioni di integrazione su queste piattaforme, fai riferimento a Panoramica dei server MCP di Agent 365.
Server MCP Bring your own (BYO)
La funzione server MCP Bring Your Own (BYO) ti permette di registrare i tuoi server MCP esterni con Microsoft Agent 365, così da poterli gestire centralmente, approvare e monitorare nell'interfaccia di amministrazione di Microsoft 365. Inoltra questi server attraverso il gateway di strumenti di Agent 365, consentendo agli amministratori di controllare l'approvazione, l'accesso e i criteri, mentre permette ai team di sicurezza di monitorare l'utilizzo tramite telemetria. Come sviluppatore, puoi registrare il tuo server MCP usando l'interfaccia della riga di comando di Agent 365, quindi chiedere all'amministratore di controllare e approvare la registrazione e concedere le autorizzazioni. Il server approvato può quindi essere utilizzato negli strumenti client supportati, e il monitoraggio continuo garantisce conformità e visibilità attraverso tutte le integrazioni.
Per istruzioni complete, consulta Server MCP Bring your own (BYO).
Test dell'agente
Dopo aver integrato gli strumenti MCP nell'agente, testa le chiamate agli strumenti per verificare che funzionino correttamente e gestiscano scenari diversi. Segui la guida ai test per configurare l'ambiente. Quindi, concentrati principalmente sulla sezione Test delle invocazioni degli strumenti per verificare che i tuoi strumenti MCP funzionino come previsto. Dai un'occhiata al server di strumenti simulato per testare la connessione al server MCP e le chiamate degli strumenti senza gestire l'autenticazione.
Aggiungere osservabilità
Aggiungi osservabilità al tuo agente per monitorare e tracciare le chiamate degli strumenti MCP del tuo agente. Aggiungendo funzionalità di osservabilità, puoi monitorare le prestazioni, eseguire il debug dei problemi e comprendere i modelli di utilizzo degli strumenti. Altre informazioni sull'implementazione della traccia e del monitoraggio.
Risoluzione dei problemi
Questa sezione elenca i problemi comuni durante la configurazione e l'utilizzo dei server e degli strumenti MCP.
Suggerimento
Guida alla risoluzione dei problemi di Agent 365 contiene raccomandazioni di alto livello per la risoluzione dei problemi, procedure consigliate e collegamenti a contenuti di risoluzione dei problemi per ogni fase del ciclo di vita dello sviluppo di Agent 365.
Problemi relativi al server MCP e agli strumenti
Sintomi:
- Errori nelle chiamate degli strumenti.
- Errori "server MCP non trovato".
- Errori di permessi negati quando si utilizzano gli strumenti.
Causa radice:
- Il server MCP non è configurato.
- Autorizzazioni mancanti.
- L'entità servizio non è configurata.
- Confusione tra server simulato e server di produzione.
Soluzioni: Prova le seguenti soluzioni per risolvere il problema.
Verifica che i server MCP siano configurati
Elenca i server configurati e aggiungi quelli mancanti.
# List configured servers a365 develop list-configured # If empty, add required servers (example: Mail MCP server) a365 develop add-mcp-servers mcp_MailToolsVerifica che l'entità servizio esista
Assicurati che l'entità servizio richiesta sia creata per gli strumenti.
# Run the one-time setup script # https://github.com/microsoft/Agent365-devTools/blob/main/scripts/cli/Auth/New-Agent365ToolsServicePrincipalProdPublic.ps1Per lo sviluppo e i test iniziali, usa server simulato
Usa il server di strumenti simulato per lo sviluppo e il test locale iniziale se vuoi verificare il resto del tuo agente senza componenti di produzione.
# Start mock tooling server a365 develop start-mock-tooling-server # Update your .env MCP_PLATFORM_ENDPOINT=http://localhost:5309Verifica le autorizzazioni nell’interfaccia di amministrazione
Verifica che l'agente disponga delle autorizzazioni MCP necessarie.
- Verifica che le autorizzazioni API del progetto del tuo agente nel portale di Azure includano tutte le autorizzazioni del server MCP.
Verifica:
# Test a tool call in Agents Playground # Should execute without permission errors