Installation¶
Requirements¶
- The .NET 10 SDK to build, or the .NET 10 runtime to run a published build.
- Adobe After Effects 2026 or newer on the same machine, with Preferences → Scripting & Expressions → Allow Scripts to Write Files and
Access Network switched on; without it the bridge cannot open a socket and
ae_diagnosesays so. - An MCP client: Claude Code, Claude Desktop, Cursor, VS Code, Codex — anything that speaks MCP over stdio.
The server¶
git clone https://github.com/orldev/Snail.MCP.AfterEffects
cd Snail.MCP.AfterEffects
dotnet build -c Release
Register it with the client as the command dotnet and the argument <repository>/src/bin/Release/net10.0/Snail.MCP.AfterEffects.dll.
For Claude Code:
claude mcp add aftereffects -- dotnet /path/to/Snail.MCP.AfterEffects/src/bin/Release/net10.0/Snail.MCP.AfterEffects.dll
Once published, the same server installs as a .NET tool: dotnet tool install -g Snail.MCP.AfterEffects and the command
s3l-mcp-aftereffects.
The bridge¶
The server bundles the bridge and installs it itself: ask the agent for ae_install_bridge. It copies snail_bridge.jsx into After
Effects' user Scripts/Startup folder and its modules into Scripts/(snail_bridge) beside it, and starts the bridge in the running After
Effects. From then on the bridge starts with After Effects and dials every server that is running. ae_diagnose reports whether the
installed bridge is the build this server ships, by a digest of its files, and offers ae_install_bridge again when it is not.
On macOS the folder is ~/Library/Preferences/Adobe/After Effects/<version>/Scripts/; on Windows
%APPDATA%\Adobe\After Effects\<version>\Scripts\. Nothing goes into the application bundle, so no administrator rights are needed.
Several servers, one After Effects¶
Each client starts a server of its own; every server announces its port under ~/.s3l-mcp-aftereffects/state/servers/ and the bridge
dials all of them, so two agents can work in one After Effects. Over HTTP one server serves every client instead — Over HTTP.