Skip to content
Prism
Support

After Effects MCP tool and scene errors

This page covers errors from Prism's curated tools and scene documents. Read the first clause: a validation error ran nothing, while comp-not-found and its family reached After Effects and found nothing there. Every error here shows in your AI client.

The message starts withDid anything runFirst move
"Tool "…" does not accept", "was called with arguments Prism will not execute", "Input validation failed"NoFix the arguments; asking for the tool again returns what it accepts
comp-not-found, layer-not-found, property-not-foundThe call reached After EffectsRead the project again and use the exact name
"Scene rejected", "Scene could not be compiled"NoFix the listed fields and resend the document

Arguments Prism will not execute

Argument not recognised

You see: "Tool "{tool}" does not accept the argument(s) "{k}" — did you mean "{near}"?"

Meaning. The tool does not accept "{k}". Nothing ran, so no default was used silently.

Fix. Use one of the accepted arguments the message lists.

Arguments too many

You see: "Tool "{tool}" was called with arguments Prism will not execute: …"

Meaning. The tool arguments hold more than 100,000 values. Nothing ran.

Fix. Send the data in batches, or reference a file.

The reason givenLimitDo this
"they hold more than 100000 values"100k values"Send the data in batches, or reference a file instead of inlining it."
"they nest deeper than 32 levels"32 levels"Flatten the arguments to at most 32 levels of nesting": deeper nesting overruns After Effects' engine stack and would kill the running session
"they cannot be serialized"plain JSON"Send plain JSON values only — no functions, no circular references."
"they serialize to {bytes} bytes (the limit is 262144)"256 KB"Tool arguments are parameters, not files": reference a file

Argument shape wrong

You see: "Input validation failed for tool "{tool}""

Meaning. An argument has the wrong shape or type. Nothing ran.

Fix. Correct the argument the check names, then call again.

Argument not accepted

Meaning. An argument value is outside what the tool accepts. Nothing changed.

Fix. Use a value the message names, then call again.

MessageSend instead
"direction must be "in" or "out""one of the two
"keyframes must be a non-empty array"at least one keyframe
"Pass layerName or layerIndex — a mask must target an explicit layer"a layer
"Bezier easing must be [x1, y1, x2, y2] (4 numbers)" or "Easing must be a string name or a [x1,y1,x2,y2] array"a named ease or four numbers
"No sampler for easing: {name}"a known ease name
"tweenToKeyframes: duration must be > 0", "stiffness must be > 0"a positive number
"Invalid stagger origin: {from}"a supported origin

The call reached After Effects and found nothing

Prism appends two sentences to every error in this family: "The script did reach After Effects, so treat anything you were holding about the project as stale and read it again." and "Re-sending this exact call will fail the same way unless something changes first — correct the call, or the condition it named, rather than repeating it."

No composition open · comp-not-found

Meaning. This tool needs an open composition. Nothing ran.

Fix. Open a comp in the timeline, or pass compositionName.

Do not resend the call unchanged.

Layer not found · layer-not-found

Meaning. No layer with that name or index exists in the composition. Nothing changed.

Fix. Use a layer name from the list, or read the composition first.

CodeWhat it meansDo this
layer-not-foundNo layer by that name or index in the compRead the comp; with duplicate names prefer layerIndex
property-not-foundNo property at that path or match namethe message lists the names that exist; the match names are on Quirks
not-a-text-layerA text tool targeted a shape, solid or footage layerTarget a text layer
point-textThe tool needs box (paragraph) text and the layer is point textCreate the layer as box text; see "Text document not of Box document type" on Quirks
guardedThe tool writes only Prism's own PRISM_ preference sectionDo not target other preference sections
nothing-appliedThe tool ran and After Effects reports no changeCheck the target and values, then read the value back
no-selectionThe tool acts on the selection and nothing is selectedSelect layers in the timeline, or pass names
project-not-savedThe tool needs a saved project fileSave the project first
expression-errorAfter Effects rejected the expression textFix the expression; the message quotes After Effects
separated-dimensionsThe property's dimensions are separatedTarget the X and Y properties individually
font-not-found, font-not-installedThe name matched no installed fontUse the PostScript name; see Quirks
marker-index-out-of-range, mask-index-out-of-range, segment-out-of-rangeThe index is outside what exists; indexes are 1-basedRead the count first

Nothing applied · nothing-applied

You see: "the write did not stick: asked for {want}, After Effects still reports {got}. After Effects accepted the call without an error and changed nothing."

Meaning. After Effects accepted the call but no value changed.

Fix. Check the value is allowed for this item, then set it once more.

The tool's contract

No composition open · comp-not-found

You see: "This tool needs an active composition."

Meaning. This tool needs an open composition. Nothing ran.

Fix. Open a comp in the timeline, or pass compositionName.

Not an AV layer · layer-type-unsupported

You see: "This tool needs an AV layer (footage, solid, text, shape, precomp or adjustment); "{name}" is a {kind} layer."

Meaning. "{name}" is a {kind} layer. This tool needs footage, solid, text, shape, precomp or adjustment. Nothing ran.

Fix. Target an AV layer, or use a camera or light tool.

Layer cannot time remap · layer-type-unsupported

You see: ""{name}" cannot be time-remapped (only footage and precomp layers can)."

Meaning. "{name}" cannot be time-remapped. Only footage and precomp layers can. Nothing ran.

Fix. Target a footage or precomp layer, or precompose this one first.

Scene documents

Scene rejected · scene-validation

