- Configuración detallada de variables de entorno mediante el archivo .env y docker-compose.
- Integración de modelos de Anthropic, OpenAI y Google Vertex AI en la interfaz de LibreChat.
- Implementación de capacidades avanzadas mediante el Model Context Protocol (MCP) y agentes personalizados.
- Gestión de seguridad, moderación de usuarios y optimización de rendimiento con Redis.
LibreChat permite reunir modelos de Anthropic, OpenAI, Google y otros proveedores dentro de una misma interfaz. Sin embargo, instalar la plataforma es solamente el primer paso. Para empezar a conversar es necesario añadir las claves de API, definir los modelos disponibles y reiniciar correctamente el servicio.
La configuración se reparte principalmente entre dos archivos. El archivo .env contiene variables de entorno y credenciales, mientras que librechat.yaml permite personalizar endpoints, modelos, agentes, servidores MCP y diferentes funciones de la interfaz.
En esta guía veremos cómo conectar LibreChat con Claude, OpenAI y Gemini, cómo permitir que cada usuario utilice su propia clave y qué ajustes debes revisar si los modelos no aparecen en la interfaz.
Qué necesitas antes de conectar los modelos

Antes de editar la configuración, comprueba que LibreChat funciona y que puedes acceder a la interfaz web. En una instalación con Docker Compose, la aplicación suele quedar disponible en:
http://localhost:3080
También necesitarás una clave de API del proveedor que quieras utilizar. Tener una suscripción a ChatGPT, Claude Pro o Google AI Pro no implica disponer automáticamente de crédito para sus respectivas APIs. El uso de la API normalmente se factura de forma independiente.
Dependiendo de los modelos que quieras conectar, deberás obtener la credencial correspondiente:
- Anthropic: una clave creada desde la consola para desarrolladores de Anthropic.
- OpenAI: una clave de la plataforma de OpenAI con facturación o saldo disponible.
- Google: una clave para la API de Gemini o credenciales de Google Cloud para Vertex AI.
- AWS Bedrock: credenciales de AWS y acceso habilitado a los modelos correspondientes.
No publiques estas claves ni las incluyas en capturas de pantalla. Tampoco conviene escribirlas directamente dentro de librechat.yaml. Lo recomendable es guardarlas en .env y hacer referencia a ellas mediante variables.
Para qué sirven .env y librechat.yaml
El archivo .env controla numerosos aspectos del backend. Aquí se encuentran el puerto, la conexión con MongoDB, los secretos utilizados por la aplicación y las claves de los proveedores de inteligencia artificial.
Por ejemplo, una configuración básica puede contener variables como estas:
PORT=3080
MONGO_URI=mongodb://mongodb:27017/LibreChat
ANTHROPIC_API_KEY=tu_clave_de_anthropic
OPENAI_API_KEY=tu_clave_de_openai
GOOGLE_KEY=tu_clave_de_google
El archivo librechat.yaml se utiliza para opciones más estructuradas: endpoints personalizados, lista de modelos, ajustes compartidos, servidores MCP, agentes, almacenamiento de archivos y funciones visibles en la interfaz.
LibreChat puede funcionar sin un archivo YAML personalizado porque incluye valores predeterminados. Sin embargo, lo necesitarás si quieres añadir proveedores compatibles, controlar los modelos mostrados o habilitar funciones avanzadas.
Cuando se utiliza Docker, docker-compose.override.yml permite modificar servicios, volúmenes y variables sin editar el archivo Compose principal. Esto facilita conservar los cambios cuando se actualiza la instalación.
Cómo conectar LibreChat con Claude

