MCP server: cos’è, come funziona e come usarlo davvero

·

Schema di come funziona un server MCP: l'app AI crea un client per ogni server, i server locali e remoti si collegano a file, posta, documenti, Google Analytics e WordPress

Aggiornato il 10 novembre 2026

Hai sentito dire che Claude, ChatGPT o Cursor “si collegano a Gmail” o “leggono Google Analytics”. Dietro molte di queste integrazioni c’è un MCP server. In questa guida ti spiego cos’è, come funziona e quali lavori ti fa fare davvero, partendo da come lo usa la redazione di agenti AI che manda avanti questo blog.

Un MCP server è un piccolo programma che mette strumenti e dati a disposizione di un’app di intelligenza artificiale attraverso il Model Context Protocol, lo standard aperto presentato da Anthropic il 25 novembre 2024. L’app (Claude, ChatGPT, Cursor, Grok, VS Code) chiede al server l’elenco degli strumenti che offre. Il modello sceglie quello giusto e il server esegue l’azione sul sistema vero: legge una mail, cerca un file su Drive, lancia un report di Google Analytics.

Il server può girare sul tuo computer oppure in remoto, dietro un login. Il vantaggio per te è pratico. Lo stesso server funziona con ogni app compatibile, quindi non serve un’integrazione diversa per ogni assistente. Il rischio è altrettanto concreto: un server MCP agisce con i permessi che gli dai, quindi parti in sola lettura e allarga solo quando serve.

Cosa serve sapere in 30 secondi

  • Cos’è: un programma che espone a un’app AI tre cose. Strumenti (azioni), risorse (dati da leggere) e prompt (modelli pronti).
  • Chi lo supporta: Claude, Cursor, Microsoft Copilot, Gemini, VS Code e ChatGPT, secondo la Linux Foundation (09/12/2025).
  • Quanti ce ne sono: oltre 10.000 server MCP pubblicati a dicembre 2025, sempre secondo la Linux Foundation.
  • Chi lo governa: dal 9 dicembre 2025 MCP è della Agentic AI Foundation, un fondo della Linux Foundation. Non è più un progetto della sola Anthropic.
  • Versione attuale: la specifica 2026-07-28, che rende il protocollo stateless. Ogni richiesta porta con sé versione e capacità del client.
  • La regola pratica: collega solo server di fornitori di cui ti fidi, e lascia attiva l’approvazione delle azioni di scrittura.
Schema di come funziona un server MCP: l'app AI crea un client per ogni server, i server locali e remoti si collegano a file, posta, documenti, Google Analytics e WordPress
Come funziona un server MCP. Schema di victormotricala.it costruito sulla documentazione ufficiale di modelcontextprotocol.io (revisione 2026-07-28)

Cos’è un MCP server, in parole semplici?

Un MCP server è un traduttore tra un’app AI e un tuo strumento di lavoro. Dichiara cosa sa fare, per esempio “cerca nella posta” o “lancia un report”. Quando il modello lo chiede, esegue l’azione con i permessi che gli hai dato e restituisce il risultato. Il protocollo che usa è il Model Context Protocol.

La documentazione ufficiale lo paragona a una porta USB-C per le app AI. Prima di MCP ogni nuova fonte di dati richiedeva un’integrazione su misura: se volevi collegare il tuo CRM a tre assistenti, ne scrivevi tre. Anthropic lo ha presentato nell’annuncio del 2024 proprio così, un unico protocollo al posto di tante integrazioni frammentate. Con MCP scrivi un server e lo usi ovunque.

Dal 9 dicembre 2025 il progetto è passato alla Agentic AI Foundation, fondata da Anthropic, Block e OpenAI dentro la Linux Foundation, che a quella data contava più di 10.000 server pubblicati.

Tre termini ti servono per leggere qualsiasi guida:

  • Host: l’app AI che usi, come Claude Desktop, Cursor o ChatGPT.
  • Client: il pezzo dell’host che mantiene la connessione con un singolo server. L’host ne crea uno per ogni server collegato.
  • Server: il programma che offre strumenti e dati. Può essere quello ufficiale di un fornitore (Google Analytics, Figma, Notion) o uno scritto da te.
