Server · #307 trending MCP repo · ↗ +8 stars this week

After Effects MCP

Engine-Room-Games/after-effects-mcp

Control Adobe After Effects with AI — describe the animation you want and it gets built: layers, keyframes, effects, expressions and text, all editable afterwards.

Stars
49
This week
+8
Forks
2
Open issues
1
Skills inside
4
Star trend · last 9 days+11 ★
Oct 29, 2026: 38 starsOct 30, 2026: 40 starsOct 31, 2026: 41 starsNov 1, 2026: 41 starsNov 2, 2026: 43 starsNov 3, 2026: 43 starsNov 4, 2026: 44 starsNov 5, 2026: 45 starsNov 6, 2026: 46 starsNov 7, 2026: 49 stars

Get started

Add it to your agent

claude mcp add --scope user after-effects -- npx -y @engine-room/after-effects-mcp

Run in your terminal. Add --scope project to share it with your team through .mcp.json.

Inside this repo

4 skills

Documentation

README

View on GitHub ↗
Engine Room — After Effects MCP

After Effects MCP

Control Adobe After Effects with AI.

Describe the animation you want and it gets built in your project — layers, keyframes, easing, effects, expressions and text. All of it editable afterwards, exactly like work you made by hand.

npm CI License: MIT After Effects 2026 tested Platforms Sponsor

What you can do with it

Talk to your AI assistant the way you'd brief a colleague:

Build a lower third that says Chapter One, sliding in from the left.

Make the logo pop in with a little overshoot, then hold for two seconds.

Every layer in this comp should ease in 4 frames later than the one above it.

Render the main comp into the renders folder.

It reads your comp before it changes anything, makes the change as ordinary After Effects work — keyframes you can drag, effects you can dial in — and can take a screenshot to check its own result. It can also learn your house style, export Motion Graphics templates for Premiere, place sound cues, and render in the background.

Six scenes from one sequence, each in a different style — every layer, keyframe and effect built through these tools:

Dark title card: Global Macro Fund, Q3 FY2026 performance review, with a rule that draws in under the heading
Title card — engine dark
Editorial KPI grid: four figures counting up, with a risk-budget bar filling to 68 percent
KPI grid — editorial
Amber CRT terminal: a NAV curve drawing on across twelve months with a typed command line above it
NAV curve — CRT terminal
Brutalist allocation breakdown: a stacked colour bar splitting into six labelled sector cards
Allocation — brutalist
Aurora glass monthly profit and loss: twelve bars growing from a zero line over a soft gradient background
Monthly P&L — aurora glass
Minimal print outro on off-white: a single large net return figure resolving into place
Outro — minimal print

What you need

  • After Effects on macOS or Windows. Tested on After Effects 2026. The panel accepts 2022 or later, but older versions haven't been tested yet.
  • An AI app that runs tools on your own computer. The tools talk to After Effects directly on your machine, so they work in any app that can start an MCP server locally: Claude Desktop, Claude Code, Cursor, VS Code, Codex, Windsurf and the like.

Claude in a web browser (claude.ai) and ChatGPT — on the web or in its app — can't use them. Those connect only to tools hosted on the internet, which have no way to reach the After Effects on your computer.

Getting started

Three steps, and you only do the first two once.

1. Install the tools

Pick the one that matches your app.

Claude Desktop — the easy one. Download the .mcpb file from the latest release and open it. Claude Desktop does the rest; there's nothing else to install.

Claude Code

Either install the plugin, which also adds skills and slash commands:

/plugin marketplace add Engine-Room-Games/after-effects-mcp
/plugin install after-effects@engine-room

or add just the server (needs Node 22 or later):

claude mcp add --scope user after-effects -- npx -y @engine-room/after-effects-mcp

--scope user makes it available in every folder you open Claude Code in, not only the current one.

Cursor, Windsurf and other apps (needs Node 22 or later)

Add this to your app's MCP configuration, then restart the app. In Cursor that's ~/.cursor/mcp.json (or .cursor/mcp.json inside one project); in Windsurf, open its MCP settings and add it there.

