OpenShowreel
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AE_APP_NAME | No | Override the auto-detected Adobe After Effects application name (e.g., 'Adobe After Effects 2025'). | |
| OPENSHOWREEL_DRY_RUN | No | Set to '1' to enable dry-run mode, where tools report actions without executing them in After Effects. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ae_scene_infoA | Inspect the After Effects project: lists every composition with its size, frame rate, duration, motion-blur state, and layers (with parents). Use this first to see what exists. |
| ae_evalA | Escape hatch: run arbitrary ExtendScript inside After Effects. The code may |
| ae_setup_compB | Create a composition configured for premium motion: 60 fps and motion blur ON by default — the baseline 'buttery smooth' look. Returns the comp name. |
| ae_create_shapeB | Add a shape layer (rounded rectangle or ellipse) with a solid fill — e.g. a UI button or a background frame. Position is the layer's transform position; the shape geometry is drawn around it. |
| ae_morph_sizeA | Animate a shape's Size on one axis independently (the 'constrain proportions OFF' trick) — so a moving button can look like it physically stretches a background frame. Keyframes the layer's first rectangle/ellipse Size between two times. |
| ae_add_bounce_expressionA | Apply a physics 'bounce' (overshoot) expression to a property (scale, position, or rotation) instead of hand-keying springiness. Once applied, any keyframe you set on that property will overshoot and settle naturally. Based on the well-worn Dan Ebberts overshoot — robust against overflow. |
| ae_add_timing_offsetA | The 'organic motion' trick: make a nested element trail its parent/leader by a fraction of a second using |
| ae_add_button_pressA | Add a tactile 'button press' micro-interaction: a quick scale-down dip and release just before a major on-screen movement begins. Inserts three Scale keyframes around |
| ae_parent_layerA | Parent one layer to another (the layer-level 'pick whip'): the child then inherits the parent's transforms. Pass parent=null to unparent. Visual position is preserved. |
| ae_link_propertyB | Pick-whip one property to another via an expression — e.g. link an icon's Scale to its container's Scale so they always match. Defaults the target property to the same name as the source property. |
| ae_add_text_revealA | Word-by-word staggered text reveal — not a flat fade. A Text Animator pushes each unit off-screen (Position offset) at 0% opacity; an Expression Selector pulls one chunk into place at a time. Defaults to words; set chunkSize=2 to reveal two words at a time, or basedOn=characters for a typewriter feel. |
| ae_create_null_pathA | Move a layer along a (optionally curved) path the safe way: create an invisible Null whose pivot the layer is pinned to, parent the layer to the Null, and keyframe the Null's position through your points. When the Null is stationary the layer can't drift — which raw curved keyframes on the layer itself would cause. NOTE: the layer is repositioned to ride the Null, so make points[0] its desired start. |
| ae_add_master_cameraA | The cinematic finisher: create one master Null at the comp's centre, parent every otherwise-unparented layer to it, and add a Rotation expression with a very slight tilt (positive easing to negative) so the whole composition moves together as one — 'stitching it all'. |
| ae_save_projectA | Save the After Effects project (.aep). Pass a path to save-as / create the file; omit it to save in place (requires the project to already have a file). |
| ae_render_frameA | Render a single frame of a composition to a PNG and return its file path — use it to actually look at what you've built. Fast (no Render Queue). |
| ae_render_compA | Render a composition to a video file via the Render Queue. Blocking — can take a while. Returns the output path on success. |
| ae_create_solidB | Add a solid-colour layer — handy as a background or a colour wash. Defaults to comp size. |
| ae_create_textA | Add a plain text layer (no animator). For an animated reveal use ae_add_text_reveal instead. |
| ae_import_mediaC | Import an image / video / audio file into the project, and optionally place it in a composition. |
| ae_animate_transformA | Keyframe a transform property (position / scale / rotation / opacity) from one value to another between two times, with an easing preset. The general-purpose 'move this from A to B smoothly' tool. If |
| ae_set_easingA | Re-ease the existing keyframes of a transform property with a preset (linear / easeIn / easeOut / easeInOut / hold). Use after manual keyframing, or to dial in the feel of an already-animated property. |
| ae_add_fadeC | Add an opacity fade-in and/or fade-out at the layer's in/out points, eased. |
| ae_add_effectA | Add an effect to a layer by name or match-name (e.g. 'Drop Shadow', 'Gaussian Blur', 'CC Light Sweep', or a match-name like 'ADBE Drop Shadow'). Returns the effect's parameter names so you know what ae_set_effect_param can target. |
| ae_set_effect_paramB | Set a parameter of an effect on a layer (or keyframe it at a time). Reference the effect and parameter by name or 1-based index. |
| ae_add_drop_shadowA | Convenience: add a soft Drop Shadow to a layer with sensible defaults (you can fine-tune via ae_set_effect_param afterwards). |
| ae_add_glowA | Convenience: add a Glow effect to a layer (great for UI highlights / logos). Tune further with ae_set_effect_param. |
| ae_add_gaussian_blurC | Convenience: add Gaussian Blur to a layer (use a small amount for depth, or keyframe it for a focus pull / transition). |
| ae_add_adjustment_layerA | Add a full-frame adjustment layer at the top of the stack — apply effects to it (e.g. via ae_add_effect / ae_add_glow) to grade or treat the whole comp at once. |
| ae_set_blend_modeC | Set a layer's blending mode (normal, multiply, screen, overlay, add, lighten, darken, soft-light, hard-light, color-dodge, color-burn, difference, luminosity). |
| ae_add_maskA | Add a rectangular or elliptical mask to a layer. Bounds are in the layer's own pixel space ([left, top, right, bottom]); omit them to mask the whole layer. Combine with ae_animate_mask for wipe-style reveals. |
| ae_animate_maskA | Keyframe a mask's expansion or feather between two values — e.g. animate expansion from a small value to large to wipe a layer on/off. |
| ae_add_trim_pathA | Add Trim Paths to a shape layer and (by default) animate it so the stroke draws on. Adds a stroke first if the shape has none. Best on shapes made by ae_create_shape. |
| ae_set_track_matteA | Use the layer directly above as a track matte for this layer (alpha or luma, normal or inverted). Pass 'none' to clear it. The matte layer should be just above the target in the layer stack. |
| ae_set_layer_3dA | Toggle a layer's 3D switch (or every layer in the comp). Required before a camera move affects 2D layers. |
| ae_add_cameraB | Add a Camera layer to the comp (becomes the active camera). Animate it with ae_animate_camera — remember 2D layers need their 3D switch on (ae_set_layer_3d) to be affected. |
| ae_animate_cameraA | Keyframe a camera's position and/or point of interest between two 3D points — a dolly / push-in / pan. If no camera name is given, the first camera in the comp is used. |
| ae_create_precompA | Precompose layers into a new composition (a 'scene') — keeps things organised and lets you apply effects/transforms to a whole group at once. |
| ae_add_layer_to_compB | Add an existing composition (a precomp/scene) or imported footage item into another composition as a layer. |
| ae_add_markersA | Add markers at the given times — on the composition timeline (for beat/section sync) or on a specific layer. Optional labels. |
| ae_enable_time_remapA | Enable Time Remapping on a layer whose source has a duration (footage, comp/precomp). Then keyframe it with ae_animate_time_remap for speed ramps / freeze frames. |
| ae_animate_time_remapA | Keyframe Time Remapping on a layer — each key maps a comp time to a source time (slow-mo, speed-up, freeze, reverse). Enables time remapping first if needed. |
| ae_add_device_frameA | Wrap a layer in a mockup frame — 'card' (rounded panel + shadow), 'browser' (panel + a top chrome bar with traffic-light dots), or 'phone' (tall rounded panel). The content layer is parented to the frame so they move together. Best on footage/precomp layers (a screenshot or UI scene). |
| ae_render_framesA | Render several frames of a composition to PNGs at once — use it to review motion across a range of times. Returns the saved file paths. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Phanikondru/openshowreel'
If you have feedback or need assistance with the MCP directory API, please join our Discord server