Tutoriel serveur MCP 2026 : installer, configurer, exécuter
- MCP (Model Context Protocol) est un standard ouvert qui permet à Claude Code d'appeler des outils externes — bases de données, navigateurs, API — via une interface JSON-RPC homogène. Les serveurs s'exécutent en tant que processus locaux et Claude communique avec eux via stdio.
- La configuration vit dans
.claude/settings.json(au niveau du projet) ou~/.claude/settings.json(global). Chaque entrée de serveur exige une commande, des arguments et, le cas échéant, des variables d'environnement pour les identifiants. - Les cinq serveurs à installer en premier : Filesystem, Memory, GitHub, Playwright et Fetch. Chacun comble une lacune fonctionnelle que Claude Code seul ne peut pas couvrir.
Ce qu'est réellement MCP
Le Model Context Protocol est une spécification publiée par Anthropic en novembre 2024. Il définit une manière standard pour les modèles de langage d'appeler des outils externes — et pour les outils externes de s'exposer aux modèles. Avant MCP, chaque intégration d'outil IA était sur mesure ; MCP rend les intégrations composables.
L'architecture est plus simple que son nom le laisse penser. Un serveur MCP est un processus qui s'exécute sur votre machine (ou à distance, pour les serveurs hébergés). Au démarrage de Claude Code, chaque serveur MCP configuré est lancé, Claude reçoit la liste des outils que ce serveur expose, puis peut appeler ces outils par leur nom au cours de n'importe quelle session. Toute la communication passe par stdin/stdout en JSON-RPC 2.0. Pas de HTTP, pas de ports, aucune configuration réseau pour les serveurs locaux.
Une présentation conceptuelle plus approfondie figure dans le primer Qu'est-ce que MCP. Ce billet se concentre sur la mise en place pratique.
Où vit la configuration
La configuration des serveurs MCP réside dans un fichier settings.json. Deux emplacements possibles :
~/.claude/settings.json— global ; s'applique à toutes les sessions Claude Code de cette machine.claude/settings.json(dans un répertoire de projet) — au niveau du projet ; s'applique uniquement quand Claude Code s'exécute dans ce répertoire et remplace la configuration globale pour les clés concernées
Le fichier au niveau projet est à privilégier pour les serveurs spécifiques au projet (un serveur de base de données limité à la chaîne de connexion d'un seul projet). Le fichier global convient aux serveurs que vous voulez voir partout (Fetch, GitHub).
Le fichier .claude/settings.json placé dans un répertoire de projet doit figurer dans .gitignore s'il contient des identifiants. La divulgation CVE-2026-21852 portait sur des identifiants embarqués dans ce fichier via npm. Voir le guide de prévention des fuites d'identifiants.
La structure de configuration de base
La clé mcpServers dans settings.json est une table associative reliant un nom de serveur à sa configuration. Chaque configuration de serveur précise comment démarrer le processus.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/allowed/directory"
]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "ghp_your_fine_grained_token_here"
}
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
Quelques remarques sur cette structure :
- Le drapeau
-ysur npx installe le paquet s'il est absent. Pratique au moment de la mise en place, mais légèrement plus lent au premier lancement. Vous pouvez épingler une version pour éviter cela :@modelcontextprotocol/server-filesystem@0.6.0. - Les identifiants vont dans l'objet
env, jamais comme arguments en ligne de commande. Les arguments sont journalisés ; les variables d'environnement, par défaut, ne le sont pas. - Les noms de serveur (les clés) sont arbitraires — ils servent uniquement dans les messages d'erreur et les descriptions d'outils côté Claude.
Les cinq serveurs à installer en premier
Donne à Claude Code un accès en lecture et écriture à des répertoires précis. Sans ce serveur, Claude Code ne peut lire que les fichiers que vous collez explicitement dans la conversation ou ceux qui se trouvent déjà dans son répertoire de travail. Avec lui, Claude peut parcourir votre arborescence, lire des fichiers arbitraires par leur chemin et écrire sur le disque.
L'argument de chemin qui suit le nom du paquet est la racine autorisée. Passez la racine du projet pour une installation à l'échelle d'un projet. Ne passez votre répertoire personnel que si vous avez réellement besoin d'une navigation large — et seulement après avoir mesuré les implications de sécurité.
Ajoute un graphe de connaissances local qui persiste d'une session à l'autre. Claude peut y stocker des faits, des relations et des observations — puis les retrouver au cours de sessions futures sans relire les fichiers sources. Stocké au format JSON dans ~/.claude-memory/ par défaut.
Le serveur Memory est ce que Claude Code a de plus proche d'une « mémoire » de votre projet. Le mécanisme n'est pas automatique — Claude doit explicitement enregistrer ses observations — mais une fois en place, il réduit nettement le coût d'exploration quand vous reprenez un projet après une pause.
Donne à Claude accès à l'API GitHub : lire issues et pull requests, rechercher dans le code, créer des issues, poster des commentaires, gérer des branches. Exige un jeton d'accès personnel à granularité fine, limité aux dépôts auxquels vous voulez que Claude accède.
{
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "github_pat_..."
}
}
}
Limitez le PAT au strict minimum de dépôts. Un PAT en écriture sur tous les dépôts de votre compte est un identifiant lourd de conséquences — traitez-le avec la même prudence qu'une clé de déploiement.
Donne à Claude un véritable navigateur via Playwright. Il peut parcourir des pages, cliquer, remplir des formulaires, prendre des captures d'écran et extraire la structure d'une page. À distinguer du serveur Fetch — Playwright exécute le JavaScript ; Fetch ne le fait pas.
{
"playwright": {
"command": "npx",
"args": ["-y", "@playwright/mcp@latest"]
}
}
Le navigateur démarre à la demande et se ferme à la fin de la session Claude Code. Il est invisible par défaut — ajoutez "--headed" aux arguments si vous voulez le voir tourner.
Récupère du contenu web et le convertit en Markdown. Plus léger que Playwright pour les pages qui n'ont pas besoin d'un rendu JavaScript — sites de documentation, README GitHub, billets de blog. Fait partie de l'ensemble de référence officiel d'Anthropic.
{
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
Ce serveur exige uvx (le lanceur de paquets Python d'Astral). Installez-le avec pip install uv ou suivez les instructions d'installation d'Astral. Si vous préférez rester dans l'écosystème Node, des wrappers npm communautaires existent, mais la version officielle est en Python.
Septim Vault — 29 $ paiement unique
Un pack de configurations MCP prêtes à l'emploi : huit configurations de serveurs à coller dans votre settings.json, des modèles d'identifiants, des recommandations sur la liste blanche de chemins et une checklist de vérification pour chaque serveur. Vous évitez la chasse à la documentation pour chaque serveur.
Acheter Septim Vault — 29 $ → Ou essayez Septim Tether (19 $) pour le kit minimal →Vérifier qu'un serveur fonctionne
Après avoir modifié votre settings.json, démarrez une nouvelle session Claude Code. Au prompt, demandez à Claude la liste des outils disponibles :
Quels outils MCP as-tu à ta disposition ?
Claude doit alors énumérer les serveurs configurés et les outils qu'ils exposent. Si un serveur manque à l'appel, la cause se résume presque toujours à l'une de ces trois pannes :
- Le paquet n'est pas installé. Le drapeau
-yde npx l'installe, mais la première exécution peut échouer si le registre npm est lent ou si votre réseau est filtré par un pare-feu. Lancez la commande npx manuellement dans un terminal pour voir l'erreur. - Le chemin est incorrect. Le serveur Filesystem prend un chemin absolu. Un chemin relatif ou comportant une faute de frappe provoque un échec au démarrage. Claude Code journalise les erreurs des serveurs MCP dans
~/.claude/logs/— c'est le premier endroit à inspecter. - L'identifiant est invalide. Si le serveur démarre mais que ses outils renvoient des erreurs, la cause la plus fréquente est une clé d'API expirée ou mal configurée. Testez l'identifiant directement avec curl ou dans le bac à sable d'API du fournisseur avant de déboguer la couche MCP.
Configuration projet ou globale
Un schéma courant chez Septim : la configuration globale embarque Fetch, Memory et Playwright — des serveurs utiles dans n'importe quel projet. La configuration projet héberge Filesystem (avec la racine du projet en chemin autorisé), le serveur de base de données du projet et GitHub (limité au dépôt du projet).
Cette structure permet d'entrer dans n'importe quel répertoire de projet et d'avoir Claude Code qui charge automatiquement les bons serveurs sans que vous ayez à basculer manuellement entre des configurations. Le fichier projet remplace le fichier global pour les serveurs de même nom : vous pouvez ainsi avoir des connexions de bases de données différentes par projet sans qu'elles n'entrent en conflit.
Serveurs MCP distants
Anthropic a ajouté début 2026 la prise en charge des serveurs MCP distants (accédés en SSE plutôt qu'en stdio). La configuration utilise alors une clé url à la place de command et args :
{
"mcpServers": {
"stripe": {
"url": "https://mcp.stripe.com",
"headers": {
"Authorization": "Bearer sk_live_..."
}
}
}
}
Les serveurs distants sont pratiques pour les services qui maintiennent leur propre point d'entrée MCP hébergé (Stripe et plusieurs autres en proposent). Le compromis : un aller-retour réseau par appel d'outil et un identifiant qui circule sur le réseau — n'utilisez que des hôtes distants en HTTPS et traitez l'en-tête d'autorisation comme une clé d'API placée dans une variable d'environnement.
Considérations de sécurité avant d'ajouter d'autres serveurs
Chaque serveur que vous ajoutez élargit la surface d'attaque de votre session Claude Code. La checklist de vulnérabilité serveur MCP couvre le référentiel d'évaluation en 24 points. La version courte pour les tutoriels :
- N'installez que des serveurs portés par une organisation active ou par une entreprise éditrice
- Lisez les descriptions d'outils dans le code source avant l'installation — des instructions malveillantes intégrées aux métadonnées d'outils sont un vecteur d'attaque documenté (arXiv 2603.22489)
- Utilisez la portée d'identifiant minimale — un jeton GitHub destiné à lire un seul dépôt ne doit pas avoir d'accès en écriture sur tous les dépôts
- Maintenez
.claude/settings.jsonhors de git s'il contient des identifiants
La liste curatée complète des serveurs qui méritent d'être lancés — chacun avec sa réserve de sécurité — figure dans le billet meilleurs serveurs MCP 2026.
Septim Vault — 29 $ · 8 configurations MCP prêtes
Huit configurations de serveurs, modèles d'identifiants, recommandations sur la liste blanche de chemins et checklist de vérification. Inclut aussi le guide de durcissement de settings.json issu du billet sur la CVE-2026-21852. Paiement unique.
Acheter Septim Vault — 29 $ → Septim Tether (19 $) — kit minimal de configuration MCP →