mark
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Mark
Mark lets an AI drive Adobe After Effects directly. It reads your project and makes the changes itself (layers, keyframes, effects, expressions, text, render queue and more) instead of handing you a script to paste.
It has two parts:
A panel inside After Effects (Window > Extensions > Mark) with its own Chat tab, so you can talk to Claude without leaving AE, plus Recipes (save something that worked and re-run it from a button, with no AI and no tokens), a Log of every call, and a Bridge tab with the connection status.
An MCP server that gives Claude Code, Codex or any other MCP client about 135 After Effects tools. Full list: docs/TOOLS.md.
Mark is built on AE Portal by Ricardo G. Mendes / SphereLab (MIT). Everything AE Portal does still works the same; Mark adds the chat, recipes, memory, the log and a few fixes. Both panels can be open in the same AE at once: they use different ports and names.
Plain Node with zero npm dependencies. Everything runs on your machine.
Requirements
After Effects 2022 (22.0) or newer. Tested on 2025 and 2026.
Node.js 18 or newer.
For the Chat tab: Claude Code, installed and signed in once. The chat runs it in the background.
macOS or Windows.
Related MCP server: AfterEffectsMCP
Install on macOS
Download Mark and keep it somewhere permanent (the installer links AE to this folder, so moving or deleting it later breaks the panel):
git clone https://github.com/transversal-tools/mark-ae.git ~/mark-ae cd ~/mark-aeOr download the zip from Releases and unzip it, then
cdinto the folder in Terminal.Run the installer:
./install-mac.shIt turns on CEP debug mode for AE (
PlayerDebugMode, needed because Mark is not a signed .zxp), links the folder into~/Library/Application Support/Adobe/CEP/extensions/Mark, and registers the MCP server with Claude Code if it finds it. It is safe to run again.Restart After Effects and open Window > Extensions > Mark.
for v in 9 10 11 12 13; do defaults write com.adobe.CSXS.$v PlayerDebugMode 1; done
mkdir -p ~/Library/Application\ Support/Adobe/CEP/extensions
ln -s "$PWD" ~/Library/Application\ Support/Adobe/CEP/extensions/Mark
claude mcp add -s user mark -- "$(command -v node)" "$PWD/mcp-server/server.js"Install on Windows
Install Node (and Claude Code, for the Chat tab) in PowerShell as your normal user, then close and reopen PowerShell and run
claudeonce to sign in:winget install OpenJS.NodeJS.LTS irm https://claude.ai/install.ps1 | iexDownload Mark and keep it somewhere permanent, for example:
git clone https://github.com/transversal-tools/mark-ae.git "$env:USERPROFILE\mark-ae" cd "$env:USERPROFILE\mark-ae"Or download the zip from Releases and unzip it there. If Windows asks, right-click the zip > Properties > Unblock before unzipping.
Double-click
install-windows.cmdin the Mark folder (as your normal user, not as administrator). Or run it from PowerShell:powershell -ExecutionPolicy Bypass -File install-windows.ps1It turns on CEP debug mode in the registry (
HKCU\Software\Adobe\CSXS.<n>), creates a junction at%APPDATA%\Adobe\CEP\extensions\Markpointing to the folder, and registers the MCP server with Claude Code if it finds it. It is safe to run again.Restart After Effects and open Window > Extensions > Mark.
foreach ($v in 9..13) {
New-Item -Path "HKCU:\Software\Adobe\CSXS.$v" -Force | Out-Null
Set-ItemProperty -Path "HKCU:\Software\Adobe\CSXS.$v" -Name PlayerDebugMode -Value "1"
}
New-Item -ItemType Junction -Path "$env:APPDATA\Adobe\CEP\extensions\Mark" -Target "$PWD"
claude mcp add -s user mark -- node "$PWD\mcp-server\server.js"The Chat tab and your API key
The chat uses the Claude Code installed on your computer. Click the model button inside the text box to choose how it pays:
Subscription: uses the Claude account you signed in to Claude Code with. Nothing else to set up.
API credits: paste an Anthropic API key (
sk-ant-..., from console.anthropic.com) and click Save. On macOS it is stored in the Keychain (item "Mark - Anthropic API key"); on Windows it is stored in a file encrypted with your Windows login (DPAPI). It is only passed to the chat's own Claude Code process, and Delete key removes it.
The same menu picks the model (Opus, Sonnet, Haiku) and the effort. The footer shows what the day has cost, as reported by Claude Code.
In the chat, Claude can only use Mark's tools, and scripts that write, delete, rename or run files are refused. This is a guard, not a full sandbox.
Use Mark from Claude Code or Codex
The panel has to be open in AE for any client to reach it. The connection dot in the Bridge tab turns green when a client is connected.
Claude Code (the installers already do this):
claude mcp add -s user mark -- node /absolute/path/to/mark-ae/mcp-server/server.jsCodex: add to ~/.codex/config.toml (the installers print this block with your paths):
[mcp_servers.mark]
command = "node"
args = ["/absolute/path/to/mark-ae/mcp-server/server.js"]On Windows use forward slashes in the path, for example C:/Users/you/mark-ae/mcp-server/server.js.
Claude Desktop and other MCP clients: run node /absolute/path/to/mark-ae/mcp-server/server.js
over stdio, with the server named mark.
First check, from your client: call ping (expect pong and your AE version), then
get_project_map with mode: "light".
Two things depend on the client: render_frame and render_preview_strip return images, so the
client has to pass image results to the model; and the server sends its usage guide in the
instructions field of initialize. If your client ignores that field, paste
mcp-server/instructions.js into your AGENTS.md.
More than one AE at once (for example 2025 and 2026): call list_instances, then pass
instance: "2026" on each call, or call use_instance once. With two connected, Mark refuses to
guess. Only one AE per major version is supported.
Update
git pull in the Mark folder (or replace it with a new zip in the same place), then click ↻ in
the panel. Changes to CSXS/manifest.xml need an AE restart.
Where your data lives
Recipes, memory and daily cost:
~/Library/Application Support/Markon macOS,%APPDATA%\Markon Windows.Lessons from Learning mode:
knowledge/learned-templates.mdin the Mark folder.Backup: a copy of those files (latest, plus one per day for 30 days) in the data folder's
Backupsubfolder. To put it somewhere else, such as a synced folder, write that folder's absolute path on the first line ofbackup-dir.txtin the data folder.
Security
The panel and the MCP server talk only over
127.0.0.1, with a token the panel generates. Nothing is exposed to the network.run_jsxruns any ExtendScript. Connect only clients you trust.No telemetry, no licence check, no remote code.
Troubleshooting
The panel is not in Window > Extensions: run the installer again, check that
PlayerDebugModeis1, and that theMarklink in the CEP extensions folder points to this folder. Restart AE."panel is not connected": open Window > Extensions > Mark. The server reconnects on its own.
Node not found by your client: use the absolute path from
command -v node(macOS) or(Get-Command node).Source(Windows) instead ofnode.Opening a project through Mark closes the panel in some AE versions. Reopen it, or open projects yourself.
undocan report success and change nothing. Re-read the state to check.
Known issues and their history: docs/BUGS.md.
What After Effects cannot script
These are limits of AE's scripting API, so no tool can do them: Roto Brush and paint strokes,
CUSTOM_VALUE effect parameters (Curves, Colorama gradients), Output Module codec settings
(apply a saved template instead), starting a motion or camera track, grid settings, per-footage
color profiles, and reading the Essential Graphics panel.
License
MIT. See LICENSE. Original AE Portal © 2026 Ricardo G. Mendes / SphereLab.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Compose, edit and render video with your AI agent. Turn footage into finished edits with content-aware reframing, word-timed captions and motion graphics. Hosted MCP with OAuth sign-in; cloud processing uses credits.
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
214 tools for AI agents over one MCP endpoint: image, video, audio, 3D, data, storage, mail, GPUs.
An MCP connector for Adobe After Effects. Real, editable layers and keyframes, not scripts.
Related MCP Servers
- AlicenseCqualityDmaintenanceLocal MCP server to control Adobe After Effects from AI clients like Claude and Cursor, supporting project composition, layer editing, animation, masks, and effects.13174 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables MCP clients like Claude Code, Claude Desktop, and VS Code to build and edit inside a running Adobe After Effects, covering comps, layers, keyframes, effects, text animators, markers, and renders. It supports batched tool calls with single-step undo, frame previews for self-verification, reusable style tokens, and four one-call studio rigs.MIT
- AlicenseNot gradedqualityCmaintenanceLets Claude Code or any MCP client drive an open Adobe After Effects instance to inspect projects and comps, build and animate layers with ExtendScript, preview frames as images, import footage, and render comps with live progress reporting. All changes land as single undoable steps, and communication stays local through a token-protected bridge.174 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables Codex to inspect compositions, build procedural motion graphics, execute scripts, and develop reusable tools through the application's local MCP tools.MIT