Serveur MCP
à construire Cette page décrit une intention, pas un outil disponible.
L’idée
Un agent d’IA qui écrit des slides en Markdown brut a deux défauts : il consomme beaucoup de contexte (relire et réécrire tout le fichier à chaque modification) et il invente des mises en page. Le langage DWA lui offre l’inverse : un vocabulaire court, des règles vérifiables et un moteur qui calcule les positions sans modèle.
Le serveur MCP exposerait ces outils à un agent.
Objectifs
- Économie de tokens : des opérations ciblées (ajouter, remplacer, déplacer une slide ; choisir un layout) plutôt que la réécriture du document, et un catalogue résumé plutôt que le guide complet.
- Layouts propres : chaque slide produite passe par les mêmes règles que l’extension (diagnostics de structure, mesure des débordements).
- Choix du layout : proposer le meilleur layout pour un contenu donné, par exemple avec un petit classifieur (nombre d’idées, présence d’images, de comparaisons, longueur du texte).
Outils envisagés
| Outil | Entrée | Résultat compact |
|---|---|---|
list_layouts | filtre facultatif | noms et contrats, sans CSS |
read_outline | document | identifiants, titres, classes, versions |
read_slide | document, identifiant | une seule slide |
patch_slide | identifiant, version attendue, modification | validation et nouvelle version |
validate | document, slides modifiées | identifiant, règle, correction disponible |
export_pptx | document, destination | chemin, nombre de slides, avertissements |
Principes :
- la version attendue évite d’écraser une modification faite entre lecture et écriture ;
- les chemins restent dans le projet autorisé ;
- les résultats sont courts et structurés : ni PPTX, ni images en base64, ni CSS dans le contexte du modèle ;
- une capture de slide n’est demandée qu’en cas de besoin visuel.
Aucun gain chiffré n’est annoncé : il sera mesuré sur des tâches réelles.
Ce qui existe déjà
Le cœur du langage est déjà indépendant de VS Code dans l’extension : catalogue et diagnostics (src/language/), mesure Chromium (src/render/), export PPTX (src/export/). Il sera extrait en paquet partagé quand le serveur MCP en aura besoin.