Vai al contenuto principale

Connettere un altro client MCP

Senso MCP rispetta lo standard MCP: il vostro sito non è vincolato a un solo assistente. Qualsiasi client compatibile può connettersi allo stesso modo.


Client MCP generico

Un client MCP generico comunica con il server tramite HTTP e si autentica mediante OAuth. Grazie ai documenti di discovery .well-known, configura automaticamente l'autenticazione a partire dal solo URL del server.

Parametri richiesti

  • l'URL del server MCP: https://votre-site.tld/api/index.php/v1/mcp;
  • il trasporto: HTTP streamable (non viene utilizzato il trasporto SSE, ormai obsoleto);
  • l'autenticazione: OAuth, rilevata automaticamente (non è necessario inserire nulla), oppure un token API Joomla (vedi sotto).

Esempio di configurazione

La maggior parte dei client accetta una configurazione di questo tipo:

{
  "mcpServers": {
    "mon-site-joomla": {
      "url": "https://votre-site.tld/api/index.php/v1/mcp"
    }
  }
}

Per sapere dove trovare esattamente questa impostazione, consulta la documentazione del tuo client.

Token API o OAuth?

Sono disponibili due modalità di autenticazione, destinate a due utilizzi diversi:

  • OAuth — per gli assistenti interattivi (Claude, ChatGPT, Copilot…). L'utente accede al tuo sito, sceglie gli scope da concedere e può revocare la connessione in qualsiasi momento. Non è necessario copiare alcun segreto.
  • Token API Joomla — per le automazioni e i server (n8n, Make, Zapier, script). Il token viene creato nel profilo dell'utente, nella scheda Token API, e trasmesso nell'intestazione Authorization: Bearer <jeton>. L'account deve disporre del permesso API Login. Un token consente di accedere a tutti gli strumenti autorizzati dall'ACL dell'account, senza alcuna schermata di consenso: utilizzalo quindi con un account dedicato e applica il principio del privilegio minimo.

Chiamata diretta in JSON-RPC

MCP non è altro che JSON-RPC su HTTP. Uno strumento che non dispone di un client MCP, o anche un semplice modulo « HTTP Request », può quindi chiamare direttamente il server. Per elencare gli strumenti disponibili:

curl -s -X POST "https://votre-site.tld/api/index.php/v1/mcp" \
  -H "Authorization: Bearer <jeton>" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Per chiamare uno strumento, in questo caso per creare un articolo:

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "create_article",
    "arguments": {
      "title": "Mon article",
      "catid": 8,
      "body": "<p>Texte de l'article.</p>"
    }
  }
}

La risposta di tools/list descrive ogni strumento e lo schema JSON dei relativi argomenti: è il riferimento da consultare per creare le chiamate. Si applicano le stesse regole degli assistenti: impostazioni del sito, ACL dell'account e modalità di sola lettura.