Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

After Effects MCP Server

NPM · ADOBE-MCP-AFTEREFFECTS

Drive Adobe After Effects from any MCP client: compositions, layers, animation and rendering.

68 Trust /100

Last scanned (12 hours ago)

Scores higher than 39% of npm servers

Category Design and Media

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 95 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 3 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability60
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 32116 tokens (~195/item across 164 items; 164 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 96% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 8 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 165 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 21 Oct 26 +15
    • Malware scan: unverified → pass ▲ security
  • 20 Oct 26 53

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 23 Oct 2026 · Analysed npm/adobe-mcp-aftereffects@0.1.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 95 packages
Packages resolved 95
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 164 exposed · ~31,764 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
run_comp_command ~197

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 Composition in Project. The menu commands make the composition active

NameTypeReqDescription
actionstringyesThe command
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
layersobject–lift_work_area, extract_work_area and work_area_to_layers: the layers (default all; for work_area_to_layers the selection, else the whole composition). Which layers. Give indexes (1-based, from list_…
timenumber–set_poster_time: seconds; default the current time

No output schema declared.

No examples provided.

run_edit_command ~135

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

NameTypeReqDescription
commandstringyesThe Edit menu command
compobject–Focus this composition's viewer first (item id or name). Omit to act on whatever panel has focus
timesinteger–Undo or Redo: how many steps. Default 1

No output schema declared.

No examples provided.

run_menu_command ~110

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

NameTypeReqDescription
idinteger–Command id instead of a name
namestring–Menu item name, e.g. "Sequence Layers..." or "Center Anchor Point in Layer Content"

No output schema declared.

No examples provided.

run_project_command ~112

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

NameTypeReqDescription
commandstringyesThe command
unsavedstring–close, open_most_recent: what to do with unsaved changes. Required when there are any

No output schema declared.

No examples provided.

run_view_command ~125

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

NameTypeReqDescription
commandstringyesThe command
compobject–Open this composition in the Composition panel and use that viewer (item id or name). Omit both comp and layer for the focused viewer

No output schema declared.

No examples provided.

save_frame ~72

Save one frame of a composition as a PNG file (Composition > Save Frame As)

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
outputFilestringyesAbsolute .png path
timenumberyesSeconds

No output schema declared.

No examples provided.

save_project ~50

Save the project in place, or as a new .aep file (the project then refers to it)

NameTypeReqDescription
filePathstring–Absolute .aep path. Omit to save in place

No output schema declared.

No examples provided.

save_project_copy ~116

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

NameTypeReqDescription
filePathstringyesAbsolute path of the copy: .aep, or .aepx for XML
saveFirstboolean–Save unsaved changes in place first, so the copy includes them. Default false

No output schema declared.

No examples provided.

select_drawing_tool ~137

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 Fill panel (Window menu, which toggles a panel that is already open). Drawing with the tool is then done by hand in the Composition or Layer panel

NameTypeReqDescription
panelstring–Panel to open from the Window menu
toolstring–Tool to make active

No output schema declared.

No examples provided.

select_keyframes ~283

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
deselectAllboolean–First deselect every keyframe, property and property group on the layers
keysobject–Which keyframes of the property: those matching any of indexes, the from/to time range, times or selected. Omit for all of them
layersobject–Which layers. Give indexes (1-based, from list_layers), names, or selected: true. With deselectAll and no layers, every layer
modestring–replace (default): only these keyframes of the property are selected; add; remove
property––A property: a shortcut (anchor_point, position, scale, rotation, opacity, x_rotation, y_rotation, orientation, source_text, time_remap, audio_levels) or a path of match names or display names from th…

No output schema declared.

No examples provided.

select_layers ~171

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

NameTypeReqDescription
actionstringyesset, add, remove (toggle with layers); children (of layers, or of the selection); invert; next, previous, extend_next, extend_previous (from the selection); all; none
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
layersobject–For set, add, remove and children. Which layers. Give indexes (1-based, from list_layers), names, or selected: true

No output schema declared.

No examples provided.

select_project_items ~95

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

NameTypeReqDescription
itemsarray–Item ids. Omit or leave empty with mode replace to clear the selection
modestring–Default replace
showPanelboolean–Show the Project panel. Default false

No output schema declared.

No examples provided.

separate_dimensions ~181

Separate a Position property into X, Y (and Z) Position so each can be keyframed alone, or join them again (Animation > Separate Dimensions)

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
property––A property: a shortcut (anchor_point, position, scale, rotation, opacity, x_rotation, y_rotation, orientation, source_text, time_remap, audio_levels) or a path of match names or display names from th…
separateboolean–true separates, false joins. Default true

No output schema declared.

No examples provided.

sequence_layers ~164

Arrange layers one after another in time, in the order given, optionally overlapping with an opacity dissolve (Animation > Keyframe Assistant > Sequence Layers)

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true. The first plays first
overlapnumber–Seconds each layer overlaps the one before. Default 0
startnumber–When the first layer starts (seconds). Default its current in point
transitionstring–With an overlap: off (default), dissolve_front (the upper layer fades), or cross_dissolve (both fade)

No output schema declared.

No examples provided.

set_3d_view ~188

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 composition in the viewer first

NameTypeReqDescription
actionstring–Instead of a view: View > Reset 3D View, Look at Selected Layers, Look at All Layers, or Create Camera from 3D View
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
viewstring–The view to switch to (View > Switch 3D View; last = View > Switch to Last 3D View)

No output schema declared.

No examples provided.

set_application_settings ~189

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, JavaScript debugger)

NameTypeReqDescription
expandFlowchartCompsboolean–Flowchart: expand compositions by default
gpuAccelerationstring–Project GPU acceleration; must be one the computer offers (see get_aftereffects_info)
imageCachePercentnumber–Image cache size as a percent of memory; give with maximumMemoryPercent
javascriptDebuggerboolean–Scripting & Expressions: enable the JavaScript debugger
maximumMemoryPercentnumber–Maximum memory After Effects may use, as a percent of installed RAM; the rest stays reserved for other applications
savePreferencesOnQuitboolean–Save preferences when After Effects quits

No output schema declared.

No examples provided.

set_audio_levels ~144

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)

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
keyframesarray–Instead of levels: keyframes, each a time and levels
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
levels––Decibels for both channels, or [left, right]; 0 leaves the audio unchanged