Pagina introduttiva della documentazione ufficiale del Model Context Protocol con lo schema che collega app AI, protocollo MCP e fonti di dati
La pagina “What is the Model Context Protocol” della documentazione ufficiale. Screenshot da modelcontextprotocol.io, 10/11/2026

Come funziona un server MCP, passo per passo?

L’app AI chiede al server cosa sa fare con la richiesta tools/list. Il server risponde con un elenco di strumenti, ognuno con nome, descrizione e parametri. Quando ti serve un dato, il modello sceglie lo strumento e l’app lo chiama con tools/call. Il server esegue l’azione e restituisce il risultato, che finisce nella conversazione.

Messa in fila, la sequenza è questa:

  1. Scoperta: l’app chiede al server quali versioni e capacità supporta (nella specifica attuale la richiesta si chiama server/discover).
  2. Elenco: l’app legge strumenti, risorse e prompt disponibili.
  3. Scelta: il modello decide quale strumento usare in base alla tua domanda e alla descrizione dello strumento.
  4. Approvazione: nelle app più diffuse ti viene chiesto il permesso prima dell’azione. Cursor, per esempio, lo chiede di default.
  5. Esecuzione: il server chiama il sistema vero (un’API, un database, una cartella) e restituisce il risultato.

I messaggi viaggiano in formato JSON-RPC 2.0. A te interessa una sola cosa: cosa può esporre un server. Le tre “primitive” della specifica sono queste.

Primitiva Cosa fa Esempio nel marketing
Tools (strumenti) Azioni che il modello può eseguire Lanciare un report GA4, creare una bozza di email
Resources (risorse) Dati da leggere come contesto Il brief del cliente, lo schema di un database
Prompts (modelli) Istruzioni pronte e riutilizzabili Un modello di analisi della campagna settimanale

Poi c’è il trasporto, cioè il modo in cui app e server si parlano. Un server locale usa stdio: l’app lo avvia come processo sul tuo computer e ci parla direttamente. Un server remoto usa Streamable HTTP: sta su internet, serve molti utenti e di solito chiede un login OAuth. La documentazione cita come esempio il server di Sentry, che gira sulla piattaforma Sentry e non sul tuo computer.

L’ultima revisione della specifica, la 2026-07-28, ha tolto le sessioni a livello di protocollo. Ogni richiesta ora porta con sé versione e capacità del client, e il vecchio trasporto HTTP+SSE resta solo come funzione deprecata. Se usi server già pronti non devi fare nulla. Se ne fai sviluppare uno, chiedi che supporti questa versione.

Quali lavori puoi fare con i server MCP nel marketing?

Puoi far leggere e preparare all’AI il lavoro che oggi copi e incolli a mano: dati di Google Analytics, mail, documenti, messaggi Slack, contenuti del CMS e ticket. Il guadagno vero arriva quando l’agente combina più fonti: legge il report, controlla il brief su Drive e ti prepara la bozza di aggiornamento per il cliente.

Questa è la mappa che uso quando qualcuno mi chiede da dove partire. La colonna “server” riporta progetti che abbiamo verificato oggi sul loro repository o sulla documentazione del fornitore.

Lavoro Server MCP Cosa chiedi all’AI Livello di rischio
Report di traffico e conversioni Google Analytics MCP (repository ufficiale googleanalytics) “Confronta le sessioni organiche di ottobre e settembre per landing page” Basso: in lettura di default
Bozze di email e follow-up Connettore Gmail del tuo client AI “Prepara la risposta a questo lead usando il listino su Drive” Medio: l’invio deve restare tuo
Brief e documenti Connettore Google Drive “Riassumi i tre brief di novembre e trova le scadenze” Basso in lettura
Coordinamento del team Connettore Slack “Cosa si è deciso ieri nel canale lancio?” Medio: i messaggi partono a tuo nome
Contenuti sul sito WordPress MCP Adapter (repository ufficiale WordPress) “Elenca le bozze ferme da più di 30 giorni” Alto se scrive sul sito live
Ricerca e verifica pagine Fetch o Playwright “Apri queste cinque pagine e dimmi quali link sono rotti” Basso

