Vai al contenuto
Documentazione

Server MCP

Collega Claude Code, Cursor e altri strumenti di IA al tuo account intoCHAT tramite il suo server MCP remoto: l'endpoint, chiavi API e scope, la configurazione per ogni client, gli strumenti e i limiti.

intoCHAT ha un server MCP remoto. MCP (Model Context Protocol) è il modo standard con cui strumenti di IA come Claude Code e Cursor si collegano ad altri servizi. Una volta collegato il tuo, puoi chiedergli a parole di elencare i tuoi agenti, leggere le loro conversazioni e i loro lead, aggiungere testi e coppie di Q&A, eliminare fonti o inviare a un agente un messaggio di prova, e lui chiama intoCHAT al posto tuo.

Il server MCP usa le stesse chiavi API, gli stessi scope, lo stesso piano e lo stesso limite di frequenza della REST API, e i suoi strumenti fanno esattamente ciò che fanno gli endpoint REST corrispondenti.

Endpoint

https://www.intochat.ai/api/mcp

Il server usa il trasporto Streamable HTTP. Ogni richiesta ha bisogno della tua chiave API nell'intestazione Authorization:

Authorization: Bearer ic_live_YOUR_KEY

Usa l'indirizzo con www, come sopra.

Prima di iniziare

Il server MCP è incluso nei piani Starter, Pro ed Enterprise, come la REST API. Con Free non puoi creare chiavi API, e un account che torna al piano Free riceve un errore a ogni richiesta finché non passa di nuovo a Starter o a un piano superiore.

Ti serve una chiave API. Solo il proprietario dell'account e gli admin possono crearne una.

Creare una chiave API

  1. Nella barra laterale, sotto Settings, clicca su API keys.
  2. In Create a key, dai alla chiave un Name, per esempio Claude Code.
  3. In Access, scegli che cosa può fare lo strumento di IA. Every scope, including ones added later consente tutti gli strumenti. Per limitarlo alla sola lettura, scegli Only the scopes I choose e seleziona solo gli scope :read. Vedi Strumenti per lo scope richiesto da ogni strumento.
  4. Clicca su Create key, poi su Copy, e clicca su I've saved it. La chiave viene mostrata una sola volta.

Una chiave funziona per tutti gli agenti dell'account. Trattala come una password: tienila fuori dai file che committi o condividi, e revocala nella pagina API keys se qualcun altro potrebbe averla. Per saperne di più vedi Creare una chiave API nella documentazione della REST API.

Collegare Claude Code

Esegui questo comando in un terminale, con la tua chiave al posto di ic_live_YOUR_KEY:

claude mcp add --transport http intochat https://www.intochat.ai/api/mcp \
  --header "Authorization: Bearer ic_live_YOUR_KEY"

Così il server viene aggiunto per il progetto corrente, solo sul tuo computer. Per usarlo in tutti i progetti, aggiungi --scope user prima di --transport.

Per condividere la configurazione con il tuo team nel file .mcp.json del progetto senza la chiave stessa, leggi la chiave da una variabile d'ambiente:

{
  "mcpServers": {
    "intochat": {
      "type": "http",
      "url": "https://www.intochat.ai/api/mcp",
      "headers": {
        "Authorization": "Bearer ${INTOCHAT_API_KEY}"
      }
    }
  }
}

Poi digita /mcp in Claude Code per controllare che intochat sia collegato, e chiedi per esempio: "List my intoCHAT agents."

Collegare Cursor

Nelle impostazioni di Cursor, apri la sezione MCP e aggiungi un server, oppure modifica ~/.cursor/mcp.json (tutti i progetti) o .cursor/mcp.json in un progetto:

{
  "mcpServers": {
    "intochat": {
      "url": "https://www.intochat.ai/api/mcp",
      "headers": {
        "Authorization": "Bearer ic_live_YOUR_KEY"
      }
    }
  }
}

Gli strumenti di intoCHAT compaiono quindi nell'elenco degli strumenti MCP, e l'agente di Cursor può usarli.

Altri client

Può collegarsi qualsiasi client MCP che supporti il trasporto Streamable HTTP e permetta di aggiungere un'intestazione. Indicagli l'endpoint e l'intestazione Authorization.

App desktop di Claude. Le sue impostazioni Connectors richiedono OAuth, che non è ancora supportato. Aggiungi invece il server a claude_desktop_config.json tramite il bridge open source mcp-remote, che richiede Node.js sul tuo computer:

{
  "mcpServers": {
    "intochat": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://www.intochat.ai/api/mcp", "--header", "Authorization:${INTOCHAT_AUTH}"],
      "env": {
        "INTOCHAT_AUTH": "Bearer ic_live_YOUR_KEY"
      }
    }
  }
}

MCP Inspector. Esegui npx @modelcontextprotocol/inspector, scegli Streamable HTTP, inserisci l'endpoint e aggiungi l'intestazione Authorization. Collegati tramite il proxy dell'Inspector: il server rifiuta le richieste fatte direttamente da una pagina web di un altro sito.

