Skip to main content
Glama

apply_spotlight_mask

Dims everything outside a soft mask to spotlight a subject, with animated sweep keyframes and reset for bridge spotlights.

Instructions

Apply a static or animated spotlight: dim everything outside a soft mask, with sweep keyframes.

Joins the bridge's Fusion chain without cutting out your own nodes. reset=True removes every bridge spotlight. Frames: start_frame/end_frame and keyframe 'frame' count from the clip's first frame (0). timeline_start_frame/timeline_end_frame and keyframe 'timeline_frame' take absolute timeline frames.

Input Schema

NameRequiredDescriptionDefault
resetNo
shapeNoellipse
widthNo
easingNocubic_out
expandNo
heightNo
radiusNo
animateNo
item_idNoplayhead
center_xNo
center_yNo
end_frameNo
keyframesNo
mask_nameNo1
soft_edgeNo
end_radiusNo
start_frameNo
track_indexNo
start_radiusNo
spotlight_gainNo
ambient_brightnessNo
timeline_end_frameNo
timeline_start_frameNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.13.0
    • addedInput schema / properties / timeline_end_frame
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Timeline End Frame"
      +}
    • addedInput schema / properties / timeline_start_frame
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Timeline Start Frame"
      +}
  2. First observedv0.1.0

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does disclose two meaningful traits: it appends to the Fusion chain without removing existing nodes, and reset=True destructively clears every bridge spotlight. It omits other important behavior for a 23-param mutator: whether re-application stacks masks, what target clip it acts on, error conditions, and what the operation requires to succeed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, followed by behavioral notes and the frame-semantics clarification. It is compact and each line adds some value, though the frame explanation could be tightened slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. But for a 23-parameter tool with zero annotations and 0% schema description coverage, the description leaves most parameters and the target/selection behavior unspecified, which is not sufficient for reliable invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate across 23 parameters, yet it only explains the frame-related ones (start_frame/end_frame vs timeline_start_frame/timeline_end_frame, and the 'frame' vs 'timeline_frame' keyframe fields) plus reset. The frame/timeline distinction is genuinely valuable, but shape, width, height, radius, center_x/y, soft_edge, easing, expand, animate, start_radius, end_radius, spotlight_gain, ambient_brightness, mask_name, item_id, and track_index are left undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Apply a static or animated spotlight: dim everything outside a soft mask, with sweep keyframes.' That is concrete and unambiguous. It does not, however, differentiate itself from effect siblings like apply_blur_effect, animate_zoom, or animate_color_fx, so an agent has no explicit signal for choosing between them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives partial usage context: 'Joins the bridge's Fusion chain without cutting out your own nodes' and 'reset=True removes every bridge spotlight.' That clarifies reset semantics and non-destructiveness, but there is no explicit when-to-use versus the other effect tools and no prerequisites or conditions stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.