Tutoriel : Déployer un Agent IA avec MCP sur votre Serveur en 20 Minutes
Le Model Context Protocol (MCP) est le standard qui connecte les IA aux outils réels. Ce guide pas à pas vous montre comment créer un serveur MCP, le connecter à Claude, et automatiser des tâches complexes.

William Aklamavo
5 mars 2026
Tutoriel : Déployer un Agent IA avec MCP sur votre Serveur en 20 Minutes
Le Model Context Protocol (MCP) est en train de devenir le standard universel pour connecter les IA à vos outils, bases de données et services. Adopté par OpenAI, Anthropic, Google et tous les grands frameworks d'agents IA, le MCP est la brique manquante qui transforme un simple chatbot en un assistant capable d'agir dans le monde réel.
Dans ce tutoriel, nous allons construire un serveur MCP qui donne à Claude (ou tout autre LLM) la capacité de lire et modifier vos fichiers, d'interroger votre base de données, et de déclencher des actions dans vos systèmes.
Qu'est-ce que le MCP ?
Pensez au MCP comme à un adaptateur universel pour l'IA :
- Sans MCP : Votre IA ne peut que lire du texte et générer du texte. Elle est isolée du monde.
- Avec MCP : Votre IA peut lire votre base de données, créer des fichiers, envoyer des emails, déclencher des déploiements, modifier des tickets Jira, etc.
Architecture MCP en 30 Secondes
[Utilisateur] → [Client MCP (ex: Claude)] → [Serveur MCP] → [Vos outils/APIs/BDD]
Le Serveur MCP expose une collection d'outils que le LLM peut appeler. Le processus :
- Discovery : Le client MCP se connecte au serveur et découvre les outils disponibles.
- Décision : Le LLM analyse la requête utilisateur et choisit quel outil utiliser.
- Invocation : Le client MCP exécute l'outil avec les paramètres générés par le LLM.
- Exécution : Le serveur MCP traite la requête (accès BDD, API, fichiers...).
- Réponse : Le résultat est renvoyé au LLM qui l'intègre dans sa réponse.
Prérequis
- Node.js 20+ installé
- npm ou pnpm
- Un éditeur de code (VS Code recommandé)
- (Optionnel) Une clé API Claude pour tester l'intégration complète
Étape 1 : Initialiser le Projet
mkdir mon-serveur-mcp
cd mon-serveur-mcp
npm init -y
npm install @modelcontextprotocol/sdk zod
npm install -D typescript @types/node tsx
Créez un fichier tsconfig.json :
{
"compilerOptions": {
"target": "ES2022",
"module": "ESNext",
"moduleResolution": "bundler",
"outDir": "./dist",
"strict": true,
"esModuleInterop": true
}
}
Étape 2 : Créer le Serveur MCP
Créez src/server.ts :
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
import * as fs from "fs/promises";
import * as path from "path";
// Créer le serveur
const server = new McpServer({
name: "mon-serveur-mcp",
version: "1.0.0",
});
// Outil 1 : Lister les fichiers d'un dossier
server.tool(
"list_files",
"Liste les fichiers dans un dossier donné",
{
directory: z.string().describe("Chemin du dossier à lister"),
},
async ({ directory }) => {
const files = await fs.readdir(directory, { withFileTypes: true });
const result = files.map(f => ({
name: f.name,
type: f.isDirectory() ? "dossier" : "fichier"
}));
return {
content: [{ type: "text", text: JSON.stringify(result, null, 2) }]
};
}
);
// Outil 2 : Lire le contenu d'un fichier
server.tool(
"read_file",
"Lit et retourne le contenu d'un fichier",
{
filepath: z.string().describe("Chemin complet du fichier"),
},
async ({ filepath }) => {
const content = await fs.readFile(filepath, "utf-8");
return {
content: [{ type: "text", text: content }]
};
}
);
// Outil 3 : Écrire dans un fichier
server.tool(
"write_file",
"Écrit du contenu dans un fichier (crée ou écrase)",
{
filepath: z.string().describe("Chemin du fichier"),
content: z.string().describe("Contenu à écrire"),
},
async ({ filepath, content }) => {
await fs.mkdir(path.dirname(filepath), { recursive: true });
await fs.writeFile(filepath, content, "utf-8");
return {
content: [{ type: "text", text: "Fichier écrit avec succès." }]
};
}
);
// Démarrer le serveur
const transport = new StdioServerTransport();
await server.connect(transport);
Étape 3 : Tester Localement
npx tsx src/server.ts
Si le serveur démarre sans erreur, il écoute sur stdin/stdout et attend les requêtes MCP. Ctrl+C pour arrêter.
Étape 4 : Intégrer avec Claude Desktop
Claude Desktop supporte nativement le MCP. Ajoutez votre serveur dans la configuration :
// ~/Library/Application Support/Claude/claude_desktop_config.json (Mac)
// %APPDATA%/Claude/claude_desktop_config.json (Windows)
{
"mcpServers": {
"mon-serveur": {
"command": "npx",
"args": ["tsx", "/chemin/vers/mon-serveur-mcp/src/server.ts"]
}
}
}
Redémarrez Claude Desktop. Vous verrez maintenant une icône 🔧 indiquant que vos outils MCP sont disponibles.
Étape 5 : Ajouter un Outil Avancé (API REST)
Enrichissons notre serveur avec un outil qui interroge une API externe :
// Outil 4 : Rechercher sur une API
server.tool(
"search_api",
"Recherche des informations via une API REST",
{
query: z.string().describe("Terme de recherche"),
endpoint: z.string().describe("URL de l'API")
},
async ({ query, endpoint }) => {
const response = await fetch(endpoint + "?q=" + encodeURIComponent(query));
const data = await response.json();
return {
content: [{ type: "text", text: JSON.stringify(data, null, 2) }]
};
}
);
Étape 6 : Intégrer avec n8n
Si vous utilisez n8n 2.0+, le support MCP est natif :
- Dans n8n, ajoutez un nœud "MCP Client"
- Pointez vers votre serveur MCP (via stdio ou HTTP)
- L'agent IA dans n8n peut maintenant utiliser vos outils MCP comme des outils natifs
C'est la combinaison ultime : n8n pour l'orchestration + MCP pour l'accès aux outils + LLM pour le raisonnement.
Sécurité : Les Règles d'Or
Le MCP est puissant, mais un grand pouvoir implique de grandes responsabilités :
1. Principe du Moindre Privilège
Ne donnez accès qu'aux dossiers et APIs strictement nécessaires. Ne jamais exposer la racine du système de fichiers.
2. Validation des Entrées
Utilisez Zod (comme dans notre exemple) pour valider rigoureusement toutes les entrées.
3. Sandbox
Exécutez vos serveurs MCP dans des conteneurs Docker ou des environnements isolés en production.
4. Logs d'Audit
Enregistrez chaque appel d'outil avec les paramètres et les résultats. C'est essentiel pour le debugging et la conformité.
Aller Plus Loin
- Serveurs MCP communautaires : Il existe déjà des serveurs MCP prêts à l'emploi pour Slack, GitHub, PostgreSQL, Notion, etc.
- Multi-serveurs : Vous pouvez connecter plusieurs serveurs MCP à un même client, chacun spécialisé dans un domaine.
- Authentification : Pour les APIs sensibles, implémentez OAuth2 ou des tokens d'accès dans votre serveur.
Conclusion
Le MCP est la pièce manquante qui transforme l'IA générative en IA agentique. En 20 minutes, vous avez créé un serveur qui donne à Claude la capacité de lire vos fichiers, écrire du code, et interagir avec vos APIs.
La prochaine étape ? Connectez votre serveur MCP à votre base de données, à votre CRM, ou à votre pipeline de déploiement. Les possibilités sont illimitées.
Vous voulez un serveur MCP sur mesure pour votre entreprise ? Chez BOVO Digital, nous construisons des serveurs MCP personnalisés qui connectent votre IA à tous vos systèmes internes. Automatisation + Intelligence = Productivité.