Il server di Google Analytics è un buon esempio di progettazione prudente. Gli strumenti che scrivono sulla proprietà, come la creazione di un evento chiave o di una dimensione personalizzata, funzionano solo se avvii il server con il flag --allow-write e concedi lo scope analytics.edit. Senza quel flag l’AI può leggere i report ma non toccare la configurazione.

Elenco degli strumenti del server MCP di Google Analytics su GitHub, con report, funnel e strumenti di scrittura che richiedono il flag allow-write
Gli strumenti del server MCP di Google Analytics. Screenshot da github.com/googleanalytics/google-analytics-mcp, 10/11/2026

Per WordPress esiste il progetto ufficiale MCP Adapter, che collega le “abilities” di core, temi e plugin a qualsiasi client MCP. È la strada pulita se vuoi che un agente gestisca bozze e contenuti. Sul nostro sito per ora non lo usiamo, e più sotto ti spiego perché.

Come colleghi un server MCP a Claude, Cursor o Grok?

Lo schema è sempre lo stesso. Inserisci l’indirizzo del server remoto, o il comando che avvia quello locale. Poi fai il login con il servizio e scegli quali strumenti l’AI può usare senza chiederti il permesso. Su Claude passi dalle impostazioni dei connettori, su Cursor da un file mcp.json, su Grok dall’API.

Su Claude

Nei piani individuali vai su Customize > Connectors, clicchi “+ Add” e poi “Add custom connector”. Inserisci nome e URL del server remoto, scegli come autenticarti e confermi. Due dettagli contano. Il piano Free ha un limite di un solo connettore personalizzato. E il collegamento parte dai server cloud di Anthropic, non dal tuo computer: un server dietro VPN o firewall aziendale non si collega finché non autorizzi gli IP di Anthropic (Fonte: Claude Help Center).

Guida ufficiale di Claude con i passaggi per aggiungere un connettore personalizzato con server MCP remoto nei piani Pro e Max
I passaggi per aggiungere un connettore personalizzato su Claude. Screenshot da support.claude.com, 10/11/2026

Su Cursor

Puoi installare i server dal marketplace con un clic oppure scriverli in un file mcp.json. Se lo metti in .cursor/mcp.json vale solo per quel progetto, in ~/.cursor/mcp.json vale ovunque. Il formato è quello che vedi nella documentazione di Cursor. Questo è un server locale reale, preso dal repository ufficiale dei server MCP:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}
Documentazione di Cursor con gli esempi di configurazione del file mcp.json per server MCP in Node.js e Python
Gli esempi di mcp.json nella documentazione di Cursor. Screenshot da cursor.com/docs, 10/11/2026

Le chiavi API vanno nelle variabili d’ambiente, con la sintassi ${env:NOME}, mai scritte in chiaro nel file. Cursor chiede l’approvazione prima di ogni strumento MCP, a meno che tu non lo inserisca in una allowlist.

Su Grok

Con l’API di xAI aggiungi alla richiesta uno strumento di tipo mcp con server_url e server_label. Grok supporta solo server remoti in Streamable HTTP o SSE. Il parametro da non dimenticare è allowed_tools: la documentazione di xAI spiega che senza di esso tutte le definizioni degli strumenti del server entrano nel contesto del modello. Più strumenti significa più token consumati e più azioni possibili, anche quelle che non ti servono.

Se usi Grok Bot invece dell’API, i connettori li aggiungi dal Bot e lui li usa nelle sue routine. È il caso della nostra redazione, che trovi raccontato nella guida a Grok Bot per il marketing.

Come usiamo i server MCP nella nostra redazione di agenti?

