A stdio connector for the local ae-mcp After Effects panel; install the AE extension separately.
ae-mcp (MCP Server)
A stdio connector for the local ae-mcp After Effects panel. The AE extension is installed separately, and the server is intended to integrate with After Effects via a locally running connector and panel.
🛠️ Key Features
stdio connector
Local After Effects panel integration
Requires separate installation of the AE extension
Supports After Effects via an “ae-mcp ZXP” and a native plug-in (platform-specific)
🚀 Use Cases
Connecting an AI agent to a local After Effects panel
Working with CEP/ExtendScript workflows in After Effects
⚡ Developer Benefits
Uses the Model Context Protocol (MCP)
Provided as a connector for local execution
Includes setup instructions for installing the extension and opening After Effects menu items
⚠️ Limitations
The AE extension must be installed separately
Setup depends on installing the ae-mcp ZXP and a platform-specific native plug-in
Setup prompt — paste this into the MCP client you want to use:
text
Install and configure ae-mcp for the current client receiving and executing
this prompt. Do not default to Claude Code or configure another client.
Before changing anything, inspect the local ae-mcp extension and native plug-in
files and versions, plus this client's existing MCP registration and actual
connection, read-only. Existence alone does not prove readiness. Compare with
the latest official stable release assets available for my platform:
- Client registration already correct: keep it; install only missing or damaged files.
- Files complete and versions suitable: only add or repair client registration.
- Both ready and current: verify without reinstalling.
- Newer version available: upgrade existing components, preserving user settings
and other MCP configuration; do not downgrade. If versions cannot be established
or platform assets are unavailable, explain rather than blindly overwrite.
Use the release ZXP and platform-native plug-in for needed file installation or
upgrade, then open Window > Extensions > ae-mcp in After Effects.
Identify this client's configuration method and location, preserving all other
MCP entries. Use http://127.0.0.1:11488/mcp if it supports Streamable HTTP;
for stdio only, configure `npx -y ae-mcp-jkdg` using this client's format.
If automatic editing is unavailable, give precise manual steps for this client.
Ask which client only if the target truly cannot be identified; never silently
fall back to Claude Code. Keep the AE panel open, refresh/reconnect or start a
new session as this client requires, then call ae_status to verify. If user
action is required first, state that verification is still pending.
ae-mcp connects an After Effects CEP panel to AI clients through a local MCP
endpoint. The panel hosts the service at http://127.0.0.1:11488/mcp; the
host is a Node process using Express, and After Effects state is reached
through ExtendScript and the frozen native AEGP plane.
Install and first run
Install the signed ZXP in After Effects.
Install the matching native plug-in beside the After Effects plug-ins
selected for the host — the .aex on Windows, the AeMcpNative.plugin
bundle on macOS. Keep the version pair from the same release. The same
ZXP installs on both systems; it bundles the OpenCode runtime for Windows
(runtime/opencode/opencode.exe, about 60 MB), which the panel uses only
on Windows, while macOS falls back to an opencode found on PATH. Only
this native plug-in is built per platform, and ae_nativeExec is the one
tool that needs it. Install has the exact per-platform
destination, and the macOS bundle additionally needs its download
quarantine cleared before After Effects will load it.
Start After Effects and open Window > Extensions > ae-mcp. Keep the panel
open while an external client uses MCP.
Configure one of the two supported external connection forms below.
The panel itself is the MCP service. No separate repository server is needed.
External clients must run on the same machine as After Effects because the
default endpoint is loopback.
Client connections
Claude Code uses the URL transport:
bash
claude mcp add --transport http ae http://127.0.0.1:11488/mcp
Claude Desktop can use the published connector through the system Node
installation, without needing access to the installed extension directory.
This npx -y ae-mcp-jkdg form wraps the same dependency-free
host/stdio-shim.js:
Alternatively, Claude Desktop can run the dependency-free stdio shim shipped
in the installed extension. Set command to the system Node executable and
point args at the extension directory's host/stdio-shim.js:
Successful ae_exec and ae_execRecover scripts are captured as deduplicated,
rerunnable Tool Library candidates. ae_toolSave promotes or creates reusable
JSX and prompt-skill artifacts; the Tools page manages candidates and saved
artifacts, including import/export. Usage counters and funnel events show what
gets replayed or retained, while the placeholder guard points compacted
conversations back to exact candidates and stops repeated placeholder retries.
The panel also provides approval modes, activity history, diagnostics, log
export, and built-in Claude, Codex, and OpenCode channels. Persistent host state
defaults to ~/.ae-mcp; developers and tests can relocate it with
AE_MCP_STATE_DIR.
The public MCP tools are served by the CEP host. Writes should be followed by
an independent readback; potentially side-effecting failures must be
reconciled before retry, and Undo must be executed and verified separately.
Development
Install the two Node workspaces and build the panel:
bash
(cd plugin/host && npm ci)
(cd plugin/panel && npm ci && npm run build)
For a local CEP deployment, use the platform-specific script after the host
and panel are built:
powershell
.\scripts\install-plugin-dev.ps1
bash
./scripts/install-plugin-dev-macos.sh
The Adobe After Effects C/C++ Plug-in SDK is a developer-supplied input and
must remain outside this repository. Verify it before building the native
plug-in:
For the frozen native plane, build into a new directory outside the repository.
The installer keeps transaction state under native-plugin-dev-v1; retain the
returned transaction ID if you install the result:
The native plane is frozen; generated AEGP protocol files are checked in and
the capability-package code-generation pipeline is not part of normal
development.
The Windows ZXP staging command copies the panel, host, JSX, shared modules,
icons, generated host assets, and the pinned OpenCode runtime staged by
node scripts/package/fetch-opencode-runtime.mjs. It verifies the host's
exact Express 4.22.2 dependency and signs the ZXP once:
powershell
.\scripts\package-zxp.ps1 -SkipSigning
The signed ZXP must contain no nested native binary; the bundled
opencode.exe is the one explicitly allowed executable. The packaging script
fails above 80 MB, and a release with the runtime is roughly 60 MB.