Changelog
What changed in each release of Switchboard.
Releases are published to npm as mcp-switchboard, with notes on GitHub.
v0.1.0 · 2026-11-14
The first release.
Added
- Monorepo scaffold: pnpm workspaces, Turborepo, Biome, Vitest and TypeScript.
- A daemon that aggregates stdio, Streamable HTTP and SSE MCP servers and serves one MCP endpoint per profile at
/p/<profile>/mcp. - Profiles built from servers,
includeandexcludetool patterns, and per-tool name and description overrides. - Profile selection by URL path, the
X-Switchboard-Profileheader, client rules on the MCP client name, or a default profile. - One shared process per upstream server, started on first use and stopped when idle, with retries and backoff.
- A persisted tool catalog, so
tools/listanswers without starting servers. - Live
tools/list_changednotifications when a profile or an upstream server's tools change. config.jsonis reloaded when edited by hand; invalid edits are reported and ignored.- An audit log of tool calls, without arguments or results.
- Loopback-only binding with
HostandOriginchecks. - The
metatool surface:search_tools,get_schemaandcall_toolreplace a profile's tools with three, whatever its size. - Offline BM25 tool search that understands camelCase and snake_case names.
- Tool schemas rendered as TypeScript signatures for models.
- The
autosurface, which switches frompassthroughtometaaboveautoThresholdtools. - The
codetool surface: oneexecutetool runs model-written JavaScript that calls the profile's tools as typed methods, such asawait github.create_issue({...}). - A QuickJS WebAssembly sandbox for code mode with no access to Node, the network or the file system, and per-profile budgets for time, memory, tool calls, code size and output size.
catalog.search()andcatalog.describe()inside the sandbox for profiles too large to describe up front.- An admin API and a web UI to manage servers, profiles, client connections, secrets and live activity.
- One-click connection of Cursor, Claude Code, Claude Desktop, VS Code, Windsurf, Codex and Gemini CLI, editing their configuration files in place with a backup.
- Import of the MCP servers already configured in those clients.
- Secrets referenced as
secret://name, stored in the OS keychain when available. - OAuth sign-in for remote MCP servers, with tokens kept in the secret store.
- The
switchboardCLI:up,stop,status,doctor,import,server,profile,default,rule,client,secretand theconnectstdio bridge.