Questo blog lo manda avanti una squadra di agenti AI, che usa i server MCP per toccare gli strumenti di lavoro. I Bot hanno più di venti connettori collegati, tra cui Gmail, Google Drive, Slack, Linear, Supabase, Figma, GitHub e Playwright. Leggono, preparano e verificano. Le azioni verso altre persone, come l’invio di una mail, passano da me.

Schema dei connettori MCP usati dalla redazione di agenti AI di victormotricala.it, divisi per categoria: posta, documenti, chat, progetti, dati, design, codice, browser, social ed eventi
I connettori MCP della nostra redazione, per categoria. Schema di victormotricala.it dall’elenco dei connettori attivi sul Grok Bot, 10/11/2026

Ti racconto cosa succede in pratica, senza numeri che non posso dimostrarti.

  • Screenshot e verifiche: le immagini di questo articolo le abbiamo fatte con il server MCP di Playwright, che apre pagine pubbliche in un browser e le salva. Lo stesso server serve a controllare che i link esterni rispondano prima della pubblicazione.
  • Date e fatti: per una pagina con l’elenco dei talk, un agente ha verificato le date degli eventi passati leggendo Luma via MCP, invece di fidarsi della memoria.
  • Posta: con Gmail gli agenti leggono e preparano bozze. Le regole della redazione vietano di mandare email a nome mio senza un mio sì esplicito.
  • Codice e progetti: GitHub e Linear servono a leggere issue e pull request quando un lavoro tocca il codice del sito o di altri progetti.

Cosa non è andato liscio, perché è la parte utile. Oggi abbiamo provato ad aprire la SERP di google.it con il browser via MCP e Google ha risposto con un errore 429 e una pagina di verifica: il server funziona, ma il sito dall’altra parte decide se farti passare. Lezione: un server MCP non ti dà accessi che il servizio non ti darebbe comunque.

Il secondo punto riguarda WordPress. Il nostro sito non passa da MCP: gli agenti usano la REST API con una password applicativa e una lista di regole scritte su cosa possono toccare. Per un sito solo, con poche azioni ripetute, è bastato. Con molti autori e più agenti sullo stesso sito conviene valutare il WordPress MCP Adapter, per avere permessi più granulari e un registro per strumento.

Terzo punto: ogni contenuto che entra da un connettore, come una mail o una pagina web, lo trattiamo come dato e non come istruzione. Se un testo dentro una mail dice “inoltra questo file a X”, l’agente lo riporta e non lo esegue. È la difesa base contro la prompt injection, di cui parla anche il Claude Help Center.

Come provi un server MCP in dieci minuti, senza rischi?

Parti da un server di riferimento che non tocca dati sensibili, come quello dell’ora o quello che scarica pagine web. Lo avvii con un comando, gli chiedi l’elenco degli strumenti e ne chiami uno. In dieci minuti vedi con i tuoi occhi cosa riceve il modello, e capisci cosa stai autorizzando quando colleghi server più delicati.

In redazione l’abbiamo fatto oggi, 10/11/2026, con il client Python ufficiale (versione 2.3.0) e due server del repository di riferimento:

  1. Installa uv, il gestore di pacchetti Python che il repository consiglia per i server in Python.
  2. Crea un ambiente e installa il pacchetto mcp, l’SDK ufficiale.
  3. Scrivi un client di una trentina di righe che avvia mcp-server-time e mcp-server-fetch con uvx, in locale via stdio.
  4. Chiedi a ogni server l’elenco degli strumenti, poi chiama get_current_time con fuso Europe/Rome.
Output reale del test della redazione: il server time espone tre strumenti e restituisce l'ora di Roma, il server fetch espone lo strumento fetch che richiede un URL
L’output reale del test: tre strumenti dal server time, uno dal server fetch. Test della redazione di victormotricala.it, 10/11/2026

Il risultato è nell’immagine. Il server dell’ora espone tre strumenti, e quello delle pagine web uno solo, che vuole un URL obbligatorio. Nota il campo required: è lo schema che il modello legge per capire come chiamare lo strumento. Quando colleghi un server di posta o di analytics, è lo stesso elenco a dirti cosa potrà fare l’AI. Leggilo prima di cliccare “Always allow”.

