Model or dataset
danny-avila/LibreChat avatar
danny-avila/LibreChat

LibreChat: A Self-Hosted ChatGPT Alternative with Support for 20-Plus AI Providers

LibreChat is a self-hostable, ChatGPT-style chat interface that unifies many AI providers with model switching, agents, MCP tools and a sandboxed code interpreter.

45,122 stars9,245 forksTypeScriptMIT

At a glance

What is it?
LibreChat is a TypeScript web application that runs on Docker and provides a ChatGPT-like interface supporting Anthropic, OpenAI, Azure, Google, AWS Bedrock, Ollama, and many other providers simultaneously. It suits teams and individuals who need conversation history, multi-user authentication, and data sovereignty without paying for a managed AI chat service.
Who is it for?
LibreChat suits teams that need a self-hosted AI interface with support for multiple providers, multi-user accounts, and built-in MCP and agent tooling. It is not the right choice for single users who want a quick setup and no server to maintain, because the stack requires MongoDB, a RAG API service, and optionally Meilisearch, all coordinated through Docker Compose.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What LibreChat Provides and Who It Is For

LibreChat describes itself as an enhanced ChatGPT clone with a UI inspired by ChatGPT but extended with provider switching, conversation branching, multi-user authentication, and an agent system. The primary audience is developers and organizations that want to run their own AI chat service: teams that cannot send data to external SaaS products, individuals who want to connect multiple AI providers in one interface, or engineers building internal tools on top of the LibreChat API. The project is MIT-licensed and actively developed. The last push to the main branch was on 2026-09-26, with the most recent release being v0.8.8-rc4.

Provider Architecture and How LibreChat Handles Multiple AI Backends

LibreChat treats AI providers as configurable endpoints rather than hardcoded integrations. The supported providers at the time of writing include Anthropic (Claude), OpenAI, Azure OpenAI, AWS Bedrock, Google Vertex AI, Ollama, AMD Lemonade, Groq, Cohere, Mistral AI, Apple MLX, koboldcpp, together.ai, OpenRouter, Helicone, Perplexity, Deepseek, Qwen, and others accessible through custom endpoints. A custom endpoint allows connecting any OpenAI-compatible API without a proxy. The .env.example file in the repository shows configuration for each provider through environment variables; MONGO_URI and MEILI_HOST are also required for conversation storage and search. The docker-compose.yml includes four services: the LibreChat API container, a MongoDB database, a Meilisearch instance for message search, and a RAG API for file-based retrieval. Each service is configured through environment variables rather than code changes, and LibreChat reads these at startup.

Deploying LibreChat with Docker Compose

The primary installation path uses Docker Compose. The repository includes a docker-compose.yml file and an .env.example file. Before starting, copy .env.example to .env and fill in at least MONGO_URI and any provider API keys. The docker-compose.yml sets the API container to listen on ${PORT} and binds it to 0.0.0.0, with PORT defaulting to 3080 in the .env.example:

bash
git clone https://github.com/danny-avila/LibreChat.git
cd LibreChat
cp .env.example .env

After editing .env with your credentials, start the stack:

bash
docker compose up -d

The docker-compose.yml restart policy is set to always, so services restart after a host reboot. The Dockerfile for the API image uses node:24.16.0-alpine as its base and installs jemalloc for memory management and uv for extended MCP support. The package.json scripts include helper commands for user management such as create-user, invite-user, reset-password, and ban-user, all run via node config/.

Agents, MCP Support, and the Code Interpreter

LibreChat v0.8.8-rc4 adds several agent capabilities beyond basic chat. The Agent system allows building no-code custom assistants that can be shared with specific users and groups. Agents can invoke MCP servers, run file searches, execute code, and call Skills, which are reusable SKILL.md instruction bundles for manual, automatic, or always-on workflows. MCP support covers per-request headers, OAuth refresh across replicas, and credential persistence through provider outages, addressing reliability issues that appeared in earlier MCP implementations. The Code Interpreter runs Python, Node.js, Go, C/C++, Java, PHP, Rust, and Fortran in an isolated sandbox powered by ClickHouse/code-interpreter. The v0.8.8-rc4 release also introduced Subagents, which delegate focused work to isolated child agent runs with separate context windows, and attached workspaces that let agents inspect, search, edit, and run commands in managed code repositories. A Trace Viewer was added in the same release to show model conversations as ordered steps with roles, agent identity, tool rounds, and cost information.

