v0.8.5-rc1

Pre-release

LibreChat-AI/LibreChatv0.8.5-rc1Apr 10, 2026by danny-avila

Upgrading?

AI Summary

This RC focuses on the Admin Panel API endpoints, a 3-Tier MCP Architecture, and UI redesigns. It includes per-principal configuration overrides and Admin Roles/Groups API.

Key Highlights

  • Admin Panel API endpoints (Roles, Groups, Users)
  • 3-Tier MCP Server Architecture
  • DB-Backed Per-Principal Configuration Overrides
  • UI redesigns: Sidebar, Tool Calls, and Prompts

New Features

  • Admin Roles and Groups API
  • Admin Users API
  • Admin Grants API
  • 3-Tier MCP Server Architecture
  • Redesigned Sidebar with unified icon strip
  • Redesigned Tool Call UI

Full Release Notes

<!-- https://www.librechat.ai/changelog/v0.8.5-rc1 -->

<details>
<summary><h2>Click to expand Release Notes</h2></summary>


## What's Changed

### โœจ Features

* ๐Ÿงฉ Redesign Tool Call UI with Contextual Icons, Smart Grouping, and Rich Output Rendering by [@berry-13](https://github.com/berry-13) in [#12163](https://github.com/danny-avila/LibreChat/pull/12163)
* ๐ŸŽ›๏ธ DB-Backed Per-Principal Configuration Override System by [@danny-avila](https://github.com/danny-avila) in [#12354](https://github.com/danny-avila/LibreChat/pull/12354)
* ๐Ÿงต ALS Context Middleware, Tenant Threading, and Config Cache Invalidation by [@danny-avila](https://github.com/danny-avila) in [#12407](https://github.com/danny-avila/LibreChat/pull/12407)
* ๐Ÿ‘ฅ Admin Groups API Endpoints by [@dustinhealy](https://github.com/dustinhealy) in [#12387](https://github.com/danny-avila/LibreChat/pull/12387)
* ๐Ÿชช Admin Roles API Endpoints by [@dustinhealy](https://github.com/dustinhealy) in [#12400](https://github.com/danny-avila/LibreChat/pull/12400)
* ๐Ÿข Tenant-Scoped App Config in Auth Login Flows by [@danny-avila](https://github.com/danny-avila) in [#12434](https://github.com/danny-avila/LibreChat/pull/12434)
* ๐Ÿ—๏ธ 3-Tier MCP Server Architecture with Config-Source Lazy Init by [@danny-avila](https://github.com/danny-avila) in [#12435](https://github.com/danny-avila/LibreChat/pull/12435)
* ๐Ÿ—๏ธ bulkWrite Isolation, Pre-Auth Context, Strict-Mode Fixes by [@danny-avila](https://github.com/danny-avila) in [#12445](https://github.com/danny-avila/LibreChat/pull/12445)
* โ›ฉ๏ธ Admin Grants API Endpoints by [@dustinhealy](https://github.com/dustinhealy) in [#12438](https://github.com/danny-avila/LibreChat/pull/12438)
* ๐Ÿ“„ Model-Aware Bedrock Document Size Validation by [@danny-avila](https://github.com/danny-avila) in [#12467](https://github.com/danny-avila/LibreChat/pull/12467)
* ๐Ÿ” Admin Auth Support for SAML and Social OAuth Providers by [@danny-avila](https://github.com/danny-avila) in [#12472](https://github.com/danny-avila/LibreChat/pull/12472)
* ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ Admin Users API Endpoints by [@dustinhealy](https://github.com/dustinhealy) in [#12446](https://github.com/danny-avila/LibreChat/pull/12446)
* ๐Ÿ“Œ Add Pin Support for Model Specs by [@berry-13](https://github.com/berry-13) in [#11219](https://github.com/danny-avila/LibreChat/pull/11219)

### ๐Ÿ› Fixes

* ๐Ÿ”‘ Type-Safe User Context Forwarding for Non-OAuth Tool Discovery by [@crossagent](https://github.com/crossagent) in [#12348](https://github.com/danny-avila/LibreChat/pull/12348)
* ๐Ÿ› Resolve MeiliSearch Startup Sync Failure from Model Loading Order by [@adityaarunsinghal](https://github.com/adityaarunsinghal) in [#12397](https://github.com/danny-avila/LibreChat/pull/12397)
* ๐Ÿ—๏ธ Resolve User-Provided API Key in Agents API Flow by [@ESJavadex](https://github.com/ESJavadex) in [#12390](https://github.com/danny-avila/LibreChat/pull/12390)
* ๐Ÿ“ธ Snapshot Options to Prevent Mid-Await Client Disposal Crash by [@danny-avila](https://github.com/danny-avila) in [#12398](https://github.com/danny-avila/LibreChat/pull/12398)
* ๐Ÿ Invalidate Message Cache on Stream 404 Instead of Showing Error by [@danny-avila](https://github.com/danny-avila) in [#12411](https://github.com/danny-avila/LibreChat/pull/12411)
* ๐Ÿ”‘ Robust MCP OAuth Detection in Tool-Call Flow by [@danny-avila](https://github.com/danny-avila) in [#12418](https://github.com/danny-avila/LibreChat/pull/12418)
* ๐Ÿช Safe Hook Fallbacks for Tool-Call Components in Search Route by [@danny-avila](https://github.com/danny-avila) in [#12423](https://github.com/danny-avila/LibreChat/pull/12423)
* ๐Ÿ›ก๏ธ Add Origin Binding to Admin OAuth Exchange Codes by [@danny-avila](https://github.com/danny-avila) in [#12469](https://github.com/danny-avila/LibreChat/pull/12469)
* ๐Ÿ’ฐ Lazy-Initialize Balance Record at Check Time for Admin Panel Overrides by [@danny-avila](https://github.com/danny-avila) in [#12474](https://github.com/danny-avila/LibreChat/pull/12474)
* ๐Ÿ–ผ๏ธ Message Icon Flickering from Context-Triggered Re-renders by [@danny-avila](https://github.com/danny-avila) in [#12489](https://github.com/danny-avila/LibreChat/pull/12489)
* ๐Ÿ›ก๏ธ Restrict System Grants to Role Principals by [@dustinhealy](https://github.com/dustinhealy) in [#12491](https://github.com/danny-avila/LibreChat/pull/12491)
* ๐Ÿ—‚๏ธ Allow Empty-Overrides Scope Creation in Admin Config by [@danny-avila](https://github.com/danny-avila) in [#12492](https://github.com/danny-avila/LibreChat/pull/12492)
* ๐Ÿ” Strip Unnecessary Fields Across Write Paths in Conversation & Message Methods by [@danny-avila](https://github.com/danny-avila) in [#12498](https://github.com/danny-avila/LibreChat/pull/12498)
* ๐Ÿ”’ Exclude Unnecessary Fields from Conversation `$unset` by [@danny-avila](https://github.com/danny-avila) in [#12501](https://github.com/danny-avila/LibreChat/pull/12501)
* ๐Ÿ”‘ Auth-Aware Startup Config Caching for Fresh Sessions by [@danny-avila](https://github.com/danny-avila) in [#12505](https://github.com/danny-avila/LibreChat/pull/12505)
* ๐Ÿ” Pass recursionLimit to OpenAI-Compatible Agents API Endpoint by [@danny-avila](https://github.com/danny-avila) in [#12510](https://github.com/danny-avila/LibreChat/pull/12510)
* ๐Ÿ–๏ธ Sandpack ExternalResources for Static HTML Artifact Previews by [@danny-avila](https://github.com/danny-avila) in [#12509](https://github.com/danny-avila/LibreChat/pull/12509)
* ๐ŸŽฏ MCP Tool Misclassification from Action Delimiter Collision by [@danny-avila](https://github.com/danny-avila) in [#12512](https://github.com/danny-avila/LibreChat/pull/12512)
* ๐Ÿ“Ž Route Unrecognized File Types via supportedMimeTypes Config by [@danny-avila](https://github.com/danny-avila) in [#12508](https://github.com/danny-avila/LibreChat/pull/12508)
* ๐Ÿช† Allow Nested `addParams` in Config Schema by [@danny-avila](https://github.com/danny-avila) in [#12526](https://github.com/danny-avila/LibreChat/pull/12526)
* ๐Ÿ” Strip `code_challenge` from Admin OAuth Requests Before Passport by [@danny-avila](https://github.com/danny-avila) in [#12534](https://github.com/danny-avila/LibreChat/pull/12534)
* ๐Ÿ” Only Show Searchbar if Enabled by [@dlew](https://github.com/dlew) in [#12424](https://github.com/danny-avila/LibreChat/pull/12424)
* ๐Ÿ”จ Custom Role Permissions by [@dustinhealy](https://github.com/dustinhealy) in [#12528](https://github.com/danny-avila/LibreChat/pull/12528)
* ๐Ÿ“ Properly Restore Draft Text When Switching Conversations by [@dlew](https://github.com/dlew) in [#12384](https://github.com/danny-avila/LibreChat/pull/12384)
* ๐Ÿ—ฃ๏ธ Prevent `@librechat/client` useLocalize from Overwriting Host App Language State by [@shtayeb](https://github.com/shtayeb) in [#12515](https://github.com/danny-avila/LibreChat/pull/12515)
* ๐Ÿ”Ž Specify Explicit Primary Key for Meilisearch Document Operations by [@danny-avila](https://github.com/danny-avila) in [#12542](https://github.com/danny-avila/LibreChat/pull/12542)
* โ™ป๏ธ Reuse Existing MCP OAuth Client Registrations to Prevent `client_id` Mismatch by [@DenisPalnitsky](https://github.com/DenisPalnitsky) in [#11925](https://github.com/danny-avila/LibreChat/pull/11925)
* ๐Ÿšซ Hide Delete Account Button When ALLOW_ACCOUNT_DELETION Is Disabled by [@danny-avila](https://github.com/danny-avila) in [#12568](https://github.com/danny-avila/LibreChat/pull/12568)
* ๐ŸŽฏ Use Resolved Provider for Agent Token Lookup on Custom Endpoints by [@danny-avila](https://github.com/danny-avila) in [#12574](https://github.com/danny-avila/LibreChat/pull/12574)
* ๐Ÿ” Add Tenant Context to Admin OAuth Callback Routes by [@dustinhealy](https://github.com/dustinhealy) in [#12579](https://github.com/danny-avila/LibreChat/pull/12579)
* ๐Ÿงฌ Merge Custom Endpoints by Name Instead of Replacing Entire Array by [@danny-avila](https://github.com/danny-avila) in [#12586](https://github.com/danny-avila/LibreChat/pull/12586)
* ๐Ÿงฎ Atomize Redis Event Sequence Counters for Multi-Replica Deployments by [@danny-avila](https://github.com/danny-avila) in [#12578](https://github.com/danny-avila/LibreChat/pull/12578)
* ๐Ÿ“‚ Enable Hidden File Upload for GitNexus Index Artifact by [@danny-avila](https://github.com/danny-avila) in [#12597](https://github.com/danny-avila/LibreChat/pull/12597)
* ๐Ÿ“‚ Respect `supportedMimeTypes` Config in File Picker Accept Filter by [@danny-avila](https://github.com/danny-avila) in [#12596](https://github.com/danny-avila/LibreChat/pull/12596)
* ๐Ÿ“ฉ Restore Primary Action Button Visibility in Light Mode by [@UnicronBE](https://github.com/UnicronBE) in [#12591](https://github.com/danny-avila/LibreChat/pull/12591)

### ๐Ÿ”ง Refactoring

* ๐ŸŽจ Redesign Sidebar with Unified Icon Strip Layout by [@berry-13](https://github.com/berry-13) in [#12013](https://github.com/danny-avila/LibreChat/pull/12013)
* ๐Ÿ”„ Migrate to `react-resizable-panels` v4 with Artifacts Header Polish by [@danny-avila](https://github.com/danny-avila) in [#12356](https://github.com/danny-avila/LibreChat/pull/12356)
* ๐Ÿ“ Prompts UI by [@berry-13](https://github.com/berry-13) in [#11570](https://github.com/danny-avila/LibreChat/pull/11570)
* ๐Ÿ“ Resolve Stale Active Sidebar Panel and Favorites Row Height by [@danny-avila](https://github.com/danny-avila) in [#12366](https://github.com/danny-avila/LibreChat/pull/12366)
* โšก Fast-Fail MCP Tool Discovery on 401 for Non-OAuth Servers by [@danny-avila](https://github.com/danny-avila) in [#12395](https://github.com/danny-avila/LibreChat/pull/12395)
* โšก Use In-Memory Cache for App MCP Configs to Avoid Redis SCAN by [@danny-avila](https://github.com/danny-avila) in [#12410](https://github.com/danny-avila/LibreChat/pull/12410)
* ๐ŸŒŠ Local Snapshot for Aggregate Key Cache to Avoid Redundant Redis GETs by [@danny-avila](https://github.com/danny-avila) in [#12422](https://github.com/danny-avila/LibreChat/pull/12422)
* ๐Ÿชข Eliminate Unnecessary Re-renders During Message Streaming by [@danny-avila](https://github.com/danny-avila) in [#12454](https://github.com/danny-avila/LibreChat/pull/12454)
* ๐Ÿงน Tighten Config Schema Typing and Remove Deprecated Fields by [@danny-avila](https://github.com/danny-avila) in [#12452](https://github.com/danny-avila/LibreChat/pull/12452)
* ๐Ÿ—๏ธ Remove Redundant Caching, Migrate Config Services to TypeScript by [@danny-avila](https://github.com/danny-avila) in [#12466](https://github.com/danny-avila/LibreChat/pull/12466)
* ๐Ÿšซ Remove Interface Config from Override Processing by [@danny-avila](https://github.com/danny-avila) in [#12473](https://github.com/danny-avila/LibreChat/pull/12473)
* โš–๏ธ Split Config Route into Unauthenticated and Authenticated Paths by [@danny-avila](https://github.com/danny-avila) in [#12490](https://github.com/danny-avila/LibreChat/pull/12490)
* ๐Ÿ›ก๏ธ Self-Healing Tenant Isolation Update Guard by [@danny-avila](https://github.com/danny-avila) in [#12506](https://github.com/danny-avila/LibreChat/pull/12506)
* ๐Ÿ—œ๏ธ Eliminate Unstable React Keys During SSE Lifecycle by [@danny-avila](https://github.com/danny-avila) in [#12536](https://github.com/danny-avila/LibreChat/pull/12536)
* โšก Short-Circuit Config Override Resolution by [@danny-avila](https://github.com/danny-avila) in [#12553](https://github.com/danny-avila/LibreChat/pull/12553)
* ๐Ÿง‘โ€๐ŸŽจ Prompts/Sidebar Styles for Improved UI Consistency by [@berry-13](https://github.com/berry-13) in [#12426](https://github.com/danny-avila/LibreChat/pull/12426)
* โฑ๏ธ User Job Tracking TTL and Proactive Cleanup to Redis Job Store by [@danny-avila](https://github.com/danny-avila) in [#12595](https://github.com/danny-avila/LibreChat/pull/12595)

### โš™๏ธ Other Changes

* ๐Ÿ“ฌ Add Forwarded Headers to Nginx SSL Proxy Template by [@christopher-b](https://github.com/christopher-b) in [#12379](https://github.com/danny-avila/LibreChat/pull/12379)
* ๐Ÿ“ Add UTM Tracking Parameters to Railway Deployment Links by [@berry-13](https://github.com/berry-13) in [#12228](https://github.com/danny-avila/LibreChat/pull/12228)
* ๐Ÿ“ Update Deployment Link for Railway in README and README.zh.md by [@berry-13](https://github.com/berry-13) in [#12449](https://github.com/danny-avila/LibreChat/pull/12449)
* ๐Ÿ”ฌ Add TypeScript Type Checks to Backend Workflow and Fix All Type Errors by [@danny-avila](https://github.com/danny-avila) in [#12451](https://github.com/danny-avila/LibreChat/pull/12451)
* ๐Ÿงน Remove Deprecated Gemini 2.0 Models & Fix Mistral-Large-3 Context Window by [@danny-avila](https://github.com/danny-avila) in [#12453](https://github.com/danny-avila/LibreChat/pull/12453)
* ๐Ÿงน Clean Up Config Fields by [@danny-avila](https://github.com/danny-avila) in [#12537](https://github.com/danny-avila/LibreChat/pull/12537)
* ๐Ÿ—’๏ธ Update LICENSE.md Year: 2025 -> 2026 by [@neuralnotesyt-netizen](https://github.com/neuralnotesyt-netizen) in [#12554](https://github.com/danny-avila/LibreChat/pull/12554)
* ๐Ÿ“Š Add GitNexus CI/CD and Deployment Configuration by [@danny-avila](https://github.com/danny-avila) in [#12577](https://github.com/danny-avila/LibreChat/pull/12577)
* ๐Ÿ”’ Bump MongoDB from 8.0.17 to 8.0.20 in Docker Compose Files by [@danny-avila](https://github.com/danny-avila) in [#12399](https://github.com/danny-avila/LibreChat/pull/12399)
* ๐Ÿ“ฆ Bump Dependabot Packages by [@danny-avila](https://github.com/danny-avila) in [#12487](https://github.com/danny-avila/LibreChat/pull/12487)
* ๐Ÿ“ฆ Bump `axios` to exact v1.13.6, `@librechat/agents` to v3.1.63, `@aws-sdk/client-bedrock-runtime` to v3.1013.0 by [@danny-avila](https://github.com/danny-avila) in [#12488](https://github.com/danny-avila/LibreChat/pull/12488)
* ๐Ÿ“ฆ Bump `mongodb-memory-server` to v11.0.1, `mermaid` to v11.14.0, npm audit by [@danny-avila](https://github.com/danny-avila) in [#12543](https://github.com/danny-avila/LibreChat/pull/12543)
* ๐Ÿ“ฆ npm audit by [@danny-avila](https://github.com/danny-avila) in [#12570](https://github.com/danny-avila/LibreChat/pull/12570)
* ๐Ÿ“ฆ Bump `nodemailer` to v8.0.5 by [@danny-avila](https://github.com/danny-avila) in [#12587](https://github.com/danny-avila/LibreChat/pull/12587)
* ๐Ÿ“ฆ Bump `axios`, `@librechat/agents` by [@danny-avila](https://github.com/danny-avila) in [#12598](https://github.com/danny-avila/LibreChat/pull/12598)

### ๐ŸŒ Internationalization

* ๐ŸŒ i18n: Update translation.json with latest translations by [@github-actions[bot]](https://github.com/apps/github-actions) in [#12458](https://github.com/danny-avila/LibreChat/pull/12458), [#12571](https://github.com/danny-avila/LibreChat/pull/12571), [#12583](https://github.com/danny-avila/LibreChat/pull/12583), [#12588](https://github.com/danny-avila/LibreChat/pull/12588)

</details>

## New Contributors

* [@crossagent](https://github.com/crossagent) made their first contribution in [#12348](https://github.com/danny-avila/LibreChat/pull/12348)
* [@christopher-b](https://github.com/christopher-b) made their first contribution in [#12379](https://github.com/danny-avila/LibreChat/pull/12379)
* [@adityaarunsinghal](https://github.com/adityaarunsinghal) made their first contribution in [#12397](https://github.com/danny-avila/LibreChat/pull/12397)
* [@ESJavadex](https://github.com/ESJavadex) made their first contribution in [#12390](https://github.com/danny-avila/LibreChat/pull/12390)
* [@neuralnotesyt-netizen](https://github.com/neuralnotesyt-netizen) made their first contribution in [#12554](https://github.com/danny-avila/LibreChat/pull/12554)
* [@UnicronBE](https://github.com/UnicronBE) made their first contribution in [#12591](https://github.com/danny-avila/LibreChat/pull/12591)

**Full Changelog**: https://github.com/danny-avila/LibreChat/compare/v0.8.4...v0.8.5-rc1

Related Repositories