Negli ultimi mesi si sta diffondendo l'uso di server MCP, un modo standard per esporre strumenti e dati ai modelli linguistici (e non solo) in modo sicuro e controllato. I server MCP offrono un catalogo di azioni dichiarative con schemi chiari e un canale eventi, così il modello invoca operazioni senza conoscere i dettagli d'ntegrazione.
Di recente è stato introdotto in Azure API Management il supporto ai server MCP, che consente di esporre in modo automatico le API già presenti come strumenti MCP, senza scrivere codice. In questo script abilitiamo la funzionalità: partiamo dall'API Petstore in OpenAPI di esempio, la pubblichiamo, effettuiamo l'export MCP e la utilizziamo da ChatGPT.
Per sfruttare questa funzionalità dobbiamo andare nella nuova sezione MCP Servers disponibile nel portale di Azure.

Qui selezioniamo la voce Expose an API as an MCP server nella quale possiamo selezionare una API esistente e quali operazioni esporre.

Indichiamo un nome e la descrizione per facilitare poi il modello ad utilizzare il nostro server. Fatta questa operazione il server è già pronto ed eventualmente possiamo entrare per impostare delle policy specifiche (throttling, autenticazione ecc).
Ci viene dato un indirizzo https://sito.azure-api.net/nome/mcp che possiamo dare a qualsiasi client MCP, come per esempio ChatGPT, seguendo questa guida https://platform.openai.com/docs/guides/developer-mode. Con il prompt giusto otteniamo l'interrogazione del server MCP.

Nella configurazione predefinita l'accesso al server MCP è anonimo, perciò è necessario procedere con le policy e la configurazione appropriata per autenticare l'accesso mediante header o mediante flusso OAuth.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Proteggere l'endpoint dell'agente A2A delle Logic App
Utilizzare i command service nei test con .NET Aspire
Integrare modelli AI in un workflow di GitHub
Esporre workflow come server MCP con Azure Logic Apps
Utilizzare AbortController per cancellare operazioni asincrone in JavaScript
Arricchire l'interfaccia di .NET Aspire
Gestione delle issue type con GitHub
Migrare applicazioni legacy nel cloud con Azure App Service Managed Instance
Esporre un server MCP esistente con Azure API Management
Costruire endpoint SSE in ASP.NET Core
Controllare la velocità di spostamento su una pagina HTML
Abilitare .NET 10 su Azure App Service e Azure Functions


