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
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ae_healthA

Check After Effects bridge status only. Never runs scripts in AE (no 'Executing script…' popup). If disconnected, restart AE once or call ae_reconnect once.

ae_reconnectA

USER-INITIATED ONLY. Runs AfterFX -r once (shows a brief 'Executing script…' dialog). Prefer restarting AE instead for a silent Startup load. 30s cooldown.

ae_list_instancesA

List live After Effects instances reporting heartbeats to the file bridge.

ae_get_project_infoA

Get the open AE project summary: name, path, bits, and composition index. Prefer this over dumping the full project tree.

ae_list_compositionsA

List compositions in the open project (name, size, fps, duration, layer count).

ae_get_compositionB

Get composition settings and layer index. Use response_format=detailed for layer list.

ae_create_compositionA

Create a new composition. Defaults: 1920x1080, 30fps, 5 seconds. bgColor is RGB 0–1 floats, e.g. [0,0,0].

ae_get_layerA

Get layer details (transforms, timing, effects). Prefer layer_name; use layer_index if names collide.

ae_create_layerA

Create a layer in a composition. type: text|solid|shape|null|camera|light|adjustment. For text pass text/fontSize/fillColor. Colors are RGB 0–1. Position is [x,y] or [x,y,z].

ae_set_layer_propertiesC

Set transform/timing/name/parent on a layer. position [x,y], scale [x,y] percent, rotation degrees, opacity 0-100.

ae_delete_layerA

Delete a layer. DESTRUCTIVE — requires confirm=true.

ae_duplicate_layerB

Duplicate a layer; optionally rename the copy.

ae_set_keyframesB

Set keyframes on a layer property. property uses path aliases: Transform/Position, Transform/Scale, Transform/Rotation, Transform/Opacity (or matchNames). keyframes: [{time: seconds, value: number|array}].

ae_set_expressionA

Set or clear an expression on a layer property. Pass expression string, or empty string/null to clear. Example: wiggle(2, 30).

ae_apply_effectB

Apply an effect by display name or matchName (e.g. "Gaussian Blur" or "ADBE Gaussian Blur 2").

ae_set_effect_propertyC

Set a property on an effect instance. Identify effect by effect_name or effect_index (1-based).

ae_list_effectsA

List effects on a layer (name, matchName, index).

ae_remove_effectB

Remove an effect from a layer by effect_name or effect_index.

ae_searchA

Search project items and layers by name substring. Prefer this over listing everything in large projects.

ae_capture_frameA

Render a still PNG of a composition at a given time (seconds) and return it as an image when possible. Use after visual changes so you can verify the result. Defaults to current CTI time.

ae_run_jsxA

Escape hatch: run a Function-body of ExtendScript. Receives args parameter. Always undo-grouped. Use mode=unsafe for arbitrary code. Prefer high-level tools when possible. Return a JSON-serializable value.

ae_create_subtitleA

Add a subtitle/caption text layer. DEFAULT: white text + black stroke for readability — NEVER adds a black bar/plate behind text unless background_bar=true (only when the user explicitly asks). Prefer this over solids for captions.

ae_import_footageB

Import a video/image/audio file into the AE project from an absolute path.

ae_analyze_cutsA

Analyze a video with ffmpeg silencedetect and return KEEP segments (content) vs silence to remove. Use this BEFORE cutting — never guess random cut points. Requires ffmpeg on PATH. Prefer ae_transcribe_video + ae_transcript_to_cuts when you need to remove stutters/fillers (speech-aware).

ae_transcribe_videoA

Transcribe a video/audio file with timestamps (segments + word-level when available). Saves JSON under ~/.ae-mcp/transcripts/. Requires Python + faster-whisper (or openai-whisper) and ffmpeg. Use result with ae_transcript_to_cuts for filler/stutter removal edits.

ae_transcript_to_cutsA

From a timed transcript, remove fillers (um/uh/like/you know/…) and stutters (repeated words), then build KEEP timeline segments with pad_before/pad_after so cuts have a little breathing room. Pass segments to ae_build_smart_edit. Also returns cleaned text + SRT for subtitles (use ae_create_subtitle — no black bars).

ae_create_editorial_planA

