animate-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@animate-mcpExport the scripts of the open document and find the cause of the stageUp error."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
animate-mcp
Edit Adobe Animate scripts and timeline structure from an MCP-compatible AI agent.
English | 日本語
Overview
animate-mcp is a local Model Context Protocol (MCP) server that lets an AI agent control Adobe Animate through JSFL, Animate's scripting system. Unofficial; not affiliated with Adobe.
It exports frame scripts as plain files, lets the agent edit them, and applies them back to Animate. It can also change layer and frame structure and run arbitrary JSFL.
Related MCP server: AE Bridge MCP
Highlights
Export every frame script of scenes and library symbols to files, with a description of the structure.
Apply edited files back to Animate. Changes made in Animate after Export are detected as conflicts and never overwritten.
Add a new script to a frame that has none, just by creating a file.
Add, delete, move, rename, and retype layers (mask, folder, and more).
Insert or remove frames, work with keyframes, set labels, adjust tween length, and shift a layer's start.
Run arbitrary JSFL and return the result.
Supports ActionScript 3 and HTML5 Canvas documents.
Requirements
Node.js
Adobe Animate (must be running)
An MCP-compatible client (Claude Code, Claude Desktop, etc.)
Verified only on Animate 2024 / macOS. Other recent versions should work. Windows is untested.
Install
Claude Code
claude mcp add animate -- npx -y animate-mcp@latestClients configured with JSON (Claude Desktop, etc.)
{
"mcpServers": {
"animate": {
"command": "npx",
"args": ["-y", "animate-mcp@latest"]
}
}
}Usage
Start Animate and open the target .fla.
Ask your agent. Examples:
"Export the scripts of the open document and find the cause of the
stageUperror.""Clean up the button handling in this scene and apply it to Animate."
Behind the scenes:
export_scriptswrites the structure and every frame script to~/.animate-mcp/exports/<document name>/.The agent edits the files.
apply_scriptswrites them back into Animate.
Notes:
When several documents are open, specify which one with
document.Changes made in Animate after an Export are detected as conflicts on Apply and are not overwritten.
Export is refused while unapplied edits exist. Use
force: trueonly when it is fine to discard them.To add a script to a frame with none, create
as/<frame>.asin the timeline directory (use.jsfor HTML5 Canvas), then runapply_scripts; scripts inside tween spans are refused.Use
edit_timelinefor layer and frame structure changes;shiftLayerFramesmoves one layer's content later without shifting other layers. Always runexport_scriptsagain before editing or applying scripts; layer and frame deletions requireconfirm: true.To save, save manually in Animate.
Both ActionScript 3 and HTML5 Canvas documents are supported.
Tools
Tool | Description |
| Writes the timeline structure and all frame scripts (scenes and library symbols) |
| Adds, removes, moves and edits layers and frames in a scene or library symbol |
| Writes edited scripts back into the open document |
| Returns name, size, frame rate and timeline names of the open documents |
| Runs arbitrary JSFL and returns the result (primitive values only; objects become strings) |
Environment variables
Name | Description | Default |
| Execution timeout | 30000 |
| Working directory |
|
| Custom command to open the | OS default |
| Custom process pattern to detect Animate | OS default |
Bug reports
Please open an issue with your Animate version, OS, steps to reproduce and error messages.
Development
npm install && npm run build
npm testClient config: node /path/to/animate-mcp/server/dist/index.js (stdio).
Manual smoke test (real Animate)
Start Animate with a document open.
Run
run_jsflwithfl.trace('hi'); 'ok'.hiappears in the Output panel and the tool returns"ok". Animate comes to the front (known behavior).Run
get_document_info. It returns name, size, frame rate and timeline names.Close all documents and run
get_document_info. It returns "No document open".Quit Animate and run
run_jsfl. It returns "Animate not running".Unverified: behavior while a modal dialog is open.
Available Tools
5 toolsapply_scriptsA
Apply edited Timeline scripts from an export_scripts directory back to the Animate document (scenes and library symbols). Empty file deletes the frame script. Frames changed in Animate since Export are not overwritten. Does not save the .fla.
Inputs: dir (required), document.
edit_timelineA
Edit layers (addLayer, deleteLayer, moveLayer, renameLayer, setLayerType) and frames (insertFrames, removeFrames, insertKeyframe, clearKeyframe, setLabel, setSpanLength, shiftLayerFrames) in order. Layer references use a name and optional zero-based index; frame numbers are 1-based. shiftLayerFrames moves one layer's full content later without shifting other layers; it uses cut/paste (overwrites the clipboard, and if it fails midway the layer may be left changed: undo in Animate). Stops at the first failed op. deleteLayer and removeFrames require confirm: true. Tween interiors reject frame insertion/removal/keyframe changes. Always run export_scripts again before editing or applying scripts.
Inputs: ops (required), timeline (required), document.
export_scriptsA
Export the active Animate document's scene and library-symbol Timeline scripts (AS3 / HTML5 Canvas) to files, with index.md and per-timeline structure.md. Default dir: ~/.animate-mcp/exports//. Refuses to overwrite edits not yet applied unless force is true; files of the previous Export are replaced.
Inputs: dir, force, document.
get_document_infoA
Get the active Animate document's name, size, frame rate and timeline names.
Inputs: no named parameters.
run_jsflC
Execute arbitrary JSFL code inside Adobe Animate. This runs arbitrary code and may modify documents or files.
Inputs: code (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 5 tools
Each tool has a distinct role: document inspection, export, apply, timeline editing, and an arbitrary-code escape hatch. The only overlap is that run_jsfl can theoretically perform any of the other operations, but its description clearly frames it as arbitrary-code execution while the others are targeted workflows.
All five tools use snake_case verb_noun naming (run_jsfl, get_document_info, export_scripts, edit_timeline, apply_scripts). The pattern is predictable and easy to scan.
Five tools is well scoped for a focused Adobe Animate automation server. Each tool corresponds to a meaningful operation (inspect, export, edit, apply, arbitrary execution) without padding.
The surface covers inspection, script export/apply, timeline editing, and arbitrary JSFL escape, which is strong lifecycle coverage for this domain. Minor gaps exist around explicitly saving the .fla or document-level operations, though run_jsfl provides a workaround.
Maintenance
Related MCP Connectors
Convert, create and edit Word, PowerPoint, Excel and PDF documents from any AI agent.
Travel tools for AI agents: plan and edit real trips, search stays and tours, import travel videos.
File tools for your AI chat: PDF tables to Excel, merge PDFs, images to PDF, fill PDF forms.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to control Adobe After Effects for project inspection, composition creation, and layer manipulation via a hardened bridge panel.-
- AlicenseAqualityAmaintenanceEnables AI agents to inspect and control a live Adobe After Effects session, including reading active composition and layer data and evaluating arbitrary ExtendScript.4MIT
- AlicenseAqualityCmaintenanceEnables AI agents to connect to Adobe After Effects locally, inspecting projects, comps, and layers, discovering and executing a catalog of operations, rendering frames, and saving projects, with on-demand skill-based guidance.121MIT
- AlicenseAqualityBmaintenanceLets AI agents drive a running Adobe After Effects (~270 undo-safe operations). Works with every UI language Adobe ships and sees the frame: draws Object Matte on what it sees (lassos, ⊕/⊖ points, a preview of gaps and people) and syncs AI-generated layers with the plate frame by frame. A large skills library, built for AI and generative features: Roto Brush, Object Matte, Content-Aware Fill.413269 npm3Apache 2.0