Unify Desktop .mcpb extension management with CLI managed-settings.json
Resolved 💬 4 comments Opened Mar 5, 2026 by ssalzman-kobold Closed Mar 8, 2026
Problem
Claude Code Desktop and Claude Code CLI each have half of a great enterprise MCP management story, but they don't share capabilities:
Claude Code Desktop has excellent .mcpb extension support:
- Users can upload custom MCP server bundles via the Extensions UI
- Extensions are tracked in
extensions-installations.jsonwith version hashes - Per-extension settings live in
Claude Extensions Settings/ - Organizations can distribute
.mcpbfiles to users
Claude Code CLI has managed-settings.json:
- Enterprise-grade permission policies (allow/deny/ask for bash, file access, etc.)
- Centrally managed configuration
- Honors system-level settings at
/Library/Application Support/ClaudeCode/managed-settings.json
But neither product has access to the other's capabilities:
- Desktop doesn't honor
managed-settings.jsonfor permissions (see #30953) - CLI has no concept of
.mcpbextensions or the Extensions management UI - There's no built-in mechanism for organizations to auto-update managed
.mcpbextensions — orgs have to build their own update infrastructure (e.g., scheduled scripts that compare SHA256 digests against a release and re-extract into the Extensions directory)
Request
Unify both systems so that organizations get a single, complete management plane:
- Desktop should honor
managed-settings.jsonfor permissions (already filed as #30953) - CLI should support
.mcpbextensions the same way Desktop does - Built-in auto-update for managed extensions — when an organization distributes
.mcpbfiles, there should be a native mechanism to check for and apply updates without requiring custom deployment scripts - Single config surface — one place where orgs can define which MCPs are installed, what permissions they get, and how they're updated
Related Issues
- #30953 — Claude Code Desktop should honor managed-settings.json for all permissions
- #24433 — MCP tool permissions don't persist across sessions
- #30715 — managed-settings.json for hooks permissions
- #30882 — Permissions reset every session
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