No output schema declared.

No examples provided.

set_bezier_path ~467

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 feather points on a mask (Mask Feather tool: extent, tension, Hold, inner or outer). Points are in the layer's own pixels; tangents are relative to their vertex; vertex and segment numbers start at 0

NameTypeReqDescription
allKeyframesboolean–Apply firstVertex, reverse, transform or featherPoints to every keyframe of an animated path
closedboolean–With vertices: closed path. Default true
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
featherPointsarray–Masks: replace the variable-width feather points ([] removes them)
firstVertexinteger–Make this vertex (0-based) the first one of a closed path
inTangentsarray–With vertices: in tangents relative to each vertex; default none
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
maskstring|integer–The mask, by name or 1-based index
outTangentsarray–With vertices: out tangents relative to each vertex; default none
property––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"]
reverseboolean–Reverse the order of the vertices (the path direction)
timenumber–Seconds: set a keyframe at this time. Default: the static value, or a keyframe at the current time when the path is animated
transformobject–Transform every point together about an anchor, as Free Transform Points does
verticesarray–Replace the path: vertices [[x, y], ...]

No output schema declared.

No examples provided.

set_camera_options ~425

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 are keyframed when the property is animated or a time is given

NameTypeReqDescription
aperturenumber–Aperture in pixels; larger blurs more
blurLevelnumber–Blur Level, percent
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
depthOfFieldboolean–Depth of Field on or off; the Advanced 3D renderer renders it in-engine
fStopnumber–F-Stop (Camera Settings): sets Aperture to Zoom divided by the F-Stop. Not with aperture
focusDistancenumber–Focus Distance in pixels
highlightGainnumber–Highlight Gain
highlightSaturationnumber–Highlight Saturation
highlightThresholdnumber–Highlight Threshold, percent
irisAspectRationumber–Iris Aspect Ratio
irisDiffractionFringenumber–Iris Diffraction Fringe
irisRotationnumber–Iris Rotation, degrees
irisRoundnessnumber–Iris Roundness, percent
irisShapestring–Iris Shape
layersobjectyesWhich camera layers. Give indexes (1-based, from list_layers), names, or selected: true
pointOfInterestarray–Point of Interest [x, y, z] in pixels, for two-node cameras and lights
timenumber–Seconds: set keyframes at this time. Omit to set the static value, or a keyframe at the current time when the property is already animated
zoomnumber–Zoom: pixels from the camera to the image plane (sets the angle of view and focal length)

