MoCoPro
MoCoPro is a Container-Native and Local-First MCP Servers Orchestration CLI.
Features:
- Install and manage MCP servers locally from any GitHub repository with a root
Dockerfileorsmithery.yamlfile. - Run MCP servers in native Docker/Podman containers.
- Configure popular MCP clients for installed servers.
- 100% Free. No Registry. No Sign Up.
[!NOTE]
Self-hosting on your own servers coming soon!

Table of Contents generated with DocToc
- Feature Comparison
- Compatibility
- Installation
- Uninstallation
- Usage
- MCP Server Requirements
- Data Storage
- Container Runtime
- Contributing
- License
Feature Comparison
| MoCoPro | MCPM | Smithery CLI | install-mcp | |
|---|---|---|---|---|
| Build MCP Servers from GitHub repositories | ✅ | ❌ | ❌ | ❌ |
| Run MCP Servers locally | ✅ | ✅ | ❌1 | ❌ |
| Self-host MCP Servers | 🎯2 | ❌ | ❌ | ❌ |
| Write MCP Clients config entries | ✅ | ✅ | ✅ | ✅ |
Compatible with MCP Servers via Dockerfile | ✅ | ❌ | ❌3 | ❌ |
Compatible with MCP Servers via smithery.yaml | ✅ | ❌ | ✅ | ❌ |
| No registry required | ✅ | ❌ | ❌ | ✅ |
| No signup required | ✅ | ✅ | ⚠️4 | ✅ |
| Native container lifecycle management | ✅ | ❌ | ❌ | ❌ |
| Podman support | ✅ | ❌ | ❌ | ❌ |
| Environment variable management | ✅ | ✅ | ❌ | ❌ |
Compatibility
- MCP Servers
- Any GitHub-hosted MCP server with a root
Dockerfileorsmithery.yamlfile. - Other Git hosts coming soon.
- Any GitHub-hosted MCP server with a root
- MCP Clients
- Claude CLI
- More clients coming soon.
Installation
NPM Package
Requirements:
# With npm
npm install -g mocopro
# With Bun
bun install -g mocopro
# With mise
mise use -g node@24 # if not already installed
mise use -g npm:mocopro
Self-Contained Binary
[!NOTE]
Since it contains a full Node.js runtime, be aware of the size: ~60-110MB.
Linux, macOS and Windows WSL
curl -fsSL https://raw.githubusercontent.com/ivangabriele/mocopro/main/install.sh | bash
Non-WSL Windows
[!WARNING]
Not recommended. Consider either using npm or WSL.
Download the latest release.
Uninstallation
mocopro self-uninstall
[!NOTE]
If you installed the self-contained binary on non-WSL Windows, this command won't work. You need to manually:
- Stop and remove all your Docker/Podman MCP Server containers.
- Delete the exe file wherever you pasted it.
- Delete the
C:\Users\<username>\AppData\Local\mocoprodirectory, if you want to remove all your data (settings and installed servers).
Usage
Install a server
# From owner/repository format
mocopro install hellokaton/unsplash-mcp-server
# From full GitHub URL
mocopro install hellokaton/unsplash-mcp-server
# With specific branch or tag
mocopro install hellokaton/unsplash-mcp-server#v1.0.0
List installed servers
mocopro list
Set environment variables
# Set one or more environment variables
mocopro env set unsplash-mcp-server UNSPLASH_ACCESS_KEY=your_api_key
# List environment variables
mocopro env list unsplash-mcp-server
# Unset environment variables
mocopro env unset unsplash-mcp-server UNSPLASH_ACCESS_KEY
Start a server
# Start in foreground (Ctrl+C to stop)
mocopro start unsplash-mcp-server
# Start in background
mocopro start unsplash-mcp-server --detach
Stop a server
mocopro stop unsplash-mcp-server
Update a server
mocopro update unsplash-mcp-server
Uninstall a server
mocopro uninstall unsplash-mcp-server
Configure for Claude CLI
Add a server to Claude CLI configuration:
# Add to local configuration (.mcp.json in current directory)
mocopro setup claude add unsplash-mcp-server
# Add to global configuration (~/.claude.json)
mocopro setup claude add unsplash-mcp-server --global
Remove a server from Claude CLI configuration:
# Remove from local configuration
mocopro setup claude remove unsplash-mcp-server
# Remove from global configuration
mocopro setup claude remove unsplash-mcp-server --global
MCP Server Requirements
MoCoPro can install MCP servers from GitHub that have either:
- A
Dockerfileat the repository root, or - A
smithery.yamlconfiguration file at the repository root
Data Storage
MoCoPro stores data in ~/.mocopro/:
~/.mocopro/
├── registry.json # Installed servers metadata
└── repos/ # Cloned repository sources
Container Runtime
MoCoPro automatically detects and uses Podman if available, falling back to Docker. The runtime can be overridden by setting the MOCOPRO_RUNTIME environment variable:
MOCOPRO_RUNTIME=docker mocopro start my-server
Contributing
See CONTRIBUTING.md for development setup and guidelines.