Serveur MCP Permet à Claude de Créer et Exécuter des Outils Personnalisés à l'Exécution

Un développeur a créé un serveur MCP qui permet à Claude de créer, mettre à jour et exécuter de nouveaux outils à l'exécution sans nécessiter de redéploiement. Contrairement aux configurations MCP standard où les outils sont figés au moment du déploiement, ce système permet la création dynamique d'outils.
Architecture Principale
Le serveur implémente cinq outils MCP principaux :
- Lister les Outils — renvoie les outils disponibles
- Obtenir un Outil — récupère la définition complète de l'outil, y compris le code
- Créer un Outil — stocke un nouvel outil dans un registre de base de données
- Mettre à Jour un Outil — modifie un outil existant
- Exécuter un Outil — exécute tout outil stocké par son nom
Processus d'Exécution des Outils
Le méta-outil Exécuter un Outil fonctionne comme suit :
- Recherche l'outil demandé dans une table MySQL
- Récupère son code
- Transmet les paramètres en tant que contexte
- L'exécute dans un sous-processus Deno avec des permissions restreintes
- Renvoie le résultat
Implémentation du Bac à Sable
Le développeur a évalué Node VM, isolated-vm et Docker avant de choisir Deno pour le bac à sable. Deno a été sélectionné car :
- Modèle de permissions clair avec un contrôle granulaire du réseau, du système de fichiers et des sous-processus
- Support natif de npm
- TypeScript intégré
- Démarrage à froid d'environ 50 ms contre 500 ms+ pour Docker
Le bac à sable utilise ces drapeaux : --allow-net --deny-read --deny-write --deny-run --deny-ffi. Cela permet au code de l'outil d'effectuer des requêtes HTTP et d'utiliser des packages npm, mais empêche l'accès au système de fichiers ou la création de processus.
Format du Code des Outils
Le code de l'outil est en JavaScript/TypeScript et reçoit un objet contexte pour les paramètres. Exemple tiré de la source :
const response = await fetch(`https://api.example.com/${context.city}`);
const data = await response.json();
return { temp: data.temp, conditions: data.weather[0].description };
Capacité d'Auto-extension
Le système permet une boucle d'auto-extension : Claude identifie qu'il a besoin d'une capacité → crée l'outil → l'utilise immédiatement → le met à jour si le résultat n'est pas correct. Cela permet au système de devenir plus performant au fil du temps sans intervention du développeur.
L'implémentation est basée sur n8n en tant que serveur MCP avec MySQL pour le stockage des outils et fonctionne en production depuis quelques mois.
📖 Read the full source: r/ClaudeAI
👀 See Also

Forge : Le Plugin Open-Source Claude Code Ajoute des Portails de Gouvernance et de Tests
Forge est un plugin open-source pour Claude Code qui ajoute le verrouillage de fichiers, des portails de tests automatisés et 22 agents de gouvernance pour prévenir les collisions et les dérives dans les flux de travail de code généré par IA. Il est sous licence MIT et s'installe via la marketplace de plugins Claude.

La compétence Claude Code combine les approches de DeepMind Aletheia et d'Anthropic harness.
Une compétence Claude Code implémente un pipeline Planificateur → Générateur → Évaluateur → Réviseur qui synthétise l'agent de recherche mathématique Aletheia de DeepMind avec l'architecture de codage multi-agent d'Anthropic, ajoutant une pré-analyse à l'aveugle où l'évaluateur raisonne sur les approches correctes avant de voir le code candidat.

Modo : IDE IA open-source avec développement piloté par les spécifications et crochets d'agents
Modo est un IDE de bureau open-source construit sur l'éditeur Void qui ajoute des flux de travail de développement pilotés par les spécifications, des crochets d'agent et des fichiers de pilotage. Il structure les invites en exigences, conception et tâches avant de générer du code.

EvalShift : CLI open source pour détecter les régressions LLM lors de la migration de modèle
EvalShift est un CLI Python sous licence MIT qui compare les sorties des LLM source et cible sur des invites, des agents et des workflows d'appel d'outils, générant un rapport de régression HTML local.