{
  "mcpServers": {
    "after-effects": {
      "command": "npx",
      "args": ["-y", "@engine-room/after-effects-mcp"]
    }
  }
}
VS Code (needs Node 22 or later)

Put this in .vscode/mcp.json, then restart VS Code:

{
  "servers": {
    "after-effects": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@engine-room/after-effects-mcp"]
    }
  }
}
Codex (needs Node 22 or later)

Add this to ~/.codex/config.toml:

[mcp_servers.after-effects]
command = "npx"
args = ["-y", "@engine-room/after-effects-mcp"]
Any app, without Node — a standalone download

From the latest release, download the zip for your machine — macos-arm64 (Apple silicon), macos-x64 (Intel Mac) or windows-x64 — unzip it anywhere, and point your app at the executable inside:

{
  "mcpServers": {
    "after-effects": {
      "command": "/Users/you/Applications/after-effects-mcp-0.5.2-macos-arm64/after-effects-mcp"
    }
  }
}

The unzipped folder is named after-effects-mcp-<version>-<machine>, so use the name yours actually has. On Windows the executable is after-effects-mcp.exe. Keep the unzipped folder together — the After Effects panel lives next to the executable. The macOS builds are signed and notarized; the Windows build is unsigned, so SmartScreen may warn the first time you run it.

2. Set up After Effects

Quit After Effects if it's open, then ask your assistant:

Set up After Effects.

It installs a small panel into After Effects, which is how the tools talk to it. When it's done, open After Effects and you're ready.

After Effects must be closed while the panel installs. If it's open, the installation won't work — quit After Effects first, then install, then reopen it. The same goes for updating the panel later.

You never have to open the panel yourself; it starts whenever After Effects does.

3. Start animating

Open your project and say what you want. Two prompts are worth knowing, in any app that supports MCP prompts:

Prompt What it does
/init-after-effects Walks you through setup and offers to capture your style
/create-style-guide Teaches it what your work should look like

One thing to know: while a dialog box is open in After Effects, nothing else can happen there, so the tools wait and eventually say the panel didn't answer in time. Close the dialog and the work finishes on its own — don't ask for it again, or it gets done twice.

Your house style

Ask for a style guide and point at a comp you already like. Your colours, fonts, sizes and timing — including how your existing animation eases and staggers — get read off it and saved as house-style.md next to your .aep. Everything built afterwards follows it. It's plain markdown, travels with the project, and works in every app. (The project needs to have been saved once, so there's a folder to put it in.)

The best style guides are specific — #131521 at 92% opacity, not "dark and clean" — and the most useful lines are the rules: "never put text directly on footage", "keep total runtime under 8 seconds".

You can also ask it to set up a project folder for a video, series or client: a brief your assistant reads, a renders/ folder, and whichever rules file your app reads (AGENTS.md, CLAUDE.md, .cursor/rules/ and so on). From a terminal it's npx @engine-room/after-effects-mcp init my-video. Updating the tools never touches either file.

Updating

Two pieces update separately, and the panel inside After Effects does not update itself:

  1. The tools — reinstall the .mcpb, download the new standalone build, or just restart your app if you use npx. On the Claude Code plugin, run /plugin marketplace update engine-room and /plugin update after-effects@engine-room, then restart Claude Code.
  2. The panel — quit After Effects, ask your assistant to update the After Effects panel, then reopen After Effects.

Forget the second step and nothing breaks quietly: your next request stops with a plain explanation of what to do.

Afterwards, run /absorb-release in your project folder (other apps list it as absorb-release in their prompt menu). It tidies up any workarounds earlier sessions wrote into your project notes that the new version makes unnecessary.

Safety and privacy

  • Only your own computer can talk to After Effects. The panel listens on 127.0.0.1 — your machine, never your network — and every request must carry a secret key the panel makes fresh each time After Effects starts. Without it, nothing runs.
  • Changes are ordinary undo steps. Cmd/Ctrl+Z works on what your assistant did, just like on your own edits. In apps that support it, deleting a comp, purging unused footage or reverting a comp asks you first.
  • What your assistant sees goes to the AI model you use — layer names, text, keyframes, file paths in your project, and screenshots of your comps. If a project is confidential, treat a session with it like pasting it into a chat.

