ae-mcp
ae-mcp
Serveur MCP avancé pour Adobe After Effects. Il donne à un assistant les mêmes gestes qu'un monteur : lire un projet, créer et riger des calques, poser des keyframes avec de vraies courbes de vitesse, écrire du texte animé, construire des formes vectorielles, appliquer des effets et des expressions, piloter les menus natifs — et regarder le résultat grâce aux captures d'image renvoyées dans la conversation.
Architecture
Assistant (MCP)
│ stdio
┌─────▼──────────────────────────────┐
│ serveur ae-mcp (Node/TypeScript) │ easing, SVG, presets, schémas
└─────┬──────────────────────────────┘
│ 1. HTTP 127.0.0.1:9782 (transport CEP, principal)
│ 2. fichiers JSON scrutés (transport ScriptUI, secours)
┌─────▼──────────────────────────────┐
│ pont dans After Effects │ panneau CEP ou panneau ScriptUI
└─────┬──────────────────────────────┘
│ $.evalFile + AEMCP.runFile()
┌─────▼──────────────────────────────┐
│ kernel ExtendScript (AEMCP) │ ~4 000 lignes, 60+ commandes
└────────────────────────────────────┘Trois principes :
Le calcul lourd reste dans Node. Conversion SVG, mathématiques d'easing, presets d'animation : tout est préparé côté serveur ; le kernel ExtendScript ne fait qu'exécuter.
Les échanges passent par fichier. Les requêtes et réponses transitent en JSON sur disque, ce qui supprime les limites d'échappement et de taille de
evalScript. Le HTTP ne sert qu'à déclencher.Tout est atomique. Chaque requête (même un lot de 50 opérations) s'exécute dans un seul groupe d'annulation : un
Ctrl+Zsuffit à revenir en arrière.
Jeton d'authentification du pont HTTP
Le serveur HTTP du panneau CEP écoute sur 127.0.0.1 et déclenche des commandes dans After Effects
(dont ae_eval, qui exécute de l'ExtendScript arbitraire). Pour empêcher qu'une page web ouverte dans
le navigateur pendant qu'After Effects tourne ne pilote le pont via un simple fetch(), le panneau
génère au premier démarrage un jeton aléatoire, stocké dans
Documents/ae-mcp/bridge/token.txt et republié dans bridge.json (champ token). Toute requête
POST /run ou POST /reload doit porter l'en-tête X-AE-MCP-Token avec ce jeton ; sans lui, le
serveur répond 401. Le client MCP (src/bridge/client.ts) lit le jeton dans bridge.json et
l'envoie automatiquement — aucune configuration manuelle n'est nécessaire. Le jeton persiste tant que
token.txt existe ; le supprimer force une régénération au prochain démarrage du panneau.
Le transport de secours par fichiers (req//res/) n'a pas ce jeton : il repose sur les permissions
du dossier Documents de l'utilisateur, qui protègent déjà contre l'accès depuis un autre compte.
Related MCP server: After Effects MCP Server
Installation
npm install
npm run build
npm run install-bridge # installe l'extension CEP + le panneau ScriptUI + le kernelPuis, dans After Effects :
Transport CEP (recommandé) — redémarrez After Effects. Le pont démarre tout seul, sans fenêtre.
Fenêtre > Extensions > AE MCP Bridgeaffiche l'état, le port et le journal.Transport ScriptUI (sans redémarrage) —
Fichier > Scripts > Exécuter le fichier de script…puisDocuments/ae-mcp/AE MCP Bridge.jsx. Le panneau démarre la scrutation immédiatement.
Déclaration du serveur auprès du client MCP :
claude mcp add ae-mcp -- node "/chemin/vers/ae-mcp/build/index.js"
npm run install-bridgecopie aussi le panneau dansScripts/ScriptUI Panelsdes installations After Effects détectées, ce qui le rend dockable. Cette copie vit dansProgram Fileset demande des droits administrateur ; son échec est sans conséquence sur le reste.
Outils exposés
Outil | Rôle |
| État du pont, version d'AE, projet, compositions |
| Documentation : chemins de propriétés, matchNames, easings, formes, animateurs |
| Inventaire, import (images, vidéos, PSD/AI en compo), dossiers, enregistrement |
| Créer, lire, régler, dupliquer, précomposer, marqueurs |
| Tous les types de calques, tous les attributs, lecture profonde |
| Lire/écrire n'importe quelle propriété par chemin ; expressions |
| Keyframes avec courbes nommées, valeurs relatives, maintien, décalage |
| Contenu et mise en forme du texte, animateurs de texte, polices |
| Arbres vectoriels natifs, tracés Bézier, conversion SVG |
| Recherche, application, réglage et animation des effets |
| Masques rectangle/ellipse/Bézier, modes, contour progressif |
| Presets d'animation prêts à l'emploi, séquençage (stagger) |
| Contrôles, liens par expression, alignement, parentage, Graphismes essentiels |
| Capture d'image renvoyée dans la conversation, file de rendu |
| Commandes de menu natives, tête de lecture, sélection |
| Accès brut à toutes les commandes du kernel, en lot avec références |
| ExtendScript arbitraire (dernier recours) |
Ce qui distingue ce serveur
Des courbes de vitesse réelles. ease: "expo.out" ne pose pas un simple Easy Ease : la courbe de
Bézier est convertie en influence et en vitesse par dimension, calculées à partir de la vitesse moyenne
du segment — exactement ce qu'on obtient en réglant l'éditeur de graphe à la main.
Des valeurs relatives. Un slideIn s'exprime en mode: "offset" : l'animation se greffe sur la
position existante du calque au lieu de l'écraser. Idem pour l'échelle avec mode: "multiply".
Le SVG devient de vraies formes. ae_shape action=svg convertit path, rect, circle, ellipse,
line, polyline, polygon, les groupes et leurs transformations en calques de forme natifs, éditables,
avec fills, strokes, pointillés et arcs approximés en Bézier.
Une boucle visuelle. ae_render action=snapshot rend une image de la composition et la renvoie
directement : l'assistant compare son rendu à la référence et corrige, au lieu de travailler à l'aveugle.
Des lots atomiques avec références. Une scène entière se construit en un aller-retour, chaque étape
pouvant réutiliser le résultat de la précédente via {{0.index}} ou {{prev.id}}.
Développement
npm run build # kernel + TypeScript
npm run build:kernel # kernel seul (vérifie aussi sa syntaxe)
node scripts/ae.mjs status # état du pont
node scripts/ae.mjs layer.list '{"comp":"Ma Compo"}'
node scripts/selftest.mjs # validation complète contre AE
node scripts/selftest.mjs --keep --only=shape # sous-ensemble, compo conservéeLe kernel est découpé en modules dans host/kernel/ et concaténé en host/aemcp-kernel.jsx
par scripts/build-kernel.mjs. Il doit rester compatible ES3 : pas de let/const,
pas de Array.prototype.map, pas de JSON natif (un polyfill est fourni dans le prélude).
Dossier | Contenu |
| Serveur MCP : outils, transport, easing, SVG, presets |
| Sources du kernel ExtendScript |
| Extension CEP (panneau HTTP) |
| Panneau ScriptUI (pont de secours) |
| Build, installation, CLI de diagnostic, tests |
Dépannage
Symptôme | Cause probable |
| Le panneau n'est pas ouvert, ou AE est fermé. |
Le panneau CEP n'apparaît pas dans le menu |
|
|
|
Écriture de fichiers refusée | Préférences > Scripts et expressions > Autoriser les scripts à écrire des fichiers. |
Nom d'effet introuvable | L'interface d'AE n'est pas en anglais : passez par |
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables AI assistants to control Adobe After Effects for composition, layer, effect, preset, marker, and audio automation through a bridge panel.3066514MIT
- AlicenseCqualityDmaintenanceEnables AI assistants to control Adobe After Effects through the MCP protocol, including composition creation, layer management, and animation.13665MIT
- -licenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to control Adobe After Effects through a standardized MCP protocol, providing tools for composition creation, layer management, and animation.
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to control Adobe After Effects for project inspection, composition creation, and layer manipulation via a hardened bridge panel.
Related MCP Connectors
Build and run visual creative-production workflows from your AI agent.
Create and manage cinematic AI video renders through the Future Video Studio Agent API.
Make videos and docs with your AI agent — describe what you need, every output stays editable.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/maximejacquart/ae-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server