Una sola pagina, quattro strade diverse

Tutti gli agenti che aggiungi a un agente di Copilot Studio compaiono sulla sua pagina Agents, e si aggiungono con Add an agent. Prima di scegliere, tieni distinti i piani: un topic è un flusso conversazionale interno, un tool è una capacità richiamabile, una knowledge source è materiale da cui l’agente attinge risposte, un agent flow è un’automazione a sé. Un agente collegato è un’altra cosa ancora: un interlocutore con una propria orchestrazione, a cui il tuo agente delega un compito.

Copilot Studio separa due famiglie. I child agent — che la guidance chiama anche inline agents — vivono dentro l’agente principale, condividono il contesto e non hanno impostazioni, autenticazione o rilascio propri. I connected agent sono agenti separati, con orchestrazione, strumenti e conoscenza propri. Puoi collegare un agente Copilot Studio già esistente nel tuo ambiente, oppure scendere nella sezione Connect to an external agent, dove trovi i quattro tipi esterni: Agent2Agent, Microsoft Foundry, Microsoft Fabric e Microsoft 365 Agents SDK. Sono quattro pagine di documentazione distinte, con vincoli distinti: attribuire a uno la capacità di un altro è l’errore più probabile di tutto il dominio.

Foundry agent: endpoint del progetto e Agent Id

Per collegare un Foundry agent scegli Microsoft Foundry, poi selezioni una connessione esistente o ne crei una nuova: per crearla devi fornire la Foundry project endpoint URL. Con Next indichi Name, Description e l’Agent Id dell’agente da chiamare, e chiudi con Add Agent. L’Agent Id resta modificabile in seguito dalla pagina di dettaglio dell’agente. La doc pone un vincolo esplicito: puoi collegarti solo ad agenti creati nel nuovo portale Microsoft Foundry, e puntare a un agente creato nel portale precedente produce un errore che segnala “404 - Version not found”.

Qui nasce la confusione più insidiosa. Questa strada non è A2A. Sul lato Foundry esiste una capacità separata che espone un agente come endpoint A2A: richiede il protocollo responses, pubblica un’agent card su un percorso proprio del servizio e non su .well-known, ammette solo autenticazione Microsoft Entra ID per le chiamate in ingresso e pretende il ruolo Foundry Agent Consumer sull’identità chiamante. Due percorsi diversi: il collegamento Microsoft Foundry di Copilot Studio parla con il progetto tramite Agent Id, l’endpoint A2A di Foundry parla il protocollo aperto.

Fabric data agent: interrogare i dati, non copiarli

Il Fabric data agent porta nella conversazione la capacità di interrogare dati Fabric — un warehouse, un lakehouse, un Power BI semantic model, un KQL database, un mirrored database o un’ontology — senza che quei dati diventino una knowledge source del tuo agente. Il percorso è Add an agent, Microsoft Fabric, la connessione, Next, la scelta del data agent fra quelli a cui hai accesso e infine la descrizione, da rendere specifica perché l’agente principale capisca quando invocarlo.

I prerequisiti stanno soprattutto dal lato Fabric: il data agent deve essere pubblicato con una descrizione ricca e dettagliata, risiedere nello stesso tenant e vederti autenticato con lo stesso account in entrambi i prodotti; ti serve almeno accesso in lettura al data agent e alle origini dati sottostanti. Nei dettagli dell’agente collegato scegli poi fra User authentication e Agent author authentication: con la prima ogni utente deve avere accesso proprio al data agent e ai dati. Serve inoltre l’orchestrazione generativa attiva.

Tre limitazioni sono materiale d’esame perfetto: non puoi fare redirect a un Fabric data agent dal nodo Redirect di un topic, non puoi richiamarlo esplicitamente nelle Instructions con la barra, e un agente principale con un Fabric data agent collegato non funziona quando è distribuito su Microsoft 365 Copilot.

A2A e Agents SDK: due protocolli, due endpoint

Il protocollo A2A (Agent2Agent) è uno standard aperto per la comunicazione fra agenti: rispetto a una semplice chiamata HTTP porta interazioni multiturno, metadati contestuali ricchi e interoperabilità fra framework. In Copilot Studio scegli Connect to an external agent e poi Agent2Agent, e inserisci l’endpoint URL dell’agente. Attenzione al punto che la doc sottolinea: deve essere l’endpoint di comunicazione, non l’URL dell’agent card. Se l’agente pubblica una card valida sull’URL standard, Copilot Studio compila da sé nome e descrizione leggendola.

Endpoint URL da inserire in Copilot Studio
  https://esempio.example.com/a2a/botanical/v1/message:stream

Agent card che Copilot Studio cerca da sola
  https://esempio.example.com/.well-known/agent.json

Dal menu Authentication scegli None, API key — indicando il nome dell’header o il parametro di query — oppure OAuth 2.0, che richiede client ID, client secret, authorization URL, token URL e refresh URL. Poi Create, la scelta della connessione e Add and configure. Poiché le connessioni A2A poggiano sull’infrastruttura dei custom connector, puoi raggiungere anche agenti on-premises o in rete virtuale.

L’agente costruito con Microsoft 365 Agents SDK (C#/.NET, JavaScript, Python) si collega invece indicando il messaging endpoint URL, che per impostazione predefinita termina con /api/messages. La tabella della doc è netta: per gli agenti scritti con l’Agents SDK l’approccio consigliato è l’Activity Protocol, non A2A; per API e servizi HTTP semplici i custom connector o gli HTTP tools; per tool e risorse MCP i server MCP.

L’esame verifica che tu sappia associare ciascun tipo al suo prerequisito distintivo — Agent Id ed endpoint di progetto per Foundry, pubblicazione e permessi sulle origini dati per Fabric, endpoint di comunicazione e metodo di autenticazione per A2A, messaging endpoint per l’Agents SDK — e due regole trasversali: un agente già usato come principale con agenti collegati non può fare da agente collegato per un secondo agente principale, e le citations non sempre si conservano quando l’output torna all’agente chiamante.