🎯 Le résultat : avant d'écrire une ligne, Claude va chercher la documentation à jour de la librairie que tu utilises (la vraie, dans la bonne version) au lieu de coder de mémoire. Fini les fonctions renommées, les options qui n'existent plus, les imports périmés. Installation : 2 minutes. Gratuit, open source, zéro ligne de code à écrire toi-même.
Repo officiel : github.com/upstash/context7, 61 000+ étoiles, licence MIT.
Ce que ça fait exactement
- Tu poses ta question à Claude comme d'habitude (« ajoute l'auth Convex à mon app TanStack Start »).
- Claude appelle Context7 pour identifier la librairie (
resolve-library-id), puis récupère les extraits de doc qui correspondent à ta question (query-docs). - Il code avec cette doc sous les yeux, pas avec ce qu'il a retenu de son entraînement.
💡 Le problème que ça règle : les modèles ont une date de coupure. Une librairie qui a changé son API après cette date, Claude ne le sait pas, et il te sort du code qui avait l'air juste il y a un an. Context7 lui donne la version d'aujourd'hui.
Ce qu'il te faut
- Claude Code installé (version 2.x,
claude --versionpour vérifier). - Node.js 18+ uniquement si tu passes par Claude Desktop. La version Claude Code n'en a pas besoin, elle se connecte au serveur distant.
- Optionnel : une clé API gratuite sur context7.com/dashboard pour des limites plus hautes.
Le prompt à copier-coller dans Claude Code
La méthode paresseuse, celle que je recommande : tu colles ça, Claude fait tout et te pose les questions une par une.
TON RÔLE : tu fais tout le travail technique. Je ne tape aucune commande moi-même, tu me poses les questions une par une quand tu as besoin d'une réponse.
OBJECTIF : installer le MCP Context7 (documentation à jour des librairies) dans Claude Code, et si je le souhaite dans Claude Desktop.
ÉTAPE 1 — Vérifie l'environnement
- Lance `claude --version` et `node -v`. Dis-moi ce que tu trouves.
ÉTAPE 2 — Installe Context7 dans Claude Code (scope utilisateur, donc disponible dans tous mes projets)
- Lance : claude mcp add --transport http --scope user context7 https://mcp.context7.com/mcp
- Vérifie avec : claude mcp get context7 → le statut doit être « Connected ».
ÉTAPE 3 — Demande-moi si je veux aussi l'ajouter à Claude Desktop
- Si oui : fais une sauvegarde de ~/Library/Application Support/Claude/claude_desktop_config.json (sur Mac) ou %APPDATA%\Claude\claude_desktop_config.json (sur Windows), puis ajoute dans « mcpServers » :
"context7": { "command": "npx", "args": ["-y", "@upstash/context7-mcp"] }
- Ne supprime rien d'autre dans ce fichier. Dis-moi de redémarrer Claude Desktop.
ÉTAPE 4 — Ajoute la règle pour que ça se déclenche tout seul
- Ouvre mon fichier ~/.claude/CLAUDE.md (crée-le s'il n'existe pas) et ajoute à la fin :
« Utilise toujours le MCP Context7 (resolve-library-id puis query-docs) quand tu as besoin de la doc d'une librairie, d'une API, d'une étape de setup ou de configuration — sans que j'aie à le demander. »
ÉTAPE 5 — Test
- Fais une démonstration : demande à Context7 la doc d'une librairie que j'utilise (demande-moi laquelle) et montre-moi l'extrait récupéré.
ÉTAPE 6 — Clé API (optionnel)
- Explique-moi que je peux créer une clé gratuite sur https://context7.com/dashboard pour des limites plus hautes, et comment l'ajouter avec :
claude mcp remove context7 -s user
claude mcp add --transport http --scope user context7 https://mcp.context7.com/mcp --header "CONTEXT7_API_KEY: MA_CLE"
La méthode manuelle, si tu préfères taper toi-même
Claude Code, serveur distant (recommandé, rien à installer sur ta machine)
claude mcp add --transport http --scope user context7 https://mcp.context7.com/mcp
claude mcp get context7
Claude Code, serveur local (via npx)
claude mcp add --scope user context7 -- npx -y @upstash/context7-mcp
Claude Desktop
Dans claude_desktop_config.json, à l'intérieur de mcpServers :
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
Puis redémarre Claude Desktop.
⚠️ Le scope compte. Sans --scope user, Claude Code installe le MCP pour le projet courant uniquement. Tu ne le retrouveras pas dans ton dossier suivant et tu croiras que ça a sauté.
🔴 La cause n°1 des « ça marche pas » : Claude ne l'appelle pas. Le MCP est branché, mais si tu ne dis rien, Claude code de mémoire comme avant. Soit tu termines ton prompt par « use context7 », soit tu mets la règle dans ton CLAUDE.md (étape 4 du prompt) et c'est réglé une fois pour toutes.
✅ Le détail qui change tout : la version. Quand tu nommes la version exacte (« TanStack Start v1 », « Convex 1.x »), Context7 te sort la doc de cette version-là. C'est là qu'il bat n'importe quelle recherche web.
Comment savoir que ça tourne
| Ce que tu vois | Ce que ça veut dire |
|---|---|
Dans Claude Code, un appel resolve-library-id puis query-docs avant le code | Context7 a été consulté, le code qui suit s'appuie sur la doc |
| Claude code direct, sans appel d'outil | Il n'a pas jugé utile d'appeler la doc : ajoute « use context7 » ou la règle dans CLAUDE.md |
claude mcp get context7 renvoie Connected | Le serveur répond, l'install est bonne |
Dépannage rapide
claude mcp listne montre pas context7 : tu l'as installé en scope projet, refais l'install avec--scope user.- Statut « Failed to connect » : réseau ou proxy d'entreprise qui bloque
mcp.context7.com. Passe par la version locale (npx -y @upstash/context7-mcp). - Erreur de limite (rate limit) : crée une clé gratuite sur context7.com/dashboard et réinstalle avec le header
CONTEXT7_API_KEY. - Claude Desktop ne voit rien : vérifie que
npxest dans ton PATH (Node 18+), et que le JSON est valide (une virgule en trop suffit à tout casser). Redémarre l'app. - La librairie n'est pas trouvée : elle n'est peut-être pas indexée. Tu peux l'ajouter sur context7.com (bouton « Add library »).
Désinstaller
claude mcp remove context7 -s user
Et pour Claude Desktop, retire le bloc context7 du fichier de config.
🙏 Crédit : Context7 est développé par Upstash. Repo : github.com/upstash/context7, licence MIT. Je n'ai rien construit, je l'ai récupéré, branché sur Claude, et je te passe le setup.