Summary
Plugins that ship a .mcp.json file get their MCP servers auto-enabled on install. There's currently no way to ship an MCP server that appears in the /plugin UI as a toggleable sub-item but defaults to disabled.
Use Case
The PACT plugin includes an optional Telegram notification bridge as an MCP server. It's useful for users who want it, but most users don't need it. Today the options are:
- Include
.mcp.json — Server appears in /plugin UI (great for discoverability), but auto-enables on install (unwanted overhead for non-users)
- Omit
.mcp.json — Server is invisible in /plugin UI (poor discoverability), but doesn't auto-enable (correct default)
Neither option gives the ideal UX: visible in the UI, toggleable, but off by default.
Proposal
Support a defaultEnabled (or enabled) field in .mcp.json server entries:
{
"pact-telegram": {
"command": "python3",
"args": ["-m", "telegram"],
"cwd": "${CLAUDE_PLUGIN_ROOT}",
"defaultEnabled": false
}
}
When defaultEnabled: false:
- Server appears in
/plugin UI as a toggleable sub-item
- Server does not auto-start on install or session start
- User can enable it via Space toggle in
/plugin
- Once toggled on, the user's preference persists across sessions
Related
Summary
Plugins that ship a
.mcp.jsonfile get their MCP servers auto-enabled on install. There's currently no way to ship an MCP server that appears in the/pluginUI as a toggleable sub-item but defaults to disabled.Use Case
The PACT plugin includes an optional Telegram notification bridge as an MCP server. It's useful for users who want it, but most users don't need it. Today the options are:
.mcp.json— Server appears in/pluginUI (great for discoverability), but auto-enables on install (unwanted overhead for non-users).mcp.json— Server is invisible in/pluginUI (poor discoverability), but doesn't auto-enable (correct default)Neither option gives the ideal UX: visible in the UI, toggleable, but off by default.
Proposal
Support a
defaultEnabled(orenabled) field in.mcp.jsonserver entries:{ "pact-telegram": { "command": "python3", "args": ["-m", "telegram"], "cwd": "${CLAUDE_PLUGIN_ROOT}", "defaultEnabled": false } }When
defaultEnabled: false:/pluginUI as a toggleable sub-item/pluginRelated