Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

MCP

Scopri come LibreChat sfrutta il Model Context Protocol (MCP) per fornire un'integrazione perfetta con strumenti esterni, origini dati e servizi specializzati.

Model Context Protocol (MCP) è un protocollo aperto che standardizza il modo in cui le applicazioni forniscono contesto ai Large Language Models (LLMs). Pensa a MCP come all'"USB-C dell'IA": proprio come l'USB-C fornisce uno standard di connessione universale per i dispositivi elettronici, MCP offre un modo standardizzato per connettere i modelli di IA a diversi strumenti, fonti di dati e servizi.

LibreChat sfrutta MCP per espandere drasticamente le capacità dei tuoi agenti AI, consentendoti di integrare qualsiasi cosa, dall'accesso al file system, browser web e API specializzate, fino a strumenti aziendali personalizzati.

Perché MCP è importante

Gli LLM sono limitati alle loro funzionalità integrate. Con MCP, LibreChat abbatte queste barriere:

  • Connessione a qualsiasi strumento o servizio che fornisca un server MCP
  • Standardizzazione delle integrazioni in modo da non dover modificare il codice di LibreChat per ogni strumento
  • Supporto per ambienti multi-utente con autenticazione e isolamento adeguati
  • Fornire un ecosistema in crescita di integrazioni dinamiche e pronte all'uso

Come funziona MCP in LibreChat

LibreChat fornisce due modi per utilizzare i server MCP, sia nell'area chat che con gli agenti.

