After Effects MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| run-scriptA | Run a read-only script in After Effects |
| get-resultsB | Get results from the last script executed in After Effects |
| get-helpA | Get help on using the After Effects MCP integration |
| create-compositionA | Create a new composition in After Effects with specified parameters |
| setLayerKeyframeB | Set a keyframe for a specific layer property at a given time. |
| setLayerExpressionB | Set or remove an expression for a specific layer property. |
| test-animationD | Test animation functionality in After Effects |
| apply-effectC | Apply an effect to a layer in After Effects |
| apply-effect-templateB | Apply a predefined effect template to a layer in After Effects |
| mcp_aftereffects_applyEffectC | Apply an effect to a layer in After Effects |
| mcp_aftereffects_applyEffectTemplateC | Apply a predefined effect template to a layer in After Effects |
| mcp_aftereffects_get_effects_helpB | Get help on using After Effects effects |
| run-bridge-testA | Run the bridge test effects script to verify communication and apply test effects |
| extract-text-layersA | Extract every text layer (compIndex, layerIndex, current text) from the open After Effects project. Saves the result to a working file for the match-glossary step. |
| match-glossaryA | Match text layers previously extracted with extract-text-layers against a 2-column (English | Vietnamese) table in a .docx file. Writes translations.json (ready for apply-text-translations) and reports any unmatched strings. |
| apply-text-translationsA | Apply matched translations back onto their text layers in After Effects, preserving font/size/box formatting. Reports any box-text layers that overflow after translation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| list-compositions | List compositions in the current After Effects project |
| analyze-composition | |
| create-composition | Create a new composition with specified settings |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| compositions |
TDQS
Scored across 16 tools
Several tools have nearly identical descriptions and purposes: apply-effect and mcp_aftereffects_applyEffect, apply-effect-template and mcp_aftereffects_applyEffectTemplate, plus potentially overlapping help utilities. An agent would struggle to select the intended tool.
Naming conventions are mixed: most tools use kebab-case (apply-text-translations, run-script) but setLayerKeyframe and setLayerExpression use camelCase, and the mcp_aftereffects_ prefixed duplicates add another pattern. This inconsistency and the presence of duplicate names makes the naming feel chaotic.
16 tools is slightly above the ideal range but still acceptable for an After Effects integration spanning scripts, effects, animations, and a translation workflow. The count is padded by duplicates and test utilities, so it earns a 4 rather than a 5.
The translation workflow (extract-text-layers → match-glossary → apply-text-translations) is well covered, and basic AE operations like create-composition, keyframes, expressions, and effects exist. However, there are notable gaps such as no layer/composition deletion or querying, and the presence of test-only tools suggests the surface is not fully fleshed out.