Installer et configurer un MCP
Guide complet pour installer, configurer et déboguer un MCP dans Claude Code. Fichier .mcp.json, commande claude mcp add, et résolution des problèmes courants.
Le fichier de configuration MCP
Les MCP se configurent dans un fichier JSON qui indique à Claude Code quels serveurs MCP lancer et comment les connecter. Il existe deux niveaux de configuration, global pour vos outils personnels, et par projet pour la stack technique de chaque dépôt.
Configuration globale
Le fichier ~/.claude/settings.json contient les MCP disponibles dans tous vos projets. C'est ici que vous placez les MCP génériques (Gmail, Slack, Calendar) et les tokens personnels.
Configuration par projet
Le fichier .mcp.json à la racine de votre projet contient les MCP spécifiques à ce projet. C'est ici que vous placez les MCP liés au développement (Context7, Sentry, base de données du projet).
Structure du fichier .mcp.json
{"mcpServers": {"nom-du-mcp": {"command": "npx","args": ["-y", "@package/mcp-server"],"env": {"API_KEY": "votre-clé-ici"}}}}
Chaque entrée dans mcpServers définit un MCP avec :
command: la commande pour lancer le serveur MCP (npx,uvx,docker, ou un chemin vers un binaire)args: les arguments passés à la commande (le package npm, les options de configuration)env(optionnel) : les variables d'environnement nécessaires (tokens, clés API)
Installation d'un MCP : les trois méthodes
Méthode 1 : via la commande claude mcp add (recommandé)
La façon la plus simple d'installer un MCP. Claude Code s'occupe de tout.
# Syntaxe généraleclaude mcp add <nom> -- <commande> <args...># Exemple : ajouter Context7claude mcp add context7 -- npx -y @upstash/context7-mcp# Exemple : ajouter GitHub avec un tokenclaude mcp add github -- npx -y @modelcontextprotocol/server-github# Exemple : ajouter un MCP avec des variables d'environnementclaude mcp add slack -e SLACK_BOT_TOKEN=xoxb-votre-token -- npx -y @modelcontextprotocol/server-slack
Méthode 2 : éditer manuellement le fichier JSON
Pour un contrôle total, éditez directement le fichier de configuration.
{"mcpServers": {"context7": {"command": "npx","args": ["-y", "@upstash/context7-mcp"]},"github": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-github"],"env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_votre_token"}}}}
Méthode 3 : via Docker (pour les MCP complexes)
Certains MCP nécessitent des dépendances spécifiques. Docker isole tout proprement.
{"mcpServers": {"postgres": {"command": "docker","args": ["run", "-i", "--rm","-e", "DATABASE_URL","mcp/postgres"],"env": {"DATABASE_URL": "postgresql://user:pass@host:5432/dbname"}}}}
Configuration dans Claude Code
Vérifier les MCP installés
Après avoir ajouté un MCP, relancez Claude Code et vérifiez qu'il est bien connecté.
# Lister tous les MCP configurésclaude mcp list# Résultat attendu :# context7: connected# Tools: query-docs, resolve-library-id# github: connected# Tools: list_issues, create_pull_request, search_code, ...# Supprimer un MCPclaude mcp remove <nom># Voir les détails d'un MCPclaude mcp get <nom>
Portée de la configuration
# Ajouter un MCP au niveau du projet (défaut)claude mcp add context7 -- npx -y @upstash/context7-mcp# Ajouter un MCP au niveau global (tous les projets)claude mcp add context7 --scope global -- npx -y @upstash/context7-mcp# Ajouter un MCP au niveau utilisateur (pour cet utilisateur)claude mcp add context7 --scope user -- npx -y @upstash/context7-mcp
Bonne pratique : séparer global et projet
Placez les MCP universels (Gmail, Slack, Calendar) en global et les MCP spécifiques (Context7, Sentry, base de données) en projet. Ainsi, chaque projet n'a accès qu'aux outils dont il a besoin.
Debug et troubleshooting
Le MCP ne se connecte pas
Vérifier que la commande est accessible
# Vérifier que npx est installéwhich npx# Vérifier que le package MCP existenpx -y @upstash/context7-mcp --help# Si vous utilisez uvx (Python)which uvx
Consulter les logs MCP
# Voir les logs de connexion MCPclaude mcp logs# Voir les logs d'un MCP spécifiqueclaude mcp logs context7
Vérifier la syntaxe JSON
Une virgule en trop ou un guillemet manquant peut tout casser. Utilisez un validateur JSON.
# Valider votre fichier .mcp.jsoncat .mcp.json | python3 -m json.tool# Ou avec Node.jsnode -e "console.log(JSON.parse(require('fs').readFileSync('.mcp.json','utf8')))"
Tester le MCP manuellement
Vous pouvez lancer le serveur MCP directement pour voir s'il démarre correctement.
# Lancer le serveur MCP directementnpx -y @upstash/context7-mcp# Si le serveur démarre et attend des entrées stdin, c'est bon# Ctrl+C pour quitter
Erreurs courantes et solutions
| Erreur | Cause probable | Solution |
|---|---|---|
command not found: npx | Node.js non installé | Installer Node.js 18+ |
ENOENT | Package MCP inexistant | Vérifier le nom du package |
ECONNREFUSED | Token invalide ou expiré | Régénérer le token |
timeout | Serveur MCP trop lent au démarrage | Augmenter le timeout ou utiliser Docker |
permission denied | Droits insuffisants | Vérifier les permissions du token/fichier |
Sécurité des tokens
Ne commitez jamais vos tokens dans un repository Git. Utilisez la configuration globale (~/.claude/settings.json) pour les informations sensibles, ou des variables d'environnement système.
Exemple complet : configurer trois MCP
Voici un exemple réaliste de configuration avec trois MCP pour un projet de développement web.
{"mcpServers": {"context7": {"command": "npx","args": ["-y", "@upstash/context7-mcp"]},"playwright": {"command": "npx","args": ["-y", "@playwright/mcp"]},"github": {"command": "npx","args": ["-y", "@modelcontextprotocol/server-github"],"env": {"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."}}}}
Avec cette configuration, vous pouvez demander à Claude Code :
"Consulte la documentation de Next.js 14, crée une page d'erreur 404 avec les bonnes pratiques, teste-la dans le navigateur, et crée une pull request."
Claude Code enchaînera automatiquement Context7 (documentation), l'édition de fichiers (création de la page), Playwright (test visuel) et GitHub (pull request).
Prochaines étapes
Votre premier MCP est configuré ? Découvrez maintenant les meilleurs MCP par catégorie.
- Comprendre les MCP : Le fonctionnement du protocole MCP expliqué
- Top MCP productivité : Gmail, Slack, Calendar, Figma, Lighthouse
- Top MCP développement : Context7, GitHub, Sentry, bases de données
- Top MCP design & UI : Playwright, Chrome DevTools, 21st.dev Magic