Provare con curl. Ogni richiesta è un messaggio JSON-RPC in una POST:

curl https://www.intochat.ai/api/mcp \
  -H "Authorization: Bearer ic_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2025-11-25" \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}'

Il server parla le versioni MCP 2026-07-28 e da 2025-03-26 a 2025-11-25, risponde a ogni richiesta in JSON e non mantiene una sessione tra una richiesta e l'altra.

Strumenti

StrumentoScopeChe cosa fa
list_agentsagents:readElenca gli agenti dell'account con i loro ID, lo stato dell'addestramento e i conteggi.
get_agentagents:readLegge un agente.
chat_with_agentchatInvia un messaggio a un agente e restituisce la sua risposta. Ogni risposta conta come un messaggio del tuo piano.
list_conversationsconversations:readElenca le conversazioni di un agente, dalla più recente, senza trascrizioni.
get_conversationconversations:readLegge una conversazione con la sua trascrizione.
list_leadsleads:readElenca i lead raccolti da un agente, dal più recente.
list_contactsleads:readElenca i contatti di un agente, dal più recente, oppure ne cerca uno tramite email o external_id.
upsert_contactcontacts:writeCrea o aggiorna un contatto tramite external_id, altrimenti email, con phone, name e attributes (un oggetto; null rimuove un attributo).
list_sourcessources:readElenca le fonti di conoscenza di un agente, l'avanzamento dell'addestramento e i caratteri che usa.
add_text_sourcesources:writeAggiunge un testo con un titolo e avvia l'addestramento.
add_qa_pairsources:writeAggiunge una domanda e una risposta e avvia l'addestramento. Se l'agente ha già la stessa domanda, la sua risposta viene sostituita.
delete_sourcesources:writeElimina una fonte e ciò che l'agente ha imparato da essa. L'operazione non si può annullare.

Ogni strumento restituisce gli stessi dati del suo endpoint REST, in JSON. list_conversations, list_leads e list_contacts accettano limit (da 1 a 100), cursor e since, tutti facoltativi, come descritto in Paginazione.

Gli strumenti sono indicati come di sola lettura o no, e delete_source, add_qa_pair e upsert_contact come capaci di modificare ciò che esiste già, così il tuo strumento di IA può chiederti conferma prima di usarli. Molti strumenti di IA chiedono la tua conferma prima di eseguire qualsiasi strumento.

Se la chiave non ha lo scope richiesto da uno strumento, lo strumento risponde con un errore che indica lo scope, e non succede nulla. Un agente, una conversazione o una fonte di un altro account risulta "non trovato", come uno che non esiste.

Non ci sono strumenti per creare agenti o modificarne le impostazioni o le istruzioni. Fallo nella dashboard.

Chattare con un agente

chat_with_agent invia un messaggio reale, a cui risponde lo stesso codice del widget di chat, in base alla conoscenza, alle istruzioni e alle azioni dell'agente. Usalo per provare come risponde un agente.

  • Ogni risposta conta come un messaggio del tuo piano e per il tetto mensile di messaggi dell'agente, se ne hai impostato uno. Vedi Che cosa conta come messaggio.
  • Ometti conversationId per avviare una nuova conversazione. Per continuarne una, passa il conversationId della risposta precedente.
  • Le conversazioni compaiono nella scheda Conversations dell'agente come tutte le altre.
  • Un agente privato non si può raggiungere in questo modo. Vedi Agenti privati.

Chiedi al tuo strumento di IA di non inviare molti messaggi di fila a meno che tu non lo voglia: ognuno consuma i messaggi del tuo piano.

Limiti

  • Piano: Starter, Pro o Enterprise. Con Free le richieste vengono rifiutate.
  • Limite di frequenza: 60 richieste al minuto per chiave, condivise con la REST API. Il collegamento richiede alcune richieste, e lo stesso vale per ogni chiamata a uno strumento. Oltre il limite, le richieste vengono rifiutate per il resto del minuto. Una chiave separata per il tuo strumento di IA evita che consumi le richieste del tuo server.
  • Messaggi: ogni risposta di chat_with_agent conta come un messaggio del tuo piano. Una risposta deve terminare entro 55 secondi.
  • Accesso: solo chiavi API. OAuth non è ancora supportato, quindi i client che lo richiedono non possono collegarsi.
  • Fonti: solo testi e coppie di Q&A. Pagine web, file e pagine Notion si aggiungono nella dashboard.
  • Nessun aggiornamento in tempo reale: il server risponde a ogni richiesta e non invia notifiche.

Se il tuo client non riesce a collegarsi, controlla l'errore che mostra: una chiave non valida o revocata viene rifiutata con 401, un account sul piano Free con 403 e troppe richieste con 429.

Passi successivi

  • Chiama intoCHAT dal tuo codice: REST API.
  • Ricevi lead e passaggi sul tuo server nel momento in cui avvengono: Webhook.
  • Scrivi buoni testi e coppie di Q&A: Testo e Q&A.

Visualizza come Markdown