Serveurs MCP
Les serveurs MCP étendent la Vibe Code CLI avec des outils externes via le Model Context Protocol. Ajoutez-les avec la commande vibe mcp add, la commande slash /mcp add, ou directement dans config.toml sous mcp_servers. Leurs outils deviennent alors disponibles pour Vibe comme tout outil natif.
Les serveurs MCP sont configurés par l'utilisateur. Pour les intégrations gérées par Mistral, consultez plutôt Connectors.
Votre administrateur peut bloquer les serveurs MCP avec enable_mcp = false dans la configuration administrateur. Dans ce cas, Vibe refuse d'ajouter, de supprimer, d'activer des serveurs MCP ou de s'y connecter, et ne charge aucun outil MCP.
Transports pris en charge
| Transport | À utiliser lorsque |
|---|---|
http | Le serveur est accessible via HTTP standard. |
streamable-http | Le serveur est accessible en HTTP et prend en charge les réponses en streaming. |
stdio | Le serveur est un processus local lancé depuis une commande. |
Ajouter un serveur MCP depuis la ligne de commande
vibe mcp add écrit le serveur dans votre config.toml utilisateur sans démarrer de session. Pour un serveur distant qui utilise OAuth, indiquez son nom et son URL. Vibe ouvre votre navigateur pour vous connecter :
vibe mcp add linear --url https://mcp.linear.app/mcpPassez --no-login pour enregistrer le serveur sans vous connecter, et --scope (répétable) pour demander des scopes OAuth spécifiques.
Pour un serveur distant qui utilise une clé API ou des en-têtes statiques, passez --api-key-env ou --header :
vibe mcp add mistralai \
--url https://api.mistral.ai/mcp \
--api-key-env MISTRAL_API_KEYPour un serveur local, utilisez le transport stdio. Répétez --arg pour chaque argument et --env pour chaque variable d'environnement :
vibe mcp add fetch_server --transport stdio --command uvx --arg mcp-server-fetchSupprimez un serveur avec vibe mcp remove <name>. La suppression d'un serveur OAuth efface également ses tokens stockés. Exécutez vibe mcp add --help pour voir toutes les options.
Vous pouvez également ajouter un serveur OAuth depuis une session avec /mcp add <url>. La commande accepte les mêmes options --name, --scope, --transport et --no-login :
/mcp add https://mcp.linear.app/mcpconfig.tomlAjouter un serveur MCP dans config.toml
Ajoutez une table [[mcp_servers]] dans config.toml. Les champs obligatoires dépendent du transport.
[[mcp_servers]]
name = "my_http_server"
transport = "http"
url = "http://localhost:8000"
[mcp_servers.auth]
type = "static"
headers = { "X-Client" = "vibe" }
api_key_env = "MY_API_KEY_ENV_VAR"
api_key_header = "Authorization"
api_key_format = "Bearer {token}"Champs communs
| Champ | Utilité |
|---|---|
name | Alias court pour le serveur. Utilisé comme préfixe dans le nom des outils. |
transport | http, streamable-http ou stdio. |
url | URL de base pour les transports HTTP. |
command / args | Commande et arguments pour le transport stdio. |
env | Variables d'environnement passées au processus serveur (stdio). |
startup_timeout_sec | Durée d'attente du démarrage du serveur. Valeur par défaut : 10 secondes. |
tool_timeout_sec | Durée d'attente de l'exécution d'un appel d'outil. Valeur par défaut : 60 secondes. |
[mcp_servers.auth] | Authentification pour les transports HTTP : type = "static" avec headers ou api_key_env, ou type = "oauth" avec scopes. |
Vibe accepte toujours headers, api_key_env, api_key_header et api_key_format directement dans [[mcp_servers]], et les traite comme une authentification statique. Ne les combinez pas avec un tableau [mcp_servers.auth]. Consultez la référence de configuration pour tous les champs.
Se connecter aux serveurs OAuth
OAuth fonctionne avec les transports http et streamable-http. Les serveurs stdio s'exécutent localement et n'utilisent pas OAuth.
vibe mcp add lance la connexion dès qu'il ajoute un serveur OAuth, c'est-à-dire un serveur HTTP ajouté sans --header ni --api-key-env. /mcp add n'ajoute que des serveurs OAuth et lance lui aussi la connexion. Si vous l'avez différée avec --no-login, ou si Vibe indique qu'un serveur nécessite une authentification, exécutez /mcp login <name> depuis une session. /mcp status affiche l'état de connexion de chaque serveur.
Pendant la connexion, Vibe vous fournit l'URL d'autorisation et peut l'ouvrir dans votre navigateur. Une fois l'accès approuvé, le navigateur redirige vers http://127.0.0.1:<redirect_port>/callback, soit http://127.0.0.1:47823/callback par défaut. Cette adresse doit atteindre la machine sur laquelle Vibe s'exécute. Si Vibe s'exécute sur une machine distante via SSH, redirigez le port du callback avant de vous connecter, puis ouvrez l'URL dans votre navigateur local : ssh -L 47823:127.0.0.1:47823 <host>. Utilisez votre redirect_port à la place de 47823 si vous l'avez modifié.
Vibe stocke les tokens dans le trousseau de votre système d'exploitation, et non dans config.toml. /mcp logout <name> les supprime. Si vous modifiez url, scopes, client_id ou client_metadata_url pour ce serveur, Vibe cesse d'utiliser les tokens stockés et vous devez exécuter à nouveau /mcp login <name>.
Ces champs facultatifs de [mcp_servers.auth] configurent le client OAuth :
| Champ | Utilité |
|---|---|
client_id | Identifiant d'un client public préenregistré. Enregistrez http://127.0.0.1:47823/callback comme URI de redirection, avec votre redirect_port à la place de 47823 si vous l'avez modifié. Sans client_id ni client_metadata_url, Vibe enregistre un client auprès du serveur de façon dynamique. |
client_metadata_url | URL HTTPS d'un document de métadonnées client, avec un chemin autre que /. Le document doit lister http://127.0.0.1:<redirect_port>/callback dans redirect_uris. Utilisée uniquement si le serveur annonce client_id_metadata_document_supported. Sinon, Vibe enregistre un client de façon dynamique. Incompatible avec client_id. |
redirect_port | Port local du callback de connexion. Valeur par défaut : 47823. Modifiez-le si le port 47823 est déjà utilisé sur votre machine. |
Dans les environnements sans interface graphique et sans trousseau système, comme la CI, Vibe ne peut pas stocker de tokens OAuth. Utilisez plutôt une authentification statique avec api_key_env.
Nomination et autorisations des outils
Les outils MCP sont exposés selon le format {server_name}_{tool_name}. Configurez les autorisations par outil comme pour les outils natifs :
[tools.fetch_server_get]
permission = "always"
[tools.my_http_server_query]
permission = "ask"Vous pouvez aussi restreindre les outils MCP actifs via enabled_tools et disabled_tools :
# Only enable serena's tools
enabled_tools = ["serena_*"]
# Disable every tool from the fetch_server server
disabled_tools = ["fetch_server_*"]Les filtres prennent en charge les noms exacts, les motifs globaux et les regex avec le préfixe re:.
Chargement des serveurs MCP
Vibe conserve les outils des serveurs MCP et des connecteurs issus de leur dernier chargement et les actualise en arrière-plan : vos messages n'attendent donc pas le démarrage des serveurs. Si un serveur ne peut pas être chargé ou demande une connexion, Vibe affiche un avertissement qui le nomme.
Parcourir les serveurs MCP depuis le CLI
Depuis une session CLI :
/mcpIndiquez un nom de serveur pour répertorier ses outils :
/mcp fetch_server/mcp accepte également ces sous-commandes :
| Sous-commande | Action |
|---|---|
/mcp add <url> | Ajouter un serveur OAuth et se connecter. Voir Ajouter un serveur MCP depuis la ligne de commande. |
/mcp status | Afficher le statut de chaque serveur. |
/mcp login <name> | Se connecter à un serveur OAuth. |
/mcp logout <name> | Se déconnecter d'un serveur OAuth. |
/connectors est un alias de /mcp.