Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

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

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}
prompts
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ae_healthA

Check the After Effects bridge: server and runner versions, whether After Effects is running or shows a dialog, AE version, open project, active composition. Changes nothing.

ae_run_jsxA

Run arbitrary ExtendScript (ES3 JavaScript) inside After Effects. The value of the last expression is returned (AE objects come back as short summaries). Pass data through args (available as the args variable) instead of pasting it into the code. Helpers: mcp.findComp(nameOrId?), mcp.findLayer(comp, nameOrIndex), mcp.activeComp(), mcp.layerType(layer), mcp.projectInfo(); lib.prop(layer, 'Transform/Position'), lib.setValue(prop, value, time?), lib.color('#ff8800'), lib.tree(propertyGroup, depth, withValues). The whole call is one undo step. If it runs longer than the timeout, a commandId is returned: fetch the result with ae_get_result, do not re-send the code.

ae_get_resultA

Fetch the result of a command that was still running when its tool call timed out. Never re-sends the command.

ae_list_projectA

List the open project: compositions with their layers (index, name, type, in/out points) and all other items (folders, footage, solids) with their folder and usedIn count (0 = unused). Changes nothing.

ae_guidelinesA

Read the full motion-design and workflow guidelines for this bridge (easing, bounce, text animators, stagger, track mattes, motion blur, review loop, ExtendScript pitfalls). Call it once before designing or animating. Does not contact After Effects.

ae_save_projectA

Save the open project. With no path saves to its current file; with an absolute .aep path saves there (Save As).

ae_open_projectA

Open an .aep project in After Effects (closing the current one). If the current project has unsaved changes you must choose save: true or discard: true. Use this instead of opening/closing projects in ae_run_jsx, which breaks AE's undo history.

ae_capture_frameA

Render one frame of a composition to PNG and return it as an image for visual inspection. Transparent areas are filled with the composition background color by default. Changes nothing.

ae_capture_framesA

Render several frames of a composition into ONE contact-sheet image (grid with time labels) to judge an animation: timing, easing, overlaps, elements appearing outside their containers. Give explicit times, or start/end with count (default 9 evenly spaced) or step. Changes nothing.

ae_get_selectionA

What the user selected in After Effects: project items, layers of the active comp, and selected properties with their paths, values, keyframes (time, value, interpolation, ease) and property trees for selected groups (e.g. a text animator). Use it when the user says 'this', 'the selected layer', 'look at what I selected'. Changes nothing.

ae_inspectA

Deep property tree of a layer or of one of its groups, with values, keyframes and easing, expressions. By default only modified properties are listed (modifiedOnly: false lists everything). Changes nothing.

ae_set_compA

Change composition settings: name, size, duration, frame rate, background color, motion blur switch and shutter angle, work area, current time; open: true opens it in the viewer. One undo step.

ae_copy_animationA

Copy a property or a whole property group with its keyframes, easing and expressions from one layer to other layers (like Ctrl+C / Ctrl+V), optionally staggered. Works for text animators ('Text/Animators/Animator 1'), effects ('Effects/Gaussian Blur'), masks and single properties ('Transform/Position'). Target n (1-based in the given order) is shifted by offset + n * stagger frames. One undo step.

ae_add_text_animatorA

Add a text animator reveal (the motion-design way, instead of animating Transform): offsets such as position [0, 40], opacity 0, blur 16 are applied through a Range Selector that is animated away. shape 'rampUp' (default for characters/words) slides a soft window over the text so letters overlap in a wave; 'square' (default for lines) animates Start 0 -> 100 with strong ease. mode 'out' mirrors the reveal (last units leave first). Several layers can be staggered. One undo step.

ae_render_previewA

Render a composition (or a time range) through the Render Queue to an H.264 MP4 or a PNG sequence for the user to watch. Other queued items are paused during the render and restored. Blocks After Effects while rendering; long renders return a commandId for ae_get_result.

ae_run_jsx_fileB

Run an ExtendScript .jsx/.js file from disk (a library of reusable scripts) with optional args, like ae_run_jsx. One undo step.

ae_create_compA

Create a composition (and open it in the viewer unless open: false). One undo step.

ae_create_layerA

Create a text, shape, solid, adjustment or null layer. Text is center-justified by default; use ae_center_layers to center any layer visually. One undo step.

