✨ A Model Context Protocol (MCP) server for Adobe After Effects that enables AI assistants and other applications to control After Effects through a standardized protocol.
Clone the repository
bash
git clone https://github.com/Dakkshin/after-effects-mcp.git
cd after-effects-mcp
Install dependencies
bash
npm install
# or
yarn install
Build the project
bash
npm run build
# or
yarn build
Install the After Effects panel
bash
npm run install-bridge
# or
yarn install-bridge
This will copy the necessary scripts to your After Effects installation.
The repository includes a .mcp.json file for easy configuration. Copy or reference it in your MCP settings:
{
"mcpServers": {
"AfterEffectsMCP": {
"command": "node",
"args": ["PATH/TO/after-effects-mcp/build/index.js"]
}
}
}
Go to your client (e.g., Claude or Cursor) and update your config file:
{
"mcpServers": {
"AfterEffectsMCP": {
"command": "node",
"args": ["C:\\Users\\Dakkshin\\after-effects-mcp\\build\\index.js"]
}
}
}
Start the MCP server
bash
npm start
# or
yarn start
Open After Effects
Open the MCP Bridge Auto panel
Once you have the server running and the MCP Bridge panel open in After Effects, you can control After Effects through the MCP protocol. This allows AI assistants or custom applications to send commands to After Effects.
You can create new compositions with custom settings: - Name - Width and height (in pixels) - Frame rate - Duration - Background color
Example MCP tool usage (for developers):
mcp_aftereffects_create_composition({
name: "My Composition",
width: 1920,
height: 1080,
frameRate: 30,
duration: 10
});
You can create and modify different types of layers:
Text layers: - Set text content, font, size, and color - Position text anywhere in the composition - Adjust timing and opacity
Shape layers: - Create rectangles, ellipses, polygons, and stars - Set fill and stroke colors - Customize size and position
Solid layers: - Create background colors - Make adjustment layers for effects
You can animate layers with:
Keyframes: - Set property values at specific times - Create motion, scaling, rotation, and opacity changes - Control the timing of animations
Expressions: - Apply JavaScript expressions to properties - Create dynamic, procedural animations - Connect property values to each other
| Command | Description |
|---|---|
create-composition |
Create a new composition |
run-script |
Run a JS script inside AE |
get-results |
Get script results |
get-help |
Help for available commands |
setLayerKeyframe |
Add keyframe to layer property |
setLayerExpression |
Add/remove expressions from properties |
setLayerProperties |
Set layer properties (position, scale, rotation, opacity, blendMode, threeDLayer, trackMatteType, enabled, etc.) |
batchSetLayerProperties |
Apply properties to multiple layers |
getLayerInfo |
Get layer info (position, 3D status) |
createCamera |
Create camera layer |
createNullObject |
Create null object for animation |
duplicateLayer |
Duplicate a layer |
deleteLayer |
Delete a layer |
setLayerMask |
Create/modify layer masks |
src/index.ts: MCP server implementationsrc/scripts/mcp-bridge-auto.jsx: Main After Effects panel scriptinstall-bridge.js: Script to install the panel in After Effectsnpm run build
# or
yarn build
Note: This project uses esbuild for fast builds, replacing the previous TypeScript compiler approach that could run out of memory on larger codebases.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
$ claude mcp add after-effects-mcp \
-- python -m otcore.mcp_server <graph>