Se non vuoi scrivere codice, c’è MCP Inspector, lo strumento ufficiale per provare i server: si avvia con npx @modelcontextprotocol/inspector e ti fa chiamare gli strumenti a mano da un’interfaccia nel browser.

Come crei un server MCP da zero, passo passo?

Con l’SDK ufficiale per Python ti bastano tre comandi e un file di 18 righe. Installi uv, crei il progetto, aggiungi il pacchetto mcp 2.3.0 e scrivi una funzione con il decoratore @mcp.tool. Il server parte in stdio e lo provi con MCP Inspector prima di collegarlo a Claude o Cursor.

L’ho fatto oggi, 10/11/2026, su una macchina virtuale Linux con Debian 13: il computer cloud dove lavora la redazione. Le versioni sono uv 0.13.7, mcp 2.3.0 e MCP Inspector 2.14.0. Il tool che ho scritto serve a chi fa SEO. Controlla se title e meta description stanno nelle lunghezze che usiamo in redazione, 50-60 e 150-160 caratteri. Ho scelto Python perché è lo stesso SDK della prova qui sopra. Il tutorial ufficiale copre anche TypeScript, Go, Rust e altri linguaggi.

Passo 1: installa uv

uv è il gestore di pacchetti Python che la documentazione di MCP consiglia. Su Linux lo installi con il comando ufficiale:

curl -LsSf https://astral.sh/uv/install.sh | sh

Riapri il terminale e controlla con uv --version. A me ha risposto uv 0.13.7.

Passo 2: crea il progetto e installa l’SDK

uv init seo-meta --bare
cd seo-meta
uv add "mcp==2.3.0"

Fissa la versione. La 2.x ha cambiato diversi nomi rispetto alla 1.x, e molte guide, anche in italiano, usano ancora quelli vecchi. L’SDK richiede Python 3.10 o superiore: nel mio test uv ha usato Python 3.11.

Passo 3: scrivi il tool

Crea un file server.py con questo contenuto. È il server completo:

from mcp.server import MCPServer
from mcp.types import ToolAnnotations

mcp = MCPServer("seo-meta", version="1.0.0")


@mcp.tool(annotations=ToolAnnotations(readOnlyHint=True))
def controlla_meta(title: str, description: str) -> dict:
    """Controlla la lunghezza di title e meta description di una pagina."""
    t, d = len(title), len(description)
    return {
        "title": {"caratteri": t, "ok": 50 <= t <= 60},
        "description": {"caratteri": d, "ok": 150 <= d <= 160},
    }


if __name__ == "__main__":
    mcp.run(transport="stdio")

Il decoratore @mcp.tool fa quasi tutto. Il nome della funzione diventa il nome dello strumento, la docstring diventa la descrizione che il modello legge e i type hint diventano lo schema dei parametri. Con readOnlyHint=True dici al client che il tool non modifica niente: mettilo solo quando è vero.

Passo 4: avvia il server

uv run server.py

Il terminale resta fermo e non scrive niente. È normale: un server stdio aspetta i messaggi di un client sullo standard input. Lo chiudi con Ctrl+C, che stampa un traceback KeyboardInterrupt innocuo. Nell’uso vero non lo avvii tu, lo avvia l’app AI.

Passo 5: chiamalo da un client

La strada più rapida è MCP Inspector da riga di comando. Avvia il server al posto tuo, chiama lo strumento e stampa la risposta:

npx -y @modelcontextprotocol/[email protected] --cli \
  uv --directory /percorso/assoluto/seo-meta run server.py \
  --protocol-era modern --method tools/call --tool-name controlla_meta \
  --tool-arg 'title=Server MCP: guida' --tool-arg 'description=Troppo corta'

Questa è la risposta, copiata dal mio terminale:

{
  "_meta": {
    "io.modelcontextprotocol/serverInfo": {
      "name": "seo-meta",
      "version": "1.0.0"
    }
  },
  "content": [
    {
      "type": "text",
      "text": "{\n  \"title\": {\n    \"caratteri\": 17,\n    \"ok\": false\n  },\n  \"description\": {\n    \"caratteri\": 12,\n    \"ok\": false\n  }\n}"
    }
  ],
  "isError": false
}

