Skip to main content
Glama

organize

Bulk-log FCPXML libraries: auto-propose keywords, set ratings and roles, filter clips, and undo writes safely via a journal.

Instructions

Bulk library logging and the ledger. organize_auto proposes keywords per clip from cached captions and the transcript (apply=true writes them). Select clips with clip_name (glob), keyword and/or role, then organize_keywords (keywords, mode add|remove|replace), organize_rate (rating favorite|rejected|clear) or organize_roles (audio_role, video_role); each writes a _organized copy. history lists every recorded operation for the file's folder (limit); undo (n) moves the outputs of the last n writes into the journal's undone/ folder — it never deletes and refuses when a file changed since it was written. Actions: organize_auto, organize_keywords, organize_rate, organize_roles, history, undo.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
argsNoArguments for the chosen action, e.g. {"filepath": "/path/to/project.fcpxml"}. Any action that takes a filepath also accepts expected_sha256: the call refuses if the file no longer hashes to it (every write result and analyze_timeline report the current sha256).
actionYesWhich operation to run.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.26.0
    • changedInput schema / properties / args / description
      Previous value: -"Arguments for the chosen action, e.g. {\"filepath\": \"/path/to/project.fcpxml\"}."New value: +"Arguments for the chosen action, e.g. {\"filepath\": \"/path/to/project.fcpxml\"}. Any action that takes a filepath also accepts expected_sha256: the call refuses if the file no longer hashes to it (every write result and analyze_timeline report the current sha256)."
  2. Addedv0.22.1

TDQS

A4.2/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and largely succeeds: it discloses that apply=true actually writes, that each action produces a _organized copy rather than mutating in place, that undo moves outputs to a journal undone/ folder and never deletes, and that writes are refused when a file changed since it was written. These guard rails and side-effect semantics are exactly what an agent needs to call a write tool safely.

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?

Content is front-loaded and dense with no filler prose. The trailing 'Actions: ...' sentence merely restates the action enum already present in the schema, which is a small redundancy.

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 six-action multiplexer with a nested args object and no output schema, the description covers the write/copy semantics, selection criteria, ledger behavior, and undo guard conditions well. It does not characterize the shape of returned data (e.g., what organize_auto proposes or what history emits), leaving a minor gap.

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

Parameters4/5

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

Schema coverage is 100%, but the schema's args is an opaque nested object; the description compensates by naming the real inner arguments (clip_name glob, keyword, role, mode add|remove|replace, rating favorite|rejected|clear, audio_role, video_role, limit, n). This adds meaningful semantics beyond the structured fields.

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 names a concrete function (bulk library logging/ledger) and enumerates the six operations the multiplexer exposes (organize_auto, organize_keywords, organize_rate, organize_roles, history, undo), so an agent can tell what each action does. It stops short of differentiating the tool from siblings like mark, edit, or inspect, which could plausibly overlap with rating/keyword work.

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

Usage Guidelines4/5

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

It gives a clear workflow: select clips with clip_name (glob), keyword and/or role, then dispatch to organize_keywords, organize_rate, or organize_roles, and it explains organize_auto's caption/transcript source. It never states when to prefer a sibling tool or when not to use this one, so context is clear but exclusions are absent.

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