New features
MCP Gateway
The new MCP Gateway lets you expose local MCP servers to cloud-based AI clients like ChatGPT and Claude. It creates a secure tunnel so remote assistants can reach tools running on your machine — no open ports or firewall changes required.- Install and run via
uvx mcpassistant-gateway - Configure servers through a single
mcp.jsonfile - Manage all local-to-cloud connections through one persistent bridge
Tool Router
You can now manage large tool catalogs with the Tool Router. Instead of injecting every tool schema into the LLM’s context window, the Tool Router offers three strategies:all— Pass all tools through. Great for small projects.search— Replace your tools with lightweight Meta-Tools that let the LLM discover, inspect, and execute tools on demand. 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.
AI framework adapters
Four new adapters make it easy to use MCP tools with popular AI frameworks:- AI SDK — Drop MCP tools into any Vercel AI SDK project.
- LangChain — Use MCP tools as LangChain-compatible tools in chains and agents.
- Mastra — Integrate MCP tools with the Mastra agent framework.
- AG-UI — Connect MCP tools to remote agents via the AG-UI protocol, with built-in middleware for server-side tool execution.
Supabase storage backend
Supabase is now available as a production-ready storage backend with PostgreSQL persistence, row-level security for tenant isolation, and application-level AES-256-GCM encryption for sensitive session fields. Auto-detects via theSUPABASE_URL environment variable and includes a built-in supabase-init CLI command to scaffold migrations.
MCP Documentation Server
The MCP Toolkit documentation is now available as a hosted MCP server. Add it to any MCP-compatible client — Claude Desktop, Cursor, or VS Code — to give your AI assistant direct access to search, browse, and read the full docs.LocalStorage backend
A new LocalStorage backend persists sessions directly in the browser. Ideal for client-side apps and prototyping, with configurable namespaces, TTL-based expiration, and lazy eviction.MCP App Host integration
MCP Apps now support a full App Host integration for rendering interactive tool UIs in sandboxed iframes — including resource preloading, fullscreen mode, host-guest sync for streaming and cancellation, and a customloader prop.
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.Simplified MCP App rendering
You can now importMcpAppRenderer and getMcpAppMetadata directly from the React client instead of going through the useMcpApps hook, giving you more control over where MCP App UIs are rendered.
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.Isomorphic storage architecture
Storage backends now work across both server and client environments. You can inject a storage backend directly into the MCP client via astorage option 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.
Bug fixes
- OAuth handling — Improved OAuth flow reliability, including better callback handling and credential storage.
- 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.