No output schema declared.

No examples provided.

set_camera_tool ~83

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

NameTypeReqDescription
toolstringyesorbit, pan and dolly are the camera-centred variants

No output schema declared.

No examples provided.

set_color_management ~208

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 Compensate for Scene-referred Profiles

NameTypeReqDescription
bitsPerChannelinteger–Bit depth: 8, 16 or 32 (floating point, high dynamic range)
compensateForSceneReferredProfilesboolean–Compensate for Scene-referred Profiles
linearBlendingboolean–Blend Colors Using 1.0 Gamma
linearizeWorkingSpaceboolean–Linearize Working Color Space
workingGammanumber–Working gamma when the working space is None
workingSpacestring–Working colour space: a profile description from get_color_management listProfiles, or "" for None

No output schema declared.

No examples provided.

set_comp_3d_settings ~162

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
draft3dboolean–Draft 3D: preview the scene in real time at draft quality
rendererstring–classic_3d, advanced_3d, cinema_4d, or a renderer id from this tool's renderers list

No output schema declared.

No examples provided.

set_comp_settings ~448

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 Enable Frame Blending and Hide Shy Layers

NameTypeReqDescription
adaptiveSampleLimitinteger–Motion blur Adaptive Sample Limit
backgroundColorstring–"#RRGGBB" or "rgb(r,g,b)" (0-255)
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
dropFrameboolean–Drop Frame timecode (29.97 and 59.94 fps); false is Non-Drop Frame
durationnumber–Seconds
frameBlendingboolean–Timeline switch: Enable Frame Blending for the composition
frameRatenumber–Frames per second
heightinteger–Pixels
hideShyLayersboolean–Timeline switch: Hide Shy Layers
motionBlurboolean–Enable motion blur for the composition
namestring––
pixelAspectnumber–Default 1
preserveNestedFrameRateboolean–Preserve frame rate when nested or in render queue
preserveNestedResolutionboolean–Preserve resolution when nested
resolutionstring–Resolution: full, half, third or quarter
resolutionFactorarray–Custom resolution: render every [x, y]th pixel
samplesPerFrameinteger–Motion blur Samples Per Frame
shutterAnglenumber––
shutterPhasenumber–Motion blur Shutter Phase, degrees
startFrameinteger–Start Frame: the number shown for the first frame, when the project counts frames
startTimecodenumber–Start Timecode: the time shown for the first frame, in seconds
widthinteger–Pixels
workAreaDurationnumber–Seconds
workAreaStartnumber–Seconds

No output schema declared.

No examples provided.

set_current_tool ~104

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

NameTypeReqDescription
cyclestring–Instead of tool: move to the next tool in this group
toolstring–The tool to choose

No output schema declared.

No examples provided.

set_display_color ~132

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 the viewer

NameTypeReqDescription
actionstringyestoggle_display_color_management, simulate_output or lumetri_scopes
compobject–Open this composition in the viewer first. Omit to use the active viewer
outputstring–simulate_output: the output to simulate (none turns simulation off)

No output schema declared.

No examples provided.

set_effect_controls ~348

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 colours, a menu choice's text or number, a layer's name or index for layer controls, a mask's name for mask controls, an object for the controls inside a group, and a list of strings to replace a Dropdown Menu Control's items. With time, each value is a keyframe

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
controlsobject–Control names (as in the Effect Controls panel, or match names) to values, e.g. { "Blurriness": 20, "Repeat Edge Pixels": true }
effectstring–The effect to apply: its display name (e.g. "Fractal Noise") or match name (e.g. "ADBE Fractal Noise"); find_effects lists them
existing––An effect already on the layer: its name in the Effect Controls panel (e.g. "Gaussian Blur 2"), its match name, or its position (1 = top)
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
namestring–Rename the effect
timenumber–Seconds: set each control as a keyframe at this time

No output schema declared.

No examples provided.

set_essential_graphics ~124

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
openboolean–Open the composition in the Essential Graphics panel. Default true
renameControlsarray–Controls to rename
templateNamestring–Template name shown in the panel and in Premiere Pro; also the exported file name

No output schema declared.

No examples provided.

