MCP Orchestrator Proxy - Un gestionnaire universel pour simplifier la configuration des MCP servers avec Claude Desktop.
Actuellement, chaque MCP server doit être configuré individuellement dans Claude Desktop :
{
"mcpServers": {
"postgres": {
"command": "postgres-mcp",
"args": ["postgresql://..."],
"env": {"POSTGRES_HOST": "localhost"}
},
"odoo": {
"command": "odoo-mcp",
"args": ["--url", "http://localhost:8069"],
"env": {"ODOO_USER": "admin"}
},
"unifi": {
"command": "/home/user/.local/bin/uv",
"args": ["--directory", "/path/to/unifi-mcp", "run", "main.py"],
"env": {
"UNIFI_API_KEY": "...",
"UNIFI_GATEWAY_HOST": "192.168.0.254"
}
}
}
}
Avec MCOP, vous groupez vos MCP par contexte métier et Claude Desktop n'a qu'une configuration simple :
{
"mcpServers": {
"odoo-stack": {
"command": "mcop",
"args": ["--context", "odoo"]
},
"infra-stack": {
"command": "mcop",
"args": ["--context", "infra"]
}
}
}
Claude Desktop
↓
MCOP (Orchestrator)
↓
┌─────────────┬─────────────┬─────────────┐
│ postgres │ odoo │ unifi │
│ MCP │ MCP │ MCP │
└─────────────┴─────────────┴─────────────┘
- Installation normale : Vous installez vos MCP comme d'habitude selon leur documentation
- Configuration MCOP : Au lieu de configurer dans Claude Desktop, vous configurez dans MCOP
- Routage intelligent : MCOP route automatiquement les appels vers le bon MCP selon le contexte
# Installer postgres-mcp
git clone postgres-mcp && cd postgres-mcp && pip install -e .
# Installer odoo-mcp
git clone odoo-mcp && cd odoo-mcp && npm install
Copier et modifier mcop_config.json.example
vers mcop_config.json
:
{
"contexts": {
"odoo": {
"description": "Stack Odoo avec base de données",
"mcps": {
"postgres": {
"command": "postgres-mcp",
"args": ["postgresql://odoo:pass@localhost/odoo"],
"env": {
"POSTGRES_HOST": "localhost"
}
},
"odoo": {
"command": "node",
"args": ["./odoo-mcp/server.js"],
"env": {
"ODOO_URL": "http://localhost:8069",
"ODOO_USER": "admin"
}
}
}
},
"infra": {
"description": "Infrastructure et monitoring",
"mcps": {
"unifi": {
"command": "/home/user/.local/bin/uv",
"args": ["--directory", "/path/to/unifi-mcp", "run", "main.py"],
"env": {
"UNIFI_API_KEY": "your-key",
"UNIFI_GATEWAY_HOST": "192.168.0.254"
}
}
}
}
}
}
{
"mcpServers": {
"odoo-stack": {
"command": "mcop",
"args": ["--context", "odoo"]
},
"infra-stack": {
"command": "mcop",
"args": ["--context", "infra"]
}
}
}
Claude voit des tools contextualisés :
odoo-stack.database.query
→ postgres MCPodoo-stack.erp.get_modules
→ odoo MCPinfra-stack.network.scan_devices
→ unifi MCP
- ✅ Simplicité : Configuration Claude Desktop ultra-simple
- ✅ Contextualisation : Grouper les MCP par domaine métier
- ✅ Pas de changement : Installation MCP reste identique
- ✅ Réutilisabilité : Partager des configurations MCOP entre équipes
- ✅ Evolutivité : Ajouter facilement de nouveaux MCP à un contexte
mcop/
├── README.md # Ce fichier
├── mcop.py # Orchestrator principal
├── mcop_config.json # Configuration des contextes
├── mcop_config_simple.json # Exemple config simple
├── mcop_config_postgres_only.json # Exemple PostgreSQL uniquement
├── requirements.txt # Dépendances Python
├── LICENSE # Licence MIT
├── CONTRIBUTING.md # Guide de contribution
├── .gitignore # Fichiers à ignorer
├── claude_desktop_config.json.example # Exemple config Claude Desktop
├── odoo_config.json.example # Exemple config Odoo
├── mcop_config.json.example # Exemple config MCOP template
├── pyproject.toml # Configuration du projet Python
└── mcp-nodes/ # Serveurs MCP inclus
├── postgres-mcp/ # Serveur PostgreSQL MCP
└── mcp-odoo/ # Serveur Odoo MCP
- Python 3.10+
- pip
# Cloner le repository
git clone https://github.com/mr-context/mcp-proxy.git
cd mcop
# Installer les dépendances
pip install -r requirements.txt
# Ou avec pip install -e . pour l'installation en mode développement
# Copier les exemples de configuration
cp mcop_config.json.example mcop_config.json
cp claude_desktop_config.json.example claude_desktop_config.json
cp odoo_config.json.example odoo_config.json
# ⚠️ IMPORTANT: Configurer vos credentials dans les fichiers copiés
# - Remplacer 'your_username', 'your_password', etc. par vos vraies valeurs
# - Ne jamais committer les fichiers de configuration avec des credentials réels
# - Puis suivre la documentation des MCP nodes pour l'installation
Les contributions sont les bienvenues ! Consultez CONTRIBUTING.md pour commencer.
Ce projet est sous licence MIT - voir le fichier LICENSE pour les détails.
🚧 Proof of Concept - Version de test pour valider l'idée avant implémentation complète.
- Lecture configuration JSON
- Démarrage multiple MCP
- Routage basique des tools
- Interface MCP Protocol
- Gestion basique d'erreurs
- Hot reload configuration
- Métriques et monitoring
- Tests unitaires complets
- Documentation API complète
- Ne jamais committer des credentials réels - Utilisez toujours les fichiers
.example
- Les fichiers de configuration avec credentials sont exclus par
.gitignore
- Vérifiez toujours vos commits avant de les pousser