Para utilizar los modelos de Anthropic, abre el archivo .env y localiza la variable ANTHROPIC_API_KEY. Introduce la clave obtenida en la plataforma de Anthropic:
ANTHROPIC_API_KEY=sk-ant-tu_clave
Después, reinicia LibreChat para que el backend vuelva a cargar las variables:
docker compose down
docker compose up -d
Al abrir de nuevo la interfaz, el endpoint de Anthropic debería aparecer en el selector. Los modelos disponibles dependerán de la versión de LibreChat, del catálogo configurado y del acceso concedido a tu cuenta de Anthropic.
Si quieres limitar la lista mostrada, puedes utilizar ANTHROPIC_MODELS con los identificadores de los modelos separados por comas:
ANTHROPIC_MODELS=modelo-claude-1,modelo-claude-2
Conviene copiar los identificadores admitidos por la versión instalada y por la API. Un nombre comercial visible en una web no siempre coincide con el identificador exacto que espera LibreChat.
Los modelos más pequeños de la familia Claude suelen resultar adecuados cuando se priorizan la velocidad y el coste. Los modelos más avanzados ofrecen mejores resultados en razonamiento, programación y análisis, aunque normalmente tienen un precio superior.
Permitir que cada usuario introduzca su propia clave
Si varias personas utilizan la misma instalación, no tienes por qué compartir una única clave global. LibreChat admite el valor user_provided en diferentes endpoints:
ANTHROPIC_API_KEY=user_provided
OPENAI_API_KEY=user_provided
GOOGLE_KEY=user_provided
Con esta configuración, cada usuario puede introducir su credencial desde la interfaz. Las solicitudes se realizarán utilizando su propia cuenta del proveedor, por lo que el administrador no tendrá que asumir todo el consumo de la instalación.
Esta opción también evita guardar una clave compartida en el servidor. No obstante, cada usuario seguirá necesitando una cuenta válida, acceso a la API y facturación configurada cuando el proveedor lo exija.
Si vas a utilizar una clave global, limita quién puede registrarse y acceder a LibreChat. Dejar una instalación pública conectada a una API de pago puede generar un consumo elevado en muy poco tiempo.
Cómo conectar OpenAI con LibreChat
La configuración básica de OpenAI sigue el mismo procedimiento. Añade la clave al archivo .env:
OPENAI_API_KEY=sk-tu_clave_de_openai
También puedes indicar qué modelos deben aparecer:
OPENAI_MODELS=modelo-openai-1,modelo-openai-2
Tras guardar los cambios, reinicia LibreChat. Si el endpoint no aparece, revisa los registros del contenedor:
docker compose logs api
Los registros suelen mostrar si existe una variable vacía, un identificador incorrecto, un problema de conexión o un error de autenticación.
No debe confundirse una integración oficial con un endpoint compatible con OpenAI. Muchas plataformas locales y servicios de terceros imitan el formato de su API, pero utilizan otra dirección, otra clave y un catálogo diferente.
Crear endpoints personalizados en librechat.yaml

Para añadir una plataforma compatible con la API de OpenAI, lo apropiado es crear un endpoint personalizado dentro de librechat.yaml. Una estructura simplificada sería:
version: 1.3.5
endpoints:
custom:
- name: "Proveedor personalizado"
apiKey: "${PROVEEDOR_API_KEY}"
baseURL: "https://servidor.example.com/v1"
models:
default:
- "nombre-del-modelo"
fetch: true
titleConvo: true
modelDisplayLabel: "Proveedor personalizado"
La clave permanece en .env:
PROVEEDOR_API_KEY=tu_clave
Si el servicio utiliza de forma nativa la API Messages de Anthropic, debe configurarse como proveedor Anthropic y no como un endpoint genérico compatible con OpenAI:
version: 1.3.5
endpoints:
custom:
- name: "Anthropic compatible"
provider: "anthropic"
apiKey: "${ANTHROPIC_API_KEY}"
baseURL: "https://api.anthropic.com"
models:
default:
- "identificador-del-modelo"
fetch: false
Después de modificar el YAML, reinicia la aplicación y consulta los registros si el endpoint no aparece. Los espacios y la sangría son importantes en YAML; una tabulación incorrecta puede impedir que LibreChat interprete el archivo.
Conectar Gemini y Vertex AI
Para utilizar la API de Gemini mediante una clave, añade la siguiente variable:
GOOGLE_KEY=tu_clave_de_google
LibreChat también puede trabajar con Vertex AI mediante una cuenta de servicio. En ese caso debes habilitar la API de Vertex AI, crear una cuenta de servicio con el rol adecuado y facilitar a LibreChat el archivo JSON de credenciales.
GOOGLE_SERVICE_KEY_FILE=/ruta/segura/credenciales.json
Si el archivo se encuentra fuera del contenedor, tendrás que montarlo mediante Docker Compose para que la ruta exista también dentro del servicio de LibreChat.
No conviene confiar en una conmutación automática sin verificar la configuración. Si quieres utilizar Vertex AI, configura expresamente el proyecto, la región, las credenciales y los modelos habilitados.
Claude también puede ejecutarse a través de Vertex AI. Para ello se necesita habilitar los modelos de Anthropic en Model Garden y utilizar una cuenta de servicio con, al menos, el rol Vertex AI User.
Utilizar Claude mediante AWS Bedrock
AWS Bedrock ofrece otra vía para acceder a Claude y a modelos de diferentes proveedores. LibreChat incluye una configuración específica para este endpoint.
Antes de utilizarlo debes solicitar acceso al modelo desde AWS, elegir una región compatible y proporcionar credenciales con los permisos necesarios. En entornos de AWS también se puede aprovechar la cadena de credenciales predeterminada, roles de instancia o identidades asociadas a contenedores.
Evita incluir claves permanentes directamente en librechat.yaml. Siempre que sea posible, utiliza roles con permisos mínimos o variables de entorno gestionadas de forma segura.
Conectar herramientas externas mediante MCP
Model Context Protocol permite conectar los agentes de LibreChat con herramientas y fuentes externas. Un servidor MCP puede ofrecer acceso a bases de datos, repositorios, sistemas de archivos, aplicaciones empresariales o APIs.
Los servidores se definen en la sección mcpServers de librechat.yaml. Por ejemplo:
version: 1.3.5
mcpServers:
servidor-ejemplo:
type: streamable-http
url: "https://servidor.example.com/mcp"
timeout: 30000
La estructura exacta dependerá del transporte utilizado por el servidor. LibreChat admite diferentes formas de conexión, por lo que debes seguir la documentación del MCP que quieras instalar.
MCP no es necesariamente de solo lectura. Una herramienta puede consultar información o realizar cambios externos. Por eso debes revisar cuidadosamente:
- Qué herramientas expone el servidor.
- Qué credenciales utiliza.
- Qué usuarios y agentes pueden acceder a él.
- Si permite escribir, borrar o modificar información.
- Qué dominios y direcciones tiene permitido alcanzar.
Las restricciones de red y la configuración de mcpSettings ayudan a reducir riesgos como el acceso no autorizado a servicios internos. Los permisos de uso también pueden administrarse por usuario, grupo o rol.
Crear agentes y utilizar Skills en LibreChat

