Créez votre premier outil MCP : l'outil readFile expliqué

DEV - 12/11
--- titre : "Créez votre premier outil d'IA : l'utilitaire MCP `readFile` expliqué" publié : true balises :...
--- titre : "Construisez votre premier outil d'IA : l'utilitaire MCP `readFile` expliqué" publié : true tags: ["ai", "typescript", "expressjs"] canonical_url: https://nicolas-dabene.fr/en/articles/2025/11/12/creer-votre-premier-outil-mcp-l-outil-readfile-explique/ --- Salut, amis développeurs ! Nicolas Dabène ici présent, et je suis ravi de vous guider aujourd'hui à travers une étape vraiment passionnante. Si vous avez suivi mes réflexions précédentes sur l'IA et le Model Context Protocol (MCP), ou même si vous venez juste de vous y plonger, vous savez que la théorie peut être fascinante. Mais rien ne vaut le plaisir de voir cette théorie se manifester sous forme de code fonctionnel. Aujourd'hui, nous allons vivre ce "Aha!" moment ensemble : créer votre tout premier outil MCP, une fonction simple mais puissante qui permet à une IA de lire des fichiers directement depuis votre machine. C’est pratique, concret et croyez-moi, c’est comme de la magie dans la vie. ## Donner vie à l'IA avec des outils personnalisés Tout au long de ma carrière, j'ai toujours chéri les cas où des lignes de code se transforment en quelque chose de tangible et de fonctionnel. Vous souvenez-vous de ce sentiment lorsque votre application fonctionne exactement comme vous l'aviez imaginé ? C'est l'essence de ce que nous allons réaliser aujourd'hui. Après avoir abordé les concepts fondamentaux et la configuration de l'environnement, il est temps de construire quelque chose de véritablement interactif : un utilitaire MCP pour lire des fichiers. Imaginez donner à une IA une invite : "Veuillez lire le fichier `report.txt`." Et il le fait *réellement*, en tirant parti de votre serveur pour accéder aux données locales. Ce n'est plus seulement un concept ; votre code fera de cette capacité une réalité. La meilleure partie ? Une fois que vous maîtriserez la création d’un de ces outils, vous posséderez le modèle nécessaire pour en créer d’innombrables autres, ouvrant ainsi un univers de possibilités d’interaction avec l’IA. ## Récapitulatif rapide : qu'est-ce qu'un outil MCP exactement ? Avant de plonger dans la mise en œuvre, réancrassons rapidement notre compréhension d'un outil MCP. Fondamentalement, il s'agit d'une fonction spécialisée que vous exposez à une IA. Cette exposition est accompagnée de trois informations critiques, agissant comme sa documentation publique d'API pour l'IA : * **Le nom de l'outil** : l'identifiant unique que l'IA utilise pour appeler votre outil (par exemple, `"readFile"`). * **La description** : une explication claire et concise de ce que fait l'outil, permettant à l'IA de déterminer quand son utilisation est appropriée. * **Les paramètres** : une définition structurée des entrées dont l'outil a besoin pour effectuer son fonctionnement. Considérez-le comme la création d'une fonction régulière dans votre base de code, mais avec une « carte d'identité » sémantique qu'un agent intelligent peut interpréter et utiliser. Assez simple, non ? ## Déconstruire la structure d'un outil MCP Pour vous donner une image plus claire, présentons l'anatomie fondamentale d'un outil MCP. Voici le plan structurel que nous suivrons :
Entrer en mode plein écran Quitter le mode plein écran

typescript // 1. Interface pour les paramètres d'entrée interface ToolParams { // Données que l'IA nous envoie }

// 2. Interface pour l'interface de réponse ToolResponse { success: boolean; contenu ? : chaîne ; erreur ? : chaîne ; }

// 3. La fonction principale qui exécute la fonction logique asynchrone myTool(params: ToolParams): Promise { // Logique métier ici }

// 4. La définition publique de l'outil (son "manifeste" pour l'IA) export const myToolDefinition = { name: "myTool", description: "Ce que fait mon outil", paramètres: { // Description des paramètres attendus } };

Cette structure en quatre parties sert de modèle fiable pour créer n'importe quel outil MCP. Gardez cela à l’esprit pendant que nous avançons ! ## Configuration de la structure de notre projet Commençons par établir une structure de répertoires propre et organisée pour notre projet `mcp-server`. Exécutez les commandes suivantes dans votre terminal :
Entrer en mode plein écran Quitter le mode plein écran

bash mkdir -p src/outils mkdir -p src/types

Cette organisation claire améliore la maintenabilité. Le répertoire `src/tools` abritera nos utilitaires MCP, tandis que `src/types` stockera nos définitions d'interface TypeScript réutil...
[Courte citation de 8% de l'article original]
Loading...