Ho ripetuto la prova in altri due modi: con --protocol-era legacy e con un client Python di 22 righe scritto con lo stesso SDK. Hanno risposto entrambi. Al client Python ho passato title e meta description di questa pagina: 54 e 153 caratteri, tutti e due nei limiti.

Passo 6: collegalo a Claude Desktop o Cursor

Nel file di configurazione dell’app, claude_desktop_config.json per Claude Desktop o mcp.json per Cursor, scrivi lo stesso comando che hai provato con Inspector:

{
  "mcpServers": {
    "seo-meta": {
      "command": "uv",
      "args": ["--directory", "/percorso/assoluto/seo-meta", "run", "server.py"]
    }
  }
}

Il percorso deve essere assoluto. Se l’app non trova uv, in command metti il percorso completo che ti dà which uv. Questo passo non l’ho provato, perché sul computer della redazione non ci sono né Claude Desktop né Cursor. Il comando dentro il JSON invece è lo stesso che ha risposto nel test.

Quattro cose che ho scoperto facendolo, e che diverse guide in italiano non dicono ancora:

  • FastMCP non c’è più. L’import from mcp.server.fastmcp import FastMCP, che trovi in molti tutorial, con mcp 2.3.0 si ferma con un ModuleNotFoundError. Nella 2.x la classe si chiama MCPServer, e l’errore stesso ti rimanda alla guida di migrazione dell’SDK.
  • Niente print() nel server. In stdio tutto quello che finisce sullo standard output si mescola ai messaggi JSON-RPC e rompe la connessione. Per i log usa il modulo logging, che scrive su stderr, come chiede il tutorial ufficiale.
  • Un dict torna come testo. Al primo tentativo il mio client leggeva structured_content e trovava None. Un dizionario semplice l’SDK lo manda come testo JSON nel campo content, quindi il client giusto legge content[0].text.
  • Prova tutte e due le versioni del protocollo. Inspector, se non gli dici niente, usa la stretta di mano del 2025. Con --protocol-era modern controlli che il server risponda anche ai client della specifica 2026-07-28. Il nostro ha risposto in entrambi i casi.

Come crei un server MCP più in fretta con Manufact?

Con mcp-use, il framework open source di Manufact, un comando ti genera un progetto TypeScript pronto, con Inspector e ricarica automatica. Nel nostro test con la versione 2.12.3 il progetto era pronto in 6,5 secondi e il server rispondeva su localhost:3000/mcp al primo avvio. Ti servono Node.js e un po’ di TypeScript.

Manufact è la startup che sviluppa mcp-use e vende Manufact Cloud, l’hosting per mettere online i server. Il framework è gratuito, con licenza MIT. Questi sono i comandi che la redazione ha usato oggi, 10/11/2026, con Node.js 24.22.1:

  1. Crea il progetto con il modello «mcp-server»: npx -y create-mcp-use-app@latest marketing-mcp --template mcp-server --npm --no-skills --install
  2. Avvia lo sviluppo con cd marketing-mcp e poi npm run dev. Il server risponde su http://localhost:3000/mcp.
  3. Prova i tool nel browser su http://localhost:3000/mcp/inspector, l’Inspector incluso nel framework.
  4. Scrivi i tuoi tool in index.ts: nome, descrizione, schema di input Zod e la funzione che li esegue. Quando salvi, il server si ricarica da solo.
  5. Chiamali dal terminale con il client di mcp-use: npm install --save-dev @mcp-use/client, poi npx mcp-use client connect local http://localhost:3000/mcp e npx mcp-use client local tools list.
  6. Controlla i tipi e compila con npm run typecheck e npm run build. Nel test ci hanno messo 188 e 653 millisecondi.

