After Effects Model Context Protocol Server
Automate Adobe After Effects with AI through 70+ MCP tools
AE-MCP is a comprehensive MCP server that enables AI assistants like Claude to directly control Adobe After Effects. It provides 70+ tools covering the full motion graphics workflow — from creating compositions to applying professional effects and expressions.
| Feature | Description |
|---|---|
| 70+ Tools | Complete After Effects automation |
| Animation Presets | Spring physics, bounce, elastic, slide, fade |
| Expression Library | 20+ pre-built expressions (wiggle, loop, physics) |
| Effect Templates | One-click professional looks (cinematic, VHS, neon) |
| Motion Graphics | Lower thirds, title cards, transitions, logo reveals |
| Reliable Architecture | File-based communication for stability |
- Adobe After Effects 2024 or later
- Node.js 18+
- macOS or Windows
git clone https://github.com/anthropics/ae-mcp.git
cd ae-mcp
npm install
npm run buildmacOS:
./scripts/install-cep.shWindows:
scripts\install-cep.batClaude Desktop
Add to your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"ae-mcp": {
"command": "node",
"args": ["/path/to/ae-mcp/dist/index.js"]
}
}
}Claude Code (CLI)
Add to your MCP settings (~/.claude/settings.json):
{
"mcpServers": {
"ae-mcp": {
"command": "node",
"args": ["/path/to/ae-mcp/dist/index.js"]
}
}
}Bonus: This repo includes a Claude Code Skill for enhanced After Effects automation. Copy the skill files to your Claude Code skills directory:
cp -r SKILL/* ~/.claude/skills/The Claude Code skill provides specialized knowledge about After Effects workflows, property formats, and best practices. See SKILL/SKILL.md for details.
- Start After Effects 2024+
- Open Window > Extensions > AE-MCP
- The panel will auto-start and begin listening for commands
create_project · open_project · save_project · close_project · get_project_info · import_footage · create_composition · modify_composition · duplicate_composition · delete_composition · list_compositions · get_composition_info
add_solid_layer · add_text_layer · add_text_layer_advanced · add_shape_layer · add_null_layer · add_adjustment_layer · add_camera_layer · add_light_layer · add_av_layer · precompose_layers · modify_layer · delete_layer
set_keyframe · set_keyframe_advanced · apply_easy_ease · set_temporal_ease · offset_keyframes · scale_keyframe_timing · reverse_keyframes · copy_keyframes · get_keyframes
set_expression · get_expression · remove_expression · enable_expression · add_expression_control · apply_expression_template · link_properties
apply_effect · apply_effect_template · modify_effect_properties · remove_effect · reorder_effects · copy_effects · list_effects
| Tool | Styles |
|---|---|
create_lower_third |
modern, corporate, news, minimal, social |
create_title_card |
cinematic, documentary, social, minimal |
create_transition |
wipe, dissolve, push, slide, zoom |
create_logo_reveal |
fade, scale, slide, spin, glitch, particle |
create_text_animator |
typewriter, fadeIn, scaleIn, slideIn, randomize, wave |
import_folder · replace_footage · organize_project_items · find_missing_footage · collect_files · reduce_project
add_composition_marker · add_layer_marker · get_markers · delete_marker · set_work_area
Create a 1920x1080 composition called "Intro" at 30fps, 5 seconds.
Add a text layer saying "Welcome" centered on screen.
Apply a slideInUp animation with easy ease.
Add a subtle glow effect.
Create a modern lower third:
- Name: "Sarah Chen"
- Title: "Lead Designer"
- Blue primary color
- Animate in and out
- 5 second duration
Add a bounce expression to the position of "Logo" layer.
Set amplitude to 0.15, frequency to 4, decay to 6.
| Preset | Description |
|---|---|
gentle |
Subtle, smooth animations |
default |
Balanced spring motion |
wobbly |
Playful, bouncy animations |
stiff |
Quick, responsive animations |
slow |
Heavy, deliberate motion |
bouncy |
High energy bounces |
snappy |
Instant, responsive feel |
Fade: fadeIn · fadeOut
Slide: slideInLeft · slideInRight · slideInUp · slideInDown · slideOutLeft · slideOutRight · slideOutUp · slideOutDown
Scale: scaleIn · scaleOut · scaleInBounce
Physics: bounce · elastic · overshoot
Rotate: spinIn · spinOut
| Category | Templates |
|---|---|
| Wiggle | wiggle · wiggleSmooth · wiggleFadeIn · wiggleFadeOut |
| Loop | loopCycle · loopPingpong · loopOffset · loopContinue |
| Physics | bounce · inertia · springy · overshoot |
| Linking | matchPosition · offsetPosition · followWithDelay · inverseRotation |
| Time | time · clock · countdown · frameNumber |
| Category | Effects |
|---|---|
| Blur | gaussianBlur · directionalBlur · glassBlur |
| Color | curves · colorBalance · brightnessContrast · vibrance |
| Stylistic | glow · dropShadow · vignette |
| Creative | cinematicLook · vhsRetro · neonGlow · filmGrain · chromaticAberration · duotone |
ae-mcp/
├── src/ # TypeScript source
│ ├── index.ts # Entry point
│ ├── stdio-server.ts # MCP server (70+ tools)
│ ├── ae-integration/
│ │ ├── file-communicator.ts # File-based IPC
│ │ └── generators/ # ES3 script generators
│ └── presets/ # Animation, expression, effect presets
├── cep-extension/ # After Effects extension
│ ├── CSXS/manifest.xml
│ ├── jsx/host.jsx # ExtendScript host
│ └── js/main.js # Panel JavaScript
├── SKILL/ # Claude Code skill
│ ├── SKILL.md # Skill definition
│ └── examples.md # Animation examples
└── scripts/ # Installation scripts
AI Assistant (Claude)
↓
MCP Server (Node.js)
↓ Write JSON command
~/Documents/ae-mcp-commands/
↓ Poll every 100ms
CEP Extension
↓ Execute script
After Effects DOM
↓ Write response
*.json.response
Extension not appearing in After Effects
- Verify debug mode is enabled (the install script does this automatically)
- Restart After Effects completely
- Check extension location:
- macOS:
~/Library/Application Support/Adobe/CEP/extensions/ae-mcp - Windows:
%APPDATA%\Adobe\CEP\extensions\ae-mcp
- macOS:
Commands timing out
- Ensure the AE-MCP panel is visible in After Effects
- Check
~/Documents/ae-mcp-commands/for command files - Look at the panel's log for errors
Script errors
- Open the ExtendScript Toolkit or console in After Effects
- Verify composition/layer references exist
- Check for ES3 compatibility issues (no arrow functions, template literals, etc.)
Contributions are welcome! Please read our contributing guidelines before submitting PRs.
MIT
Built for motion designers who want to work faster with AI