Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Engine-Room-Games/after-effects-mcp --skill ae-setupgit clone --depth 1 https://github.com/Engine-Room-Games/after-effects-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/engine-room-games/after-effects-mcp/ae-setup)<a href="https://agentmods.dev/skills/engine-room-games/after-effects-mcp/ae-setup"><img src="https://agentmods.dev/badge/skills/engine-room-games/after-effects-mcp/ae-setup/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/engine-room-games/after-effects-mcp/ae-setup"><img src="https://agentmods.dev/badge/skills/engine-room-games/after-effects-mcp/ae-setup.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00074 | $0.03240 |
| Opus 5.5 | $0.00030 | $0.01296 |
| Sonnet 5.5 | $0.00015 | $0.00648 |
| Haiku 4.5 | $0.00007 | $0.00324 |
Grade A, and why
ae-setup scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 188 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Getting After Effects connected
The tools talk to a small panel that runs inside After Effects. Three things must be true for that to work: the panel is installed, Adobe is willing to load it, and AE is open.
Assume the person you are helping is a motion designer, not a developer. They should never need to open a terminal — you have tools for all of this.
Always start with check_setup
check_setup is read-only and safe to call at any time. It returns a checks array and a nextSteps list already written in plain language.
Relay nextSteps to the user directly. Do not paraphrase it into jargon, and do not invent steps it did not mention.
A timeout is not a disconnection
Before you start any repair, work out which of five failures you have. They read alike and their remedies contradict each other:
- Did not answer in time — something is listening; it is just too busy to reply. After Effects is single-threaded, so a long script or a modal dialog waiting for a click blocks it completely. Nothing is broken and nothing needs installing. The call did reach After Effects and may still be running, so do not re-send it.
- Cannot reach — nothing is listening on the port the server tried. That is the case the repair path below is for — unless the next case applies, so read the message to the end: it now says which other ports it looked at and what it found there.
- Cannot reach on port X, while
check_setupreports the panel on port Y — the server's idea of the port went stale, not the panel. The panel is running and answering; the server was started from a port file that no longer described it.check_setupreports this as its own check,portAgreement, with both numbers. Retry the failed call: the server re-checks the port whenever a call is refused and switches to the port that answers by itself. If it still fails, reconnect the MCP server (restart the client's connection to it, not After Effects). Never restart After Effects for this — something is listening, and a restart costs the user their work in progress for nothing. - Refused: the bridge token did not match — the panel is running and
answered straight away, and what it answered was no. The call never reached
After Effects, so nothing in the project changed. The bridge requires a token
because it is an HTTP server on
127.0.0.1and a web page in the user's browser can reach that; the panel writes one beside its port file each time it binds. Do not restart After Effects, do not runsetup_panel, and do not re-send the call — it will be refused identically until the cause is fixed. Runcheck_setup: itsbridgeTokencheck says whether the token file is readable, andnextStepscarries the rest. The usual causes are an MCP server older than the running panel (update it and reconnect) or a server that cannot see the file the panel wrote, which happens when the client runs it sandboxed or as another user. - Waited behind another op for the write queue and was dropped — the panel
is fine and this call never left the server, so nothing in the project was
changed. Writes are serialized so that they land in the order the agent issued
them and nothing drops into the middle of work the user asked for as one
thing; something in front is taking a very long time, usually a long
run_batch. Re-sending is safe here, once the work in front has finished; this is the one of the four where it is. Find out what is in front withget_joborawait_job— reads are never queued, solist_andget_calls still answer.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · +13 lines b7c8d92a0c12
- 1mo ago Changed · +63 lines · +13 tokens per session 66e9c2a1f526
- 1mo ago Changed · +24 lines d712b61da2f5
- 2mo ago First seen · 88 lines · 61 tokens per session scan A 40faa679b777
ae-setup is a skill published in the GitHub repository Engine-Room-Games/after-effects-mcp (38 stars, last pushed today), licensed MIT. It adds 74 tokens to every session and 3,240 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
cwv-optimizer
Diagnose and fix Core Web Vitals issues on AEM Edge Delivery Services pages. Goes deeper than generic CWV advice by understanding EDS-specific performance patterns including the 100KB LCP budget, E-L-D loading phases, block rendering behavior, and third-party script impact. Produces specific fixes for LCP, CLS, and…
testing-blocks
Use this when you have made AEM Edge Delivery Services code changes to blocks, scripts, or styles and need to validate them before opening a pull request. Covers unit testing for utilities and logic, browser testing with Playwright, linting, and guidance on what to test and how.
qa
Read-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity (geometry, JS errors, broken images), visual regression vs baselines, metadata/SEO/JSON-LD, link integrity, accessibility (axe)…
preview-import
Use this when you need to preview and verify content you imported into a local AEM Edge Delivery Services (EDS, Franklin, Helix) dev server on localhost. Starts the dev server against the imported HTML, checks block rendering, inspects DOM structure, compares against the original page, and troubleshoots broken…
tuning-oak-query-indexes
Use when a Jackrabbit Oak/AEM JCR query is slow, logs a traversal warning, or you're adding/changing a query and need to check or update its property/Lucene index definition so the query is answered by the index instead of in-memory filtering or sorting.
photoshop-recipes
Route a Photoshop request to the matching recipe. Use for Instagram, sky replacement, vesikalık, dodge and burn, watermark, csv cards, carousel, portrait, color grade, frequency separation, mockup, organize layers, gradient fade, or web export.