A community-driven registry for the Claude Code ecosystem. Not affiliated with Anthropic.
Are you the author? Sign in to claim
A comprehensive tool to manage Model Context Protocol (MCP) configurations for Claude code
MCP Manager is a comprehensive bash script that helps you manage Model Context Protocol (MCP) configurations for Claude Code. It allows you to easily add, remove, list, and automatically load MCP configurations without manual intervention.
brew install jqsudo apt-get install jqsudo yum install jqsudo pacman -S jq# Download the script
curl -O https://raw.githubusercontent.com/qdhenry/Claude-Code-MCP-Manager/main/mcp-manager.sh
# Make it executable
chmod +x mcp-manager.sh
# Move to a location in your PATH (optional)
sudo mv mcp-manager.sh /usr/local/bin/mcp-manager
# Clone the repository
git clone https://github.com/qdhenry/Claude-Code-MCP-Manager.git
# Navigate to the directory
cd Claude-Code-MCP-Manager
# Make the script executable
chmod +x mcp-manager.sh
# Create a symbolic link (optional)
sudo ln -s $(pwd)/mcp-manager.sh /usr/local/bin/mcp-manager
Initialize with sample MCPs:
./mcp-manager.sh init
Edit the configuration to add your tokens:
nano ~/.config/claude/mcp_config.json
Replace <your-token> placeholders with actual tokens.
List all MCPs:
./mcp-manager.sh list
Add all MCPs to Claude:
./mcp-manager.sh add-all
# List all configured MCPs
./mcp-manager.sh list
# or
./mcp-manager.sh ls
# Add a new MCP interactively
./mcp-manager.sh add
# Add all MCPs without prompts
./mcp-manager.sh add-all
# Remove an MCP
./mcp-manager.sh remove <mcp_name>
# or
./mcp-manager.sh rm <mcp_name>
# Show details of a specific MCP
./mcp-manager.sh show <mcp_name>
# Export configurations
./mcp-manager.sh export [filename]
# Import configurations
./mcp-manager.sh import <filename>
# Initialize with sample MCPs
./mcp-manager.sh init
# Set up automatic loading
./mcp-manager.sh setup-auto
# Show help
./mcp-manager.sh help
The configuration is stored in ~/.config/claude/mcp_config.json. Here's the structure:
{
"mcps": [
{
"name": "supabase",
"type": "npx",
"path": "supabase/mcp-server-supabase@latest",
"options": "--access-token YOUR_TOKEN_HERE"
},
{
"name": "digitalocean",
"type": "env",
"path": "DIGITALOCEAN_API_TOKEN=YOUR_TOKEN_HERE",
"options": "npx -y @digitalocean/mcp"
}
]
}
NPX Type - For npm packages:
{
"name": "puppeteer",
"type": "npx",
"path": "modelcontextprotocol/server-puppeteer",
"options": ""
}
ENV Type - For environment variables:
{
"name": "digitalocean",
"type": "env",
"path": "DIGITALOCEAN_API_TOKEN=your-token",
"options": "npx -y @digitalocean/mcp"
}
To automatically load all MCPs when starting Claude Code:
Run the setup command:
./mcp-manager.sh setup-auto
Reload your shell:
source ~/.bashrc # or ~/.zshrc for zsh
Start Claude Code with auto-loaded MCPs:
claude-code
# or use the alias
cc
Add to your .bashrc or .zshrc:
alias claude-start='/path/to/mcp-manager.sh add-all && claude-code'
Create a custom launcher script:
#!/bin/bash
echo "Starting Claude Code with MCPs..."
/path/to/mcp-manager.sh add-all
claude-code "$@"
$ ./mcp-manager.sh add
Add new MCP configuration
MCP Name: github
Type (npx/env): npx
Path/Package: @github/mcp-server@latest
Additional options (press Enter for none):
Successfully added MCP: github
# Export current configuration
./mcp-manager.sh export my-mcps-backup.json
# Import from a file
./mcp-manager.sh import team-mcps.json
After running ./mcp-manager.sh init, you'll get these pre-configured MCPs:
Solution: Install jq using your package manager (see Prerequisites)
Solution: The script will automatically create the config file. Run any command to initialize it.
Solution:
Solution: Make sure the script is executable:
chmod +x mcp-manager.sh
To use a different configuration file location, modify the CONFIG_FILE variable in the script:
CONFIG_FILE="$HOME/.config/custom/mcp_config.json"
For MCPs with multiple environment variables:
{
"name": "complex-mcp",
"type": "env",
"path": "VAR1=value1 VAR2=value2",
"options": "npx -y @complex/mcp-server --port 3000"
}
Create a wrapper function that loads different MCPs based on the project:
claude-project() {
if [[ $PWD == *"web-project"* ]]; then
mcp-manager add supabase puppeteer
elif [[ $PWD == *"data-project"* ]]; then
mcp-manager add upstash context7
fi
claude-code "$@"
}
To contribute to the MCP Manager project:
This project is open source and available under the MIT License.
For issues, questions, or contributions:
Note: Remember to replace placeholder tokens with your actual API tokens before using the MCPs.
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots
MCP server integration for DaVinci Resolve Studio
Secure MCP server for MySQL database interaction, queries, and schema management