set_expression ~328

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, random numbers, interpolation (linear, ease), colour conversion and other math; comp, footage, layer (sub-objects, general, properties, 3D, space transforms), camera, light, effect, mask, property, project, key, marker and path attributes and methods; dropdown menu attributes; text style objects for per-character and paragraph styling and for linking styles across text layers on Source Text; and, on the Amount of a text animator's Expression selector, textIndex, textTotal and selectorValue. Text style methods need the JavaScript engine (set_expression_engine)

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
enabledboolean–Default true
expressionstringyesExpression source; "" removes it
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
property–yesA property: a shortcut (anchor_point, position, scale, rotation, opacity, x_rotation, y_rotation, orientation, source_text, time_remap, audio_levels) or a path of match names or display names from th…

No output schema declared.

No examples provided.

set_expression_engine ~58

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)

NameTypeReqDescription
enginestringyesjavascript or extendscript

No output schema declared.

No examples provided.

set_font_options ~80

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

NameTypeReqDescription
favoritesarray–Font family names: replaces the favourites list
rescanFontFoldersboolean–Rescan non-system font folders

No output schema declared.

No examples provided.

set_frame_blending ~157

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
compSwitchboolean–The composition's Enable Frame Blending switch
layersobject–Layers based on motion footage or compositions. Which layers. Give indexes (1-based, from list_layers), names, or selected: true
modestring–For the layers: off, frame_mix or pixel_motion

No output schema declared.

No examples provided.

set_geometry_options ~305

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 keyframed when the property is animated or a time is given

NameTypeReqDescription
bevelDepthnumber–Bevel Depth in pixels (text and shape layers)
bevelStylestring–Bevel Style (text and shape layers)
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
curvaturenumber–Curvature, percent (footage and precomposition layers)
extrusionDepthnumber–Extrusion Depth in pixels (text and shape layers)
holeBevelDepthnumber–Hole Bevel Depth, percent of Bevel Depth (text and shape layers)
layersobjectyesWhich 3D layers. Give indexes (1-based, from list_layers), names, or selected: true
segmentsnumber–Segments, the facets of a curved layer (footage and precomposition layers)
timenumber–Seconds: set keyframes at this time. Omit to set the static value, or a keyframe at the current time when the property is already animated

No output schema declared.

No examples provided.

set_item_comment ~42

Set the Comment column text of project items; an empty comment clears it

NameTypeReqDescription
commentstringyesComment text
itemsarrayyesItem ids

No output schema declared.

No examples provided.

set_keyframes ~178

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
keyframesarrayyes–
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
property–yesA property: a shortcut (anchor_point, position, scale, rotation, opacity, x_rotation, y_rotation, orientation, source_text, time_remap, audio_levels) or a path of match names or display names from th…

No output schema declared.

No examples provided.

set_layer_properties ~441

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 to the next or previous one), Auto-Orient, label, in and out points, start time, stretch

NameTypeReqDescription
adjustmentLayerboolean––
audioEnabledboolean––
autoOrientstring–Layer > Transform > Auto-Orient: off, along_path, towards_camera (3D layers; cameras and lights toward their point of interest), characters_toward_camera (3D text)
blendingModestring––
collapseTransformationboolean–Collapse Transformations (pre-compositions) or Continuously Rasterize (vector layers)
commentstring–Text for the Comments column
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
cycleBlendingModestring–Step to the next or previous blending mode in the menu (Shift+= and Shift+-)
effectsActiveboolean–Effect switch: render the layer's effects
enabledboolean––
guideLayerboolean––
inPointnumber–Seconds
labelinteger––
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
lockedboolean––
motionBlurboolean––
namestring––
outPointnumber–Seconds
preserveTransparencyboolean–Preserve Underlying Transparency
qualitystring––
samplingstring–Layer > Quality sampling at Best quality
shyboolean––
soloboolean––
startTimenumber–Seconds
stretchnumber–Time stretch percent; negative reverses
threeDboolean––

No output schema declared.

No examples provided.

set_layer_styles ~227

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 Styles as Group, Use Blend Ranges from Source). The style commands select the layers and make their composition active; set each style's own values with set_property

NameTypeReqDescription
addarray–Styles to add
blendingobject–Blending Options (present once a layer has a style)
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
convertToEditableboolean–Turn styles merged from a Photoshop layer into editable styles (Convert to Editable Styles)
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
removeAllboolean–First remove every layer style (Remove All)

No output schema declared.