ae_set_layerB

Change layer settings and transform: name, enabled, 3D, label, parent, timing, anchorPoint, position, scale, rotation, opacity, and text (text, font, fontSize, fillColor, strokeColor, strokeWidth, justification, tracking, leading). Pass time to write keyframes instead of static values. One undo step.

ae_center_layersA

Center layers in the composition. By default the anchor point is moved to the visual center of the layer content first (sourceRectAtTime), so text and shapes end up truly centered. One undo step.

ae_get_layer_timingB

Layer timing in seconds and frames: start, in/out points, duration, source in/out, stretch. Changes nothing.

ae_set_propertyA

Set any property of a layer or of its effects by path. With time, sets a keyframe; without time the property must have no keyframes. One undo step.

ae_set_keyframesA

Add keyframes to a layer or effect property and set their interpolation. ease: linear | hold | bezier | easy (Easy Ease) | easyIn | easyOut; influence 0.1..100 (default 33.3); easeIn/easeOut: { speed, influence } for custom temporal ease; spatial props also accept spatialAutoBezier, spatialContinuous, roving, inTangent, outTangent. One undo step.

ae_set_expressionA

Set an expression on a layer or effect property, or remove it with an empty string. Reports expressionError if AE rejects it. One undo step.

ae_list_available_effectsB

Search effects installed in After Effects by display name, matchName or category. Changes nothing.

ae_apply_effectA

Apply an effect to a layer by display name or matchName and optionally set its properties. Returns the effect's properties so they can be adjusted next. One undo step.

ae_list_layer_effectsA

List the effects on a layer with their property tree and current values. Changes nothing.

ae_remove_effectsA

Remove effects from a layer by name, matchName or index (or an array of them), or all. One undo step.

ae_list_presetsA

Find animation presets (.ffx) in the standard Adobe preset folders or given folders. Words in query must all match the preset path, e.g. 'blur in'. Changes nothing.

ae_apply_presetA

Apply an animation preset (.ffx) to a layer. Find presets with ae_list_presets. One undo step.

ae_add_markersA

Add one or many markers to a layer, or to the composition when layer is omitted. One undo step.

ae_get_audio_infoA

Audio info of a layer: source file path, audio levels and their keyframes, existing markers. Changes nothing.

ae_set_audio_levelsA

Set Audio Levels (dB) of a layer: static, at a time, or as a list of keyframes. One undo step.

ae_analyze_audioA

Analyze a WAV file: peak envelope and transient peaks (beats, hits). Pass path, or comp + layer to use the layer's source file (times are then converted to composition time). With addMarkers: true, places a marker at every peak (on that layer, or on the composition when only path is given; one undo step). Only uncompressed PCM/float WAV.

Prompts

Interactive templates invoked by user choice

NameDescription
motion-design-guidelinesWorking loop and motion-design rules for creating and animating in After Effects through this bridge.
review-animationCapture a contact sheet of the animation and critique timing, easing, hierarchy and clipping before changing anything.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 34 tools

Disambiguation4/5

Most tools target clearly distinct resources or operations (project, comp, layer, property, effect, preset, audio), and descriptions differentiate them well. Some overlap exists among ae_set_layer, ae_set_property, and ae_set_keyframes (all can create keyframes), and between ae_inspect and ae_list_layer_effects, which could cause occasional misselection.

Naming Consistency4/5

All tools use a consistent ae_ prefix with snake_case and predominantly verb_noun structure (e.g., ae_create_comp, ae_set_property). A few names are noun phrases (ae_health, ae_guidelines) or single verbs (ae_inspect), but the pattern is highly predictable.

Tool Count3/5

With 34 tools, the surface is large for an MCP server, even for a complex application like After Effects. While many tools are distinct and useful, some could be consolidated (e.g., property/keyframe/expression setters, frame capture variants), making the count feel heavy.

Completeness4/5

The surface covers a wide range: project management, comps, layers, properties, keyframes, expressions, effects, presets, text animators, markers, audio, rendering, and inspection. Minor gaps exist (no explicit delete for layers/comps/markers/keyframes, no import), but ae_run_jsx provides a workable escape hatch for missing operations.

Maintenance

ActivityMaintained
ResponsivenessNo issues