Puoi configurare i server MCP manualmente nel tuo file librechat.yaml oppure utilizzando smithery.ai per trovare e installare i server MCP in librechat.yaml (vedi l'esempio qui sotto). Ogni volta che aggiungi o modifichi un server MCP, dovrai riavviare LibreChat per inizializzare le connessioni.

URL di callback OAuth

Per i server MCP con OAuth abilitato, l'URL di callback di LibreChat è:

${DOMAIN_SERVER}/api/mcp/<server-name>/oauth/callback

<server-name> è la chiave utilizzata sotto mcpServers in librechat.yaml o il nome del server creato nell'interfaccia utente delle impostazioni MCP. Ad esempio, un server chiamato salesforce con DOMAIN_SERVER=https://chat.example.com utilizza https://chat.example.com/api/mcp/salesforce/oauth/callback.

Registra esattamente questo URL di callback presso il provider OAuth. Le installazioni Docker locali solitamente utilizzano http://localhost:3080 come URL di base.

Nell'area chat

Strumenti MCP nell'area chat

LibreChat visualizza i server MCP configurati direttamente nell'area della chat quando si utilizzano gli endpoint tradizionali (OpenAI, Anthropic, Google, Bedrock, ecc.):

  • Seleziona prima un endpoint non-agent e un modello compatibile con i tool
  • I server MCP appaiono in un menu a tendina nell'interfaccia di chat sotto il tuo input di testo
  • Quando selezionati, tutti gli strumenti di quel server diventano disponibili per il tuo modello attuale
  • Accesso rapido agli strumenti MCP senza creare un agente, consentendo l'utilizzo di più server contemporaneamente

Per impedire che i server MCP appaiano nel menu a tendina della chat (mantenendoli esclusivamente per gli agenti), imposta chatMenu: false nella tua configurazione:

mcpServers:
  internal-tools:
    command: npx
    args: ['-y', 'internal-mcp-server']
    chatMenu: false # Only available in agent builder

Con gli Agent

I server MCP si integrano perfettamente con gli Agent di LibreChat:

  1. Crea o modifica un agente
  2. Fai clic su "Add MCP Server Tools" per aprire la finestra di dialogo Tools dal pannello Agent Builder
  3. Seleziona i server MCP una volta aggiunti, ognuno apparirà come una singola voce
  4. Ottimizza le funzionalità del tuo agente abilitando/disabilitando i singoli strumenti dopo averli aggiunti
  5. Salva il tuo agente

Strumenti MCP nel Generatore di Agenti

Questa organizzazione di livello superiore mantiene l'interfaccia gestibile: anche i server con oltre 20 strumenti (come Spotify) appaiono come singole voci che possono essere espanse per un controllo granulare.

Configurazione di base

Aggiungi manualmente i server MCP al tuo file librechat.yaml:

mcpServers:
  # ClickHouse Cloud
  clickhouse-cloud:
    type: streamable-http
    url: https://mcp.clickhouse.cloud/mcp

  # File system access
  filesystem:
    command: npx
    args:
      - -y
      - '@modelcontextprotocol/server-filesystem'
      - /path/to/your/documents

  # Web browser automation
  puppeteer:
    command: npx
    args:
      - -y
      - '@modelcontextprotocol/server-puppeteer'

  # Production-ready cloud service
  business-api:
    type: streamable-http
    url: https://api.yourbusiness.com/mcp
    headers:
      X-User-ID: '{{LIBRECHAT_USER_ID}}'
      Authorization: 'Bearer ${API_TOKEN}'
    timeout: 30000
    serverInstructions: true

Aggiunta di MCP Servers nell'interfaccia utente

Puoi anche aggiungere e configurare i server MCP direttamente dall'interfaccia di LibreChat senza dover modificare alcun file di configurazione o riavviare il server.

Passaggio 1: Apri il pannello delle impostazioni MCP

Passa al pannello MCP Settings dalla barra laterale destra. Vedrai elencati qui tutti i server MCP esistenti insieme a un pulsante + per aggiungerne di nuovi.

Pannello impostazioni MCP

Passaggio 2: Compilare i dettagli del server

Premi il pulsante + e inserisci il nome del server MCP, la descrizione, l'URL, il tipo di trasporto e il metodo di autenticazione, quindi fai clic su Create.

Finestra di dialogo Aggiungi Server MCP

Il tuo nuovo server apparirà nel pannello MCP Settings con una notifica di conferma.

MCP Server creato con successo

Passaggio 3: Controlla lo stato della connessione ed effettua l'autenticazione

Controlla l'indicatore dello stato della connessione per il tuo nuovo server. Se il server richiede l'autenticazione OAuth, lo stato verrà visualizzato come disconnesso. Fai clic sul pulsante di autenticazione/connessione del server (puoi farlo facendo clic sul server MCP stesso nel menu a discesa della chat, oppure facendo prima clic sull'icona di connessione per essere reindirizzato a una finestra di dialogo con maggiori informazioni sullo stato della connessione) per avviare il flusso di autenticazione.

Stato della connessione - Disconnesso

Una volta avviato, l'indicatore di stato si aggiornerà per mostrare che l'autenticazione è in corso.

Stato della connessione - Autenticazione in corso

Passaggio 4: Continua nella scheda OAuth

Si aprirà una nuova scheda del browser per il provider OAuth. Verifica l'URL di callback e fai clic su Continue per autorizzare LibreChat.

OAuth Continue Prompt

Passaggio 5: Autenticazione riuscita

Dopo l'autenticazione, vedrai una conferma di successo. Questa finestra si chiuderà automaticamente e ti reindirizzerà a LibreChat.

Autenticazione riuscita

Passaggio 6: Server pronto per l'uso

LibreChat riconosce l'autenticazione riuscita e seleziona automaticamente il server MCP da utilizzare all'interno della conversazione. Il server ora mostra un indicatore di stato connesso ed è selezionato nel menu a discesa MCP Servers.

MCP Server Authenticated and Auto-Selected

Il tuo nuovo server MCP è disponibile anche nell'Agent Builder, dove puoi aggiungere i suoi strumenti a qualsiasi agente e personalizzare quale sottoinsieme di strumenti è consentito.

MCP Server disponibile nel Generatore di Agenti

Variabili di credenziali per i server creati tramite UI

Quando aggiungi un server MCP tramite l'interfaccia utente, puoi richiedere agli utenti di fornire le proprie chiavi API. Nella sezione Authentication della finestra di dialogo MCP Server Builder, seleziona "API Key" e spunta "User provides key". Scegli il formato dell'intestazione (Bearer, Basic o Custom) e salva il server.

Dietro le quinte, LibreChat crea automaticamente una voce customUserVars chiamata MCP_API_KEY e configura il template di intestazione appropriato (ad esempio, Authorization: Bearer {{MCP_API_KEY}}). Ogni utente fornisce la propria chiave tramite la finestra di dialogo di selezione degli strumenti MCP (MCP Tool Select Dialog) durante la configurazione di un agente: la stessa interfaccia utente utilizzata per le customUserVars definite in YAML.

Per motivi di sicurezza, i server MCP creati tramite interfaccia utente (basati su DB) possono risolvere solo i segnaposto customUserVars ({{VAR_NAME}}). Le variabili d'ambiente lato server (${ENV_VAR}), i campi del profilo utente ({{LIBRECHAT_USER_*}}) e i token OIDC ({{LIBRECHAT_OPENID_*}}) sono intenzionalmente bloccati per impedire l'accesso non autorizzato ai segreti del server o ai dati di altri utenti. Per il supporto completo dei segnaposto, configura il server in librechat.yaml.

Aggiunta di server MCP con Smithery

Smithery.ai offre un modo semplificato per scoprire e installare server MCP per LibreChat. Segui questi passaggi per iniziare:

Passaggio 1: Cerca i server MCP

Visita smithery.ai e cerca il server MCP che desideri aggiungere alla tua istanza LibreChat.

Interfaccia di ricerca Smithery

Passaggio 2: Seleziona il tuo MCP Server

Fai clic sul server MCP dai risultati di ricerca per visualizzare i dettagli e gli strumenti disponibili.

Pagina dei dettagli del server MCP

Passaggio 3: Configurazione per LibreChat

Passa alla scheda Auto nella sezione Connect e seleziona LibreChat come client desiderato.

Configurazione integrazione LibreChat

Passaggio 4: Installare il server MCP

Copia ed esegui il comando generato nel tuo terminale per installare il server MCP.

Comando di installazione

Passaggio 5: Riavvia e verifica

Il tuo server MCP è ora installato e configurabile in librechat.yaml. Riavvia LibreChat per inizializzare le connessioni e iniziare a utilizzare il tuo nuovo server MCP.

MCP Server Successfully Installed Server MCP installato tramite smithery.ai e pronto per l'uso in LibreChat

Per opzioni di configurazione dettagliate ed esempi, consultare:

Gestione del server MCP

LibreChat fornisce strumenti completi per la gestione delle connessioni ai server MCP, con monitoraggio dello stato della connessione e supporto per l'autenticazione e l'inizializzazione OAuth nell'interfaccia utente.

Indicatori dello stato della connessione

LibreChat visualizza icone di stato dinamiche che mostrano lo stato attuale di ogni server MCP nel menu a tendina della chat e nel pannello delle impostazioni:

Icone di stato del server MCP

Tipi di stato:

  • Connesso (ingranaggio verde): il server è connesso e dispone di customUserVars configurabili
  • OAuth richiesto (chiave ambra): Il server richiede l'autenticazione OAuth
  • Disconnesso (spina arancione): Connessione al server fallita o persa
  • Inizializzazione (caricatore blu): Il server si sta avviando o riconnettendo
  • Errore (triangolo rosso): Il server ha riscontrato un errore
  • Annullamento (x rossa): il flusso OAuth è in fase di annullamento

Inizializzazione del server

Puoi inizializzare o reinizializzare i server MCP direttamente dall'interfaccia:

Un clic:

  • Inizializzazione con un clic dal menu a discesa di selezione del server MCP

    Inizializzazione MCP con un clic

Da MCPConfigDialog:

  • Fai clic sull'icona di stato accanto a un server MCP nel menu a discesa della chat per aprire il MCPConfigDialog

  • Configura le variabili utente personalizzate e fai clic sul pulsante Authenticate/Initialize a seconda del tipo di autenticazione del server

    Autenticazione della finestra di configurazione MCP

    Dal pannello impostazioni MCP:

  • Fai clic su qualsiasi server nella sezione dell'elenco dei server del pannello delle impostazioni MCP per accedere ai controlli di configurazione e inizializzazione

  • Configura le variabili utente personalizzate e fai clic sul pulsante Authenticate/Initialize a seconda del tipo di autenticazione del server

    Inizializzazione del pannello impostazioni MCP

Visibilità del pannello delle impostazioni MCP

Il pannello delle impostazioni MCP appare nella barra laterale destra quando LibreChat rileva server MCP che potrebbero richiedere l'intervento dell'utente durante la loro inizializzazione. Il pannello sarà visibile quando uno qualsiasi dei server configurati soddisfa uno di questi criteri:

  • Variabili utente personalizzate: Il server ha customUserVars definite che possono contenere credenziali fornite dall'utente
  • Autenticazione OAuth: Il server viene rilevato come richiedente l'autenticazione OAuth durante l'avvio
  • Inizializzazione manuale: Il server ha startup: false configurato, il che richiede un'inizializzazione manuale

Funzionalità specifiche di LibreChat

L'implementazione MCP di LibreChat è progettata per ambienti multi-utente reali e altamente configurabili.

Connessioni specifiche per l'utente

  • Ogni utente ottiene la propria connessione isolata ai server MCP
  • L'autenticazione utente e le autorizzazioni vengono rispettate
  • I dati personali e il contesto rimangono privati

Condivisione dei server MCP

I server MCP partecipano al sistema di controllo degli accessi granulare di LibreChat. Oltre ai server definiti in librechat.yaml (che sono gestiti dagli amministratori e regolati dalle autorizzazioni della funzionalità interface.mcpServers), i server MCP creati dagli utenti hanno il proprio ACL e possono essere condivisi con utenti, gruppi, ruoli specifici o pubblicamente, a livello di Visualizzatore, Editor o Proprietario.

I feature flag USE, CREATE, SHARE e SHARE_PUBLIC sotto interface.mcpServers controllano chi è autorizzato a creare e condividere i server MCP. Consulta Access Control per sapere come si compongono i livelli di autorizzazione.

Contesto Utente Dinamico

I server MCP possono accedere alle informazioni dell'utente tramite segnaposto in URL e intestazioni (per trasporti SSE e HTTP Streamable):

mcpServers:
  user-api:
    type: streamable-http
    url: https://api.example.com/users/{{LIBRECHAT_USER_USERNAME}}/mcp
    headers:
      X-User-ID: '{{LIBRECHAT_USER_ID}}'
      X-User-Email: '{{LIBRECHAT_USER_EMAIL}}'
      X-User-Role: '{{LIBRECHAT_USER_ROLE}}'
      Authorization: 'Bearer ${API_TOKEN}'

I segnaposto disponibili includono:

  • {{LIBRECHAT_USER_ID}} - Identificativo utente univoco
  • {{LIBRECHAT_USER_EMAIL}} - Indirizzo email dell'utente
  • {{LIBRECHAT_USER_ROLE}} - Ruolo utente (admin, user, ecc.)
  • {{LIBRECHAT_USER_USERNAME}} - Nome utente
  • E molti altri (vedi Configurazione dei Server MCP per l'elenco completo)

I server MCP definiti in YAML possono utilizzare anche i segnaposto {{LIBRECHAT_OPENID_*}}, {{LIBRECHAT_GRAPH_*}} e {{LIBRECHAT_BODY_*}}. I valori {{LIBRECHAT_BODY_*}} sono limitati alla richiesta (request-scoped), pertanto LibreChat crea connessioni per l'esecuzione attiva, le riutilizza tra le chiamate agli strumenti durante tale esecuzione e le elimina al termine della richiesta. I server limitati alla richiesta sono esclusi dalla cache persistente degli strumenti, in modo che le intestazioni e gli URL specifici della richiesta non vengano riutilizzati al di fuori dell'esecuzione attiva. I segnaposto User, OpenID e Graph sono limitati all'utente (user-scoped); i trasporti HTTP aggiornano le intestazioni risolte prima di ogni chiamata allo strumento senza richiedere autonomamente una riconnessione.

Istruzioni del Server

serverInstructions è una funzionalità di LibreChat che aggiunge dinamicamente istruzioni configurate quando viene selezionato un qualsiasi strumento da quel server MCP:

mcpServers:
  filesystem:
    command: npx
    args: ['-y', '@modelcontextprotocol/server-filesystem', '/docs']
    serverInstructions: |
      When accessing files:
      - Always check file permissions first
      - Use absolute paths for reliability
      - Handle errors gracefully

Opzioni:

  • true: Usa le istruzioni fornite dal server
  • false: Disabilita le istruzioni
  • string: Istruzioni personalizzate (mostrate sopra)

Configurazione del timeout

Per operazioni MCP di lunga durata, configura timeout appropriati sia per l'inizializzazione che per le operazioni degli strumenti.

mcpServers:
  data-processor:
    type: streamable-http
    url: https://api.example.com/mcp
    initTimeout: 15000 # 15 seconds for server initialization
    timeout: 60000 # 60 seconds for tool operations

Nota: Se le operazioni vengono ancora interrotte prematuramente, controlla la configurazione del tuo proxy (ad esempio, nginx, traefik, ecc.), che potrebbe interrompere le connessioni prima del previsto a causa dei timeout predefiniti.

Credenziali fornite dall'utente

Puoi consentire agli utenti di fornire le proprie credenziali per i server MCP tramite customUserVars. Ciò abilita un'autenticazione sicura e specifica per l'utente senza memorizzare le credenziali nei file di configurazione.

mcpServers:
  my-api-server:
    type: streamable-http
    url: 'https://api.example.com/mcp'
    headers:
      X-Auth-Token: '{{MY_API_KEY}}' # Uses the user-provided value
    customUserVars:
      MY_API_KEY:
        title: 'API Key'
        description: "Enter your personal API key from <a href='https://example.com/keys' target='_blank'>your account settings</a>"

Gli utenti possono configurare queste credenziali:

  • Dall'area Chat: Fai clic sull'icona delle impostazioni accanto ai server MCP configurabili nel menu a discesa della selezione degli strumenti
  • Dal pannello Impostazioni MCP: Accedi a "MCP Settings" nel pannello di destra per gestire le credenziali per tutti i server configurati

Reinizializzazione dei server MCP con le credenziali utente

Per i server MCP che richiedono credenziali specifiche dell'utente prima di poter essere utilizzati (ad esempio, i PAT_TOKEN nel server MCP ufficiale di GitHub), LibreChat consente agli utenti di fornire tali credenziali e quindi di reinizializzare il server MCP dall'interno dell'interfaccia utente senza riavviare l'intera applicazione:

  1. Quando selezioni un MCP che utilizza customUserVars, sarai in grado di Salvare o Revocare il valore di una customUserVar per il server MCP selezionato direttamente dal Pannello MCP.
  2. Dopo aver salvato un valore per una customUserVar, fai clic sul pulsante di reinizializzazione (un'icona con frecce circolari accanto a ciascun nome del server nel pannello MCP).
  3. LibreChat tenterà di connettersi al server utilizzando le credenziali fornite e ti avviserà con una notifica toast se il processo di reinizializzazione ha avuto successo o è fallito.

Suggerimento: Se sai che un server richiederà credenziali non disponibili al primo avvio, puoi aggiungere startup: false alla sua configurazione. Questo indica a LibreChat di non tentare la connessione a quel server finché non viene reinizializzato manualmente nell'interfaccia utente.

Esempio:

mcpServers:
  github-mcp:
    type: streamable-http
    url: 'https://api.githubcopilot.com/mcp/'
    headers:
      Authorization: '{{PAT_TOKEN}}'
    customUserVars:
      PAT_TOKEN:
        title: 'GitHub PAT Token'
        description: 'GitHub Personal Access Token'
    startup: false

Autenticazione OAuth

LibreChat supporta l'autenticazione OAuth per i server MCP, seguendo le raccomandazioni di Anthropic per connessioni MCP sicure. OAuth fornisce un metodo standardizzato e sicuro per l'autenticazione senza dover memorizzare credenziali a lunga durata.

Flussi OAuth supportati

I server MCP di LibreChat supportano OAuth 2.0 con:

  • Authorization Code Flow with PKCE: Consigliato per la massima sicurezza
  • Client Discovery: Registrazione automatica del client quando supportata dal provider OAuth
  • Refresh Tokens: Rinnovo automatico del token quando disponibile

Esempi di configurazione

mcpServers:
  # Public remote MCP server for PayPal, uses OAuth Client Discovery
  # ❌ Refresh Tokens: you may need to re-authenticate periodically
  # More info: https://developer.paypal.com/tools/mcp-server/
  paypal:
    type: 'sse'
    initTimeout: 150000 # higher timeout to allow for initial authentication
    url: 'https://mcp.paypal.com/sse'

  # Example self-hosted remote MCP server for Spotify, uses OAuth Client Discovery
  # ✅ Refresh Tokens: refreshes token for authentication automatically
  # Hosted on Cloudflare Workers, more info: https://github.com/LibreChat-AI/spotify-mcp
  spotify:
    type: 'streamable-http'
    initTimeout: 150000
    url: 'https://mcp-spotify-oauth-example.account.workers.dev/mcp'

Flusso di autenticazione OAuth

Quando configuri per la prima volta un server MCP abilitato per OAuth:

  1. Connessione iniziale: LibreChat tenta di connettersi al server MCP
  2. Autenticazione richiesta: Se non esiste un token valido, vedrai un indicatore di autenticazione OAuth nel menu a tendina della chat per quel server
  3. Interfaccia pulsante: Fai clic sul pulsante dell'indicatore di autenticazione per aprire il MCPConfigDialog e avviare il flusso OAuth
  4. Config Dialog: Fai clic sul pulsante Authenticate nel MCPConfigDialog per aprire la pagina di autenticazione OAuth nel tuo browser
  5. Reindirizzamento del browser: LibreChat apre il provider OAuth nel tuo browser
  6. Gestione del ritorno: LibreChat elabora automaticamente il callback OAuth una volta completata l'autenticazione
  7. Archiviazione dei token: LibreChat archivia in modo sicuro i token per un utilizzo futuro
  8. Connessione stabilita: Una volta effettuata l'autenticazione, il server MCP sarà connesso e potrai utilizzarlo nella tua chat

URL di callback OAuth

Quando un server MCP utilizza OAuth, LibreChat espone un endpoint di callback a cui il provider OAuth reindirizza dopo un'autorizzazione riuscita.

L'URL di callback deve seguire questo formato:

${baseUrl}/api/mcp/${serverName}/oauth/callback

Dove ${serverName} è la chiave del server MCP definita nella configurazione librechat.yaml. LibreChat gestisce il reindirizzamento a questo endpoint, completa lo scambio del token e associa le credenziali al server MCP corrispondente.

Esempio di URL di callback OAuth

Data la seguente configurazione del server MCP:

mcpServers:
  # Example self-hosted remote MCP server for Spotify, uses OAuth Client Discovery
  # ✅ Refresh Tokens: refreshes token for authentication automatically
  # Hosted on Cloudflare Workers, more info: https://github.com/LibreChat-AI/spotify-mcp
  spotify:
    type: 'streamable-http'
    initTimeout: 150000
    url: 'https://mcp-spotify-oauth-example.account.workers.dev/mcp'

L'URL di callback sarebbe ${baseUrl}/api/mcp/spotify/oauth/callback.

Nota:

  • L'URL di callback deve essere registrato esattamente presso il provider OAuth affinché il flusso funzioni.
  • Altri percorsi come /api/oauth/callback o /api/oauth/openid/callback non sono validi per i flussi OAuth MCP.

Gestione dei token

LibreChat gestisce i token OAuth in modo intelligente:

  • Archiviazione sicura: i token vengono crittografati e archiviati in modo sicuro
  • Aggiornamento automatico: Quando i token di aggiornamento sono disponibili, LibreChat rinnova automaticamente i token di accesso scaduti
  • Ripristino silenzioso 401: Se una connessione MCP OAuth riceve un 401 durante la sessione ed è disponibile un token di aggiornamento, LibreChat tenta un aggiornamento silenzioso prima di mostrare una nuova richiesta di autenticazione.
  • Gestione delle sessioni: Ogni utente mantiene le proprie sessioni OAuth per ambienti multi-utente

Ogni utente riceverà una richiesta di autenticazione con il proprio login OAuth al primo utilizzo di un server MCP abilitato per OAuth. Ciò garantisce che i dettagli di connessione e autenticazione siano univoci per ogni utente, mantenendo la sicurezza e la privacy in ambienti multi-utente.

Tempistiche OAuth

Il completamento di MCP OAuth utilizza il proprio timeout configurato dal server invece di riutilizzare l' initTimeout del server MCP. Per impostazione predefinita, LibreChat attende fino a 10 minuti che l'utente completi l'MCP OAuth e mantiene lo stato del flusso per 15 minuti.

Utilizza queste variabili d'ambiente quando un provider OAuth o un flusso di lavoro utente necessita di più tempo:

MCP_OAUTH_HANDLING_TIMEOUT=600000
MCP_OAUTH_FLOW_TTL=900000

MCP_OAUTH_FLOW_TTL è limitato in modo da superare MCP_OAUTH_HANDLING_TIMEOUT, così che i callback vicini alla scadenza possano ancora trovare il loro stato di flusso. La finestra di polling della server-card MCP segue il timeout di gestione configurato.

Flusso di autenticazione OAuth specifico per l'utente

Nota: i token mostrati durante l'avvio dell'app sono solo per l'inizializzazione a livello di app e non vengono utilizzati per le connessioni dei singoli utenti.

Esempio di aggiornamento automatico del token:

[MCP][spotify] Access token missing
[MCP][spotify] Attempting to refresh token
[MCP][spotify] Successfully refreshed and stored OAuth tokens
[MCP][spotify] ✓ Initialized

Best Practices

  1. Usa OAuth quando disponibile: Preferisci OAuth rispetto alle chiavi API per una maggiore sicurezza
  2. Configura i timeout appropriati: Usa MCP_OAUTH_HANDLING_TIMEOUT e MCP_OAUTH_FLOW_TTL per le finestre di completamento OAuth; usa initTimeout per l'inizializzazione del server
  3. Monitoraggio della scadenza dei token: Controlla i log per problemi di autenticazione
  4. Piano per la ri-autenticazione: Alcuni provider non supportano i token di aggiornamento (refresh tokens)

Nota: La configurazione OAuth basata su interfaccia utente arriverà presto, il che semplificherà il processo di autenticazione direttamente dall'interfaccia di LibreChat.

Trasporti del server

I server MCP possono essere configurati per utilizzare diversi meccanismi di trasporto:

Server STDIO

  • Funziona bene per ambienti locali e multiutente.
  • Non scalabile per distribuzioni remote o cloud

Server-Sent Events (SSE) Server

  • Meccanismo di trasporto remoto, ma non raccomandato per l'ambiente di produzione

Server HTTP Streamable

  • Utilizza HTTP POST per l'invio di messaggi e supporta le risposte in streaming
  • Funziona come un processo indipendente in grado di gestire connessioni client multiple
  • Supporta sia le richieste di base che lo streaming tramite Server-Sent Events (SSE)
  • Alternativa più performante rispetto al trasporto legacy HTTP+SSE
  • Supporta configurazioni server multi-utente appropriate

Per ambienti di produzione, si consigliano solo server MCP con "Streamable HTTP" transports. A differenza di SSE, che mantiene connessioni a lunga durata, Streamable HTTP offre opzioni stateless più adatte a distribuzioni scalabili multi-utente.

LibreChat è all'avanguardia nell'implementazione di integrazioni server MCP flessibili e scalabili per supportare diversi scenari di utilizzo e aiutarti a costruire i flussi di lavoro AI di domani.


Pronto a estendere le tue funzionalità IA? Inizia configurando il tuo primo server MCP e scopri come LibreChat può connettersi a praticamente qualsiasi strumento o servizio di cui la tua organizzazione ha bisogno.

Com’è questa guida?