Two optional switches limit what it can do. Both are off unless you turn them on.

Switch What it does
Read-only mode Your assistant can look at your project — list comps and layers, read keyframes, take screenshots — but every tool that changes something is removed.
Turn off running scripts Removes run_jsx, the tool that lets your assistant write and run its own After Effects scripts. Everything else still works, rendering included; only jobs no other tool covers (like replacing or relinking footage) become impossible.
How to turn them on

Claude Desktop: Settings → Extensions → After Effects, then tick Read-only mode or Turn off running scripts (run_jsx).

Everywhere else: add the setting to the configuration from step 1, then restart your app. Use either one on its own; read-only mode already includes the second.

App How
Cursor, Windsurf and other mcpServers apps Add "env": { "AE_MCP_READ_ONLY": "1", "AE_MCP_DISABLE_RUN_JSX": "1" } next to "command" and "args".
VS Code The same "env" block, inside the after-effects entry under "servers" in .vscode/mcp.json.
Codex Add a section to ~/.codex/config.toml:
[mcp_servers.after-effects.env]
AE_MCP_READ_ONLY = "1"
Claude Code Re-add the server with the setting: claude mcp remove after-effects, then
claude mcp add --scope user --env AE_MCP_READ_ONLY=1 after-effects -- npx -y @engine-room/after-effects-mcp

For example, in an mcpServers app:

{
  "mcpServers": {
    "after-effects": {
      "command": "npx",
      "args": ["-y", "@engine-room/after-effects-mcp"],
      "env": {
        "AE_MCP_READ_ONLY": "1",
        "AE_MCP_DISABLE_RUN_JSX": "1"
      }
    }
  }
}

A switched-off tool simply isn't there, so your assistant won't try it and will tell you when a request needs it. The switches limit this connection only — they don't lock After Effects, and another assistant connected without them still has every tool.

If something goes wrong

Ask your assistant to check the After Effects setup. It finds which part is broken and tells you what to do, in plain words.

For specific error messages, longer time limits, the issue notebook and how to report a bug, see Troubleshooting. Bug reports are welcome in the issues — macOS is the more tested of the two platforms, so Windows reports especially.

Good to know

  • What's not covered: replacing or relinking footage (importing it is covered), and After Effects' own preferences.
  • Screenshots are for spot checks. Alpha edges can be slightly imperfect on some comps.
  • A long loop in a custom script freezes After Effects until it finishes. Bulk work goes through run_batch, which doesn't.
  • The panel is signed, so After Effects loads it without Adobe's PlayerDebugMode setting. Setup still turns that setting on as a fallback; it applies to your whole user account and lets Adobe apps load any unsigned panel. A panel installed from a git checkout is unsigned and does need it.
  • Removing it all: see Uninstalling, which also covers turning the debug setting back off.
  • Every tool, listed: see the tools — 89 of them, plus the extras some apps show, like an interactive comp timeline.

For developers

git clone https://github.com/Engine-Room-Games/after-effects-mcp.git
cd after-effects-mcp
npm install && npm run build
npm run install:panel
npm run doctor

make help lists the rest (make jsx hot-reloads the ExtendScript bundle into a running After Effects; make release builds, signs and publishes). Start with CLAUDE.md for the architecture, the conventions and how to add a tool, and docs/ for the fragile areas and the live verification recipes. Agent guidance is written once in packages/mcp-server/src/{guides,prompts}/*.md and generated everywhere else — never edit the generated copies. Forks that build their own binaries get unsigned ones; macOS will refuse them until they're signed with your own Developer ID.


Built by Engine Room · free and open source — if it saves you time, sponsor its development

Releases

Recent versions

All releases ↗
  1. v0.5.2
  2. v0.5.1
  3. v0.5.0
  4. v0.4.0
  5. v0.3.1
  6. v0.3.0