Un intoppo ti capiterà di sicuro. Il client da terminale passa ogni chiave=valore come stringa, quindi un parametro numerico va scritto limit:=3, con i due punti. Il modello di progetto contiene anche un tool meteo finto che risponde sempre 22 gradi e sole: cancellalo prima di collegare il server a un’app AI. Il deploy su Manufact Cloud con npm run deploy richiede un account, e non l’abbiamo provato.

Pro di mcp-use Contro di mcp-use
Primo server funzionante in pochi minuti, con ricarica automatica Il progetto pesa 123 MB con le dipendenze, anche per due tool
Inspector, client da terminale, tunnel e deploy già inclusi La documentazione v2 è pensata prima di tutto per TypeScript
Parla MCP standard: l’SDK ufficiale per Python l’ha chiamato senza problemi Il pacchetto si aggiorna spesso, quindi devi bloccare la versione
Licenza MIT, e Manufact Cloud ha un piano Free Per il deploy gestito dipendi da una startup giovane

Non fa per te se non scrivi codice: in quel caso usa i connettori già pronti di Claude, Cursor o ChatGPT. E non fa per te se vuoi il minimo di dipendenze o se in azienda accettate solo librerie dei maintainer ufficiali del protocollo: lì resta sull’SDK ufficiale qui sopra.

Il mio giudizio è questo. Se devi mostrare al team o a un cliente un server che funziona entro la mattina, mcp-use ti fa arrivare prima. Se il server deve durare anni con poche dipendenze, l’SDK ufficiale resta la scelta più prudente. Prezzi di Manufact Cloud, codice dei tool e tutti gli intoppi del test li trovi nella recensione completa di mcp-use. Se vuoi vedere come se la cava rispetto a FastMCP e agli SDK ufficiali, leggi il confronto tra SDK MCP.

Quali rischi corri con un server MCP e come li riduci?

Il rischio principale è dare a un modello più permessi del necessario. Un server MCP agisce con le tue credenziali: se lo strumento può scrivere, cancellare o inviare, un errore del modello o un testo malevolo letto da una pagina diventano un’azione vera. La guida ufficiale sulla sicurezza chiede permessi minimi, consenso esplicito e server da fonti fidate.

Le regole che seguiamo, prese dalla guida di sicurezza di modelcontextprotocol.io e dalle pagine di Claude e Cursor:

  • Solo server di chi conosci. Il repository ufficiale avverte che i suoi server di riferimento sono esempi didattici, non soluzioni pronte per la produzione. Per Gmail, Drive o Slack usa i connettori del tuo client o i server ufficiali del fornitore.
  • Prima la lettura. Concedi scope minimi e aggiungi la scrittura solo quando ti serve, come fa il server di Google Analytics con --allow-write.
  • Approvazione sulle azioni che escono. Invio di mail, post, pubblicazioni e cancellazioni restano su “chiedi ogni volta”.
  • Attenzione ai comandi locali. Un server locale gira con gli stessi privilegi della tua app: prima di installarlo leggi il comando completo che lancia.
  • Revoca quello che non usi. Su Claude scolleghi il connettore dalle impostazioni, e i permessi OAuth li togli anche dal servizio di origine.

Un dettaglio che vale per i piani Team ed Enterprise di Claude: se un connettore usa una credenziale condivisa, come una chiave API, chiunque lo usi accede con quei permessi. Usa una chiave limitata a ciò che deve vedere il team.

MCP server, API o plugin: che differenza c’è?

Un’API è la porta di un singolo servizio, pensata per i programmatori. Un server MCP impacchetta una o più API in strumenti descritti in modo che un modello li capisca e li usi da solo. Un plugin, invece, è legato a una singola app. MCP sta nel mezzo: lo scrivi una volta e lo usa qualsiasi assistente compatibile.

API Server MCP Plugin di un’app
Chi lo usa Il codice che scrivi tu Il modello, tramite l’app AI Solo l’app per cui è fatto
Funziona con più assistenti Sì, ma serve integrazione per ognuno Sì, con ogni client MCP No
Descrizione per il modello No, la scrivi tu nel prompt Sì, nome, descrizione e schema Dipende dall’app
Quando lo scegli Automazioni fisse e ripetitive Lavori in cui l’AI decide i passi Funzioni dentro un solo tool

