Blender integration through the Model Context Protocol
Adobe After Effects MCP is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Drive Adobe After Effects from any MCP client: compositions, layers, animation and rendering.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user zachshallbetter-after-effects-mcp '--' npx -y adobe-mcp-aftereffects
# 2 — ask your agent for something these tools do
# add_text_layer, set_text, get_text and 160 more
Adobe After Effects MCP costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. This one runs on your machine: your client starts Adobe After Effects MCP as a process under your own user, with your files and your network, so the tool surface below is what it can do to your computer rather than to a server somewhere else. Its scan result is on the Security tab — read the surface before you approve it.
This is a public server: you run it yourself and this marketplace is not in the path. You need Node.js — the current LTS (24) is the safe choice; npx comes with it. Claude Code registers it in one command; --scope user makes it available in every project. The '--' is in quotes so that PowerShell passes it on.
claude mcp add --scope user zachshallbetter-after-effects-mcp '--' npx -y adobe-mcp-aftereffectsReconnect, or start a new session, and the tools appear in the model’s tool list.
Nothing is required, but it can take AFTEREFFECTS_APP_NAME (macOS only: address a specific copy, e.g. "Adobe After Effects 2025". Default: After Effects by bundle id), AFTEREFFECTS_ALLOWED_DIRS (Extra directories allowed for file operations (':' on macOS, ';' on Windows)), AFTEREFFECTS_SCRIPT_TIMEOUT_MS (How long to wait for After Effects before reporting that a dialog may be open. Default 120000) if you want to set them.
One config entry your client uses to start the process locally. A local server runs with your file system and your network, which is why it is priced without metering.
163 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Add a text layer (Layer > New > Text, or the Horizontal and Vertical Type tools): point text, or paragraph text in a box, horizontal or vertical, optionally named and placed
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| text | string | yes | The text; line breaks start new lines |
| kind | string | no | point text (default) or paragraph text in a box |
| orientation | string | no | Horizontal Type tool (default) or Vertical Type tool |
| boxSize | array | no | Paragraph text: [width, height] of the box in pixels. Default half the composition size |
| position | array | no | [x, y] in pixels from the composition's top-left |
| name | string | no | Layer name |
Set a text layer's Source Text and formatting (Character and Paragraph panels) for the whole layer or a range of characters or paragraphs: font (by PostScript name, or family and style), size, fill and stroke, tracking, kerning, leading, scale, baseline shift and super/subscript, caps, ligatures,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| range | object | no | Format only part of the text. Character options on a paragraph range apply to its characters; paragraph options apply to whole paragraphs. Omit for the whole layer |
| text | string | no | New text (with range: replaces the range); line breaks start new lines |
| font | string | no | PostScript font name (find_fonts lists them) |
| fontFamily | string | no | Font family, with fontStyle, chosen through the font list (app.fonts) |
| fontStyle | string | no | Font style with fontFamily, e.g. "Bold" |
| fontSize | number | no | Pixels |
| fillColor | no | Fill colour; turns fill on | |
| strokeColor | no | Stroke colour; turns stroke on | |
| applyFill | boolean | no | false: No Fill Color |
| applyStroke | boolean | no | false: No Stroke Color |
| strokeWidth | number | no | Pixels |
| strokeOverFill | boolean | no | true: Stroke Over Fill; false: Fill Over Stroke |
| lineJoin | string | no | Stroke line join |
| tracking | number | no | Thousandths of an em; 0 resets tracking |
| kerning | number | no | Manual kerning, thousandths of an em |
| autoKerning | string | no | Metrics or Optical kerning, or none |
| leading | number | no | Pixels; turns auto leading off |
| justification | string | no | Paragraph alignment |
Read text layers' Source Text: text, font (with its PostScript name, family, style and variable axes), character and paragraph formatting, point or paragraph text and box size, and where each paragraph and composed line starts and ends
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — |
Search the fonts After Effects can use (Character panel font menu, app.fonts) by name, or list only variable fonts or missing and substituted fonts. Returns PostScript names for set_text, families and styles, variable font axes, and the favourite and recent font lists
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | Text to find in the family, style, full or PostScript name; omit for all |
| variableOnly | boolean | no | Only variable fonts (with design axes) |
| missing | boolean | no | List the project's missing or substituted fonts instead |
| limit | integer | no | Most fonts to return. Default 200 |
Set the favourite font families shown in the Character panel font menu, or have After Effects rescan font folders outside the system ones (such as the Adobe local Fonts folder) for added or removed fonts
| Parameter | Type | Required | Notes |
|---|---|---|---|
| favorites | array | no | Font family names: replaces the favourites list |
| rescanFontFolders | boolean | no | Rescan non-system font folders |
Set a text layer's Path Options (text on a mask path: Reverse Path, Perpendicular To Path, Force Alignment, First and Last Margin), More Options (Anchor Point Grouping, Grouping Alignment, Fill & Stroke, Inter-Character Blending, Variable Font Spacing), Enable Per-character 3D (Animation menu) and…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| path | integer | no | Path Options > Path: the index of a mask on the same layer; 0 for none |
| reversePath | boolean | no | Path Options > Reverse Path |
| perpendicularToPath | boolean | no | Path Options > Perpendicular To Path |
| forceAlignment | boolean | no | Path Options > Force Alignment |
| firstMargin | number | no | Path Options > First Margin, pixels |
| lastMargin | number | no | Path Options > Last Margin, pixels |
| anchorPointGrouping | string | no | More Options > Anchor Point Grouping |
| groupingAlignment | array | no | More Options > Grouping Alignment, [x, y] percent |
| fillAndStroke | string | no | More Options > Fill & Stroke (needs per-character 3D off) |
| interCharacterBlending | integer | no | More Options > Inter-Character Blending: 1-based position in its blending mode menu (1 = Normal) |
| variableFontSpacing | integer | no | More Options > Variable Font Spacing: 1-based position in its menu; present only when a variable font axis is animated |
| perCharacter3D | boolean | no | Enable Per-character 3D |
| orientCharacters | boolean | no | true: Orient Each Character Independently toward the camera (turns on per-character 3D); false: turn it off |
Add a text animator (Animation > Animate Text) with its properties (position, scale, rotation, opacity, fill colour, tracking, blur, character value, variable font axes, All Transform Properties...) and selectors (Animation > Add Text Selector: Range, Wiggly, Expression) with their settings; or…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| animator | no | An existing animator to change: its 1-based index or name (list_text_animators). Omit to add a new animator | |
| name | string | no | Name for the animator |
| properties | object | no | Animator properties to add (or set, when already there), each to a value or true for its default. Numbers or [x, y, z] arrays; *_color take "#RRGGBB". Keys: …, all_transform (true: All Transform Prope |
| fontAxes | array | no | Variable font axes to animate (Animate Text > Variable Font Axes) |
| selectors | array | no | Selectors to add, or with selector: n, to change |
List text layers' animators (Text > Animator groups) with their properties and values and their selectors
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — |
Remove text animators from text layers: chosen ones by index or name, or all of them (Animation > Remove All Text Animators)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| animators | array | no | Animators to remove: 1-based indexes or names |
| all | boolean | no | Remove every animator |
Convert layers with a Layer menu command: Create Shapes from Text (new shape layers with the outlines), Create Masks from Text (a solid with a mask per character), or Convert to Editable Text (Photoshop text layers to After Effects text). Selects the layers and runs the command in their composition
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| action | string | yes | shapes: Create Shapes from Text; masks: Create Masks from Text; editable: Convert to Editable Text |
Show the Character or Paragraph panel (Window > Character, Window > Paragraph), or toggle both text panels
| Parameter | Type | Required | Notes |
|---|---|---|---|
| panel | string | yes | character, paragraph, or toggle (show or hide both) |
Change existing keyframes of a property (Animation > Keyframe Interpolation, Keyframe Velocity, Keyframe Assistant, the Graph Editor buttons and the keyframe context menu): interpolation presets such as Easy Ease, Easy Ease In/Out, Auto Bezier, Continuous Bezier, Linear and Toggle Hold Keyframe;…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| keys | no | — | |
| timeReverse | boolean | no | Time-Reverse Keyframes: mirror the chosen keyframes in time within their span (done before the other changes) |
| preset | string | no | linear, bezier, auto_bezier, continuous_bezier, hold (both sides), toggle_hold (outgoing Hold, or back to Auto Bezier), easy_ease, easy_ease_in, easy_ease_out |
| inInterpolation | string | no | Incoming interpolation |
| outInterpolation | string | no | Outgoing interpolation |
| easeIn | no | Incoming temporal ease (Keyframe Velocity dialog, Graph Editor handle): speed and influence for every dimension | |
| easeOut | no | Outgoing temporal ease: speed and influence for every dimension | |
| temporalContinuous | boolean | no | Continuous Bezier in time |
| temporalAutoBezier | boolean | no | Auto Bezier in time |
| spatialContinuous | boolean | no | Continuous Bezier on the motion path (spatial properties only) |
| spatialAutoBezier | boolean | no | Auto Bezier on the motion path (spatial properties only) |
| spatialTangents | object | no | Motion path direction handles, relative to the keyframe, in pixels (spatial properties only) |
| roving | boolean | no | Rove Across Time (spatial properties; the first and last keyframes never rove) |
| label | integer | no | Keyframe colour label, 0 (none) to 16 |
| value | no | New value for every chosen keyframe: a number, an array of numbers, text or true/false |
Select or deselect keyframes of a property in the Timeline panel, or deselect every keyframe, property and property group (Edit > Deselect All in the Timeline). Selected keyframes are what run_animation_command's keyframe commands act on
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | no | …. With deselectAll and no layers, every layer | |
| property | no | …. Omit to only deselect | |
| keys | no | — | |
| mode | string | no | replace (default): only these keyframes of the property are selected; add; remove |
| deselectAll | boolean | no | First deselect every keyframe, property and property group on the layers |
Move the current time to the previous, next, first or last keyframe (the keyframe navigator arrows, J and K): of one property, or of every animated property of the layers (the selected layers by default)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | no | …. Default the selected layers | |
| property | no | …. Omit for every animated property | |
| direction | string | yes | Where to go |
Copy from one layer's property to properties on other layers: its keyframes (Edit > Copy and Paste, or Paste Reverse Keyframes with reverse), its expression only (Edit > Copy Expression Only), or a link: an expression on each target that follows the source, as Edit > Copy With Property Links then…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | object | yes | The source |
| to | object | yes | The targets |
| what | string | yes | keyframes, expression (the expression only), or link (a property link expression) |
| keys | no | With what: keyframes, which source keyframes. … | |
| time | number | no | With what: keyframes, where the first pasted keyframe lands (seconds). Default the source times |
| reverse | boolean | no | With what: keyframes, paste them in reverse time order (Paste Reverse Keyframes) |
Separate a Position property into X, Y (and Z) Position so each can be keyframed alone, or join them again (Animation > Separate Dimensions)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| property | no | …. Default position | |
| separate | boolean | no | true separates, false joins. Default true |
Arrange layers one after another in time, in the order given, optionally overlapping with an opacity dissolve (Animation > Keyframe Assistant > Sequence Layers)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | …. The first plays first | |
| overlap | number | no | Seconds each layer overlaps the one before. Default 0 |
| transition | string | no | With an overlap: off (default), dissolve_front (the upper layer fades), or cross_dissolve (both fade) |
| start | number | no | When the first layer starts (seconds). Default its current in point |
Run an Animation or Timeline command that acts on the selection: Enable Auto-keyframe (toggle), Select Equal / Previous / Following Keyframes, Select Keyframe Label Group (and its On Selected Layers, On All Layers and Visible Keyframes variants), Keyframe Assistant > Exponential Scale, RPF Camera…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| command | string | yes | The command |
| comp | no | …. It is opened in the Timeline first | |
| layers | no | Select only these layers first (indexes, names, or selected: true to keep the selection) | |
| property | no | With layers, also select this property (Reveal in Timeline). … |
Puppet tools: add an empty Puppet effect to layers, choose a Puppet pin tool in the Tools panel (Position, Starch, Overlap, Advanced or Bend Pin) so pins can be placed in the Composition panel, duplicate a Puppet mesh, or list the meshes and pins with their paths for set_keyframes
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | What to do |
| comp | no | — | |
| layers | no | …. For add_effect, duplicate_mesh and list | |
| tool | string | no | For choose_tool: position, starch, overlap, advanced or bend |
| mesh | integer | no | For duplicate_mesh: the mesh number, 1 = first. Default 1 |
List the render settings and output module templates (Edit > Templates) available for queueing
No parameter schema on file.
Add a composition to the Render Queue (Composition > Add to Render Queue) with a render settings template, an output module template and an output file, optionally a time span, a single frame (Composition > Save Frame As > File) or as a pre-render that imports the result and replaces the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| outputFile | string | yes | Absolute output path; the extension should match the output module |
| renderSettings | string | no | Render settings template, e.g. "Best Settings" |
| outputModule | string | no | Output module template, e.g. "High Quality", "H.264 - Match Render Settings - 15 Mbps" |
| start | number | no | Seconds |
| duration | number | no | Seconds |
| frame | number | no | Render only the frame at this time (seconds), as Save Frame As > File does; not with start or duration |
| preRender | boolean | no | Pre-render: after rendering, import the file and replace the composition's uses with it. Default false |
Render every queued item in After Effects (blocks until done; raise AFTEREFFECTS_SCRIPT_TIMEOUT_MS for long renders), or send the queue to Adobe Media Encoder
| Parameter | Type | Required | Notes |
|---|---|---|---|
| mediaEncoder | boolean | no | Queue in Adobe Media Encoder instead. Default false |
| startEncoding | boolean | no | Media Encoder: start encoding at once. Default true |
Read the Render Queue, or remove, duplicate (Edit > Duplicate in the Render Queue panel), or turn items on and off for rendering
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | list, remove, duplicate (copies go to the end of the queue), enable, disable, or clear the whole queue |
| items | array | no | 1-based queue indexes |
Read Render Queue items in full (Render Queue panel): status, start and elapsed render time, log level, notification, time span, every render setting and every output module's format, file, file name template, post-render action and settings, by the names set_render_settings and set_output_module…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | no | 1-based queue indexes; omit for every item |
Change Render Queue items' render settings (Render Settings dialog): apply a template (Best Settings, Draft Settings, DV Settings, Multi-Machine Settings or your own), set quality, resolution, disk cache, proxies, effects, solo switches, guide layers, colour depth, frame blending, field rendering,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | yes | 1-based queue indexes |
| template | string | no | Render settings template applied first, e.g. "Best Settings", "Draft Settings", "DV Settings", "Multi-Machine Settings" (list_render_templates lists them) |
| frameRate | no | Frame rate: a number of frames per second, or "comp" for the composition's rate | |
| skipExistingFiles | boolean | no | Skip frames already in the output folder, so several computers can render one image sequence |
| start | number | no | Custom time span start, seconds |
| duration | number | no | Custom time span duration, seconds |
| skipFrames | integer | no | Frames to skip between rendered frames for quick tests; 1 renders on twos |
| logType | string | no | Log: errors only, plus settings, or plus per-frame information |
| notify | boolean | no | Send a Creative Cloud notification when this item finishes (the Notify checkbox) |
| settings | no | — | |
| saveAsTemplate | string | no | Save the first item's resulting render settings as a template with this name |
Change, add or remove a Render Queue item's output module (Output Module Settings dialog, Composition > Add Output Module): template or output format (QuickTime, AVI, H.264, image sequences such as PNG, TIFF, JPEG, OpenEXR, DPX, Targa, Photoshop, SGI, IFF, Radiance, or audio as AIFF, MP3, WAV),…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| item | integer | yes | 1-based Render Queue index |
| outputModule | integer | no | 1-based output module of the item. Default 1 |
| add | boolean | no | Add a new output module to the item and change that one (Composition > Add Output Module). Default false |
| remove | boolean | no | Remove the output module (the item keeps at least one). Default false |
| template | string | no | Output module template, e.g. "High Quality", "Lossless", "H.264 - Match Render Settings - 15 Mbps" (list_render_templates lists them) |
| format | string | no | Output format: applies the first output module template that writes it |
| outputFile | string | no | Absolute output path. For image sequences include frame-number signs, e.g. frame_[#####].png |
| fileTemplate | string | no | File name template from the Output To menu, e.g. "[compName]_[#####].[fileExtension]" |
| channels | string | no | "Channels": RGB, Alpha or RGB + Alpha |
| depth | string | no | "Depth", e.g. Millions of Colors, Millions of Colors+, Trillions of Colors, Floating Point |
| color | string | no | "Color": Premultiplied (Matted) or Straight (Unmatted) |
| startingNumber | integer | no | First frame number of an image sequence ("Starting #"); turns off Use Comp Frame Number |
| useCompFrameNumber | boolean | no | Number sequence frames from the composition's frame numbers |
| resize | object | no | Resize the output |
| crop | object | no | Crop pixels from the edges (negative values add pixels) |
| audio | object | no | Audio output |
| includeProjectLink | boolean | no | Embed a link back to the After Effects project |
| includeSourceXmp | boolean | no | Copy XMP metadata from the source footage into the output |
| postRenderAction | string | no | After rendering: nothing, import the file, import it and replace the composition's uses, or set it as the composition's proxy |
| settings | no | — |
Show or hide the Render Queue panel (Window > Render Queue), pause, continue or stop a render in progress, turn the whole-queue completion notification on or off, and read progress: each item's status, start time and elapsed time
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | no | Default status. pause, continue and stop act on the render in progress |
| notify | boolean | no | Send a Creative Cloud notification when the whole queue finishes |
Turn Multi-Frame Rendering on or off with a CPU limit for the next render, start, pause, continue or end Watch Folder mode (File > Watch Folder: After Effects then renders projects saved into the folder and stops taking other work), and report whether this After Effects is a render-only engine
| Parameter | Type | Required | Notes |
|---|---|---|---|
| multiFrameRendering | boolean | no | Use Multi-Frame Rendering |
| maxCpuPercent | integer | no | Most CPU Multi-Frame Rendering may use, 1-100. Default 100 |
| watchFolder | string | no | Watch Folder mode |
| folder | string | no | start: absolute path of the folder to watch |
Browse the effects on the Effect menu by category (Blur & Sharpen, Distort, Generate, Expression Controls, ...) or by name, from the built-in effect catalog: display name, match name, category, the controls After Effects documents for each, and whether this After Effects has it installed (Effect…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| category | string | no | Only effects in this Effect menu category |
| query | string | no | Only effects whose display name or match name contains this text |
| controls | boolean | no | Include each effect's documented controls |
| limit | integer | no | Most effects to return |
Apply an effect from the Effect menu to layers by display name or match name and set any of its controls by name in the same call, or set the controls of an effect already on the layers (Effect Controls panel). Values: numbers, true/false for checkboxes, [x, y] pixels for points, "#RRGGBB" for…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effect | string | no | The effect to apply: its display name (e.g. "Fractal Noise") or match name (e.g. "ADBE Fractal Noise"); find_effects lists them |
| existing | no | — | |
| controls | object | no | Control names (as in the Effect Controls panel, or match names) to values, e.g. { "Blurriness": 20, "Repeat Edge Pixels": true } |
| time | number | no | Seconds: set each control as a keyframe at this time |
| name | string | no | Rename the effect |
Read the controls of effects on layers (Effect Controls panel): each control's name, match name, type (number, menu, point, point3d, color, layer, mask, topic, group or custom; checkboxes are numbers 0 or 1), current value, menu choices, range, units, keyframe count and expression
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effect | no | …. Omit for every effect on the layers | |
| time | number | no | Read values at this time (seconds) instead of the current time |
Duplicate effects on their layers (Edit > Duplicate), move an effect up or down the layer's effect stack (drag in the Effect Controls panel), or copy effects with their keyframes and expressions to other layers in the composition (Edit > Copy, Edit > Paste; uses the clipboard and opens the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | …. For copy_to_layers, one source layer | |
| action | string | yes | What to do |
| effects | array | no | Applied effects by name, match name or position (1 = top); omit for all (one effect for move) |
| position | integer | no | move: the new position in the stack, 1 = top |
| to | no | copy_to_layers: the layers to paste the effects onto |
Describe footage items (Project panel, Interpret Footage): source kind (file, solid, placeholder), file and missing path, alpha, frame rates, fields and pulldown, pixel aspect, loop, proxy and the compositions that use each item
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | no | Footage item ids. Omit for every footage item | |
| missingOnly | boolean | no | Only items whose source file is missing. Default false |
Replace a footage item's source everywhere it is used, keeping layer changes (File > Replace Footage): with another file or image sequence, a colour-bar placeholder, a solid, or a composition built from a layered Photoshop or Illustrator file (With Layered Comp)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| item | integer | yes | Footage item id |
| with | string | yes | What replaces it |
| file | string | no | file, sequence: absolute path (for a sequence, its first file) |
| forceAlphabetical | boolean | no | sequence: Force alphabetical order, so gaps in the numbering do not become placeholder frames. Default false |
| name | string | no | placeholder, solid: name. Default the item's name |
| width | integer | no | placeholder, solid: pixels. Default the item's width |
| height | integer | no | placeholder, solid: pixels. Default the item's height |
| frameRate | number | no | placeholder: frames per second. Default the item's rate, or 30 |
| duration | number | no | placeholder: seconds. Default the item's duration, or 10 |
| color | no | solid: colour, "#RRGGBB" or "rgb(r,g,b)" | |
| pixelAspect | number | no | solid: pixel aspect ratio. Default the item's |
Give footage items or compositions a proxy (File > Set Proxy): a file or image sequence, a solid or a placeholder, or remove it (None). useProxy switches between the proxy and the original (the proxy indicator in the Project panel)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | yes | Footage or composition item ids | |
| proxy | string | no | What becomes the proxy; none removes it. Omit to only switch useProxy |
| file | string | no | file, sequence: absolute path (one item only) |
| forceAlphabetical | boolean | no | sequence: Force alphabetical order. Default false |
| name | string | no | solid, placeholder: name. Default the item's name |
| width | integer | no | solid, placeholder: pixels. Default the item's width |
| height | integer | no | solid, placeholder: pixels. Default the item's height |
| frameRate | number | no | placeholder: frames per second. Default the item's rate, or 30 |
| duration | number | no | placeholder: seconds. Default the item's duration, or 10 |
| color | no | solid: colour, "#RRGGBB" or "rgb(r,g,b)" | |
| pixelAspect | number | no | solid: pixel aspect ratio. Default the item's |
| useProxy | boolean | no | Use the proxy (true) or the original (false) everywhere in the project |
Queue a composition to render as its own proxy (File > Create Proxy > Still or Movie): adds a Render Queue item whose post-render action is Set Proxy. Render it with render_queue
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| kind | string | yes | still: one frame; movie: the whole composition |
| outputFile | string | yes | Absolute path of the proxy file; the extension should match the output module |
| time | number | no | still: the frame, in seconds. Default the current time |
| renderSettings | string | no | Render settings template, e.g. "Draft Settings" |
| outputModule | string | no | Output module template. Default "Photoshop" for a still when it exists, otherwise the default template |
Add a footage item without adding a layer: a colour-bar placeholder for footage that is not available yet (File > Import > Placeholder) or a solid (File > Import > Solid), optionally into a folder
| Parameter | Type | Required | Notes |
|---|---|---|---|
| kind | string | yes | What to add |
| name | string | yes | Item name |
| width | integer | no | Pixels. Default 1920 |
| height | integer | no | Pixels. Default 1080 |
| frameRate | number | no | placeholder: frames per second. Default 30 |
| duration | number | no | placeholder: seconds. Default 10 |
| color | no | solid: colour, "#RRGGBB" or "rgb(r,g,b)" | |
| pixelAspect | number | no | solid: pixel aspect ratio. Default 1 |
| folder | integer | no | Put the item in this folder (id) |
Re-read footage items from disk so changes made in other applications appear (File > Reload Footage)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | yes | — |
Open a footage item in the Footage panel, reveal its file in Finder or Explorer (Reveal in Finder / Reveal in Explorer) or in Adobe Bridge (File > Reveal in Bridge), or open it in the application that made it (Edit > Edit Original). With target bridge and no item, opens Adobe Bridge (File > Browse…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| item | integer | no | Footage item id. Optional only for target bridge |
| target | string | yes | Where to open it |
Find the cuts in video footage layers (Layer > Scene Edit Detection) and add a marker at each, split the layer at each cut, or split and pre-compose each scene; none only returns the cut times
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| mode | string | no | markers: Create Layer Markers; split: Split Layer; split_precomp: Split Layer and Create Pre-comps; none: report the cuts only. Default markers |
Paste SVG artwork from the clipboard (for example copied from Illustrator) into a composition as shape layers (Edit > Paste). Opens the composition first
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — |
Describe the focused viewer (Composition, Layer or Footage panel) and its views: zoom, channel, exposure, Fast Previews, transparency grid, rulers and guides; the active composition's resolution and current time; the active tool; and whether viewer updates are paused
No parameter schema on file.
Change a viewer's view options: magnification (zoom percent, 100 for actual size), the Show Channel menu (RGB, red, green, blue, alpha, colorized, straight RGB; alpha boundary and overlay in the Layer panel), exposure, the transparency grid, Fast Previews (Off, Adaptive Resolution, Draft, Fast…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| view | integer | no | Make this view (1-based, in a two- or four-view layout) active and change it. Default the active view |
| zoomPercent | number | no | Magnification percent; 100 is actual pixels |
| channel | string | no | Show Channel. alpha_boundary and alpha_overlay are Layer panel only |
| exposure | number | no | Adjust Exposure, in stops; 0 resets |
| transparencyGrid | boolean | no | Show the transparency checkerboard |
| fastPreview | string | no | Fast Previews mode (Composition panel only) |
| rulers | boolean | no | View > Show Rulers |
| guidesVisible | boolean | no | View > Show Guides |
| guidesSnap | boolean | no | View > Snap to Guides |
| guidesLocked | boolean | no | View > Lock Guides |
| maximized | boolean | no | Maximize the viewer panel, or restore it |
| resolution | string | no | Composition resolution (down-sample factor); custom takes customResolution |
| customResolution | object | no | Custom resolution: render every Nth pixel across and down |
| pauseViewerUpdates | boolean | no | Stop viewers redrawing, as Caps Lock does |
Run a View menu or viewer command on a viewer: Zoom In, Zoom Out, Show Grid, Snap to Grid, Show Layer Controls (these toggle), the view layout (1, 2 or 4 views), Share View Options, New Viewer, or close the viewer (File > Close). Give comp to use its Composition panel; otherwise the focused viewer
| Parameter | Type | Required | Notes |
|---|---|---|---|
| command | string | yes | The command |
| comp | no | — |
Add, move, remove or clear a composition's ruler guides (View > Add Guide, Edit Guide, Clear Guides). Positions are pixels from the left (vertical guides) or top (horizontal guides); guides are numbered from 1 in the order they were added
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| action | string | yes | add a guide, move or remove guide n, or clear all guides |
| orientation | string | no | add: the guide's direction |
| position | number | no | add, move: pixels |
| guide | integer | no | move, remove: the guide number (1 = first added; add returns it) |
Choose the active tool in the Tools panel (selection, hand, zoom, rotation, camera orbit, pan and dolly modes, shapes, pen, type, paint, Roto Brush, puppet pins), or cycle to the next tool in a group as clicking a tool button repeatedly does. Camera tools need a camera layer
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tool | string | no | The tool to choose |
| cycle | string | no | Instead of tool: move to the next tool in this group |
Move a composition's current-time indicator: to a time in seconds (View > Go to Time), forward or back a number of frames (Page Down/Page Up), to the start or end, to the start or end of the work area, or to a layer's In or Out point
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| time | number | no | Seconds |
| frames | integer | no | Step this many frames; negative steps back (1 or 10 match the shortcuts) |
| to | string | no | Jump to this point |
| layer | integer | no | layer_in, layer_out: the layer (1-based) |
Open or close a panel from the Window menu: Tools, Info, Audio or Preview. Choosing an open panel's command closes it
| Parameter | Type | Required | Notes |
|---|---|---|---|
| panel | string | yes | The panel |
Switch to a built-in workspace (Window > Workspace), or reset the current workspace to its saved layout. Custom workspaces can be chosen by name with run_menu_command
| Parameter | Type | Required | Notes |
|---|---|---|---|
| workspace | string | no | The workspace to switch to |
| reset | boolean | no | Reset the current (or chosen) workspace to its saved layout |
Apply a switch to every layer in a composition (Layer > Switches): Unlock All Layers, Show All Video, or Hide Other Video (turn video off for every layer except the given ones)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| action | string | yes | unlock_all, show_all_video, or hide_other_video |
| layers | no | — |
Open a layer (Layer > Open Layer) in the Layer panel, open its source (Layer > Open Layer Source: footage in the Footage panel, a pre-composition in the Composition panel), or select its source item in the Project panel (Reveal Layer Source In Project)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| target | string | no | layer (Layer panel, the default), source, or reveal_source |
Change which layers are selected in the Timeline: select given layers (by number, as typing it on the keypad), add or remove them, invert the selection, select children of parents, move the selection to the next or previous layer or extend it, select all or none
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| action | string | yes | set, add, remove (toggle with layers); children (of layers, or of the selection); invert; next, previous, extend_next, extend_previous (from the selection); all; none |
| layers | no | — |
Trim or extend layers' In or Out point to a time (Alt+[ and Alt+]: trim to the current time), or trim a set of layers together so the earliest In point or latest Out point lands there, keeping their offsets. Trimming never changes the source
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| edge | string | yes | Which end to trim |
| at | no | — | |
| asSet | boolean | no | Trim the layers as a set: the earliest In (or latest Out) point goes to the time and the others keep their offsets. Default false |
Move layers in time without changing their length: put the In or Out point at a time ([ and ]: the current time; or the composition start or end), alone or as a set keeping offsets; nudge by frames (Alt+Page Up/Down) or seconds; stagger them in order (Quick Offset); or slip-edit the source under…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| mode | string | yes | in_point_to, out_point_to (use at), offset (by frames or seconds), stagger (each layer one step later than the one before, in the order given), slip (move the source by frames or seconds inside the In |
| at | no | — | |
| asSet | boolean | no | in_point_to and out_point_to: move the layers together so the earliest In point (or latest Out point) lands on the time. Default false |
| frames | integer | no | offset, stagger, slip: frames (negative is earlier) |
| seconds | number | no | offset, stagger, slip: seconds instead of frames |
Split layers at a time (Edit > Split Layer): each becomes two layers, the original ending at the time and a duplicate above it starting there, both keeping all keyframes
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| at | no | — |
Fit, centre or flip layers (Layer > Transform): Fit to Comp, Fit to Comp Width, Fit to Comp Height, Center In View, Center Anchor Point in Layer Content, Flip Horizontal, Flip Vertical. The fit and centre commands select the layers and make their composition active
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| action | string | yes | What to do |
Replace layers' source with another footage item or composition (Alt/Option-drag in the Project panel), keeping their properties, effects and keyframes
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| item | integer | yes | The new source: a project item id (from list_items) |
| fixExpressions | boolean | no | Update expressions that refer to the old source name. Default true |
Change a solid layer's solid (Layer > Solid Settings): name, colour and size, either for every layer that uses the solid (Affect All Layers That Use This Solid) or for these layers only, through a new solid
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| name | string | no | Solid name |
| color | no | — | |
| width | integer | no | Pixels |
| height | integer | no | Pixels |
| affectAllLayers | boolean | no | Change the solid itself, so every layer using it changes (default true); false gives these layers a new solid |
Add Photoshop-style layer styles (Layer > Layer Styles: Drop Shadow, Inner Shadow, Outer Glow, Inner Glow, Bevel and Emboss, Satin, Color Overlay, Gradient Overlay, Stroke), Remove All, Convert to Editable Styles, and set Blending Options (Global Light, Fill Opacity, channels, Blend Interior…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| removeAll | boolean | no | First remove every layer style (Remove All) |
| convertToEditable | boolean | no | Turn styles merged from a Photoshop layer into editable styles (Convert to Editable Styles) |
| add | array | no | Styles to add |
| blending | object | no | Blending Options (present once a layer has a style) |
Choose a layer tool in the Tools panel: Rotation, Pan Behind (Anchor Point) or Selection, for the user's next drag in the Composition panel. To rotate or move an anchor point from here, use set_transform
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tool | string | yes | rotation, pan_behind or selection |
List a composition's layers, top to bottom, with index, id, type, switches, timing, parent, blending mode and track matte. Indexes are what other tools take
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — |
Add a layer (Layer > New): solid, null, adjustment, text, shape, camera or light, or a project item (footage or composition) as a layer, at the top of the composition
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| type | string | yes | — |
| name | string | no | — |
| item | integer | no | type item: the project item id to add |
| color | no | Solid and adjustment colour. Default white | |
| width | integer | no | Solid size; default the composition size |
| height | integer | no | — |
| text | string | no | type text: the text |
| lightType | string | no | type light. Default point |
| duration | number | no | Seconds; default the composition duration |
Set layer switches and timing: name, comment, enabled (video), audio, solo, shy, lock, 3D, motion blur, adjustment layer, effects (Effect switch), Collapse Transformations / Continuously Rasterize, Preserve Underlying Transparency, quality and sampling (Bilinear, Bicubic), blending mode (or step…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| name | string | no | — |
| enabled | boolean | no | — |
| audioEnabled | boolean | no | — |
| solo | boolean | no | — |
| shy | boolean | no | — |
| locked | boolean | no | — |
| threeD | boolean | no | — |
| motionBlur | boolean | no | — |
| adjustmentLayer | boolean | no | — |
| guideLayer | boolean | no | — |
| quality | string | no | — |
| blendingMode | string | no | — |
| cycleBlendingMode | string | no | Step to the next or previous blending mode in the menu (Shift+= and Shift+-) |
| comment | string | no | Text for the Comments column |
| effectsActive | boolean | no | Effect switch: render the layer's effects |
| collapseTransformation | boolean | no | Collapse Transformations (pre-compositions) or Continuously Rasterize (vector layers) |
| preserveTransparency | boolean | no | Preserve Underlying Transparency |
| sampling | string | no | Layer > Quality sampling at Best quality |
Set layer transform values without keyframes: anchor point, position, scale (percent), rotation (degrees), opacity (percent), and 3D orientation and rotations. Animated properties are set at the current time
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| anchorPoint | array | no | — |
| position | array | no | Pixels from the top-left |
| scale | array | no | Percent per axis |
| rotation | number | no | — |
| opacity | number | no | — |
| orientation | array | no | 3D layers |
| xRotation | number | no | — |
| yRotation | number | no | — |
Parent layers to another layer (or remove the parent), keeping their current position on screen, or with jump (Alt/Option while parenting): the child takes the parent's transform and jumps to it
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| parent | integer | no | Parent layer index; omit to remove the parent |
| jump | boolean | no | Parent with jump: keep the child's transform values relative to the new parent instead of its place on screen. Default false |
Use another layer as a layer's track matte (alpha, alpha inverted, luma, luma inverted), or remove the matte
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| matteLayer | integer | no | Matte layer index |
| type | string | no | Default alpha; none removes the matte |
Change the stacking order: move layers to the top, to the bottom, or before or after another layer
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| order | string | yes | — |
| relativeTo | integer | no | Layer index, for before and after |
Duplicate layers (Edit > Duplicate), or copy them into another composition
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| toComp | integer | no | Copy into this composition (id) instead |
Delete layers from a composition
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — |
Add a mask to layers: a rectangle or ellipse from bounds, or a path from points, all in the layer's own pixel coordinates; with its mode, feather, opacity, expansion and inversion
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| shape | string | no | Default rectangle |
| bounds | object | no | Rectangle or ellipse bounds |
| points | array | no | Path points [[x, y], ...] |
| closed | boolean | no | Path: closed. Default true |
| mode | string | no | Default add |
| feather | number | no | Pixels |
| opacity | number | no | — |
| expansion | number | no | Pixels |
| inverted | boolean | no | — |
| name | string | no | — |
List the masks on layers (Timeline panel, Masks group): index, name, mode, inversion, lock, colour, RotoBezier, motion blur, feather falloff, feather, opacity, expansion, selection and vertex count; optionally each path's vertices, tangents and feather points
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| masks | no | — | |
| paths | boolean | no | Include each mask path: vertices, tangents, closed and variable-width feather points. Default false |
Change masks on layers (Layer > Mask): mode, inversion, lock (or lock every other mask: Lock Other Masks; unlock them all: Unlock All Masks), outline colour, RotoBezier, Motion Blur (same as layer, on, off), Feather Falloff (smooth, linear), feather, opacity, expansion, name and selection
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| masks | no | — | |
| mode | string | no | Mask mode |
| inverted | boolean | no | Invert the mask |
| locked | boolean | no | Lock or unlock the masks (false with masks omitted: Unlock All Masks) |
| lockOthers | boolean | no | Lock every other mask on the layer (Lock Other Masks) |
| color | no | Mask outline colour in the viewers and Timeline, "#RRGGBB" or "rgb(r,g,b)" | |
| rotoBezier | boolean | no | RotoBezier: curves calculated through the vertices |
| motionBlur | string | no | Mask motion blur (Layer > Mask > Motion Blur) |
| featherFalloff | string | no | Feather falloff curve (Layer > Mask > Feather Falloff) |
| feather | number | no | Feather in pixels, both directions |
| opacity | number | no | Mask opacity, percent |
| expansion | number | no | Mask expansion in pixels |
| name | string | no | Rename the mask (one mask per layer only) |
| selected | boolean | no | Select or deselect the masks |
Delete masks (or all of them: Layer > Masks > Remove All Masks), duplicate them (Edit > Duplicate), select them or move the selection to the next or previous mask, toggle Layer > Mask > Hide Locked Masks, or limit an effect to masks (the effect's Compositing Options > Mask Reference)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| masks | no | — | |
| action | string | yes | delete (every mask when masks is omitted), duplicate, select (only these), select_next or select_previous (from the selected mask on each layer), toggle_hide_locked (Hide Locked Masks on the layers), |
| effect | string/integer | no | reference_in_effect: the effect on the layer, by name or 1-based index in the Effect Controls panel |
Edit a mask path or a shape layer's Path property: replace its vertices and tangents, make another vertex the first (Layer > Mask and Shape Path > Set First Vertex), reverse its direction, move, scale and rotate all its points about an anchor (as Free Transform Points does), or set variable-width…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| mask | string/integer | no | The mask, by name or 1-based index |
| property | no | Instead of mask: a shape layer Path property, a path of match names or names from the layer, e.g. ["ADBE Root Vectors Group", "Shape 1", "ADBE Vectors Group", "Path 1", "ADBE Vector Shape"] | |
| vertices | array | no | Replace the path: vertices [[x, y], ...] |
| inTangents | array | no | With vertices: in tangents relative to each vertex; default none |
| outTangents | array | no | With vertices: out tangents relative to each vertex; default none |
| closed | boolean | no | With vertices: closed path. Default true |
| firstVertex | integer | no | Make this vertex (0-based) the first one of a closed path |
| reverse | boolean | no | Reverse the order of the vertices (the path direction) |
| transform | object | no | Transform every point together about an anchor, as Free Transform Points does |
| featherPoints | array | no | Masks: replace the variable-width feather points ([] removes them) |
| time | number | no | Seconds: set a keyframe at this time. Default: the static value, or a keyframe at the current time when the path is animated |
| allKeyframes | boolean | no | Apply firstVertex, reverse, transform or featherPoints to every keyframe of an animated path |
Choose the active tool in the Tools panel (shape and mask tools: Rectangle, Rounded Rectangle, Ellipse, Polygon, Star; Pen, Add Vertex, Delete Vertex, Convert Vertex, Mask Feather; Brush, Clone Stamp, Eraser; Roto Brush, Refine Edge; or Selection), and/or open the Paint, Brushes or Content-Aware…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tool | string | no | Tool to make active |
| panel | string | no | Panel to open from the Window menu |
List the paint strokes on layers (Paint effects made with the Brush, Clone Stamp and Eraser tools) and the Roto Brush & Refine Edge effects, with every setting's name and value, so set_paint_strokes and set_roto_brush can address them
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — |
Change or keyframe existing paint strokes (Paint effect, Timeline panel): Start and End (write-on), colour, diameter, hardness, opacity, flow and the other brush settings, a clone stroke's Clone Position, Clone Time and Clone Time Shift, the stroke's Transform, and the effect's Paint on…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effect | no | — | |
| strokes | array | no | Strokes by name (e.g. "Brush 1", "Clone 2") or 1-based index; omit for every stroke |
| paintOnTransparent | boolean | no | The Paint effect's Paint on Transparent switch |
| time | number | no | Seconds: set keyframes at this time (animates the strokes). Default: static values, or keyframes at the current time on animated properties |
Set the Roto Brush & Refine Edge effect's settings on layers (Effect Controls panel): propagation (Search Radius, View Search Radius, Motion Threshold, Motion Damping, Edge Detection, Enable Classic Controls, Use Alternate Color Estimation), matte (Feather, Contrast, Shift Edge, Reduce Chatter,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effect | no | — | |
| matte | string | no | Which matte group feather, contrast, shiftEdges, reduceChatter and smooth apply to. Default roto |
| settings | object | no | Settings to change |
| properties | object | no | Any other setting of the effect by name or match name, to a number or true/false |
| time | number | no | Seconds: set keyframes at this time |
Describe the open project: file, unsaved changes, bit depth, working colour space, expression engine, item counts by type, the active item and the render queue
No parameter schema on file.
List project items (compositions, footage, folders) with their id, type, folder and size. Ids are what other tools take
| Parameter | Type | Required | Notes |
|---|---|---|---|
| type | string | no | Only this type |
| folder | integer | no | Only items inside this folder (id) |
Import files into the project (File > Import): footage, image sequences, layered Photoshop or Illustrator files as footage or compositions, another After Effects or Premiere Pro project, data files (JSON, mgJSON, CSV, TSV), or a .jsx expression library that expressions call through…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| files | array | yes | Absolute paths |
| importAs | string | no | Default footage |
| sequence | boolean | no | Import the numbered files after each as an image sequence. Default false |
| folder | integer | no | Put the items in this folder (id) |
Add a folder to the Project panel, optionally inside another folder, and move items into it
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | — |
| parent | integer | no | Parent folder id |
| items | array | no | Item ids to move into the new folder |
Rename, move to a folder, set the label colour of, or delete project items
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | yes | Item ids |
| rename | string | no | New name (one item only) |
| folder | integer | no | Move into this folder (id); 0 for the root |
| label | integer | no | Label colour number, 0 = none |
| delete | boolean | no | Delete the items. Default false |
Save the project in place, or as a new .aep file (the project then refers to it)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| filePath | string | no | Absolute .aep path. Omit to save in place |
Open an .aep project, an .aet template (which opens as an untitled copy) or a .mogrt Motion Graphics template as a project, or start a new empty one. Unsaved changes in the current project are discarded, so save first
| Parameter | Type | Required | Notes |
|---|---|---|---|
| filePath | string | no | Absolute .aep, .aepx, .aet or .mogrt path. Omit for a new project |
Remove unused footage, consolidate duplicate footage, or reduce the project to the chosen compositions and what they use (File > Dependencies)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| operation | string | yes | — |
| keep | array | no | reduce_project: composition ids to keep |
Save a copy of the project while it keeps its own file (File > Save As > Save a Copy), or a copy in the text-based XML format (Save a Copy As XML, .aepx). The project must have been saved; saveFirst saves it in place first
| Parameter | Type | Required | Notes |
|---|---|---|---|
| filePath | string | yes | Absolute path of the copy: .aep, or .aepx for XML |
| saveFirst | boolean | no | Save unsaved changes in place first, so the copy includes them. Default false |
Project file commands: close the project (File > Close Project), revert to the last saved version (File > Revert), open the most recent project (File > Open Recent), or save a numbered copy and continue in it (File > Increment and Save). Close, revert and open_most_recent can lose unsaved work
| Parameter | Type | Required | Notes |
|---|---|---|---|
| command | string | yes | The command |
| unsaved | string | no | close, open_most_recent: what to do with unsaved changes. Required when there are any |
Read or change project settings (File > Project Settings): time display style (timecode or frames), footage start time, feet + frames and film type, frame count start, colour depth, expression engine, and the transparency grid in Project panel thumbnails. With no changes it returns the current…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| timeDisplay | string | no | Time Display Style |
| footageStart | string | no | Timecode: Footage Start Time from the source media or 00:00:00:00 |
| feetAndFrames | boolean | no | Frames: Use Feet + Frames |
| filmType | string | no | Feet + Frames film |
| frameCount | string | no | Frames: Frame Count |
| bitsPerChannel | integer | no | Colour depth in bits per channel |
| expressionEngine | string | no | Expressions engine |
| transparencyGridThumbnails | boolean | no | Thumbnail Transparency Grid in the Project panel |
Search the project like the Project panel search field (File > Find): items whose name or comment contains text, and items that are missing, unused or used, optionally of one type
| Parameter | Type | Required | Notes |
|---|---|---|---|
| text | string | no | Text to find in names and comments (case-insensitive) |
| status | string | no | missing: footage whose file cannot be found; unused or used in any composition |
| type | string | no | Only this type |
Select items in the Project panel: replace the selection, add to it (extend the selection), remove from it, or clear it; optionally show the Project panel. Menu commands act on this selection
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | no | Item ids. Omit or leave empty with mode replace to clear the selection |
| mode | string | no | Default replace |
| showPanel | boolean | no | Show the Project panel. Default false |
Set the Comment column text of project items; an empty comment clears it
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | yes | Item ids |
| comment | string | yes | Comment text |
Find missing footage, effects or fonts (File > Dependencies > Find Missing Footage, Find Missing Effects, Find Missing Fonts). Footage and fonts are listed; reveal also runs the menu command, which shows them in the Project or Timeline panel. Missing effects can only be revealed
| Parameter | Type | Required | Notes |
|---|---|---|---|
| kind | string | yes | What to look for |
| reveal | boolean | no | Run the Find Missing menu command too. Default false; always true for effects |
List the fonts the project uses, marking ones that are missing and substituted (as in the Resolve Fonts dialog), or replace fonts across every text layer
| Parameter | Type | Required | Notes |
|---|---|---|---|
| replace | array | no | Replacements to make, by PostScript name. Omit to list fonts |
Read or replace the project's XMP metadata (shown in the Metadata panel and in Adobe Bridge). showPanel toggles Window > Metadata
| Parameter | Type | Required | Notes |
|---|---|---|---|
| xmp | string | no | A complete XMP packet (x:xmpmeta) that replaces the project's. Omit to read it |
| showPanel | boolean | no | Toggle the Metadata panel. Default false |
List a shape layer's Contents (Timeline panel): groups, paths, fills, strokes and path operations as a tree with their type and match name, optionally with every property value
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| group | no | — | |
| values | boolean | no | Include each item's property values. Default false |
Add shapes to shape layers (the Timeline panel's Add menu), or to a new shape layer: groups (which can hold items of their own), rectangle, ellipse, polystar and free paths, fill, stroke, gradient fill and gradient stroke, and the path operations Merge Paths, Offset Paths, Pucker & Bloat,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | no | Shape layers to add to; omit to create a new shape layer | |
| layerName | string | no | Name of the new shape layer when layers is omitted |
| group | no | — | |
| items | array | yes | Items to add, in order (paint and operations act on the paths above them in the same group) |
| time | number | no | Seconds: set the values as keyframes at this time |
Change settings of existing shape items: group Transform and Blend Mode; rectangle, ellipse, polystar and path geometry and Reverse Path Direction; fill and stroke colour, opacity, Stroke Width, Line Cap, Line Join, Dashes, Taper, Wave, Fill Rule and Composite; gradient type, Start and End Point…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| group | no | — | |
| items | array | yes | Items in the group, by name or 1-based index |
| name | string | no | Rename the item (one item only) |
| enabled | boolean | no | Turn the items on or off (eye switch) |
| time | number | no | Seconds: set keyframes at this time. Default: static values, or keyframes at the current time on animated properties |
Rearrange shape items in a group: delete, duplicate, move to a position, Group Shapes (wrap the items in a new group), Ungroup Shapes (dissolve groups) or Convert To Bezier Path (turn a rectangle, ellipse or polystar into a free path). Grouping, ungrouping and converting open the composition and…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| group | no | — | |
| items | array | yes | Items in the group, by name or 1-based index |
| action | string | yes | What to do with the items |
| toIndex | integer | no | move: the new 1-based position in the group |
Convert Illustrator, PDF or SVG footage layers to shape layers (Layer > Create > Create Shapes from Vector Layer). Each new shape layer is placed above its source, which is turned off
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | Vector footage layers: indexes (1-based), names, or selected: true |
Set camera layer options (Layer > Camera Settings, and Camera Options in the Timeline): zoom, F-Stop, depth of field, focus distance, aperture, blur level, iris shape, rotation, roundness, aspect ratio and diffraction fringe, highlight gain, threshold and saturation, and Point of Interest. Values…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | Which camera layers. Give indexes (1-based, from list_layers), names, or selected: true | |
| depthOfField | boolean | no | Depth of Field on or off; the Advanced 3D renderer renders it in-engine |
| fStop | number | no | F-Stop (Camera Settings): sets Aperture to Zoom divided by the F-Stop. Not with aperture |
| irisShape | string | no | Iris Shape |
| pointOfInterest | no | — | |
| time | no | — |
Set light layer options (Layer > Light Settings, and Light Options in the Timeline): light type, intensity, colour, cone angle and feather, falloff type, radius and falloff distance, casts shadows, shadow darkness and diffusion, Point of Interest, and an environment light's source layer. Values…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | Which light layers. Give indexes (1-based, from list_layers), names, or selected: true | |
| lightType | string | no | Light Type |
| color | no | Light colour: "#RRGGBB" or "rgb(r,g,b)" (0-255) | |
| falloff | string | no | Falloff type |
| castsShadows | boolean | no | Casts Shadows (spot, parallel and environment lights). Layers also need Material Options > Casts Shadows on |
| pointOfInterest | no | — | |
| lightSource | integer | no | Environment lights: index of the 2D layer in the same composition to light the scene with (Light Options > Source) |
| time | no | — |
Set a 3D layer's Material Options: casts shadows (off, on, only), light transmission, accepts shadows (off, on, only: a shadow catcher), accepts lights, ambient, diffuse, specular intensity and shininess, metal, appears in reflections, reflection intensity, sharpness and rolloff, transparency and…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | Which 3D layers. Give indexes (1-based, from list_layers), names, or selected: true | |
| castsShadows | string | no | — |
| acceptsShadows | string | no | — |
| appearsInReflections | string | no | — |
| acceptsLights | boolean | no | Accepts Lights: off leaves the layer unlit |
| environmentLayer | boolean | no | Layer > Environment Layer: use this footage or precomposition layer as the spherical environment for reflections (Cinema 4D renderer; Advanced 3D uses environment lights instead) |
| time | no | — |
Set a 3D layer's Geometry Options: extrude and bevel text and shape layers (bevel style, bevel depth, hole bevel depth, extrusion depth) or bend footage and precomposition layers (curvature, segments). Extrusion needs the Advanced 3D or Cinema 4D renderer (set_comp_3d_settings). Values are…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | Which 3D layers. Give indexes (1-based, from list_layers), names, or selected: true | |
| bevelStyle | string | no | Bevel Style (text and shape layers) |
| time | no | — |
Choose a composition's 3D renderer (Composition Settings > 3D Renderer: Classic 3D, Advanced 3D or Cinema 4D) and turn Draft 3D on or off (Composition panel). With no settings it reports the renderer, the installed renderers, Draft 3D and the active camera
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| renderer | string | no | …, or a renderer id from this tool's renderers list |
| draft3d | boolean | no | Draft 3D: preview the scene in real time at draft quality |
Change the 3D view of a composition's Composition panel (View menu): switch to the active camera, front, left, top, back, right, bottom or a custom view (View > Switch 3D View) or the last view, reset the view, look at the selected or all layers, or create a camera from the current view. Opens the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| view | string | no | The view to switch to (View > Switch 3D View; last = View > Switch to Last 3D View) |
| action | string | no | Instead of a view: View > Reset 3D View, Look at Selected Layers, Look at All Layers, or Create Camera from 3D View |
Run a Layer > Camera or Layer > Light command on a layer: link the focus distance to the Point of Interest or to another layer, set the focus distance to another layer once, create an orbit null, create a stereo 3D rig (whose Stereo 3D Controls set_property can change), or create cameras or lights…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| command | string | yes | — |
| layer | integer | yes | The camera layer index (focus, orbit null and stereo commands) or the 3D model layer index (create cameras or lights) |
| target | integer | no | link_focus_to_layer and set_focus_to_layer: the layer to focus on |
Choose a camera navigation tool in the Tools panel: the Unified Camera tool, Orbit (around the cursor, the scene or the camera's Point of Interest), Pan (Track XY) or Dolly (Track Z). Navigating with the tool in a viewer is done by hand
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tool | string | yes | orbit, pan and dolly are the camera-centred variants |
Set up tracking from the Animation menu on one layer: Track Motion (adds a point tracker and opens the layer in the Layer panel), Track Mask (the mask tracker for the chosen masks), Track this Property (a track that drives the chosen property), Paste Mocha mask (Edit menu), Track in Boris FX…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | track_motion, track_mask, track_property, paste_mocha_mask, track_in_mocha, tracker_panel (Window > Tracker) or workspace (Motion Tracking workspace) |
| comp | no | — | |
| layers | no | — | |
| masks | array | no | track_mask: mask indexes (1-based); omit for every mask on the layer |
| property | no | track_property: the property the track drives. … | |
| time | no | Move the current time here first (tracking starts from the current time) |
Apply Warp Stabilizer VFX to layers (Animation > Warp Stabilizer VFX), or change the one already applied, and set its controls: Result, Smoothness, Method, Preserve Scale, Framing, Auto-scale, Additional Scale, Detailed Analysis, Rolling Shutter Ripple, Crop Less <-> Smooth More, synthesis…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| addNew | boolean | no | Add another instance even when the layer already has Warp Stabilizer. Default false: change the existing one |
| result | string | no | Result: smooth the camera move or remove it |
| smoothness | number | no | Smoothness percent (Smooth Motion) |
| method | string | no | Method: the most complex stabilization allowed |
| preserveScale | boolean | no | Preserve Scale |
| framing | string | no | Framing: how moving edges are handled |
| maximumScale | number | no | Auto-scale > Maximum Scale percent |
| actionSafeMargin | number | no | Auto-scale > Action-Safe Margin percent |
| additionalScale | number | no | Additional Scale percent |
| detailedAnalysis | boolean | no | Advanced > Detailed Analysis |
| rollingShutterRipple | string | no | Advanced > Rolling Shutter Ripple |
| cropLessSmoothMore | number | no | Advanced > Crop Less <-> Smooth More percent |
| synthesisInputRange | number | no | Advanced > Synthesis Input Range, seconds |
| synthesisEdgeFeather | number | no | Advanced > Synthesis Edge Feather |
| synthesisEdgeCropping | object | no | Advanced > Synthesis Edge Cropping, pixels trimmed from each edge |
| objective | string | no | Objective: stabilize, reverse, or apply the motion to a target layer |
| targetLayer | integer | no | Target Layer index for the apply_motion_to_target objectives |
| trackPointSize | number | no | Advanced > Track Point Size percent |
Track the camera of footage layers (Animation > Track Camera): apply the 3D Camera Tracker effect, or change the one already applied, and set Solve Method, Detailed Analysis, Auto-delete Points Across Time and Hide Warning Banner. After Effects analyses the layer in the background; creating a…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| addNew | boolean | no | Add another instance even when the layer already has 3D Camera Tracker. Default false: change the existing one |
| solveMethod | string | no | Advanced > Solve Method: a hint about the scene |
| detailedAnalysis | boolean | no | Advanced > Detailed Analysis |
| autoDeletePoints | boolean | no | Advanced > Auto-delete Points Across Time |
| hideWarningBanner | boolean | no | Advanced > Hide Warning Banner |
Read tracking results from layers: each tracker's track points (Feature Center, Feature Size, Search Offset, Search Size, Confidence, Attach Point, Attach Point Offset), or the Face Measurements and Face Track Points that detailed face tracking records, at a time and optionally every keyframe
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| source | string | no | trackers (Motion Trackers) or face (the face-tracking effects) |
| time | no | Read values at this time in seconds. Default: the current time | |
| keyframes | boolean | no | Also list each property's keyframes (time and value) |
| limit | integer | no | Most keyframes per property |
Edit a track point on a layer's tracker (created by start_tracking track_motion): Feature Center, Feature Size, Search Offset, Search Size, Attach Point and Attach Point Offset, in pixels. With a time, or when the property is already keyframed, it sets a keyframe; otherwise the static value
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| tracker | no | Tracker index (1-based) or name, e.g. "Tracker 1". Default 1 | |
| point | no | Track point index (1-based) or name, e.g. "Track Point 1". Default 1 | |
| time | no | Set keyframes at this time in seconds | |
| featureCenter | array | no | Feature Center [x, y] |
| featureSize | array | no | Feature Size [width, height] |
| searchOffset | array | no | Search Offset [x, y] from the feature centre |
| searchSize | array | no | Search Size [width, height] |
| attachPoint | array | no | Attach Point [x, y] |
| attachPointOffset | array | no | Attach Point Offset [x, y] from the feature centre |
Read a layer property: its value, keyframes (time, value, interpolation) and expression. Properties are named by a shortcut or a path of match names or names; this includes the Data group of a data-driven layer
| Parameter | Type | Required | Notes |
|---|---|---|---|
| time | number | no | Also read the value at this time (seconds) |
Set a property's value, as in the Timeline or Properties panel (layer Transform, shape, camera and light options, effect properties): with no time and no keyframes the static value, otherwise a keyframe at the time (or the current time). Text layers' Source Text takes a string
| Parameter | Type | Required | Notes |
|---|---|---|---|
| value | yes | A number, an array of numbers, text, or true/false | |
| time | number | no | Seconds: set a keyframe at this time |
Add keyframes to a property at several times, with their values, and optionally the interpolation (linear, bezier, hold) and easing (Easy Ease influence and speed) for each
| Parameter | Type | Required | Notes |
|---|---|---|---|
| keyframes | array | yes | — |
Remove keyframes from a property: all of them, or those between two times
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | number | no | Seconds |
| to | number | no | Seconds |
Write an expression on a property, as typed in the expression editor (or clear it with an empty string), and report any expression error After Effects finds. The expression can use the whole expression language: global objects (thisComp, thisLayer, time, value), time conversion, vector math,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| expression | string | yes | Expression source; "" removes it |
| enabled | boolean | no | Default true |
Bake a property's expression into a keyframe on every frame and switch the expression off, keeping its text (Animation > Keyframe Assistant > Convert Expression to Keyframes). Keyframes already in the span are replaced
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | number | no | Start (seconds). Default the layer's in point |
| to | number | no | End (seconds). Default the layer's out point |
Choose the engine that evaluates the project's expressions (File > Project Settings > Expressions): javascript (the default, faster, modern syntax) or extendscript (Legacy ExtendScript, for old expressions)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| engine | string | yes | javascript or extendscript |
Free memory or disk cache (Edit > Purge): all memory and disk cache, all memory, undo history, image cache memory, snapshots, all disk cache, all 3D cache, or all cache. Purging undo means earlier steps can no longer be undone
| Parameter | Type | Required | Notes |
|---|---|---|---|
| targets | array | yes | What to purge, in order |
Run an Edit menu command: Undo or Redo (several steps back or forward through Edit > History), Cut, Copy, Paste, Select All, Deselect All, or Select Label Group. They act on the focused panel and its selection; give comp to focus that composition first. Copied layers can be pasted into Premiere Pro
| Parameter | Type | Required | Notes |
|---|---|---|---|
| command | string | yes | The Edit menu command |
| times | integer | no | Undo or Redo: how many steps. Default 1 |
| comp | no | Focus this composition's viewer first (item id or name). Omit to act on whatever panel has focus |
Describe the running After Effects and the computer: version, build, language, memory in use, render-engine and watch-folder modes, operating system, the project's GPU acceleration (File > Project Settings) and the types available, whether viewer updates are paused, and the values of preference…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| preferences | array | no | Preference keys to read from the preferences files |
Change application and project performance settings: memory limits (Preferences > Memory & Performance), the project's Mercury GPU acceleration (File > Project Settings), whether preferences are saved on quit, and the preferences the scripting guide documents (expand flowchart compositions,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| imageCachePercent | number | no | Image cache size as a percent of memory; give with maximumMemoryPercent |
| maximumMemoryPercent | number | no | Maximum memory After Effects may use, as a percent of installed RAM; the rest stays reserved for other applications |
| gpuAcceleration | string | no | Project GPU acceleration; must be one the computer offers (see get_aftereffects_info) |
| savePreferencesOnQuit | boolean | no | Save preferences when After Effects quits |
| expandFlowchartComps | boolean | no | Flowchart: expand compositions by default |
| javascriptDebugger | boolean | no | Scripting & Expressions: enable the JavaScript debugger |
Read, save or check a saved script setting (app.settings): text values kept in the After Effects preferences between sessions, under a section and key of your choosing. Values are stored as text, at most 1999 bytes
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | get reads the value, save stores it, has checks it exists |
| section | string | yes | Section name, e.g. your script's name |
| key | string | yes | Key name |
| value | string | no | save: the text to store |
| file | no | — |
Quit After Effects (After Effects > Quit, or File > Exit on Windows). Unsaved changes are refused unless you choose to save or discard them. After Effects quits a moment after the call returns
| Parameter | Type | Required | Notes |
|---|---|---|---|
| unsavedChanges | string | no | What to do if the project has unsaved changes: refuse (default, the call fails), save to its file, or discard |
Set layers' Audio Levels (the Audio group, L in the Timeline) in decibels: a static value, or keyframes at times (Animation > Add Audio Levels Keyframe)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| levels | no | — | |
| keyframes | array | no | Instead of levels: keyframes, each a time and levels |
Play layers faster or slower with time remapping (Layer > Time > Enable Time Remapping), which also raises or lowers the pitch of their audio. Replaces any Time Remap keyframes with a constant speed and moves the Out point to the new end
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| speedPercent | number | yes | Playback speed: 100 is normal, 200 twice as fast and an octave higher, 50 half speed. Keep audio under about 200 |
Run an audio command on layers: Convert Audio to Keyframes (Animation > Keyframe Assistant), which adds an Audio Amplitude layer with Slider keyframes, or Edit in Adobe Audition (Edit menu), which opens the layer's audio file in Audition when it is installed
| Parameter | Type | Required | Notes |
|---|---|---|---|
| command | string | yes | The command |
| comp | no | — | |
| layers | yes | The audio layers to select first (1-based indexes, names, or selected: true) |
Run an ExtendScript file in After Effects (File > Scripts > Run Script File) as one undo step with dialogs suppressed, or schedule it to run after a delay (optionally repeating) and cancel a scheduled run, or run a script listed in the File > Scripts menu by its file name. Scripts run unrestricted
| Parameter | Type | Required | Notes |
|---|---|---|---|
| file | string | no | Absolute path to a .jsx, .jsxbin or .js file |
| undoName | string | no | Name of the undo step (Edit > Undo). Default "Run script" |
| delaySeconds | number | no | With file: run it this long from now instead of now, and return the task id |
| repeat | boolean | no | With delaySeconds: run again every delaySeconds until cancelled. Default false |
| cancelTask | integer | no | Cancel a scheduled run by the task id it returned |
| scriptsMenuItem | string | no | Run the script shown in File > Scripts with this name, e.g. "Demo Palette.jsx" |
Build a Motion Graphics template from a composition (Essential Graphics panel): add layer properties as controls, name the template, open the composition in the Essential Graphics panel, or export it as a .mogrt file. Returns the template's controls
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| action | string | yes | What to do |
| layers | no | add_property: the layers whose property to add | |
| property | no | add_property: … | |
| name | string | no | add_property: the control's name (default the property name); set_name: the template name |
| folder | string | no | export: absolute folder for the .mogrt (default the Essential Graphics templates folder) |
| overwrite | boolean | no | export: replace an existing file. Default false |
Work with Team Projects (File > Team Project): check sign-in and status, list team projects, create or open one, share your changes with a comment, get the latest changes, resolve conflicts, convert the open team project to a local .aep, or close it. Needs a Creative Cloud sign-in with Team…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | What to do; status reports sign-in and which commands are available |
| name | string | no | create, open: the team project name |
| description | string | no | create: a description |
| comment | string | no | share: a comment for collaborators |
| resolution | string | no | resolve: keep the shared version, keep it and a copy of yours, or keep yours |
| file | string | no | convert: absolute path of the .aep or .aet to write |
Read the project's colour settings (File > Project Settings > Color): bit depth, working colour space, working gamma, Linearize Working Color Space, Blend Colors Using 1.0 Gamma and Compensate for Scene-referred Profiles, and optionally the ICC colour profiles that can be the working space
| Parameter | Type | Required | Notes |
|---|---|---|---|
| listProfiles | boolean | no | Also list the colour profiles available as working spaces |
| query | string | no | Only profiles whose description contains this text (case-insensitive) |
Change the project's colour settings (File > Project Settings > Color): bit depth (8, 16 or 32 bpc, where 32 is high dynamic range float), working colour space (a profile from get_color_management, or "" for None), working gamma, Linearize Working Color Space, Blend Colors Using 1.0 Gamma and…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| bitsPerChannel | integer | no | Bit depth: 8, 16 or 32 (floating point, high dynamic range) |
| workingSpace | string | no | Working colour space: a profile description from get_color_management listProfiles, or "" for None |
| workingGamma | number | no | Working gamma when the working space is None |
| linearizeWorkingSpace | boolean | no | Linearize Working Color Space |
| linearBlending | boolean | no | Blend Colors Using 1.0 Gamma |
| compensateForSceneReferredProfiles | boolean | no | Compensate for Scene-referred Profiles |
Display colour in the Composition panel (View menu): turn Use Display Color Management on or off (the command toggles it; scripts cannot read its state), choose a Simulate Output preset (display colour management must be on), or open the Lumetri Scopes panel. Applies to the composition opened in…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| action | string | yes | toggle_display_color_management, simulate_output or lumetri_scopes |
| output | string | no | simulate_output: the output to simulate (none turns simulation off) |
| comp | no | Open this composition in the viewer first. Omit to use the active viewer |
Apply a colour effect (Effect > Color Correction or Utility) to layers, or to a new adjustment layer at the top of the composition so it affects everything below and final renders: Lumetri Color, Curves, Levels, Hue/Saturation, Exposure and other grading effects; Broadcast Colors to keep output…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| effect | string | yes | The colour effect |
| comp | no | — | |
| layers | no | Apply to these layers. …. Omit with adjustmentLayer: true | |
| adjustmentLayer | boolean | no | Apply to a new adjustment layer spanning the composition, at the top |
| layerName | string | no | Name of the new adjustment layer. Default: the effect name |
| broadcastLocale | string | no | broadcast_colors: Broadcast Locale |
| broadcastMethod | string | no | broadcast_colors: How To Make Color Safe |
| maxSignalIre | number | no | broadcast_colors: Maximum Signal Amplitude (IRE) |
| properties | object | no | Control display names to values (numbers, arrays, booleans; menus take their 1-based item number), e.g. { "Exposure": 0.5 } |
Make compositions from footage or compositions in the Project panel (File > New Comp from Selection): one per item, or one holding them all, sized and timed from an item, optionally with the layers in sequence and added to the Render Queue
| Parameter | Type | Required | Notes |
|---|---|---|---|
| items | array | yes | Project item ids (from list_items) |
| mode | string | no | each: one composition per item (the default); single: one composition with every item as a layer, the first on top |
| name | string | no | single: the composition name; default the first item's name |
| useDimensionsFrom | integer | no | single: the item id whose size and frame rate the composition takes; default the first item |
| stillDuration | number | no | Seconds for still images. Default 5 |
| sequenceLayers | boolean | no | single: place the layers one after another in time |
| overlap | number | no | sequenceLayers: seconds each layer overlaps the one before |
| addToRenderQueue | boolean | no | Add each new composition to the Render Queue |
Composition and work-area commands: Trim Comp to Work Area, Crop Comp to Region of Interest (needs a region drawn in the Composition panel), Set Poster Time, Lift Work Area and Extract Work Area (on the given layers, or all), set the work area to the layers' span, Composition Flowchart, and Reveal…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| action | string | yes | The command |
| layers | no | — | |
| time | number | no | set_poster_time: seconds; default the current time |
Composition and layer markers (Layer > Add Marker, the Marker dialog): list, add (or set a numbered composition marker 0-9), edit comment, duration, chapter, web link, cue point, label and protected region, remove one or all, move the current time to a marker, or Update Markers From Source. Give…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | no | — | |
| action | string | yes | list, add, update, remove, remove_all, go_to, update_from_source (layers whose source has markers) |
| at | no | — | |
| marker | integer | no | update, remove, go_to: the marker's number in time order (1 = first), instead of at |
| number | integer | no | Composition markers: the numbered marker 0-9 (add moves it if it exists; update, remove, go_to find it) |
| comment | string | no | — |
| duration | number | no | Seconds |
| chapter | string | no | — |
| url | string | no | Web link |
| frameTarget | string | no | Web link frame target |
| cuePointName | string | no | — |
| eventCuePoint | boolean | no | Cue point type: true event, false navigation |
| parameters | object | no | Cue point parameters, name to value |
| label | integer | no | Label colour (0 none) |
| protectedRegion | boolean | no | Protected region (composition markers with a duration) |
Create a composition (Composition > New Composition) with a size, pixel aspect, duration, frame rate and background colour, optionally in a folder, and open it
| Parameter | Type | Required | Notes |
|---|---|---|---|
| folder | integer | no | Folder id |
Change a composition's settings (Composition > Composition Settings): name, size, pixel aspect, duration, frame rate, resolution, start timecode or frame, drop-frame timecode, background, motion blur (shutter angle and phase, samples), nesting options and work area; and its Timeline switches…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — |
Duplicate a composition (Edit > Duplicate), optionally renaming the copy
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| name | string | no | — |
Pre-compose layers into a new composition (Layer > Pre-compose), moving all attributes or leaving them in the original
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| name | string | yes | — |
| moveAllAttributes | boolean | no | Move all attributes into the new composition. Default true |
Open a composition in the Composition panel and make it the active one
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — |
Add a composition marker at a time, with a comment, duration, chapter and web link
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| time | number | yes | Seconds |
| comment | string | no | — |
| duration | number | no | Seconds |
| chapter | string | no | — |
| url | string | no | — |
Save one frame of a composition as a PNG file (Composition > Save Frame As)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| time | number | yes | Seconds |
| outputFile | string | yes | Absolute .png path |
List the effects installed in After Effects with their display name, match name and category, filtered by a search string. Match names are what apply_effect takes most reliably
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | — |
| limit | integer | no | — |
Apply an effect to layers (Effect menu) by match name (e.g. "ADBE Gaussian Blur 2") or display name, optionally setting its properties by name, e.g. { "Blurriness": 20 }
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effect | string | yes | Match name or display name |
| name | string | no | Rename the applied effect |
| properties | object | no | Property display names to values (numbers, arrays, booleans) |
List the effects on layers, in order, with each effect's properties and values
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — |
Remove effects from layers by name or index, or all of them, or turn them off and on
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| effects | array | no | Effect names; omit for all |
| enabled | boolean | no | Turn the effects on or off instead of removing them |
Apply an animation preset (.ffx) to layers (Animation > Apply Animation Preset)
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| presetFile | string | yes | Absolute .ffx path |
Open a composition in the Essential Graphics panel as its primary composition (Composition > Open in Essential Graphics), set the template name, rename controls, and list the controls
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| open | boolean | no | Open the composition in the Essential Graphics panel. Default true |
| templateName | string | no | Template name shown in the panel and in Premiere Pro; also the exported file name |
| renameControls | array | no | Controls to rename |
Add controls to a composition's Essential Graphics panel (Animation > Add Property to Essential Graphics): properties such as Source Text, colours, sliders, checkboxes, angles, 2D points and scale, Dropdown Menu Controls (optionally setting their menu items) and 3D shadow colour, or footage and…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| controls | array | yes | Controls to add, in order |
Protect part of a composition's timing so it keeps its length when the composition is nested or the template is stretched (Composition > Responsive Design - Time > Create Intro, Create Outro or Create Protected Region from Work Area), or protect a custom span: a composition marker with Protected…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| region | string | yes | intro: the first 15% of the duration; outro: the last 15%; work_area; custom: start and duration |
| start | number | no | custom: start, seconds |
| duration | number | no | custom: duration, seconds |
| comment | string | no | Marker comment |
Export a composition as a Motion Graphics template (.mogrt) (File > Export > Export As Motion Graphics Template) to the Local Templates Folder or a folder on a local drive. The file is named after the template name
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| folder | string | no | Absolute folder to save into. Omit for the Local Templates Folder (Essential Graphics templates) |
| templateName | string | no | Set the template name (and file name) first. Default: the current template name, or the composition name |
| overwrite | boolean | no | Replace a file of the same name. Default false |
Time remapping (Layer > Time): enable or disable it, Freeze Frame at a time, Freeze On Last Frame (extend the layer to the composition end holding its last frame), hold one frame between two times and then resume, or set Time Remap keyframes saying which source time shows at each composition time…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| action | string | yes | enable, disable, freeze_frame (at), freeze_on_last_frame, hold (from, to), set_keyframes (keyframes) |
| at | no | — | |
| from | number | no | hold: composition time (seconds) whose frame is held |
| to | number | no | hold: composition time (seconds) where playback resumes |
| keyframes | array | no | set_keyframes: Time Remap keyframes |
Frame blending (Layer > Frame Blending): set layers to Off, Frame Mix or Pixel Motion (the layer's Frame Blending switch), and turn the composition's Enable Frame Blending switch on or off, without which layer frame blending is not previewed
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | no | — | |
| mode | string | no | For the layers: off, frame_mix or pixel_motion |
| compSwitch | boolean | no | The composition's Enable Frame Blending switch |
Time-stretch layers (Layer > Time > Time Stretch, the Stretch column): to a percentage or a new length, holding the In point, the current time or the Out point in place; or stretch so the In or Out point lands on a time (Ctrl/Cmd+Shift+, and +.). Optionally keep keyframes at their original times,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| layers | yes | — | |
| percent | number | no | Stretch factor percent (100 is normal speed, 200 half speed, negative plays backwards) |
| duration | number | no | New length between In and Out points, seconds |
| holdInPlace | string | no | percent and duration: which point stays put. Default in_point |
| edge | string | no | Stretch so this end lands on at, keeping the other end in place |
| at | no | — | |
| keepKeyframeTimes | boolean | no | Leave keyframes at their composition times instead of stretching them with the layer |
| conformFrameRate | number | no | Instead of stretching: conform the layers' source footage to this frame rate (Interpret Footage; 0 uses the file's rate). Affects every layer using that footage |
Align Video to Data (Layer > Time): offset video layers in time by the frame counts their names have in a data layer's mgJSON videoSyncTimeList. Selects the data layer and the video layers and makes the composition active
| Parameter | Type | Required | Notes |
|---|---|---|---|
| comp | no | — | |
| dataLayer | integer | yes | Index of the mgJSON data layer |
| layers | yes | — |
Check that After Effects is reachable: platform, how the server addresses After Effects, whether it is running, its version and project. Use this first when a call fails to connect
| Parameter | Type | Required | Notes |
|---|---|---|---|
| probe | boolean | no | Ask After Effects for its version and project (starts it if it is not running). Default true |
Run an After Effects menu command by its English menu name (found with app.findMenuCommandId) or its numeric id, such as an extension panel under Window > Extensions or a custom workspace. Commands act on the current selection; one that opens a dialog waits for the user, so prefer the specific tools
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Menu item name, e.g. "Sequence Layers..." or "Center Anchor Point in Layer Content" |
| id | integer | no | Command id instead of a name |
Run your own ExtendScript in After Effects and return its last expression. It runs unrestricted: it can change or delete anything, read or write files, and run system commands (system.callSystem, which needs Allow Scripts to Write Files and Access Network). Prefer the specific tools
| Parameter | Type | Required | Notes |
|---|---|---|---|
| code | string | yes | ExtendScript (ES3) source |
List the tools by area, or describe one tool's parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
| tool | string | no | A tool name |
- Every tool, no call limit
- No card, and mcprush charges nothing for it
- Source published under MIT
- Runs on your machine — nothing of it reaches our gateway
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Adobe After Effects MCP or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | minimal | capability blast radius (minimal) — client exposure if the model is manipulated | −0 |
| verification-discount | repo | publisher verification (public source) — no provenance, but the source is public and inspectable | −1 |
| coverage-honesty | source | inspection depth (source) — how much of the target the scan could see | −0 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
No tools were enumerated, so prompt-injection, capability and toxic-flow analysis had no tool surface to inspect. To grade a package’s real runtime tools, scan the running server: --command "npx -y <package>".
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. minimal is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| No per-tool rows for this release — see the note below. | ||
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
The public result for this release does not print the flow graph, so there is nothing to show here. That is not the same as "no paths were found": what the scan did read is above, under coverage.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
Always latest — the install command names no version, so it installs the newest release when it runs; the current release on file is 0.1.0. Pin a release below and the command asks for exactly that one.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Adobe After Effects MCP can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.