Create an explainable YouTube edit plan from a timed transcript. Scores natural cut points, identifies a hook, suggests chapters and visuals, and returns a reviewable plan before any AE mutation.

ae_audit_editorial_planA

Run a pre-build quality audit on a YouTube editorial plan. Reports hook, pacing, coverage, chapter, and unsafe short-cut issues without mutating After Effects.

ae_list_motion_templatesA

List the reusable motion-graphics templates the agent can use when planning a YouTube video.

ae_create_motion_blueprintB

Create a canonical, explainable motion-graphics video blueprint without mutating After Effects. The blueprint is the shared source of truth for scenes, brand, timing, templates, QA, and rendering.

ae_validate_motion_blueprintB

Run explainable coherence checks on a motion blueprint without mutating After Effects.

ae_audit_motion_coverageA

Check whether a motion blueprint requests real object choreography, impact beats, scene variation, and readable settle moments instead of a fade-led card sequence.

ae_repair_motion_blueprintB

Apply deterministic safe repairs to scene timing, template ids, and graphic text limits, then return the before/after coherence audit.

ae_build_motion_videoB

One-shot motion-graphics workflow: validate and repair a blueprint, build deterministic named scenes in After Effects, capture QA frames, render a preview or final output, and create an approval review.

ae_create_motion_templateC

Create a reusable, brand-aware motion graphic directly in an After Effects composition.

ae_capture_framesA

Capture multiple composition frames for visual QA and return a frame manifest.

ae_render_compositionB

Render a composition with an automatic export preset. The render must still be visually reviewed before delivery.

ae_create_reviewB

Create a saved review item with preview frames and optional render metadata. Approval mode should use this before final delivery.

ae_list_reviewsA

List pending, approved, and rejected AE MCP review items.

ae_decide_reviewB

Approve or reject a saved preview review item with notes.

ae_get_workflow_preferencesA

Read the AE MCP workflow mode, edit mode, and brand defaults. Approval mode is the safe default; autonomous mode lets high-level workflows proceed without an extra approval gate.

ae_set_workflow_preferencesC

Set autonomous or approval workflow behavior and project brand defaults used by high-level editing workflows.

ae_build_smart_editA

Import footage (optional if already in project) and build a sequential edit comp from KEEP segments (from ae_analyze_cuts). Cuts on silence/dead air — not random. Does not add subtitle bars.

ae_build_youtube_editB

Analyze a transcript and optionally build a YouTube edit in After Effects. In approval mode it returns a full editorial plan until approved=true; in autonomous mode it builds immediately. Use clean, retention, or story mode.

ae_prepare_blender_3d_jobA

MANDATORY first step when user asks for REAL 3D models in AE. Creates an exchange folder and returns (1) paths + (2) Blender Python to run via blender MCP execute_blender_code. AE cannot load .blend meshes natively — Blender must render a transparent PNG sequence (and optional GLB/OBJ). After Blender finishes, call ae_import_3d_from_blender.

ae_verify_blender_jobA

VERIFY GATE before AE import. Checks frame count, that frames actually differ (animation rendered), and mesh exports. MUST pass before ae_import_3d_from_blender. Do not claim 3D is done if this fails.

ae_import_3d_from_blenderA

Import a finished Blender exchange job into After Effects as a transparent PNG sequence (real 3D render). Runs verify first. Creates a dedicated comp and layer. After import you MUST ae_capture_frame to prove the layer is visible.

ae_list_blender_jobsA

List Blender→AE exchange jobs under ~/.ae-mcp/blender-exchange/

Prompts

Interactive templates invoked by user choice

NameDescription
create_lower_thirdBuild a simple lower-third (bar + title + subtitle) with fades
kinetic_type_introCreate a kinetic type intro card
debug_compInspect the active or named composition and capture a frame

Resources

Contextual data attached and managed by the client

NameDescription
ae-healthBridge and AE connection status
ae-projectActive project summary
ae-compositionsComposition index
ae-docs-expressionsExpression snippets for agents
ae-docs-matchnamesCommon property/effect matchNames
ae-docs-gotchasScripting gotchas and agent workflow rules
ae-workflowAutonomous/approval workflow and brand configuration

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/HeroicSwan/after-effects-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server