Claude-Code-MCP-Manager
MCP Manager is a comprehensive bash script designed to manage Model Context Protocol (MCP) configurations for Claude Code. It allows users to easily add, remove, list, and automatically load MCP configurations without manual intervention, streamlining the management process.
GitHub Stars
13
User Rating
Not Rated
Favorites
0
Views
20
Forks
0
Issues
0
MCP Manager - Setup and Usage Guide
Overview
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.
Features
- List MCPs - View all configured MCPs in the correct format
- Add/Remove MCPs - Manage your MCP configurations interactively
- Batch Operations - Add all MCPs at once without prompts
- Auto-loading - Automatically load MCPs when starting Claude Code
- Import/Export - Save and restore your MCP configurations
- Sample Configurations - Initialize with common MCP setups
Prerequisites
- Bash shell (works with both bash and zsh)
- jq - Command-line JSON processor
- macOS:
brew install jq - Ubuntu/Debian:
sudo apt-get install jq - RHEL/CentOS:
sudo yum install jq - Arch Linux:
sudo pacman -S jq
- macOS:
Installation
Option 1: Direct Download
# 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
Option 2: Clone Repository
# 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
Quick Start
Initialize with sample MCPs:
./mcp-manager.sh initEdit the configuration to add your tokens:
nano ~/.config/claude/mcp_config.jsonReplace
<your-token>placeholders with actual tokens.List all MCPs:
./mcp-manager.sh listAdd all MCPs to Claude:
./mcp-manager.sh add-all
Usage
Basic Commands
# 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
Configuration File
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"
}
]
}
MCP Types
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" }
Automatic Loading Setup
To automatically load all MCPs when starting Claude Code:
Method 1: Shell Function (Recommended)
Run the setup command:
./mcp-manager.sh setup-autoReload your shell:
source ~/.bashrc # or ~/.zshrc for zshStart Claude Code with auto-loaded MCPs:
claude-code # or use the alias cc
Method 2: Custom Alias
Add to your .bashrc or .zshrc:
alias claude-start='/path/to/mcp-manager.sh add-all && claude-code'
Method 3: Wrapper Script
Create a custom launcher script:
#!/bin/bash
echo "Starting Claude Code with MCPs..."
/path/to/mcp-manager.sh add-all
claude-code "$@"
Examples
Adding a New MCP
$ ./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
Batch Import/Export
# Export current configuration
./mcp-manager.sh export my-mcps-backup.json
# Import from a file
./mcp-manager.sh import team-mcps.json
Setting Up Common MCPs
After running ./mcp-manager.sh init, you'll get these pre-configured MCPs:
- Supabase - Database and authentication
- DigitalOcean - Cloud infrastructure management
- Shopify Dev - E-commerce development tools
- Puppeteer - Browser automation
- Upstash - Redis and Kafka services
- Context7 - Context management
- Bright Data - Web scraping and data collection
Troubleshooting
Issue: "jq is required but not installed"
Solution: Install jq using your package manager (see Prerequisites)
Issue: "Config file not found"
Solution: The script will automatically create the config file. Run any command to initialize it.
Issue: MCPs not loading automatically
Solution:
- Ensure the script path is correct in your shell function
- Check if Claude Code is installed and accessible
- Verify your shell configuration was reloaded
Issue: "Permission denied"
Solution: Make sure the script is executable:
chmod +x mcp-manager.sh
Advanced Usage
Custom Configuration Location
To use a different configuration file location, modify the CONFIG_FILE variable in the script:
CONFIG_FILE="$HOME/.config/custom/mcp_config.json"
Adding Complex MCPs
For MCPs with multiple environment variables:
{
"name": "complex-mcp",
"type": "env",
"path": "VAR1=value1 VAR2=value2",
"options": "npx -y @complex/mcp-server --port 3000"
}
Conditional Loading
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 "$@"
}
Best Practices
- Keep tokens secure - Never commit your configuration file with real tokens
- Regular backups - Export your configuration regularly
- Version control - Keep your MCP configurations in a private git repository
- Team sharing - Use import/export to share configurations (without tokens)
- Minimal MCPs - Only load the MCPs you need for better performance
Contributing
To contribute to the MCP Manager project:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
License
This project is open source and available under the MIT License.
Support
For issues, questions, or contributions:
- Create an issue on GitHub
- Check existing issues for solutions
- Read the Claude Code documentation for MCP-specific questions
Note: Remember to replace placeholder tokens with your actual API tokens before using the MCPs.
15
Followers
29
Repositories
0
Gists
0
Total Contributions
McpEnvInstaller is a cross-platform script toolset designed to simplify and automate the deployment of the MCP (Model Context Protocol) runtime environment. It streamlines the complex setup process across different operating systems, providing a standardized way for AI applications to connect to various data sources and tools.
MCP Tasks is an efficient task management tool designed to minimize tool confusion and maximize LLM budget efficiency. It offers powerful search, filtering, and organization capabilities across multiple file formats, including Markdown, JSON, and YAML. Users can easily manage their tasks with its intuitive interface.