LibreChat permite crear agentes con instrucciones, herramientas, archivos y servidores MCP. La función File Context sirve para extraer el contenido de documentos y ponerlo a disposición del agente durante la conversación.
Además, las versiones actuales incorporan Skills basadas en archivos SKILL.md. Estas habilidades agrupan instrucciones reutilizables que pueden activarse manualmente, descubrirse automáticamente o aplicarse en cada turno.
Por tanto, ya no es necesario convertir siempre una habilidad procedente de otra herramienta en un enorme mensaje de sistema. Puedes adaptar su archivo SKILL.md, conservar las instrucciones relevantes y añadir los archivos de apoyo que necesite.
Para habilitar esta función, la capacidad skills debe estar disponible en el endpoint de agentes:
version: 1.3.5
endpoints:
agents:
capabilities:
- "context"
- "skills"
- "tools"
También puedes limitar las Skills disponibles para modelos o agentes concretos. Esto evita cargar instrucciones irrelevantes y permite controlar qué procedimientos puede utilizar cada asistente.
Configurar MongoDB, permisos y proxy inverso
LibreChat utiliza MongoDB para almacenar usuarios, conversaciones y otros datos de la aplicación. Si empleas una instancia externa, revisa que MONGO_URI contenga el usuario, la contraseña, el servidor, el puerto, la base de datos y los parámetros de autenticación necesarios.
MONGO_URI=mongodb://usuario:contraseña@servidor:27017/LibreChat?authSource=admin
Cuando la contraseña contiene caracteres especiales, puede ser necesario codificarlos correctamente dentro de la URI.
En Linux, los problemas de escritura sobre volúmenes montados pueden solucionarse haciendo coincidir el UID y el GID del contenedor con los del usuario que ejecuta Docker:
UID=1000
GID=1000
No cambies estos valores a ciegas. Consulta primero el identificador real del usuario y comprueba los permisos de las carpetas montadas.
Si LibreChat funciona detrás de Nginx, Traefik, Caddy o Cloudflare, configura correctamente TRUST_PROXY. Este ajuste determina qué proxies son fiables y afecta a la obtención de la IP del cliente, las cookies seguras y los sistemas que aplican límites por dirección.
Cuándo merece la pena instalar Redis
Redis puede emplearse para caché, sesiones y transmisiones reanudables. También es necesario cuando se ejecutan varias instancias de LibreChat detrás de un balanceador, porque permite compartir el estado entre ellas.
Sin embargo, una instalación individual no necesita Redis obligatoriamente. El modo en memoria suele ser suficiente para un servidor doméstico, una prueba local o una instancia sencilla con Docker Compose.
Una configuración básica puede incluir:
USE_REDIS=true
REDIS_URI=redis://redis:6379
Redis no convierte automáticamente en rápido cualquier modelo ni reduce la latencia de la API del proveedor. Su beneficio se encuentra principalmente en la gestión del estado, la caché y el escalado de la propia plataforma.
Moderación y protección de la instancia
LibreChat dispone de un sistema automatizado que asigna puntuaciones a comportamientos como registros, inicios de sesión o mensajes excesivos. Al superar el umbral configurado, puede bloquear temporalmente al usuario y su dirección IP.
Entre sus variables se encuentran:
BAN_VIOLATIONS=true
BAN_INTERVAL=20
BAN_DURATION=7200000
Antes de cambiar estos valores, revisa las unidades y los límites establecidos por la versión instalada. Una configuración demasiado agresiva puede bloquear usuarios legítimos.
Este sistema resulta útil frente a abusos básicos, pero no sustituye a un cortafuegos, un proxy inverso bien configurado ni una protección DDoS. Si la instancia está expuesta a Internet, también conviene cerrar el registro público cuando no sea necesario, utilizar HTTPS y mantener LibreChat actualizado.
Guardar archivos en S3 o Azure Blob Storage
De forma predeterminada, LibreChat puede guardar archivos localmente. Para una instalación con muchos usuarios es posible utilizar Amazon S3 o Azure Blob Storage como backend persistente.
CloudFront cumple otra función: actúa como CDN delante de S3 para entregar imágenes y descargas mediante enlaces estables, caché perimetral y, si se configura, URLs o cookies firmadas. CloudFront no reemplaza a S3 como sistema de almacenamiento.
LibreChat también permite elegir una estrategia diferente según el tipo de archivo. Por ejemplo, se pueden almacenar documentos en S3 y servir imágenes mediante una estrategia respaldada por CDN.
Antes de migrar el almacenamiento, configura permisos mínimos, bloquea el acceso público cuando no sea necesario y crea una política de copias de seguridad. Utilizar almacenamiento externo no sustituye el backup de MongoDB, donde se conservan otros datos importantes de la aplicación.
Qué comprobar si Claude u OpenAI no aparecen
Cuando un proveedor no aparece en el selector o devuelve un error, revisa estos puntos:
- Comprueba que la variable correspondiente no esté vacía.
- Verifica que la clave pertenece a la API y no a una suscripción de consumo.
- Revisa que la cuenta tenga saldo, facturación y acceso al modelo.
- Confirma que los identificadores de los modelos son correctos.
- Valida la sangría y la estructura de
librechat.yaml. - Asegúrate de que el YAML está montado dentro del contenedor.
- Reinicia LibreChat después de modificar la configuración.
- Consulta los registros mediante
docker compose logs api.
También puedes comprobar el estado de los servicios con:
docker compose ps
Si MongoDB aparece detenido, la aplicación puede cargar de manera incompleta o no permitir el acceso. Si solamente falla un proveedor, el problema suele encontrarse en la clave, el endpoint, el modelo seleccionado o la conectividad del contenedor.
Conectar LibreChat con Claude, OpenAI o Gemini requiere coordinar correctamente las claves de .env con las opciones avanzadas de librechat.yaml. Una vez configurados los proveedores, la plataforma puede ampliarse mediante agentes, Skills, documentos y servidores MCP, siempre aplicando permisos mínimos y evitando exponer credenciales o herramientas sensibles a usuarios no autorizados.
Soy un apasionado de la tecnología que ha convertido sus intereses «frikis» en profesión. Llevo más de 10 años de mi vida utilizando tecnología de vanguardia y trasteando todo tipo de programas por pura curiosidad. Ahora me he especializado en tecnología de ordenador y videojuegos. Esto es por que desde hace más de 5 años que trabajo redactando para varias webs en materia de tecnología y videojuegos, creando artículos que buscan darte la información que necesitas con un lenguaje entendible por todos.
Si tienes cualquier pregunta, mis conocimientos van desde todo lo relacionado con el sistema operativo Windows así como Android para móviles. Y es que mi compromiso es contigo, siempre estoy dispuesto a dedicarte unos minutos y ayudarte a resolver cualquier duda que tengas en este mundo de internet.