No examples provided.

set_light_options ~421

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 are keyframed when the property is animated or a time is given

NameTypeReqDescription
castsShadowsboolean–Casts Shadows (spot, parallel and environment lights). Layers also need Material Options > Casts Shadows on
colorstring–Light colour: "#RRGGBB" or "rgb(r,g,b)" (0-255)
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
coneAnglenumber–Cone Angle in degrees (spot lights)
coneFeathernumber–Cone Feather, percent (spot lights)
falloffstring–Falloff type
falloffDistancenumber–Falloff Distance in pixels
intensitynumber–Intensity, percent; negative removes light
layersobjectyesWhich light layers. Give indexes (1-based, from list_layers), names, or selected: true
lightSourceinteger–Environment lights: index of the 2D layer in the same composition to light the scene with (Light Options > Source)
lightTypestring–Light Type
pointOfInterestarray–Point of Interest [x, y, z] in pixels, for two-node cameras and lights
radiusnumber–Radius in pixels, where light is at full intensity before falloff
shadowDarknessnumber–Shadow Darkness, percent
shadowDiffusionnumber–Shadow Diffusion in pixels
timenumber–Seconds: set keyframes at this time. Omit to set the static value, or a keyframe at the current time when the property is already animated

No output schema declared.

No examples provided.

set_masks ~369

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

NameTypeReqDescription
colorstring–Mask outline colour in the viewers and Timeline, "#RRGGBB" or "rgb(r,g,b)"
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
expansionnumber–Mask expansion in pixels
feathernumber–Feather in pixels, both directions
featherFalloffstring–Feather falloff curve (Layer > Mask > Feather Falloff)
invertedboolean–Invert the mask
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
lockOthersboolean–Lock every other mask on the layer (Lock Other Masks)
lockedboolean–Lock or unlock the masks (false with masks omitted: Unlock All Masks)
masksobject–Which masks on each layer: indexes (1-based, as in the Timeline) or names. Omit for every mask
modestring–Mask mode
motionBlurstring–Mask motion blur (Layer > Mask > Motion Blur)
namestring–Rename the mask (one mask per layer only)
opacitynumber–Mask opacity, percent
rotoBezierboolean–RotoBezier: curves calculated through the vertices
selectedboolean–Select or deselect the masks

No output schema declared.

No examples provided.

set_material_options ~508

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 its rolloff, and index of refraction. Also turns a layer into an environment layer (Layer > Environment Layer). Values are keyframed when the property is animated or a time is given

NameTypeReqDescription
acceptsLightsboolean–Accepts Lights: off leaves the layer unlit
acceptsShadowsstring–Accepts Shadows: off, on, or only (shadows alone, for a shadow catcher)
ambientnumber–Ambient, percent
appearsInReflectionsstring–Appears in Reflections: off, on, or only
castsShadowsstring–Casts Shadows: off, on, or only (the shadow without the layer)
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
diffusenumber–Diffuse, percent
environmentLayerboolean–Layer > Environment Layer: use this footage or precomposition layer as the spherical environment for reflections (Cinema 4D renderer; Advanced 3D uses environment lights instead)
indexOfRefractionnumber–Index of Refraction
layersobjectyesWhich 3D layers. Give indexes (1-based, from list_layers), names, or selected: true
lightTransmissionnumber–Light Transmission, percent
metalnumber–Metal, percent
reflectionIntensitynumber–Reflection Intensity, percent
reflectionRolloffnumber–Reflection Rolloff, percent
reflectionSharpnessnumber–Reflection Sharpness, percent
specularIntensitynumber–Specular Intensity, percent
specularShininessnumber–Specular Shininess, percent
timenumber–Seconds: set keyframes at this time. Omit to set the static value, or a keyframe at the current time when the property is already animated
transparencynumber–Transparency, percent (separate from layer Opacity)
transparencyRolloffnumber–Transparency Rolloff, percent

No output schema declared.

No examples provided.

set_output_module ~638

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), output file and file name template, channels, depth, colour, starting frame number, resize, crop, audio output, project link, source XMP metadata and post-render action, and optionally save it as a template. Codecs such as GoPro CineForm are chosen through a template made in Edit > Templates > Output Module

