Install
npm install && npm run buildMCP Starter Kit est un scaffold indépendant du projet, conçu pour mettre en place un serveur MCP (Model Context Protocol) sécurisé et prêt pour la production pour n'importe quel projet : chaque outil correspond à un endpoint backend, l'authentification se fait par clé API + scopes, et le kit permet de faire le pont entre un agent IA (Claude Desktop/Web, ChatGPT ou un agent auto-hébergé) et votre API backend. Si vous cherchez simplement à essayer des outils tout faits, ce n'est pas fait pour vous : il suppose que vous disposez d'une API backend, que vous pouvez héberger un service et que vous acceptez un processus de build et de déploiement.
Pour qui ?
- Les développeurs qui veulent que leur API backend soit appelée en toute sécurité par des agents comme Claude ou ChatGPT.
- Les équipes qui ont besoin d'un outil par endpoint et d'un contrôle des permissions via clé API + scopes ; lecture seule par défaut, sauf ajout explicite d'un scope en écriture.
- Les scénarios nécessitant deux modes d'accès — en ligne (Streamable HTTP, multi-clients) et Claude Desktop (stdio) — ou deux modes d'authentification : OAuth 2.0 sans état (PKCE S256) ou clé API via header.
- Pas adapté : aux utilisateurs qui n'ont pas d'API backend, qui ne disposent pas d'un hébergement TLS, ou qui ne veulent modifier ni code ni configuration. Les sources officielles ne précisent pas les coûts d'hébergement ni les détails des exigences d'environnement d'exécution ; ces inconnues sont à vérifier vous-même.
Première tentative en 3 minutes
Pour une première tentative, il est recommandé de partir du scaffold lui-même : construire et vérifier la connexion (les véritables appels d'endpoints se produisent après la configuration de vos outils) :
- Prérequis : Node/npm installés ; préparez un domaine compatible TLS (le service doit être hébergé derrière TLS, au chemin
/mcp). - Suivez le chemin des modèles du README : entrez dans
templates/, renommezgitignoreen.gitignore, remplacez__PROJECT__par le nom de votre projet, renseignez le fichier.envet ajoutez vos outils danssrc/server.ts. - Lancez la commande de build fournie officiellement :
npm install && npm run build
- Hébergez derrière TLS (chemin
/mcp), puis connectez-vous depuis Claude Desktop avec mcp-remote et vérifiez une fois (l'initialisation de la connexion est une action à faible risque ; la clé est validée auprès du backend lors deinitialize) :
npx -y mcp-remote https://<domain>/mcp --header "Authorization: Bearer <key>"
Signal de succès : le client termine initialize et la clé est validée par le backend (les sources officielles précisent que les requêtes non authentifiées sont bloquées dès l'initialisation). Pour Claude Web, utilisez le connecteur personnalisé avec l'URL /mcp et le header x-api-key. Attention : <domain> et <key> dans les commandes ci-dessus sont des valeurs réelles que vous devez remplacer ; remplir les secrets dans le fichier .env constitue une écriture d'état local, pas une opération en lecture seule.
Cas d'usage
- Appeler vos endpoints backend en lecture seule depuis Claude Desktop : après le build et l'hébergement TLS selon le chemin principal décrit ci-dessus, connectez-vous dans Claude Desktop via mcp-remote avec une clé Bearer vers
/mcp. Lecture seule par défaut : sauf si vous ajoutez explicitement un scope en écriture, les appels ne déclencheront aucune écriture sur le backend — c'est le comportement déclaré officiellement, mais cela ne signifie pas un risque nul ; la clé est toujours validée auprès du backend et transite par mcp-remote. - Connecter le même service via le connecteur personnalisé de Claude Web : configurez un connecteur personnalisé dans Claude Web avec l'URL
/mcpet le headerx-api-key. Vous pouvez vérifier l'établissement de la connexion ; le format de sortie d'un outil donné dépend de la façon dont vous l'implémentez danssrc/server.ts— les sources officielles ne fournissent aucun exemple d'outil concret, il est donc impossible d'aller plus loin dans les prévisions.
Limites d'usage
- Nature lecture/écriture : le modèle est en lecture seule par défaut ; les capacités d'écriture nécessitent l'ajout explicite d'un scope. Toute écriture est une écriture à distance : vérifiez les effets de bord avant de l'exécuter.
- Identifiants : authentification par clé API (ou, en option, OAuth 2.0 sans état avec PKCE S256) ; le fichier
.envdoit être renseigné et constitue un état local sensible. - Journaux : les journaux d'audit sont émis sur stderr, stdout étant réservé au JSON-RPC ; attention à cette distinction de canaux lors du débogage.
- Limites des mécanismes de sécurité : la clé est validée lors de
initializeafin de bloquer tout usage non authentifié ; le mode lecture seule par défaut et la validation àinitializesignifient qu'aucune écriture n'est exécutée et que la clé est vérifiée, mais pas que le service n'accède pas au réseau ni qu'il n'existe pas d'autres limites de confidentialité. - Informations non confirmées : les sources officielles ne précisent pas le format détaillé des fichiers de configuration des différents clients, les exigences des plateformes d'hébergement, ni des exemples d'implémentation concrets d'endpoints/outils ; à consulter et vérifier vous-même dans le dépôt avant la première utilisation.