Utiliser le serveur MCP
Ce guide montre comment connecter un client MCP externe — Claude Code, un éditeur, MCP Inspector — au serveur d’outils propre à Control Center.
Control Center enregistre 110 outils et les sert au moyen du Model Context
Protocol, à la version de protocole 2024-11-05. Des familles entières d’outils
que vous pourriez attendre sont absentes : il n’y a aucun outil de réunion ni de
calendrier, et aucun outil de projet.
Trouver le point de terminaison
Section intitulée “Trouver le point de terminaison”La surface MCP partage l’écouteur principal de cc_server. Il n’y a pas de port
MCP distinct.
| Point de terminaison | Méthode | Objet |
|---|---|---|
/mcp |
POST |
Transport HTTP streamable — c’est ce que parle un client |
/mcp |
DELETE |
Terminer une session |
/sse |
GET |
Flux de notifications envoyées par le serveur |
Une installation locale par défaut se trouve donc à
http://127.0.0.1:9030/mcp.
- Allez dans Paramètres → Serveur → Serveurs MCP
- Lisez la carte Serveur MCP — elle indique s’il est en cours ou arrêté, ainsi que le port sur lequel il écoute
La surface est activée par défaut sur une installation neuve, donc un client sur la boucle locale fonctionne sans détour par les paramètres. Démarrer au lancement de l’app détermine s’il revient après un redémarrage ; Démarrer / Arrêter sont des commandes de session qui ne modifient pas cette préférence.
Le serveur se lie à la boucle locale par défaut, donc le point de terminaison
n’est joignable que depuis la machine sur laquelle cc_server s’exécute, à moins
de l’avoir démarré avec --bind any.
Connecter un client
Section intitulée “Connecter un client”Pointez votre client vers le point de terminaison HTTP streamable. La forme exacte de la configuration appartient à votre client ; l’URL est la même dans un cas comme dans l’autre.
{ "mcpServers": { "control-center": { "type": "http", "url": "http://127.0.0.1:9030/mcp" } }}Claude Code
Section intitulée “Claude Code”Claude Code ne prendra pas cette configuration dans un .mcp.json de projet — il
réserve les serveurs MCP propres à un projet à une invite d’approbation à laquelle
un claude -p non interactif ne répond jamais. Passez la configuration
explicitement :
claude --mcp-config /path/to/mcp.json --strict-mcp-config--strict-mcp-config force Claude à n’utiliser que ce fichier, de sorte que le
même serveur n’est pas aussi découvert depuis le projet et enregistré deux fois.
Point de contrôle : demandez au client de lister ses outils. Vous devriez voir des
entrées mcp__* couvrant les tickets, les espaces, la mémoire, le graphe de code
et la révision.
Servir MCP au-delà de l’hôte
Section intitulée “Servir MCP au-delà de l’hôte”- Dans Paramètres → Serveur → Serveurs MCP, sur la ligne Jeton d’authentification, appuyez sur Définir et collez un jeton
- Envoyez-le comme
Authorization: Bearer <token>à chaque requêtePOST /mcp
Une surface sans jeton refuse tout appelant hors boucle locale avec un 403. C’est un échec en position fermée par conception : c’est le jeton qui rend possible, à lui seul, le service hors hôte.
Les changements de jeton s’appliquent immédiatement à la surface active — sans redémarrage.
Limiter chaque appel à un espace de travail
Section intitulée “Limiter chaque appel à un espace de travail”Chaque outil qui touche des données propres à un espace de travail exige
workspace_id, et un appel sans cet identifiant est refusé plutôt que résolu
contre un espace de travail « courant » quelconque :
{ "workspace_id": "acme", "title": "Fix login bug", "priority": "high"}L’identifiant est celui de l’URL de votre navigateur ou de l’application :
/workspaces/<workspace_id>/…. Les seules exceptions sont les outils qui
couvrent réellement plusieurs espaces de travail, comme list_workspaces et les
outils de fil de nouvelles — le fil de nouvelles est propre à chaque utilisateur
et un agent n’a pas d’utilisateur à lui, donc ces outils agissent sur les fils du
propriétaire du serveur.
Les outils de portée dépôt vérifient en plus que le dépôt est lié à cet espace de travail.
Savoir ce que la surface refusera
Section intitulée “Savoir ce que la surface refusera”- Filtrage par mode. Un appel est résolu côté serveur selon le mode de
l’espace de l’agent appelant. Un agent en mode lecture seule ne peut pas
atteindre un outil d’écriture en omettant
space_id— le mode est plutôt retrouvé à partir de son exécution active. - Garde-fous d’action. Les outils de mutation déclarent leurs classes d’effets et passent par la même politique que le reste du produit. Voir Configurer les garde-fous.
- Confirmation. Certains outils destructeurs construisent une charge utile de confirmation qui doit être approuvée avant que l’appel se poursuive.
Le catalogue complet est annoncé dans tools/list sans filtrage de découverte —
un client MCP externe refuse d’appeler un outil qui n’est pas dans sa liste en
cache, donc masquer des outils les casse plutôt que de faire du rangement.
Dépannage
Section intitulée “Dépannage”Le client ne voit aucun outil
Section intitulée “Le client ne voit aucun outil”- Vérifiez que la carte Serveur MCP indique qu’il est en cours
- Vérifiez que le port correspond à celui de votre
cc_server - Dans Claude Code, vérifiez que vous avez passé
--mcp-configet--strict-mcp-config
Erreur 403 depuis une machine qui n’est pas le serveur
Section intitulée “Erreur 403 depuis une machine qui n’est pas le serveur”Aucun jeton porteur n’est configuré. Définissez-en un et envoyez-le.
Un appel d’outil échoue avec « Missing or invalid argument: workspace_id »
Section intitulée “Un appel d’outil échoue avec « Missing or invalid argument: workspace_id »”Ajoutez workspace_id. Il n’y a pas d’espace de travail implicite.
Un appel d’outil est refusé comme inconnu
Section intitulée “Un appel d’outil est refusé comme inconnu”Outils MCP liste le catalogue. Appelez le nom exactement tel qu’il y figure.