NameTypeReqDescription
addboolean–Add a new output module to the item and change that one (Composition > Add Output Module). Default false
audioobject–Audio output
channelsstring–"Channels": RGB, Alpha or RGB + Alpha
colorstring–"Color": Premultiplied (Matted) or Straight (Unmatted)
cropobject–Crop pixels from the edges (negative values add pixels)
depthstring–"Depth", e.g. Millions of Colors, Millions of Colors+, Trillions of Colors, Floating Point
fileTemplatestring–File name template from the Output To menu, e.g. "[compName]_[#####].[fileExtension]"
formatstring–Output format: applies the first output module template that writes it
includeProjectLinkboolean–Embed a link back to the After Effects project
includeSourceXmpboolean–Copy XMP metadata from the source footage into the output
itemintegeryes1-based Render Queue index
outputFilestring–Absolute output path. For image sequences include frame-number signs, e.g. frame_[#####].png
outputModuleinteger–1-based output module of the item. Default 1
postRenderActionstring–After rendering: nothing, import the file, import it and replace the composition's uses, or set it as the composition's proxy
removeboolean–Remove the output module (the item keeps at least one). Default false
resizeobject–Resize the output
saveAsTemplatestring–Save the resulting output module as a template with this name
settingsobject–Any other settings by the English name After Effects gives them (get_render_item shows the settable names and current values), e.g. { "Quality": "Best" }
startingNumberinteger–First frame number of an image sequence ("Starting #"); turns off Use Comp Frame Number
templatestring–Output module template, e.g. "High Quality", "Lossless", "H.264 - Match Render Settings - 15 Mbps" (list_render_templates lists them)
useCompFrameNumberboolean–Number sequence frames from the composition's frame numbers

No output schema declared.

No examples provided.

set_paint_strokes ~516

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 Transparent. Strokes themselves are drawn by hand with the Brush, Clone Stamp or Eraser tool

NameTypeReqDescription
anchorPointarray–Stroke Transform: Anchor Point [x, y]
anglenumber–Brush angle, degrees
clonePositionarray–Clone strokes: Clone Position [x, y], where the stroke samples from
cloneTimenumber–Clone strokes: Clone Time, seconds
cloneTimeShiftnumber–Clone strokes: Clone Time Shift, seconds
colorstring–Brush colour, "#RRGGBB" or "rgb(r,g,b)"
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
diameternumber–Diameter, pixels
effectstring|integer–Which effect, by name or 1-based index in the Effect Controls panel; omit for every one of its kind on the layer
endnumber–End, percent (animate it to write the stroke on)
flownumber–Flow, percent
hardnessnumber–Hardness, percent
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
opacitynumber–Opacity, percent
paintOnTransparentboolean–The Paint effect's Paint on Transparent switch
positionarray–Stroke Transform: Position [x, y]
rotationnumber–Stroke Transform: Rotation, degrees
roundnessnumber–Roundness, percent
scalearray–Stroke Transform: Scale [x, y] percent
spacingnumber–Spacing, percent
startnumber–Start, percent of the stroke drawn from
strokesarray–Strokes by name (e.g. "Brush 1", "Clone 2") or 1-based index; omit for every stroke
timenumber–Seconds: set keyframes at this time (animates the strokes). Default: static values, or keyframes at the current time on animated properties

No output schema declared.

No examples provided.

set_project_settings ~188

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 settings

NameTypeReqDescription
bitsPerChannelinteger–Colour depth in bits per channel
expressionEnginestring–Expressions engine
feetAndFramesboolean–Frames: Use Feet + Frames
filmTypestring–Feet + Frames film
footageStartstring–Timecode: Footage Start Time from the source media or 00:00:00:00
frameCountstring–Frames: Frame Count
timeDisplaystring–Time Display Style
transparencyGridThumbnailsboolean–Thumbnail Transparency Grid in the Project panel

No output schema declared.

No examples provided.

set_property ~225

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

NameTypeReqDescription
compobject–Which composition. Give its item id (from list_items) or name; omit for the active composition
layersobjectyesWhich layers. Give indexes (1-based, from list_layers), names, or selected: true
property–yesA property: a shortcut (anchor_point, position, scale, rotation, opacity, x_rotation, y_rotation, orientation, source_text, time_remap, audio_levels) or a path of match names or display names from th…
timenumber–Seconds: set a keyframe at this time
value–yesA number, an array of numbers, text, or true/false

No output schema declared.

No examples provided.

set_proxy ~283

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)

