Cos'è un server MCP?

Cos'è un server MCP? Tool, risorse e prompt spiegati | We.Inc

Un server MCP è un programma che offre tool, risorse e prompt alle applicazioni AI tramite il Model Context Protocol. Guarda i veri messaggi JSON, passo dopo passo.

Cos'è un server MCP?

Un server MCP è un programma che dà alle applicazioni AI qualcosa con cui lavorare tramite il Model Context Protocol: tool che possono chiamare, risorse che possono leggere e prompt che gli utenti possono scegliere. L'applicazione si connette tramite un client MCP, e le due parti si scambiano messaggi JSON-RPC 2.0 via stdio in locale o via Streamable HTTP da remoto.

Le tre cose che un server può offrire

Segui passo per passo uno scambio reale qui sotto. Ogni passaggio mostra il JSON che un client invia e cosa risponde il server, usando le forme dei messaggi della specifica attuale (versione 2026-07-28). Leggere i messaggi grezzi è il modo più rapido per smettere di pensare a un server come a una magia.

Domande frequenti

Un server MCP è la stessa cosa di un'API?

Di solito ne avvolge una. Un server tipico chiama un'API o un database esistente e descrive quelle operazioni in modo standard, così qualsiasi applicazione compatibile con MCP può scoprirle e chiamarle senza codice di integrazione personalizzato.

Un server MCP gira sul mio computer o nel cloud?

Entrambe le cose. Un server locale viene avviato dall'applicazione e comunica tramite standard input e output. Un server remoto gira altrove e si raggiunge via Streamable HTTP, dove può servire molti client.

Un server MCP contiene un modello linguistico?

No. Il server offre solo tool, risorse e prompt. È l'applicazione host a possedere il modello e a decidere cosa inviargli. La specifica segna come deprecato il sampling richiesto dal server a partire dalla versione 2026-07-28.

Cosa è cambiato nella versione 2026-07-28 del protocollo?

Il protocollo è diventato stateless: ogni richiesta porta la versione del protocollo e le capability nel suo campo _meta, e i server rispondono a una richiesta server/discover obbligatoria. Le notifiche di modifica ora sono su adesione, tramite uno stream subscriptions/listen.

Chi approva una chiamata a un tool?

L'host. La documentazione del protocollo suggerisce finestre di approvazione, impostazioni dei permessi e log delle attività, ma applicarli è compito dell'applicazione, quindi un server non dovrebbe mai dare per scontato che una persona abbia verificato una chiamata.

Host, client e server

Due livelli: dati e trasporto

Cosa può offrire il client in cambio

Stdio o Streamable HTTP?

Scegliere un trasporto

Com'è fatto un resource template

Un resource template con un parametro nell'URI

I client trovano i template con resources/templates/list, compilano le parentesi graffe e leggono il risultato con resources/read.

1. Discovery

server/discover è opzionale per il client ma ogni server deve rispondere. L'oggetto capabilities indica quali primitive esistono; listChanged significa che il server può notificare le modifiche ai tool.

2. Elenco dei tool

Ogni tool ha un name, una description e un inputSchema scritto in JSON Schema. L'host li passa al modello così sa cosa può chiamare.

3. Chiamata di un tool

Il nome deve corrispondere esattamente al tool elencato e gli argomenti devono rispettare il suo inputSchema. I risultati tornano come array content, qui un singolo elemento di testo.

4. Notifica di modifica

Le notifiche non hanno id, quindi nessuno risponde. Il client riceve questa solo perché ha aperto uno stream subscriptions/listen chiedendo toolsListChanged.

Segui uno scambio MCP

Scegli un passaggio

Il client invia

Il server risponde

Copia la richiesta

Copia la risposta

Passaggio {n} di {v}

Inizia gratis · Nessuna carta di credito richiesta

Correlati: Guide

Prodotto

Per chi è

Funzionalità

Risorse

Azienda

Mappa del sito