loading experience

IA e agenti

Model Context Protocol: creare un server MCP in C#

Esporre i dati e le funzioni della tua applicazione agli assistenti di IA con un protocollo standard.

Model Context Protocol: creare un server MCP in C#

Il Model Context Protocol (MCP) è uno standard aperto che permette agli assistenti e agli agenti di IA di usare strumenti e dati esterni in modo uniforme. Si scrive un server MCP una volta e lo possono usare tutti i client compatibili: ambienti di sviluppo, assistenti desktop, agenti costruiti con i framework .NET.

Uno standard aperto tra agenti e applicazioni, con le regole di sicurezza di un'API.
Uno standard aperto tra agenti e applicazioni, con le regole di sicurezza di un'API.

Un server MCP minimo

L'SDK ufficiale per C# (pacchetto ModelContextProtocol) si integra con l'host generico di .NET:

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using ModelContextProtocol.Server;
using System.ComponentModel;

var builder = Host.CreateApplicationBuilder(args);
builder.Services
    .AddMcpServer()
    .WithStdioServerTransport()
    .WithToolsFromAssembly();

await builder.Build().RunAsync();

[McpServerToolType]
public static class StrumentiMagazzino
{
    [McpServerTool, Description("Restituisce la giacenza di un articolo dato il codice.")]
    public static int Giacenza([Description("Codice articolo")] string codice) =>
        codice == "ABC-123" ? 42 : 0;
}

Con il trasporto stdio il client avvia il server come processo locale; per servizi condivisi si usa il trasporto HTTP, ospitato in un'applicazione ASP.NET Core.

Strumenti, risorse e prompt

  • Strumenti: funzioni che l'agente può eseguire.
  • Risorse: dati che il client può leggere, come documenti o record.
  • Prompt: modelli di richiesta predefiniti offerti all'utente.

Sicurezza prima di tutto

Un server MCP apre la tua applicazione a un agente che agisce per conto di un utente. Valgono le regole di qualsiasi API: autenticazione per i server remoti, permessi minimi, validazione degli argomenti, limiti di frequenza e registro delle operazioni. Gli strumenti che modificano dati dovrebbero richiedere una conferma esplicita, e i testi restituiti da fonti esterne vanno trattati come non fidati, perché potrebbero contenere istruzioni malevole destinate all'agente.

Commenti (0)

Nessun commento ancora.

Lascia un commento