NameTypeReqDescription
colorstring–solid: colour, "#RRGGBB" or "rgb(r,g,b)"
durationnumber–placeholder: seconds. Default the item's duration, or 10
filestring–file, sequence: absolute path (one item only)
forceAlphabeticalboolean–sequence: Force alphabetical order. Default false
frameRatenumber–placeholder: frames per second. Default the item's rate, or 30
heightinteger–solid, placeholder: pixels. Default the item's height
itemsarrayyesFootage or composition item ids
namestring–solid, placeholder: name. Default the item's name
pixelAspectnumber–solid: pixel aspect ratio. Default the item's
proxystring–What becomes the proxy; none removes it. Omit to only switch useProxy
useProxyboolean–Use the proxy (true) or the original (false) everywhere in the project
widthinteger–solid, placeholder: pixels. Default the item's width

No output schema declared.

No examples provided.

set_render_settings ~664

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, 3:2 pulldown, motion blur, time span, frame rate and Skip Existing Files, the log level and the completion notification, and optionally save the result as a template

NameTypeReqDescription
colorDepthstring–"Color Depth": Current Settings, 8 bits per channel, 16 bits per channel or 32 bits per channel
diskCachestring–"Disk Cache": Read Only or Current Settings
durationnumber–Custom time span duration, seconds
effectsstring–"Effects": Current Settings, All On or All Off
fieldRenderstring–"Field Render": Off, Upper Field First or Lower Field First
frameBlendingstring–"Frame Blending": Current Settings, On for Checked Layers or Off for All Layers
frameRate––Frame rate: a number of frames per second, or "comp" for the composition's rate
guideLayersstring–"Guide Layers": Current Settings (render guide layers in the top composition) or All Off
itemsarrayyes1-based queue indexes
logTypestring–Log: errors only, plus settings, or plus per-frame information
motionBlurstring–"Motion Blur": Current Settings, On for Checked Layers or Off for All Layers
notifyboolean–Send a Creative Cloud notification when this item finishes (the Notify checkbox)
proxyUsestring–"Proxy Use": Current Settings, Use All Proxies, Use Comp Proxies Only or Use No Proxies
pulldownstring–"3:2 Pulldown": Off or a phase such as WSSWW
qualitystring–"Quality": Current Settings, Best, Draft or Wireframe
resolutionstring–"Resolution": Current Settings, Full, Half, Third, Quarter or Custom
saveAsTemplatestring–Save the first item's resulting render settings as a template with this name
settingsobject–Any other settings by the English name After Effects gives them (get_render_item shows the settable names and current values), e.g. { "Quality": "Best" }
skipExistingFilesboolean–Skip frames already in the output folder, so several computers can render one image sequence
skipFramesinteger–Frames to skip between rendered frames for quick tests; 1 renders on twos
soloSwitchesstring–"Solo Switches": Current Settings or All Off
startnumber–Custom time span start, seconds
templatestring–Render settings template applied first, e.g. "Best Settings", "Draft Settings", "DV Settings", "Multi-Machine Settings" (list_render_templates lists them)
timeSpanstring–"Time Span": Length of Comp, Work Area Only or Custom

No output schema declared.

No examples provided.

Install

How do I install the After Effects MCP Server server?

After Effects MCP Server runs locally as an npm package, launched with npx -y adobe-mcp-aftereffects. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · adobe-mcp-aftereffects

# add to Claude Code
claude mcp add zachshallbetter-adobe-mcp-aftereffects -- npx -y adobe-mcp-aftereffects
Common questions

What is the After Effects MCP Server server?

After Effects MCP Server is listed in the public MCP registry as io.github.zachshallbetter/adobe-mcp-aftereffects. Drive Adobe After Effects from any MCP client: compositions, layers, animation and rendering. This page covers its npm package (adobe-mcp-aftereffects).

Is the After Effects MCP Server server safe to use?

After Effects MCP Server scores 68 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 23 October 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the After Effects MCP Server server expose?

After Effects MCP Server exposes 164 tools: get_project_info, list_items, import_files, create_folder, manage_items, and 159 more. Their descriptions and schemas cost roughly 31,764 tokens of context every time the server is loaded.

Is the After Effects MCP Server server still maintained?

After Effects MCP Server is still listed as active in the MCP registry. We last reached this channel on 23 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the After Effects MCP Server server under?

After Effects MCP Server declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.