
MCP Server : Implémenter un serveur Model Context Protocol en TypeScript
Découvrez comment créer un serveur MCP en TypeScript à l'aide du SDK officiel. Apprenez à fournir un contexte riche aux LLMs.
Progression
Si vous souhaitez utiliser Docker, je vous invite à cloner le projet github.
Une fois cloné vous pouvez lancer :
docker-compose up -d
et vous devez ajouter la ligne suivante dans votre /etc/hosts
:
127.0.0.1 apollo.local
Si vous travaillez dans le container docker, les commandes suivantes doivent être lancées dans la machine docker :
docker-compose exec node sh
On commence par configurer le gestionnaire de package yarn :
yarn init
Suivre les instructions en laissant comme entry point
le fichier index.js
.
Il faut ensuite installer l'ensemble des packages suivant pour l'utiliser babel :
yarn add --dev babel-cli babel-preset-env babel-preset-es2015 babel-preset-stage-0
Puis vous devez installer les packages apollo-server-express
, graphql
et express
:
yarn add apollo-server-express graphql express
Une fois terminé, vous devez ajouter le script pour start le projet. Dans le fichier package.json
il faut ajouter :
"scripts": { "start": "babel-node index.js" }
Il nous reste à mettre en place le serveur express qui permettra de lancer le GraphQL.
Ajouter le code suivant dans le fichier index.js
:
import express from 'express';
import bodyParser from 'body-parser';
import { graphqlExpress } from 'apollo-server-express';
const PORT = 3000;
const app = express();
app.get('/', function (req, res) {
res.send('Hello World!')
})
app.listen(PORT);
Si tout est ok, vous devriez, en faisant un yarn start
avoir le résultat suivant sur l'url 127.0.0.1:3000
Retrouvez le code directement ici
Auteur(s)
Jonathan Jalouzot
Lead développeur au @lemondefr, mes technologies sont le symfony depuis 2009, le nodejs, l'angularjs, rabbitMq etc ... J'adore les médias et aimerai continuer dans ce secteur plein de surprise. Vous pouvez me retrouver sur les réseaux sociaux: Twitter: @captainjojo42 Instagram: @captainjojo42 Linkedin: https://fr.linkedin.com/in/jonathanjalouzot Github: https://github.com/captainjojo
Vous souhaitez en savoir plus sur le sujet ?
Organisons un échange !
Notre équipe d'experts répond à toutes vos questions.
Nous contacterDécouvrez nos autres contenus dans le même thème
Découvrez comment créer un serveur MCP en TypeScript à l'aide du SDK officiel. Apprenez à fournir un contexte riche aux LLMs.
Découvrez comment créer un plugin ESLint en TypeScript avec la nouvelle configuration "flat config" et publiez-le sur npm.
Apprenez à concevoir une barre de recherche accessible pour le web, conforme RGAA. Bonnes pratiques, erreurs fréquentes à éviter et exemples concrets en HTML et React/MUI.