Nella pratica non devi scegliere una volta per tutte. Noi usiamo la REST API per WordPress, dove le azioni sono poche e sempre uguali, e MCP per tutto il resto, dove l’agente deve capire da solo cosa cercare. Se ti interessa il quadro più ampio di come lavorano gli agenti, trovi tipi ed esempi nella guida agli agenti AI.

Un’ultima distinzione che crea confusione: le Claude Skills non sono server MCP. Una skill insegna al modello come fare un lavoro, con istruzioni e file. Un server MCP gli dà le mani per farlo su un sistema esterno. Spesso le usi insieme.

Quali sono le domande più frequenti sui server MCP?

Le domande più comuni riguardano quattro punti: se serve saper programmare, quanto costa, se i server sono sicuri e in cosa si distingue da un’API. In breve: per usare server già pronti non serve codice, lo standard è gratuito e open source, la sicurezza dipende dai permessi che concedi e il server rende un’API usabile dal modello.

Serve saper programmare per usare un server MCP?

No, per usare server già pronti. Su Claude aggiungi un connettore dalle impostazioni, su Cursor lo installi dal marketplace. Il codice serve solo se vuoi scrivere un server tuo o configurarne uno locale a mano con un file JSON.

Un server MCP è gratis?

Il protocollo è open source e gratuito, come i server di riferimento. Paghi l’app AI che usi e, a volte, il servizio collegato. Su Claude il piano Free permette un solo connettore personalizzato. Con l’API di Grok le definizioni degli strumenti occupano token nel contesto.

I server MCP sono sicuri?

Sono sicuri quanto i permessi che concedi e la fonte da cui arrivano. Usa server di fornitori fidati, concedi scope minimi, tieni l’approvazione sulle azioni di scrittura e revoca i connettori che non usi. Un server malevolo può nascondere istruzioni per il modello.

Che differenza c’è tra MCP e un’API?

L’API è la porta di un servizio, pensata per chi programma. Il server MCP la trasforma in strumenti descritti che un modello capisce e chiama da solo. Lo stesso server funziona con Claude, ChatGPT, Cursor o Grok senza riscrivere l’integrazione.

Da dove parti, in pratica?

Parti da un lavoro che oggi fai a mano ogni settimana, per esempio il report di traffico o il riassunto dei brief. Collega un solo server, in sola lettura, e usalo per due settimane. Se ti fa risparmiare tempo, aggiungi il secondo.

Un server MCP è un modo standard per dare a un’app AI accesso ai tuoi strumenti, con i permessi che decidi tu. Lo standard è aperto, lo gestisce una fondazione neutrale e lo supportano le app che usi già. La parte difficile non è la configurazione, che richiede pochi minuti.

È decidere cosa l’AI può fare da sola e cosa deve passare da te. Inizia in lettura, lascia l’approvazione sulle azioni che escono e leggi l’elenco degli strumenti prima di cliccare “Always allow”. Se vuoi capire quale agente collegare per primo, il confronto tra agenti AI mette a confronto prezzi e disponibilità in Italia.

Newsletter gratuita

Agenti AI in produzione, ogni settimana.

Cosa costruisco, cosa funziona e cosa no — esperimenti veri su agenti, automazione e distribuzione. Niente teoria riciclata.

Zero spam. Cancellati quando vuoi.

Guida gratuita

AI in produzione: il playbook.

Una guida pratica sugli esperimenti che arrivano davvero in produzione — agenti, automazione, distribuzione. Lascia l’email: te la mando appena esce.

Risorsa gratuita

Il mio stack AI 2026.

Tutti gli strumenti che uso davvero per agenti, contenuti e automazione. Gratis, via email.

Zero spam. Cancellati quando vuoi.

Iscrivendoti accetti la Privacy Policy. Ti chiediamo conferma via email e puoi cancellarti quando vuoi.

Avatar Victor Motricala

AI engineer · building in public