Web Search, Image Generation, and Multilingual Interface

LibreChat includes a web search feature that combines search providers, content scrapers, and result rerankers. Jina reranking is configurable with a custom API URL. The image generation system supports GPT-Image-1 for text-to-image and image-to-image, DALL-E 2 and 3, Stable Diffusion, Flux, and any MCP server that exposes image generation. The UI supports more than 40 languages including Chinese (Simplified and Traditional), Arabic, German, Spanish, French, Italian, Polish, Portuguese (both variants), Russian, Japanese, Swedish, Korean, Vietnamese, Turkish, Dutch, Hebrew, Catalan, Czech, Danish, Estonian, Persian, Finnish, Hungarian, Armenian, Indonesian, Georgian, Latvian, Thai, and Uyghur. The v0.8.8-rc4 release adds a public Agents API with an OpenAPI specification and Swagger UI covering inference, events, Agent management, and Skill management at the published endpoint.

Operational Complexity and Limitations

The main cost of running LibreChat is operational. The full stack requires MongoDB for conversation storage, Meilisearch for message search, a RAG API service for file retrieval, and the LibreChat API container itself. Each of these requires memory and storage, and the Dockerfile shows a configurable NODE_MAX_OLD_SPACE_SIZE defaulting to 6144 MB, which gives a sense of the memory appetite at scale. The npm CI process in the Dockerfile includes retry logic with up to two attempts and a 1500-second timeout, reflecting the size of the dependency tree. Upgrades require running the config/upgrade.js script and consulting the UPGRADING.md file in the repository. The librechat.example.yaml file documents advanced configuration beyond what .env.example covers. For teams with no server infrastructure and a small number of users, the administrative overhead of keeping MongoDB, Meilisearch, and the API container in sync across upgrades may outweigh the benefits compared to a managed service like the hosted librechat.ai offering mentioned on the project homepage.

Maintenance, Licensing, and an Alternative

LibreChat is MIT-licensed and under active development. The repository has no archive flag and shows a high commit frequency. The release history shows an rc progression for v0.8.8, with rc2 in September 2026, rc3 on September 15, 2026, and rc4 on September 23, 2026, indicating stable releases follow after a testing window. The closest comparable tool is Open WebUI (formerly Ollama WebUI), a self-hosted chat interface that focuses primarily on local model management via Ollama and OpenAI-compatible endpoints. Open WebUI provides a simpler deployment with fewer required services, but its agent and MCP support is less developed than LibreChat's as of the v0.8.8-rc4 release notes. Teams that need mature MCP tooling, code execution, and a fully documented REST API will find LibreChat more complete, while teams running exclusively local Ollama models and wanting minimal infrastructure may find Open WebUI sufficient.

Editorial conclusion

LibreChat suits teams that need a self-hosted AI interface with support for multiple providers, multi-user accounts, and built-in MCP and agent tooling. It is not the right choice for single users who want a quick setup and no server to maintain, because the stack requires MongoDB, a RAG API service, and optionally Meilisearch, all coordinated through Docker Compose. Before deploying, verify you have a server capable of running the full compose stack and that at least one AI provider API key is in hand, since LibreChat provides no built-in models.

Frequently asked questions

Is LibreChat the same as ChatGPT?

No. LibreChat is an open-source application you host on your own infrastructure. It provides a similar interface to ChatGPT but connects to your own AI provider API keys rather than OpenAI's managed service, and it supports Anthropic, Google, Ollama, and many others in addition to OpenAI.

What is LibreChat used for?

LibreChat is used as a self-hosted AI chat interface that supports multiple providers in one place. It provides conversation history, multi-user authentication, agent workflows, code execution, image generation, and web search, making it useful for teams that want data sovereignty or need to compare outputs from different AI models.

Is LibreChat free?

The LibreChat software is MIT-licensed and free to use and modify. You pay for the server you run it on and for any AI provider API usage; LibreChat itself does not charge a subscription fee.

How do you install LibreChat with Docker?

Clone the repository, copy .env.example to .env, add your AI provider API keys, then run docker compose up -d. The stack starts the API server on port 3080 along with MongoDB, Meilisearch, and the RAG API service.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
For maintainers

Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/danny-avila-librechat.svg)](https://hysenlabs.com/projects/danny-avila-librechat)
Community notes

Community notes