Vendor-neutral MCP configuration manager with first-class Claude Code support.
MCPick helps humans and LLM agents inspect, toggle, and back up MCP server configuration across multiple AI clients. Claude Code-specific plugins, hooks, marketplaces, and cache commands remain available, but they are no longer the core product model.
npm install -g mcpick
# or run without installing
npx mcpick --helpRequirements:
- Node.js 22+
- Claude Code is required only for Claude Code-specific commands
- The external
skillsCLI is used throughnpx -y skills@latestfor portable skills commands
In non-TTY environments, MCPick shows help instead of launching the interactive TUI. This makes it safer for prompts like:
“Use mcpick to work out how to enable this MCP server.”
Start with:
npx mcpick --help
npx mcpick clients
npx mcpick list --jsonMCPick redacts known secret patterns before printing output. MCP
configs often contain env vars and authorization headers, so env and
headers values are shown as *** in JSON output.
Supported client adapters:
| Client | Scopes | Command examples |
|---|---|---|
| Claude Code | local, project, user | mcpick list, mcpick enable <server> |
| Gemini CLI | project, user | mcpick list --client gemini-cli --scope project |
| VS Code / Copilot | project | mcpick list --client vscode --scope project |
| Cursor | project, user | mcpick list --client cursor --scope user |
| Windsurf | user | mcpick list --client windsurf --scope user |
| OpenCode | project, user | mcpick list --client opencode --scope project |
| Pi via pi-mcp-adapter | project, user | mcpick list --client pi --scope user |
Show known config locations:
npx mcpick clients
npx mcpick clients --json# List Claude Code registry/status
npx mcpick list
npx mcpick list --json
# List another client
npx mcpick list --client pi --scope user --json
npx mcpick list --client opencode --scope project
# Claude Code enable/disable
npx mcpick enable <server> --scope local
npx mcpick disable <server> --scope local
# Add/remove Claude Code server definitions
npx mcpick add --name <server> --command npx --args "-y,package-name"
npx mcpick add-json <name> '{"command":"npx","args":["-y","package-name"]}'
npx mcpick remove <server>For secret-backed servers, prefer environment variable references and secret-safe loading tools. MCPick redacts printed values, but MCP client config files may still store secrets in plain text because that is how many clients currently load MCP credentials.
MCPick delegates portable SKILL.md management to the external skills
CLI.
# List installed skills for a client
npx mcpick skills list --agent pi --json
# See available skills from a source without installing
npx mcpick skills add spences10/skills --list
# Install one skill
npx mcpick skills add spences10/skills --agent pi --skill svelte-runes --yes
# Install all skills for a client globally
npx mcpick skills add spences10/skills --agent opencode --skill '*' --global --yes
# Update/remove
npx mcpick skills update --global --yes
npx mcpick skills remove svelte-runes --agent pi --yesThese commands wrap Claude Code concepts and are intentionally client-specific:
# Plugins
npx mcpick plugins list
npx mcpick plugins install <name>@<marketplace>
npx mcpick plugins enable <name>@<marketplace>
npx mcpick plugins disable <name>@<marketplace>
# Marketplaces
npx mcpick marketplace list
npx mcpick marketplace add <source>
npx mcpick marketplace update
npx mcpick marketplace remove <name>
# Hooks and plugin cache
npx mcpick hooks list
npx mcpick cache status
npx mcpick cache refreshProfiles and backups currently preserve MCP server and Claude Code plugin state.
npx mcpick --profile database
npx mcpick --save-profile mysetup
npx mcpick --list-profiles
npx mcpick backup
npx mcpick restore [file]
# Safe-write rollback backups created before config mutations
npx mcpick rollback --list
npx mcpick rollback [file]Running npx mcpick in a terminal launches the human-facing menu:
MCPick - MCP Configuration Manager
What would you like to do?
Enable / Disable MCP servers
Skills
Client-specific tools
Load profile
Save profile
Backup config
Restore from backup
Exit
The primary TUI flow is client-first: choose a client, then toggle its MCP servers. Claude Code plugins, hooks, marketplaces, and cache live under “Client-specific tools”.
MCPick reads the standard locations used by each client adapter. Common paths include:
| Path | Purpose |
|---|---|
~/.claude.json |
Claude Code local/user MCP config |
.mcp.json |
Shared project MCP config |
.gemini/settings.json |
Gemini CLI project config |
.vscode/mcp.json |
VS Code / Copilot project config |
.cursor/mcp.json |
Cursor project config |
opencode.json |
OpenCode project config |
~/.config/mcp/mcp.json |
Shared global MCP config used by pi-mcp-adapter |
.pi/mcp.json |
Pi project override |
MCPick-owned state lives under ~/.claude/mcpick/ for historical
compatibility.
pnpm install
pnpm test
pnpm run check
pnpm buildSee docs/VENDOR_NEUTRAL_ARCHITECTURE.md for architecture notes.