New features
Tool Router
You can now intelligently manage large tool catalogs with the new Tool Router. Instead of injecting every tool schema into the LLM’s context window, the Tool Router lets you choose from three strategies:all— Pass all tools through (the default, great for small projects).search— Replace your tools with four lightweight Meta-Tools that let the LLM discover, inspect, and execute tools on demand. This scales to 1,000+ tools with minimal token usage.groups— Expose specific sets of tools based on application state or user intent.
search strategy supports both keyword-based BM25 matching and optional semantic search via a custom embedding function.
Supabase storage backend
Supabase is now available as a production-ready storage backend. It includes:- PostgreSQL persistence with JSONB support
- Row-level security (RLS) for tenant isolation
- Application-level AES-256-GCM encryption for sensitive session fields like tokens and headers
- Auto-detection via
SUPABASE_URLenvironment variable - A built-in
supabase-initCLI command to scaffold the required migration files
MCP Documentation Server
The MCP Toolkit documentation is now available as a hosted MCP server. You can add it to any MCP-compatible client — such as Claude Desktop, Cursor, or VS Code — to give your AI assistant direct access to search, browse, and read the full docs. No more copy-pasting; your tools stay in sync with the latest documentation automatically.LocalStorage backend
A new LocalStorage backend lets you persist sessions directly in the browser. This is ideal for client-side apps and prototyping where you don’t need a server-side database. It supports configurable namespaces, TTL-based expiration, and lazy eviction — all scoped to the current origin.MCP App Host integration
MCP Apps now support a full App Host integration for rendering interactive tool UIs in sandboxed iframes. Key additions:- Sandbox proxy with configurable Content Security Policy (CSP)
- Resource preloading — UI resources are cached when tools are discovered, so apps open faster
- Fullscreen mode — Guest apps can request fullscreen rendering via the AppBridge protocol
- Host ↔ guest sync — Streaming partial input, cancellation, and host context (theme, display mode) are all synchronized automatically
- Custom
loaderprop — Show your own loading UI while an MCP App initializes
Updates
Project rebrand to MCP Toolkit
The project has been renamed from “Toolkit” to MCP Toolkit to better reflect its purpose as a comprehensive toolkit for the Model Context Protocol.New documentation site
All documentation has moved to a new Mintlify-powered site. The new site features improved navigation, search, and a refreshed layout.Simplified MCP App rendering
You can now importMcpAppRenderer and getMcpAppMetadata directly from the React client instead of going through the useMcpApps hook. This gives you more control over when and where MCP App UIs are rendered. The previous hook-based API still works but is deprecated.
Adapter namespace support
Tool adapters now support namespacing, which prevents name collisions when connecting to multiple MCP servers. Set a custom prefix per adapter to keep tool names unique.Isomorphic storage architecture
Storage backends now work across both server and client environments. You can inject a storage backend directly into the MCP client or multi-session client via astorage option, making it easy to swap between server-side backends (Redis, Supabase) and client-side backends (LocalStorage) without changing your application code.
Gemini CLI compatibility
The server now correctly responds to Gemini CLI’sstreamable-http transport checks and MCP ping requests, so you can use MCP Toolkit with Google’s Gemini CLI without additional configuration.
Next.js example refresh
The Next.js guide now includes an updated full-stack example with App Router support, an integrated chat UI, and inline MCP App rendering after tool calls.Bug fixes
- OAuth handling — Improved OAuth flow reliability in the
useMcphook, including better callback handling and storage of OAuth credentials. - MCP Apps renderer stability — Fixed iframe white-screen flashes on load and stabilized client identity handling in the React renderer.
- Tool name length violations — Resolved an issue where generated tool names could exceed protocol limits, causing connection failures.
- Event routing — Fixed shared event routing so connection state updates are correctly reflected in the UI.
- Storage proxy deadlock — Fixed a deadlock in the storage proxy that could cause hangs during backend initialization.