Skip to main content
Glama
animate-mcp

animate-mcp

by gekkyo

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ANIMATE_MCP_RUNS_DIRNoWorking directory.~/.animate-mcp/runs
ANIMATE_MCP_TIMEOUT_MSNoExecution timeout in milliseconds.30000
ANIMATE_MCP_LAUNCH_COMMANDNoCustom command to open the .jsfl file.OS default
ANIMATE_MCP_PROCESS_PATTERNNoCustom process pattern to detect Animate.OS default

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

Read and write Adobe Animate timeline scripts as files.

Basic flow:

  1. Run export_scripts to export the active document. Read index.md, then each structure.md, then the scripts.

  2. Edit the exported .as / .js files (an empty file deletes that frame's script).

  3. Run apply_scripts to apply them. The .fla is not saved; the user saves it.

  • To add a script to a frame with none, create /as/.as (or .js for HTML Canvas), avoid tween spans, and run apply_scripts.

  • Use edit_timeline for layer or frame structure changes. shiftLayerFrames moves one layer's content later without shifting other layers. Always run export_scripts again before editing or applying scripts; delete operations require confirm: true.

  • If a frame changed in Animate before you applied, Export is refused and Apply skips that frame. Export again to pull in the change.

Notes:

  • When several documents are open, document is required. get_document_info returns the name.

  • AS3 and HTML5 Canvas have different APIs. Check the document type before trying things with run_jsfl.

  • Runtime errors appear in Animate's Output panel. Run fl.outputPanel.save(FLfile.platformPathToURI("")) with run_jsfl and read the saved file (saving under ~/.animate-mcp/ is recommended; write the path in the usual form for the OS).

  • When a script fails with a null error, first check the layer's frame length and instance names with run_jsfl.

  • If you add debug traces, always remove them after checking and Apply again.

  • run_jsfl runs arbitrary code. Ask the user before any operation that modifies the document.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
run_jsflC

Execute arbitrary JSFL code inside Adobe Animate. This runs arbitrary code and may modify documents or files.

get_document_infoA

Get the active Animate document's name, size, frame rate and timeline names.

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.

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.

apply_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.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 5 tools

Disambiguation4/5

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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness4/5

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

ActivityMaintained
ResponsivenessNo recent community issues