You see: "Scene rejected — fix the fields below and resend the document."

Meaning. The scene document has {n} problems and was not built. Nothing ran.

Fix. Correct each field in the problems list, then send the scene again.

ProblemFix
"scene must be an object"scene:{comp:{name:"..."}, layers:[...], timeline:[...]}
"comp is required"comp:{name:"My Scene", width:1920, height:1080, fps:30, duration:8}
"layers[] is required"add a layers array
"type must be one of …"one of the listed types
"effects must be an array"wrap the effect in []
"shape needs fill and/or stroke"add a fill or a stroke
"layout.children must list node ids"ids, not node objects

The limits without an example: width and height 4–8192; duration 0–3600 seconds; fps 1–120; at most 100 nodes; an id may not be reserved or duplicated; an ease is a GSAP name or [x1,y1,x2,y2]; a focus parented to another node is in parent space.

Scene could not be built · scene-compile

You see: "Scene could not be compiled — fix the fields below and resend."

Meaning. The scene is valid but a value could not be resolved, usually a colour. Nothing ran.

Fix. Use a colour as #rrggbb, rgb(…), a CSS name, or a Tailwind token.

Still running

You see: "The scene build did not respond within {s}s, but it is almost certainly STILL RUNNING or already COMPLETED in AE."

Meaning. After Effects has not answered after N seconds. The scene build is probably still running or already done.

Fix. Wait, then check recent results. Do not run it again; that duplicates the work.

SVG, Lottie and icons

SVG not readable · svg-parse

Meaning. The SVG could not be read at the point the message names. Nothing was imported.

Fix. Fix the SVG source, or export it again from the design tool.

MessageMeaning
"parseSvg: input must be a string"Pass the SVG source text
"root element must be <svg>, got <\{tag\}>"Send the whole document, not a fragment
"affine matrix must carry six numbers"A transform="matrix(…)" is malformed
"SVG path starts without a command", "Unknown SVG path command: {cmd}", "Insufficient args for SVG path command {cmd}", "Unexpected number after Z"The path d data is malformed
"d must be a non-empty string"A path has no data

An SVG imports with the wrong colours

What it means. The import reports success:true but a logo lands magenta or green: a feColorMatrix saturate filter is written to Hue, and mesh gradients are dropped. Open on panel 1.5.1 (issue #95). Do this. Flatten filters and gradients in the design tool and import the plain shapes.

Lottie not supported · lottie-parse

Meaning. The Lottie file is empty, invalid, or has no shape or null layers. Nothing was imported.

Fix. Export a Lottie with shape layers; precomp-only files are not supported.

Icon not found

You see: "Icon "{name}" not found in {source} (variant: {v})."

Meaning. No icon named "{name}" exists in {source} for the {variant} variant. Nothing was imported.

Fix. List the set's icon names with list-svg-icon-sets, then use one.

Discovery and the registry

discover finds nothing with categories

What it means. Asking for tools filtered to one category returns nothing and then says the tools do not exist, while the same request without the filter returns them; the filter compares a different category form. Open since 2026-08-27 (issue #148). Do this. Run discover without the categories filter.

No curated tool covers this

What it means. The registry was cut to 39 curated tools on 2026-08-27. A tool used before that date may be gone; the message is by design, not a fault. Do this. Use script mode: call after_effects with a script. Everything the retired tools did is available there; Scripts covers its errors.

Other tool states

Arguments nested too deep

You see: "…they nest deeper than 32 levels. Nothing was run.…"

Meaning. The tool arguments nest deeper than 32 levels. Nothing ran.

Fix. Flatten the arguments to 32 levels or fewer.

Arguments not plain data

You see: "…they cannot be serialized. Nothing was run.…"

Meaning. The tool arguments contain something that cannot be sent, such as a function. Nothing ran.

Fix. Send plain values only: no functions, no circular references.

Arguments too large

You see: "…they serialize to {bytes} bytes (the limit is 262144). Nothing…"

Meaning. The tool arguments are {bytes} bytes. The limit is 262,144. Nothing ran.

Fix. Reference a file instead of inlining the data.

Setting protected

You see: "guarded (non-PRISM_ preferences section)…"

Meaning. That preference is outside Prism's own section, so it is protected. Nothing changed.

Fix. Change settings under the Prism section only.

Change not confirmed · verify-applied

You see: "After Effects accepted the write but exposes no way to read thi…"

Meaning. After Effects accepted the change but gives no way to read it back, so Prism cannot confirm it.

Fix. Check the result in After Effects yourself.

Icon set unknown

You see: "Unknown icon source: "{set}". Available: {list}…"

Meaning. No icon set is called "{set}". Nothing was imported.

Fix. Use one of the available sets the message lists.

Icon variant unavailable

You see: "Variant "{v}" not available for {source}. Available: {list}…"

Meaning. {source} has no "{v}" variant. Nothing was imported.

Fix. Use one of the variants the message lists.

Icon download failed

You see: "HTTP {status} fetching {url}…"

Meaning. The icon source answered with an error ({status}). Nothing was imported.

Fix. Try again in a moment, or use another icon set.

Icon download timed out

You see: "Timeout fetching icon "{name}" from {source}…"

Meaning. The icon source did not answer in time. Nothing was imported.

Fix. Try again, or use another icon set.

Common questions

If an entry here does not match, email support@oneprism.io with the panel version (footer, "After Effects MCP v…") and the Copy diagnostic from the panel's Support section. On panel 1.5.1 the Support section may be empty; the version plus the error text is enough.