Skip to main content
Glama

Set editorial graphic

set_editorial_graphic
Idempotent

PROJECT-SCOPED: this call acts only on the explicit project_id and returns the project identity with its result. Author a measured, restrained editorial composition as editable native text/vector layers in ONE revision. Stable id replaces its whole group. kind: statement, comparison (text vs secondary), metric (text is the real value, secondary its meaning), quote, chapter, label, headline. headline requires the verified speaker name in speaker and a faithful claim in text: it prefixes the name inline, wraps at readable font_size (default .052), and holds still without a panel or caption suppression. Max three lines; shorten excess copy. Place its box above the actual picture; never infer identity from a reference. Pass exact supported claims; never invent statistics. Optional eyebrow is short context, not filler. palette ink/paper/slate; motion settle/none; box=[left,top,right,bottom] chooses its region. treatment=panel draws a backdrop; type removes the box for integrated editorial typography. Dialogue captions remain by default. Set mute_captions=true ONLY when this graphic replaces the spoken text; its own live window then owns the suppression and removal restores captions. Card boxes are at least 0.12 wide. fit=auto (default) repairs geometry instead of rejecting: the box is clamped to the frame (a headline to the safe area) and a headline steps font_size down until it fits; every change is reported. fit=strict rejects instead. Reading time is never shortened. Every problem is listed in one reply. Place in deliberate clear space or use as a meaningful cutaway; inspect the rendered composition.

Input Schema

NameRequiredDescriptionDefault
idYes
boxNo
endYes
fitNo
kindYes
textYes
startYes
motionNo
eyebrowNo
paletteNo
speakerNo
font_sizeNo
secondaryNo
treatmentNo
project_idYesRequired immutable scope for this call. Copy the id from list_projects/open_project/project_state; the active-project pointer is never used to guess.
motion_motifNo
mute_captionsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • addedInput schema / properties / box / items / maximum
      Added value: +1
    • addedInput schema / properties / box / items / minimum
      Added value: +0
    • addedInput schema / properties / eyebrow / maxLength
      Added value: +32
    • addedInput schema / properties / fit
      Added value: +{
      +  "enum": [
      +    "auto",
      +    "strict"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / font_size / maximum
      Added value: +0.085
    • addedInput schema / properties / font_size / minimum
      Added value: +0.035
    • addedInput schema / properties / secondary / maxLength
      Added value: +100
    • addedInput schema / properties / speaker / maxLength
      Added value: +60
    • addedInput schema / properties / start / minimum
      Added value: +0
    • addedInput schema / properties / text / maxLength
      Added value: +100
  2. Changed3 schema fields changed
    • addedInput schema / properties / font_size
      Added value: +{
      +  "type": "number"
      +}
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "statement",
      -  "comparison",
      -  "metric",
      -  "quote",
      -  "chapter",
      -  "label"
      -]New value: +[
      +  "statement",
      +  "comparison",
      +  "metric",
      +  "quote",
      +  "chapter",
      +  "label",
      +  "headline"
      +]
    • addedInput schema / properties / speaker
      Added value: +{
      +  "type": "string"
      +}
  3. Added

TDQS

A4.1/5.0
Behavior5/5

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

Even with annotations present, the description adds substantial behavioral context beyond them: idempotent group replacement by stable id, project-scoping and identity return, fit=auto repairing geometry vs fit=strict rejecting, font-size stepping, clamping to frame/safe area, one-reply problem listing, and conditional caption suppression via mute_captions. This is rich, non-redundant disclosure.

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

Conciseness3/5

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

The content is valuable but delivered as a dense, run-on block with minimal structural separation, making it hard to scan for a specific parameter. The PROJECT-SCOPED constraint is correctly front-loaded, but the remaining sentences are not grouped or formatted for retrieval.

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

Completeness4/5

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

For a 17-parameter mutation tool with no output schema and near-zero schema documentation, the description covers most critical semantics (kind, fit, treatment, captions, geometry, idempotency). It stops short of covering start/end timing and motion_motif, leaving minor gaps.

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

Parameters5/5

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

Schema coverage is only 6% (17 params), so the description carries the burden and largely does: it disambiguates kind values (comparison = text vs secondary; metric = text is the real value, secondary its meaning), defines box/treatment/palette/motion, explains fit, defaults font_size (.052), and conditions mute_captions. Only motion_motif and start/end timing are left unaddressed.

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 opening states a specific verb+resource ('Author a measured, restrained editorial composition as editable native text/vector layers') and explains the revision semantics ('Stable id replaces its whole group'). It clearly defines what the graphic is, but does not explicitly distinguish it from close siblings such as set_vector_graphic, set_typeset, or add_kinetic_text.

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 situational guidance ('Place in deliberate clear space or use as a meaningful cutaway', headline placement above the picture, mute_captions only when the graphic replaces spoken text), but never names an alternative tool or states when to prefer this over a sibling like set_vector_graphic. Usage is implied rather than routed.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.