After Effects MCP
After Effects MCP is a full-featured automation bridge that connects AI clients (like VS Code, Claude Desktop, and Claude Code) to Adobe After Effects through MCP, enabling scripted control of compositions, layers, effects, keyframes/graph easing, presets, markers, audio levels, waveform analysis, and effect discovery via a live bridge panel.
After Effects MCP Server
Control Adobe After Effects through MCP using a bridge panel running inside AE. This project is optimized for practical automation workflows: effects, presets, keyframing, markers, and audio-aware tooling.
Highlights
- Full composition and layer automation.
- Deep effect inspection and property editing.
- Advanced effect graph controls (temporal + spatial).
- Preset search/list/apply workflows.
- Marker and audio automation, including waveform-to-marker pipelines.
- Installed effect catalog discovery (
list-available-effects).
Feature Matrix
| Area | Capabilities |
|---|---|
| Composition | Create, inspect project/compositions, get clip frame ranges |
| Layers | Text/shape/solid/adjustment creation, transform/property updates, centering |
| Animation | Layer keyframes, expressions, effect keyframes with graph controls |
| Effects | Apply by name/matchName, list layer effects recursively, edit any effect property, remove effects |
| Presets | Apply .ffx, list/search preset libraries |
| Markers | Add single marker (comp/layer), add markers in bulk |
| Audio | Set channel levels, inspect audio metadata, analyze WAV waveform, detect peaks |
Requirements
- Adobe After Effects
- Node.js 18+
- npm
In After Effects, enable:
Edit -> Preferences -> Scripting & Expressions -> Allow Scripts to Write Files and Access Network
Quick Start
- Clone and install:
git clone https://github.com/TheLlamainator/after-effects-mcp.git
cd after-effects-mcp
npm install
- Build:
npm run build
- Install bridge script:
npm run install-bridge
- Restart After Effects and open:
Window -> mcp-bridge-auto.jsx- Keep this panel open during MCP usage.
MCP Client Config
Use an absolute path to build/index.js.
{
"mcpServers": {
"AfterEffectsMCP": {
"command": "node",
"args": ["<absolute-path-to-repo>/build/index.js"]
}
}
}
Add to VS Code
If you use an MCP-capable VS Code extension, add this server in that extension's MCP server settings.
Use:
- command:
node - args:
["<absolute-path-to-repo>/build/index.js"]
Example snippet many extensions accept:
{
"mcpServers": {
"AfterEffectsMCP": {
"command": "node",
"args": ["C:\\Users\\<you>\\Documents\\Projects\\AEMCP\\build\\index.js"]
}
}
}
Then:
- Restart VS Code.
- Open After Effects and keep
Window -> mcp-bridge-auto.jsxopen. - Call a simple tool like
get-helporrun-scriptwithgetProjectInfo.
Add to Claude Desktop
Edit Claude Desktop config and add the MCP server entry.
Typical Windows config location:
%APPDATA%\\Claude\\claude_desktop_config.json
Example:
{
"mcpServers": {
"AfterEffectsMCP": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": [
"C:\\Users\\<you>\\Documents\\Projects\\AEMCP\\build\\index.js"
]
}
}
}
After saving:
- Fully restart Claude Desktop.
- Open AE bridge panel.
- Verify with
tools/listin logs or by calling a known tool.
Add to Claude Code
Configure the same server command/args in your Claude Code MCP configuration.
Use this server definition:
{
"AfterEffectsMCP": {
"command": "node",
"args": ["<absolute-path-to-repo>/build/index.js"]
}
}
Then:
- Restart Claude Code or reload MCP servers.
- Ensure After Effects is open with
mcp-bridge-auto.jsxpanel running. - Test with
get-resultsafter a queued command.
Architecture Graph
flowchart LR
A[AI Client<br/>VS Code / Claude Desktop / Claude Code] --> B[MCP Server<br/>build/index.js]
B --> C[Bridge Files<br/>ae_command.json / ae_mcp_result.json]
C --> D[After Effects Bridge Panel<br/>mcp-bridge-auto.jsx]
D --> E[Adobe After Effects]
E --> D
D --> C
C --> B
B --> A
Command Flow Graph
sequenceDiagram
participant Client as MCP Client
participant Server as MCP Server
participant Bridge as AE Bridge Panel
participant AE as After Effects
Client->>Server: tools/call (example: apply-effect)
Server->>Server: write ae_command.json
Server-->>Client: queued response (or waits)
Bridge->>Bridge: poll command file
Bridge->>AE: execute command
AE-->>Bridge: result/error
Bridge->>Bridge: write ae_mcp_result.json
Client->>Server: get-results
Server-->>Client: final result JSON
Typical Runtime Flow
- Start your MCP client (it starts this server).
- Keep AE bridge panel open.
- Call tools.
- If response says queued, call
get-resultsafter 1-3 seconds.
Note: some AE operations finish slightly after tool timeout windows; get-results usually contains the final state.
Tool Catalog
General
run-scriptget-resultsget-help
Composition and Layer Utilities
create-compositioncreate-adjustment-layercenter-layersget-layer-clip-frames
Effects and Presets
apply-effectadd-any-effectmcp_aftereffects_applyEffectapply-effect-templatelist-layer-effectslist-available-effectsset-effect-propertyset-effect-keyframeremove-effectapply-presetlist-presetssearch-presets
Markers and Audio
add-markeradd-markers-bulkset-audio-levelsget-audio-infoanalyze-audio-waveform
Diagnostics and Helpers
test-animationrun-bridge-testmcp_aftereffects_get_effects_help
Audio to Marker Workflow
get-audio-infoon target layer.- Copy
sourceFilePath. analyze-audio-waveformwith optionalnumPoints.- Convert
peakTimestomarkers[]. add-markers-bulk.
Project Layout
src/index.ts- MCP server and tool definitionssrc/scripts/mcp-bridge-auto.jsx- AE bridge panelinstall-bridge.js- bridge installer
Development
Build:
npm run build
Install bridge:
npm run install-bridge
Run server directly:
node build/index.js
Troubleshooting
Server does not start
- Run
npm run build. - Check MCP logs for startup exceptions (for example duplicate tool registration).
Commands queue but do not complete
- Ensure AE bridge panel is open.
- Confirm AE scripting/network permission is enabled.
- Retry and call
get-resultsafter a short delay.
Results appear stale
- Reopen bridge panel.
- Send a new command and then call
get-results.
Program Files install fails
- Expected without elevated permissions.
- User AppData script paths are usually sufficient.
License
MIT. See LICENSE.
Inspo
https://github.com/Dakkshin/after-effects-mcp
I took the base code from them but added a lot
関連サーバー
JIRA
Integrate with JIRA to allow AI assistants to directly interact with JIRA issues.
Learning-Assistant-MCP
An MCP server that helps developers understand what they’re building by explaining concepts, reviewing approaches, and guiding them toward better solutions.
Agent Collaboration
A dynamic server for managing multi-agent collaboration within tmux sessions, featuring flexible pane configurations and auto-detection.
Odoo MCP Server
An MCP server that provides direct access to Odoo ERP system capabilities.
Obsidian MCP
Interact with your Obsidian vault using the Model Context Protocol, enabling AI assistants to read, write, and manipulate notes.
EmoVideoAna
analytics emotion of video
Notion
Interact with Notion's API to read, create, and modify content using natural language.
Recruitee MCP Server
Provides advanced search, reporting, and analytics for recruitment data via Recruitee.
Fireflies
Retrieve, search, and summarize meeting transcripts from Fireflies.ai.
Goodday MCP Server
Integrate with the Goodday project management platform to manage projects, tasks, and users via its API.