Skip to main content
Glama
leancoderkavy

Premiere Pro MCP Server

MCP for Adobe Premiere Pro

MCP Toplist

Give compatible AI assistants structured control over supported Adobe Premiere Pro workflows.

Free, MIT licensed, local-first, and published to npm as premiere-pro-mcp — the only package name that installs this project.

Website · Setup guides · Search tools · Troubleshooting · Release facts

Development source: 369 core tools across 53 modules, 4 resources, and 17 guided workflows. A connected UXP host adds 93 capability-gated tools.

The completed AE render handoff previews and confirms importing one finished render into an existing Premiere bin, with host and file rechecks and an import receipt.

License: MIT Node.js MCP npm Fly.io Premiere Pro

npm downloads GitHub stars GitHub forks Open issues Last commit Buy Me A Coffee


MCP for Adobe Premiere Pro turns a structured AI request into an organized local editing workflow

What is this?

An MCP (Model Context Protocol) server that lets AI assistants like Claude, Windsurf, Cursor, GitHub Copilot, or any MCP-compatible client directly control Adobe Premiere Pro — importing media, editing timelines, applying effects, managing keyframes, exporting, and more.

"Add the B-roll clips to V2, apply a cross dissolve between each, color correct them to match the A-roll, and export a 1080p ProRes."

At a glance

Display name

MCP for Adobe Premiere Pro

npm package

premiere-pro-mcp

Install (npm route)

npm install -g premiere-pro-mcp

Connector install

premiere-pro-mcp --install-cep

MCP server name

io.github.leancoderkavy/premiere-pro

Repository

https://github.com/leancoderkavy/premiere-pro-mcp

Website

https://premiere-pro-mcp.com

License

MIT

Hosts

Windows and macOS, Premiere Pro 2020-2026

This project is independent and is not affiliated with or endorsed by Adobe Inc. It is also separate from other MCP servers for Premiere Pro. The only npm package published from this repository is premiere-pro-mcp, and no other package name installs it.

Comparing similarly named packages? Both this package and adobe-premiere-pro-mcp declare a premiere-pro-mcp executable. Verify the package and repository before configuring a client. The new local configuration helper prints Claude, Cursor, VS Code, or Codex settings that point directly to this installation. It is a feature included in v1.15.1 and later.

The current source exposes 369 core tools for supported workflow steps spanning the supported ExtendScript, QE DOM, local media and interchange analysis, revisioned project-context retrieval, safe edit-planning, project-intake preview, review handoff, connection verification, and guarded After Effects MOGRT authoring, batch, library, render-queue, inspection, and Premiere-handoff workflows. A compatible, authenticated UXP panel adds 93 documented, capability-gated tools without replacing the production CEP bridge.

Latest release: 1.15.1

The published v1.15.1 npm artifact contains 369 core tools, 367 in its default profile, and 460 with a compatible UXP connection. The development catalog above can include unreleased work. See the versioned facts and package provenance.

Try a bounded workflow

Choose a setup guide: Claude Desktop, Codex, other local MCP clients, or ChatGPT connection options.

Download the workflow starter kit for synthetic media and three evaluation recipes: a read-only sequence check, an explicitly confirmed review-frame export, and a product-spot preview. No email is required. The kit has no recorded Premiere demo or verified host result. Start with a disposable project and use setup and recovery if the connection is unavailable.

Release highlights

  • Editorial planning: film evidence, transcript cleanup, caption authoring, shorts and chapter planning, rhythm and speaker layouts, timeline QA, and platform delivery plans.

  • Cross-app handoff: capability-aware workflow routes and guarded After Effects render-to-Premiere handoff.

  • Editing correctness: verified readback and explicit capability or committed-but-unverified failures across transition, import, effects, source identity, and track operations.

  • MOGRT studio: an optional, separate After Effects CEP connector can author approval-gated title, callout, quote, and social recipes; constrain them with local brand kits; batch, publish, queue, inspect, and hand them to Premiere without claiming visual or completed-render proof.

  • Global-update handoff: a global npm installation can show its server and connector update state in the Windows CEP panel and, after explicit confirmation, update only after Premiere has been quit; it never changes a project, client configuration, source checkout, or custom npm prefix.

  • Local review planning: caption timing previews parse caller-supplied SRT/VTT without writing or importing it, while revision-bound editorial evidence stays in the opt-in local context index without provider calls.

  • Repair preview: premiere-pro-mcp --doctor --plan-fixes produces a privacy-safe, no-write repair plan; the narrowly eligible connector repair still requires an explicit confirmation that Premiere is closed.

  • Auditable guidance: the universal setup guide, generated public workflow manifest, and proof runbook make workflow and verification boundaries inspectable without claiming a licensed-host walkthrough occurred.

  • Faster, clearer delivery: immutable MCP registration work is reused safely across stateless requests, and the landing now has a lighter, mobile-first workflow view plus current machine-readable facts and crawl guidance for its public pages.

  • Explicit boundary: the hosted endpoint remains an operator-managed MCP service; unauthenticated callers are rejected and it does not pair users to local Premiere processes. See the generated supported action catalog for individual capability and verification contracts.

See the v1.15.1 release notes for complete details. Live installation in Premiere Pro still requires host verification.

Current MCP protocol support

The server uses the stable TypeScript SDK v2 and serves the 2026-07-28 stateless protocol over HTTP and stdio, while retaining legacy MCP compatibility through 2025-11-25. Modern clients receive discovery, validated routing headers, cache hints, subscription-stream support, and the formal Premiere extension capability. See the complete MCP capability and boundary report.

If an MCP client cannot complete its server/discover probe, set PREMIERE_MCP_PROTOCOL_MODE=legacy in that client's server environment and restart the client. This uses the SDK's base stdio transport and the legacy initialization handshake only; leave it unset (or auto) for modern MCP capabilities.


Related MCP server: premiere-pro-mcp

For editors evaluating an AI workflow

Before an assistant changes an active project, use the Premiere Pro AI workflow checklist to define the target and no-change boundaries, verify the local connection, request a bounded plan, and inspect the returned result. It is a practical starting point for assistant editors and post leads testing a repeatable workflow on a duplicate project or small test sequence.

For product context, see the Adobe Premiere AI Assistant and MCP comparison and the Claude Desktop setup guide.

If you are deciding between a single local project, an Adobe Production on shared storage, or a remote Team Project, use the Premiere Pro collaboration workflow guide before you evaluate an MCP path. It links the relevant Adobe guidance, makes no project inspection request, and ends with the same read-only connection check.

For a concrete first Project Intake preview, choose one of the three schema-checked, no-sensitive-data starter templates. They are evaluation samples only: a human policy owner must review and replace their bins, media rules, and organization rules before a facility uses one.


Quick Start

Easiest supported path: Claude Desktop

  1. Download the current Claude Desktop bundle (.mcpb).

  2. In Claude Desktop, open Settings > Extensions > Advanced settings > Install Extension, select the downloaded bundle, and restart Claude Desktop.

  3. Download the separate signed Premiere connector (.zxp). Open it with your trusted ZXP installer. If your computer has no ZXP installer, use the npm connector installer in Advanced setup below.

  4. Restart Premiere, open a project, then open Window > Extensions > MCP for Adobe Premiere Pro.

  5. In Claude, enter: Safely check my Premiere connection with verify_premiere_connection. Make no changes.

The Claude bundle contains the local MCP server, so this route does not require Node.js. The Premiere connector is a separate required install. The first prompt is read-only and reports whether the server is installed, configured, connected, and live-verified.

First proof, before the first edit

Illustrated local Premiere MCP workflow

This is an illustrated workflow, not a Premiere panel screenshot or licensed-host proof.

  1. Open a copied test project and an active sequence in Premiere.

  2. Open Window > Extensions > MCP for Adobe Premiere Pro. “Running” means the local panel bridge is available; it does not show that an edit completed.

  3. Run premiere-pro-mcp --doctor to check only local package/configuration readiness.

  4. Ask the AI client: Run verify_premiere_connection. Make no changes. The returned check is read-only and avoids project names, paths, and media details.

If a bridge, project, or active sequence is missing, fix that setup state before allowing a mutation. For a concise, translatable version of this path, see quick starts in English, Spanish, and Japanese. The translations are machine-assisted drafts and retain command names in English.

Other AI assistants

Cursor, VS Code/Copilot, Windsurf, and other MCP clients do not currently have a project-provided one-click installer. Use their MCP settings with the advanced npm route below. Keep the assistant, server, connector, and Premiere on the same computer.

For a portable reference users can download and attach to any AI assistant, see the MCP for Adobe Premiere Pro setup guide for AI assistants. Attaching the guide provides assistant context; the local server and Premiere connector still need to be installed separately.

Before you begin

  • Node.js 20.19 or newer on Windows or macOS.

  • Adobe Premiere Pro 2020–2026. Keep Premiere, the CEP bridge, and your MCP client on the same computer for the recommended local setup.

  • Optional: ffmpeg on PATH for detect_silence (brew install ffmpeg on macOS or winget install Gyan.FFmpeg on Windows). The production Docker image already includes it.

1. Install

Option A — npm:

npm install -g premiere-pro-mcp

Option B — Clone from source:

git clone https://github.com/leancoderkavy/premiere-pro-mcp.git
cd premiere-pro-mcp
npm install
npm run build

2. Install the CEP plugin

If installed via npm:

premiere-pro-mcp --install-cep

If cloned from source:

npm run install-cep

This installs the plugin into Premiere Pro's per-user extensions folder and enables debug mode.

3. Check the setup

premiere-pro-mcp --doctor

Then ask your MCP client to run verify_premiere_connection. The check is read-only.

Update an existing installation

New releases update the local server and Premiere connector; a deployment of the hosted MCP service does not replace software on your computer. Fully quit Premiere before updating the connector.

Installed globally from npm:

premiere-pro-mcp --check-update
premiere-pro-mcp --update

--update only changes a global npm installation. It installs the published latest package, refreshes the bundled CEP connector, and leaves your MCP client configuration and projects untouched. Restart Premiere and your MCP client afterward, then run verify_premiere_connection before editing.

From the MCP for Adobe Premiere Pro panel (Windows global npm install):

The MCP updates card compares the installed global server and connector with npm latest. Choose Update after quit, review the confirmation, then quit Premiere normally. A per-user helper waits for Premiere to exit; it never force-quits the app, then installs the published npm package and refreshes its matching connector. This also supports older global installs that predate the --update command. When you reopen Premiere, the panel reports the result and reminds you to restart your MCP client and verify the connection. This flow never changes a project or MCP client configuration. It deliberately will not update a Git checkout, a custom npm prefix, or a Claude Desktop .mcpb bundle.

Installed from a Git clone:

npm run check-update:source
npm run update:source

The source updater refuses a checkout with uncommitted files or local commits, fast-forwards only to its configured upstream, runs npm ci and the production build, then refreshes the CEP connector. This avoids silently overwriting local code. If you installed the Claude Desktop .mcpb bundle, download and install the newer bundle from the GitHub release instead; Claude controls extension updates.

Remove the CEP connector

Fully quit Premiere, then remove only this connector:

premiere-pro-mcp --uninstall-cep

The uninstaller intentionally leaves Adobe's shared PlayerDebugMode setting in place so it does not disrupt other CEP extensions. Remove the MCP server from your AI client's configuration and uninstall the npm package separately if you no longer use it. On macOS, --uninstall-cep removes the per-user npm/source install; the signed system-wide .pkg route has a separate privileged removal command in distribution readiness.


Publishing to npm

The easiest repeatable path is the token-free GitHub Actions workflow:

  1. In the npm package settings, configure GitHub Actions as the trusted publisher for leancoderkavy/premiere-pro-mcp and workflow file npm-publish.yml.

  2. Allow the npm publish action.

  3. Open Actions -> Publish npm -> Run workflow and keep the default latest tag.

The workflow installs dependencies, builds, runs tests, verifies the packed files, refuses to republish an existing version, then publishes through short-lived OIDC credentials with automatic provenance. No npm token or recurring OTP is required.

For local publishing, use the guided helper:

npm run publish:npm

Useful local variants:

npm run publish:npm:dry-run
NPM_OTP=123456 npm run publish:npm
NPM_TOKEN=npm_xxx npm run publish:npm
mkdir -p ~/Library/Application\ Support/Adobe/CEP/extensions
ln -s "$(pwd)/cep-plugin" ~/Library/Application\ Support/Adobe/CEP/extensions/MCPBridgeCEP

# Enable unsigned extensions (CSXS 9–14)
for v in 9 10 11 12 13 14; do
  defaults write com.adobe.CSXS.$v PlayerDebugMode 1
done
  1. Copy the cep-plugin folder to %APPDATA%\Adobe\CEP\extensions\MCPBridgeCEP

  2. Open Registry Editor and set these String (REG_SZ) values to 1 (not DWORD):

    • HKEY_CURRENT_USER\Software\Adobe\CSXS.12\PlayerDebugMode

    • (repeat for CSXS.9 through CSXS.14)

3. Configure your MCP client

If you installed from npm, configure the client to run the global command:

{
  "mcpServers": {
    "premiere-pro": {
      "command": "premiere-pro-mcp"
    }
  }
}

If you cloned the repository instead, use the source-build configuration shown below for your client.

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "premiere-pro": {
      "command": "node",
      "args": ["/absolute/path/to/premiere-pro-mcp/dist/index.js"]
    }
  }
}

Add to your MCP server configuration:

{
  "premiere-pro": {
    "command": "node",
    "args": ["/absolute/path/to/premiere-pro-mcp/dist/index.js"]
  }
}

Add to .cursor/mcp.json in your project or global config:

{
  "mcpServers": {
    "premiere-pro": {
      "command": "node",
      "args": ["/absolute/path/to/premiere-pro-mcp/dist/index.js"]
    }
  }
}

Add to your VS Code MCP server configuration:

{
  "mcpServers": {
    "premiere-pro": {
      "command": "node",
      "args": ["/absolute/path/to/premiere-pro-mcp/dist/index.js"]
    }
  }
}

4. Verify the bridge in Premiere Pro

  1. Open (or restart) Premiere Pro

  2. The bridge starts automatically using the default temp directory (or its previously saved setting)

  3. Optionally go to Window > Extensions > MCP for Adobe Premiere Pro to confirm the green "Running" status or change the Temp Directory to match your MCP client config

  4. Ask your AI assistant to run get_capabilities, then ping, with Premiere open.

  5. For a safe first request, ask: "What is my current Premiere Pro project and active sequence? Do not make changes."

The default bridge directory is derived from the operating system on both sides, so most local setups should not set PREMIERE_TEMP_DIR. On macOS, the server resolves the per-user system temporary directory even when a GUI-launched client strips TMPDIR, keeping it aligned with Premiere's CEP panel. If you override it, use the same absolute path in the MCP server and CEP panel; Windows and macOS paths are not interchangeable.

Codex plugin

This repository includes an installable Codex plugin that bundles the local MCP server with a safety-oriented Premiere editing skill.

From a clone of this repository:

codex plugin marketplace add .
codex plugin add premiere-pro@premiere-pro-mcp
npx -y premiere-pro-mcp@1.15.1 --install-cep

Restart Premiere Pro and start a new Codex session after installation. The plugin launches premiere-pro-mcp@1.15.1 through npx; the separate CEP installation is required because the MCP server communicates with the running Premiere host through the local bridge.

The plugin source lives in plugins/premiere-pro, and the repository marketplace manifest lives in .agents/plugins/marketplace.json.

GPT-6 Astra and agent tool discovery

Use the Codex plugin with codex --model gpt-6-astra when your account has access. The server supplies session-aware workflow instructions and bounded tool discovery: call get_capabilities with {"tool_query":"transcript","tool_limit":10} to find relevant operations, their descriptions, and backend requirements. Searches default to tools registered under the current authority and tool packs.

See GPT-6 Astra workflows for evidence retrieval, visual review, execution ordering, and the division between MCP and client capabilities.

Claude

For Claude Code, add this repository as a marketplace and install the plugin:

/plugin marketplace add leancoderkavy/premiere-pro-mcp
/plugin install premiere-pro@premiere-pro-mcp

Then install the Premiere bridge and start a new Claude Code session:

npx -y premiere-pro-mcp@1.15.1 --install-cep

The Claude Code package lives in claude-plugins/premiere-pro, with its marketplace at .claude-plugin/marketplace.json.

Claude Desktop uses the self-contained MCP Bundle (.mcpb) format. Build and validate the current bundle with:

npm run build:claude

Install the resulting file from artifacts/ through Settings > Extensions > Advanced settings > Install Extension. The Premiere CEP bridge must still be installed separately.

Windows and macOS capability coverage

Surface

Windows

macOS

Verification boundary

CEP production bridge

Premiere Pro 2020–2026

Premiere Pro 2020–2026

Run get_capabilities, then ping with Premiere open

UXP preview bridge

Premiere Pro 25.6+

Premiere Pro 25.6+

Live loopback WebSocket and host API verification required

npm CEP installer

Copies plugin and verifies REG_SZ debug keys

Copies plugin and verifies the installed manifest/debug settings

Restart Premiere after installation

AE MOGRT authoring CEP bridge

After Effects 2018+

After Effects 2018+

Opens only a saved, workspace-contained AE project; a local ZIP check is not import, playback, or visual verification

CI build and unit tests

Node 20, 22, and 24

Node 20, 22, and 24

GitHub-hosted OS runners; no Adobe host is available in CI

get_capabilities reports the current operating system, temp directory, CEP/UXP coverage, enabled authority profile, and any live-host verification still required. It also includes the full tools catalog generated from the tools registered by the server, including tools disabled by the active profile. Every entry identifies:

  • the execution backend (local, CEP/ExtendScript, QE, or orchestrator);

  • static support status (supported, limited, experimental, or unsupported);

  • the minimum Premiere version known to the server;

  • the required authority and whether the current profile enables it;

  • the verification boundary and whether a live Premiere host is required; and

  • relevant operational notes.

QE-backed tools are reported as experimental because QE is undocumented and can vary between Premiere builds. Authority availability is reported separately from implementation support, so disabling edit, for example, does not incorrectly label editing tools as unsupported. Static metadata never claims that a Premiere operation succeeded; use ping and inspect each tool result for runtime evidence.

MCP tools/list is filtered to the active authority profile. The default inspect,edit,export,filesystem profile advertises 367 of the 369 registered tools and omits execute_extendscript and evaluate_expression, which require explicit unsafe-script authority. ping and get_capabilities remain visible under every profile so a restricted or misconfigured server can still explain its state. The call-time capability guard remains authoritative even if listing metadata is wrong.

Workflow-scoped discovery packs and structured outputs

By default, the full permitted catalog remains available. Set PREMIERE_MCP_TOOL_PACKS to essential, inspection, delivery, captions, or a comma-separated combination such as inspection,captions to reduce the tool discovery and registered session surface for a focused client. full is the explicit full-catalog mode and cannot be combined with another pack. ping and get_capabilities remain listed for diagnosis, and every registered call still passes through the same capability guard; a pack never grants authority.

Every listed tool now declares the same machine-readable result envelope through MCP outputSchema: ok, tool, plus data on success or error on failure. The tool-specific data shape remains versioned by the individual tool result, so clients can reliably distinguish transport success from a Premiere or local operation failure without parsing the text block.

After Effects MOGRT studio

This is a narrow authoring path, not an arbitrary After Effects script runner. Install the separate local connector, fully restart After Effects, and open Window > Extensions > MCP for Adobe After Effects:

premiere-pro-mcp --install-after-effects-cep

Then open a saved .aep project inside an approved workspace and use this order:

  1. verify_after_effects_connection — read-only connector and saved-project check.

  2. preview_mogrt_recipe — produces an expiring, one-time plan for one of five supported recipes: lower_third, title_card, callout, quote_card, or social_end_card; it never creates directories or contacts Adobe.

  3. create_mogrt_recipe with that token and confirm_export: true — creates one composition, saves the open project, and requests one .mogrt export.

  4. verify_mogrt_artifact — checks only local file existence and its ZIP header.

Optional studio paths retain the same preview-and-confirm boundary:

  • validate_mogrt_brand_kit validates local name-prefix, accent/text colors, font request, safe-margin, and workspace-contained logo values before they are passed into a recipe.

  • preview_mogrt_batch / create_mogrt_batch export up to 20 JSON/CSV rows serially; batches stop on a host error and do not promise rollback.

  • preview_mogrt_library_publish / publish_mogrt_to_library write a new, immutable v001, v002, … copy under an already-existing local library.

  • inspect_after_effects_template_source returns source-comp dimensions, duration, fonts, layer kinds, and controller names on AE 16.1+, while inspect_after_effects_render_templates lists host template names from an existing queue item.

  • preview_after_effects_render / enqueue_after_effects_render queue one exact render but never start it. preview_mogrt_premiere_handoff / apply_mogrt_premiere_handoff import into an explicitly named empty MOGRT Verify - … Premiere sequence and read back insertion/control descriptors.

The authoring connector uses AFTER_EFFECTS_MCP_TEMP_DIR (default: the OS temp directory plus after-effects-mcp-bridge), completely separate from PREMIERE_TEMP_DIR. The tool will not create, replace, or switch projects; it requires the already-open AE project and output directory to be contained by the same approved workspace. An import/control readback still needs rendered-frame review before delivery; use capture_frame or a separate approved export path.

inspect_sequence_review_report creates one read-only handoff report from Premiere timeline readback: sequence structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. It never returns media paths; marker comments are omitted unless explicitly requested. The report is not proof of rendered pixels, audio quality, caption accuracy, rights, or editorial approval.

The MCP handshake reads serverInfo.version from the installed package.json, so clients receive the package version that is actually running rather than a separately maintained literal.

Tools with mixed execution boundaries can provide explicit operational metadata at registration. This is used for local file verification, static feature-support reports, and hybrid local-plus-Premiere validation so the capability catalog does not infer a host dependency from naming alone.

Collaboration and AI feature boundaries

get_advanced_feature_support returns a machine-readable matrix for Productions, Team Projects, Frame.io, Media Intelligence, Generative Extend, Object Mask, caption translation, Speech-to-Text, Enhance Speech, Remix, editorial plans, Premiere AI Assistant, Generative Media, and a future local semantic index. Each entry includes an explicit access mode: direct, observable-only, artifact-import, external-provider, user-assisted, unavailable, or planned. Pass an optional Premiere version, intended backend, confirmed entitlements, and network state to evaluate prerequisites without conflating them with API availability. It distinguishes documented APIs from entitlements, network prerequisites, separate service APIs, and user-assisted operations without using menu automation or private APIs.

The report tool itself is local: it does not contact Premiere and is callable through the current MCP server. Each feature entry separately reports whether its operations are callable through the production CEP transport. Productions reports only static backend/version eligibility until a UXP host performs live capability negotiation.

  • Productions exposes documented read-only state through UXP, but the production MCP transport is still CEP.

  • Frame.io needs a separately authenticated Frame.io API integration; an account entitlement alone does not make it callable through Premiere's DOM.

  • Transcript JSON import/export is documented in UXP. Starting Speech-to-Text is not.

  • preview_transcript_edit_uxp and plan_transcript_rough_cut_uxp provide a revision-locked transcript-edit workflow. The planner maps selected transcript ranges to verified 1x placements in a duplicate sequence and emits descending split/remove instructions; it does not claim that Adobe exposes native transcript text deletion or perform an unverified destructive edit.

  • The remaining AI operations are user-assisted or unsupported by documented public APIs. The tool explains what can be inspected after a user completes the operation and where artifact provenance cannot be established safely.

  • The server never uses menu automation, private APIs, clip-name heuristics, or duration changes as proof that an AI operation occurred.

Reusable project context

For projects where repeatedly inspecting clips, transcripts, audio, and timeline placements is expensive, call manage_project_context with action: "capture". The local context engine indexes a bounded active-sequence snapshot, hashes native project/media paths before persistence, and returns independent source, timeline, and combined context revisions. Add transcript passages, shot descriptions, audio observations, or editor notes once with action: "enrich"; ordinary trims and moves update the timeline revision without discarding unchanged source analysis.

Use search_project_context to retrieve only evidence relevant to the current editing intent. create_context_edit_plan returns a non-mutating candidate scaffold and stale-state guards; create_editorial_plan adds reviewed organization, stringout, rough-cut, and caption-artifact routes without calling an LLM or changing Premiere. Exact identities must still be resolved and passed through the routed operation's preview/confirmation flow before any application. See the project context engine guide for storage controls, privacy boundaries, and invalidation behavior; see local-first AI editorial workflows for the complete review-and-route workflow.

Authenticated UXP connection

The MCP server can accept a local UXP panel connection and invoke the UXP commands that are currently implemented:

PREMIERE_UXP_TOKEN="replace-with-a-long-random-secret" premiere-pro-mcp

Enter the same token in the UXP panel. The listener binds only to 127.0.0.1:7777, authenticates the WebSocket upgrade, requires a versioned capability handshake, correlates concurrent requests, and fails pending work on timeout or disconnect. Set PREMIERE_UXP_PORT to use another loopback port.

When enabled, MCP discovery includes 91 capability-gated UXP additions. The first expansion covers effects, deterministic timeline selection, selection batches, scene detection, proxy/ingest, relink, metadata, color conformance, read-only Premiere/After Effects environment inspection, Source Monitor audition, storage, and least-privilege workspace access. The second adds Project-panel selection, marker CRUD, single-transaction undoable beat-grid marker application, bin organization, sequence settings, imports, typed effect parameters/keyframes, track-item transforms, atomic J/L split edits, SequenceEditor timeline edits, sequence lifecycle, and AME encoding. The third wave begins with a redacted event journal, conservative AME terminal receipts, explicit host-readiness gates, safe multi-project sessions, lease-based growing-media control, namespaced workflow checkpoints, bounded media-health maintenance, caption-aware track mute state, transactional source trim/framing, guarded sequence-range updates, guarded source-media start timing, and guarded source-media frame-rate/pixel-aspect overrides documented in the third-wave workflow matrix. The bounded migration surface also includes a non-ripple selected-item lift, native video-transition listing and guarded transactions, native active and explicit-GUID sequence timing inspection, opt-in installed-MOGRT directory inspection without filesystem enumeration, bounded native timeline structure inspection with opt-in source IDs, classification, and broad content category, guarded sequence display-format updates, a capped native Project-panel tree, a double-read Project-panel insertion-bin snapshot, guarded empty/default sequence creation, bounded native Project-panel schema/item-column metadata inspection, guarded direct Project-panel metadata replacements with exact state/readback guards, guarded typed Project metadata schema-field creation with non-field-level readback, guarded direct updates to three named application preferences, guarded transcript JSON replacement for one exact source clip, direct active-track-item identity readback, guarded source-only slips, guarded contiguous three-item slides, guarded append-only timeline duplicates, guarded contiguous same-track ripple deletes, guarded source-project-item color labels resolved from one timeline coordinate, guarded explicit-sequence preview-frame rectangle updates, explicit opt-in source-media provenance paths with bounded double resolution, bounded source-proxy readiness with an explicit attached-path disclosure, guarded static effect-parameter PointF x/y updates, bounded effect-parameter descriptor catalogs, bounded project/sequence Object Mask audits, native FrameRate/TickTime frame-alignment inspection with caller-owned inputs and tick readback, and native TickTime arithmetic over caller-owned canonical tick strings; it does not claim direct empty-track create/delete, global redo support, playback proof, Object Mask counts or visual validity, an atomic Project-panel metadata compare-and-set, app-preference Undo, installed-template availability or compatibility, imported transcript persistence, override-presence/clear semantics, path existence, source lineage or rights, proxy compatibility, general or keyframed effect-parameter value readback, rendered-frame correctness, linked-item sync, or licensed-host validation. A separate hybrid benchmark gate keeps native acceleration disabled until reproducible cross-platform evidence exists. See also the first stable workflow matrix, the next-ten workflow matrix, the guarded-slip workflow notes, the guarded-slide workflow notes, the guarded-duplicate workflow notes, and the guarded-ripple-delete workflow notes. Commands are advertised only while the authenticated local UXP bridge is connected; the host capability handshake remains the authority for support in the running Premiere build. A failed UXP command is never silently retried through CEP because the first operation may have partially succeeded.

The bounded UXP migration surface also exposes a read-only animated-PointF endpoint-displacement inspection through automate_effect_parameters_uxp. It requires one exact component and parameter target plus a strictly increasing time interval, double-reads native endpoint values and their distance, and refuses static, malformed, or changed parameter state. It does not modify Premiere or prove rendered appearance, playback, persistence, Undo, or licensed-host behavior.

The bounded UXP migration surface also exposes guarded static Color effect-parameter RGBA updates through automate_effect_parameters_uxp. They require a complete double-read snapshot, explicit confirmation, a valid operation ID, per-parameter serialization, one native transaction, and exact raw-component readback. They reject time-varying parameters and do not claim keyframed Color edits, color management, rendered appearance, playback, persistence, Undo, or licensed-host validation.

The bounded UXP migration surface also exposes guarded typed Project metadata schema-field creation. It requires the exact inspected active-project identity and 12 KiB-bounded panel XML, an explicit confirmation and operation ID, and serializes this bridge's schema and panel-replacement calls per project. Adobe provides no atomic compare-and-set or field-level schema getter: native acceptance and a changed panel XML are evidence only, so the command always returns committed_unverified and does not claim field presence, persistence, UI results, Undo, cancellation, or licensed-host validation.

The panel now requests access to one operator-selected workspace instead of declaring full filesystem access. Choose the folder in the panel before invoking a path-based UXP workflow. Media, relink, preset, export, and Source Monitor file paths must remain inside it; the persistent capability token and native root path are never returned over MCP. Lexical containment alone cannot exclude symlink, junction, or reparse-point escapes, and Adobe's request-scoped UXP filesystem API does not document canonical-path resolution. Builds without a host-supplied canonical resolver therefore advertise path-based UXP commands as unsupported and fail closed at invocation; use the existing CEP fallback for those operations.

Native transcript editing starts with a read-only, revision-locked planning flow. Use get_clip_transcript_uxp to export the transcript Premiere generated for a source clip, select source-time ranges from that JSON, and pass its SHA-256 revision to preview_transcript_edit_uxp. The preview sorts and merges ranges and returns a confirmation token without changing the timeline. Premiere does not expose a documented operation that directly turns deleted transcript text into timeline cuts, so automatic application remains withheld until the source-to-sequence mapping and documented reconstruction path pass live-host validation. search_clip_transcript_uxp provides read-only discovery without substituting an external transcription engine.

Premiere 26.2-26.3 hosts also expose documented UXP workflows for revisioned project inspection, verified project saves, preset-based sequence creation, OTIO/FCP XML interchange, transcript-language discovery, Object Mask detection, Adobe Media Encoder control, track renaming, subclip creation, stable marker inspection, Source Monitor positioning, and clip transcript detection. Mutations accept optional idempotency keys and return explicit verification outcomes. See the Adobe UXP 26.3 coverage matrix and the UXP capability foundation for the command matrix and live-host validation boundary.

The Premiere surface registry separately tracks the Premiere DOM, general UXP JavaScript, HTML/CSS, Spectrum, plugin guides, UXP Hybrid C++, the standalone Premiere C++ PrSDK, CEP/ExtendScript, the CEP platform, QE, and pinned competitor sources. The exhaustive general UXP JavaScript inventory is generated from Adobe's pinned declarations, while the exhaustive Premiere documentation inventory tracks every page in Adobe's live sitemap. This keeps declaration and documentation inventory distinct from implementation and licensed-host coverage.

The stable workflow expansion adds native component-chain effects, deterministic timeline selection, compound selection batches, scene-edit detection, proxy/ingest control, guarded offline relink, transactional project/XMP metadata, color and footage-conformance preflight, full Source Monitor audition, and project/Production storage checks. See the stable UXP workflow matrix for exact argument, undo, confirmation, and live-host boundaries.


Architecture

Local-first MCP for Adobe Premiere Pro workflow from AI assistant through the MCP bridge to a verified Premiere result

Local (stdio):

┌───────────────┐   stdio (MCP)    ┌──────────────┐   File-based IPC   ┌───────────────┐
│  AI Client    │ ◄──────────────► │  MCP Server  │ ◄────────────────► │  CEP Plugin   │
│  (Claude,     │                  │  (Node.js /  │   .jsx commands    │  (runs inside │
│   Windsurf,   │                  │  TypeScript) │   .json responses  │  Premiere)    │
│   Cursor,     │                  └──────────────┘                    └──────┬────────┘
│   Copilot)    │                                                             │
└───────────────┘                                                             │ evalScript()
                                                                              ▼
                                                                       ┌───────────────┐
                                                                       │  Premiere Pro │
                                                                       │  ExtendScript │
                                                                       │  + QE DOM     │
                                                                       └───────────────┘

Remote (HTTP/SSE — Fly.io):

┌───────────────┐  HTTP+SSE (MCP)  ┌─────────────────────┐   File-based IPC   ┌──────────────┐
│  AI Client    │ ◄──────────────► │  MCP Server         │ ◄────────────────► │  CEP Plugin  │
│  (any MCP     │                  │  premiere-pro-mcp   │   .jsx / .json     │  (Premiere)  │
│   client)     │                  │  .fly.dev           │   shared volume    └──────────────┘
└───────────────┘                  └─────────────────────┘
  1. AI client invokes an MCP tool (e.g., add_to_timeline)

  2. MCP server generates ES3-compatible ExtendScript with helper functions prepended

  3. Script is written to a .jsx command file in a shared temp directory

  4. CEP plugin polls for command files, executes via CSInterface.evalScript()

  5. Result JSON is written to a response file and returned to the AI

The file-based IPC bridge is simple, reliable, and works across macOS and Windows without network sockets.


inspect_unique_object_identity_uxp is a separate read-only native identity inspection route. It resolves exactly one project item or sequence, reads the opaque UniqueSerializeable identity twice, and rejects drift without retaining the value or treating it as edit authority. See the unique-identity workflow notes for its bounds and proof boundary.

Film editorial review

inspect_film_editorial_workflow validates captured identities and explicit source/scene coverage, builds marker/stringout/line/beat review artifacts, and reports revision-bound notes, VFX state, change impact and turnover exceptions. It performs local inspection; host edits and exports use separate guarded tools. See usage, example and remaining execution adapters.

Tools (369 core total; 367 under the default profile; 460 with a connected UXP bridge)

The complete supported-actions catalog lists every registered core tool, the two tools restricted behind explicit unsafe-script authority, and all 91 authenticated UXP additions with their current action or mode values. It is generated from the same MCP registration surface returned to clients; the tables below are a shorter workflow-oriented overview.

Discovery & Inspection (10 + 10)

Tool

Description

get_project_info

Current project name, path, sequences, items

get_active_sequence

Detailed active sequence with all clips

list_project_items

All items in the project panel

get_full_project_overview

Comprehensive snapshot: bin tree, sequences, media types

get_full_sequence_info

Exhaustive sequence data: tracks, clips, effects, markers

get_full_clip_info

Everything about a clip: effects, keyframes, metadata

get_timeline_summary

Human-readable overview: duration, coverage %, effects

search_project_items

Filter by name, extension, offline status, color label

get_premiere_state

Full snapshot: project, sequence, playhead, selection

inspect_dom_object

Explore any Premiere Pro DOM object interactively

get_advanced_feature_support

Collaboration/AI API support, prerequisites, entitlements, and user-assisted boundaries

create_editorial_plan

Create a review-only local editorial plan from captured project context

preview_editorial_plan

Revalidate a local editorial plan and return a review receipt without changing Premiere

apply_editorial_organization_plan

Apply a confirmed organization plan through guarded UXP bin transactions only

Project Management (26)

Tool

Description

save_project / save_project_as / open_project

File operations

create_project / close_project

Project lifecycle

import_media / import_folder / import_ae_comps

Import media and AE comps

create_bin / delete_bin / rename_bin / create_smart_bin

Bin management

import_sequences / import_fcp_xml

Import from other projects

create_bars_and_tone

Generate bars & tone media

set_scratch_disk_path

Configure scratch disks

consolidate_and_transfer

Project Manager consolidation

Timeline & Editing (10 + 27 advanced)

Tool

Description

add_to_timeline / overwrite_clip

Insert and overwrite edits

ripple_delete

Remove clip and close gap (QE)

roll_edit / slide_edit / slip_edit

Professional trim modes (QE)

move_clip_to_track

Move between tracks (QE)

reverse_clip / speed_change / set_clip_speed_qe

Unavailable: Premiere has no supported scripting API for changing a timeline clip's speed or direction

split_clip / trim_clip / move_clip

Basic edits; trim verifies source points and visible timeline edges

set_clip_properties

Opacity, scale, rotation, position (speed requests fail before mutation)

link_selection / unlink_selection

Link/unlink A/V

Premiere Pro 26.3 compatibility: some installations silently ignore QE structural edits (ripple_delete, razor/split) and existing effect-parameter writes. These tools now verify the resulting sequence state and return an error instead of a false success. For structural edits, rebuild the wanted source ranges into a new sequence with create_sequence and add_to_timeline. The legacy CEP transition path targets qeClip.addTransition (not the QE track) and reports success only after DOM transition-count readback. Prefer the connected UXP transition tools where available; overlay clips remain a workaround when a legacy QE write is rejected or not verified. See issue #21.

Speed, caption, and visual-keyframe boundaries: Premiere Pro 26.3 may reflect legacy QE speed/direction methods, but exposes no supported scripting setter or Time Remapping component for timeline-clip speed or direction. reverse_clip, speed_change, set_clip_speed_qe, and set_clip_properties with speed now stop before host mutation; use the Speed/Duration UI or pre-render retimed media. add_text_overlay likewise stops before mutation because a raw-text-to-caption API is not exposed; import an .srt/.vtt and use create_caption_track, or use a MOGRT/PNG overlay. Keyframe and caption-track responses can prove parameter/structure readback only—not rendered pixels—so verify playback or exported frames before delivery. On macOS, AME preset discovery scans each installed app bundle's Contents/MediaIO/systempresets; prefer a Match Source preset for vertical projects.

Verified track edits: add_track and add_tracks validate requested counts and return success only when the active sequence's track counts exactly match the request. overwrite_clip validates both selected track indices and confirms the requested source item appears at the requested frame on a target track. On a Premiere 26.x build that ignores any of these calls, the MCP response is an error with the observed state rather than a false success. These are automated CEP contracts, not proof of a particular licensed host configuration.

trim_clip accepts exactly one source-relative new_in_seconds or new_out_seconds per call. It refuses retimed clips because CEP cannot prove their source-to-timeline mapping, then reads both source points and visible timeline start/end/duration before reporting success. The default keyframe_policy: "reject" stops before a trim that would leave effect keyframes beyond the visible clip; keyframe_policy: "preserve" is an explicit opt-in and reports the remaining count. split_clip verifies a spanning clip, the expected count increase, and the left/right cut boundaries. Its QE path cannot prove effect-keyframe redistribution, so a successful result labels those semantics unverified. These are CEP contract checks, not validation in a licensed Premiere Pro 26.x host.

Effects & Color (8)

Tool

Description

apply_effect / apply_audio_effect

Apply by name (QE)

remove_effect / remove_all_effects

Remove effects

color_correct

Lumetri: exposure, contrast, temperature, etc.

apply_lut

Apply LUT files

stabilize_clip

Warp Stabilizer with configurable settings

Premiere 26.x component removal: remove_effect and remove_effect_by_name require the CEP Component.remove() method. Some 26.x components, including Essential Sound's Amplify, do not expose that method. The tools return an actionable capability error and leave the component unchanged; use Effect Controls to remove it manually. The QE DOM has no safe targeted-removal fallback.

Essential Sound audio automation: Essential Sound can write ducking or level automation to an Amplify component rather than the clip's Volume > Level. adjust_audio_levels, set_clip_volume, and get_clip_volume operate only on Volume > Level, so they do not read, change, or verify Amplify automation. Inspect the clip's components (or Effect Controls) before treating a Volume readback as the clip's final gain.

Keyframes (8)

Tool

Description

add_keyframe / get_keyframes

Create and read keyframes

remove_keyframe / remove_keyframe_range

Delete keyframes

set_keyframe_interpolation

Linear / Hold / Bezier

get_value_at_time

Query interpolated value at any time

set_color_value

Set color properties on effects

Export & Encoding (16)

Tool

Description

export_sequence

Export via Adobe Media Encoder

validate_export_preset

Validate an .epr file and resolve its output extension in Premiere

verify_delivery_file

Verify output size and calculate SHA-256/SHA-512 checksums

capture_frame

Export frame as PNG, return as base64 image

export_as_fcp_xml / export_aaf / export_omf

Interchange formats

encode_project_item / encode_file

Direct encoding

start_batch_encode

Start render queue

Premiere's documented automation surfaces do not currently expose OTIO or EDL interchange, Render and Replace, cloud publishing, or Content Credentials export configuration. get_capabilities reports these delivery gaps explicitly rather than presenting UI-only operations as available tools.

Source Monitor & Playback (7 + 4)

Tool

Description

open_in_source / close_source_monitor

Source monitor control

insert_from_source / overwrite_from_source

3-point editing

play_timeline / stop_playback

Playback control (QE)

play_source_monitor

Play in source monitor

Selection & Clipboard (7 + 6)

Tool

Description

select_clips_by_name / select_clips_in_range

Smart selection

copy_effects_between_clips

Copy effects via QE

batch_apply_effect

Apply effect to multiple clips

set_blend_mode

27 blend modes

Media Properties (16)

Tool

Description

set_offline / has_proxy / detach_proxy

Offline/proxy management

set_override_frame_rate

Override FPS

set_scale_to_frame_size

Auto-scale to sequence frame

get_xmp_metadata / set_xmp_metadata

Raw XMP access; writes merge a well-formed patch without removing unrelated fields

get_color_space

Color space info

Sequence Management (11)

Tool

Description

create_sequence / create_sequence_from_preset

Create sequences from .sqpreset files without opening Premiere's modal dialog

duplicate_sequence / delete_sequence

Manage sequences

auto_reframe_sequence

Auto-reframe for social media

attach_custom_property

FCP XML custom properties

unnest_sequence

Replace nested sequence with its clips

Workspace & Captions (2 + 1)

Tool

Description

get_workspaces / set_workspace

Switch workspace layouts

create_caption_track

Create caption/subtitle tracks

Timeline QA (2)

Tool

Description

diff_sequence_snapshots

Added / removed / moved / trimmed / retimed / renamed / enabled changes between two sequence snapshots with frame deltas and EDL-like lines

audit_timeline_health

Health score with flash-frame, gap, overlap, repeated-shot, coverage, overlength, and speed findings plus review-frame suggestions

Speaker Layout (2)

Tool

Description

plan_speaker_checkerboard

Per-speaker segments, split points, and track assignments for checkerboarded dialogue

plan_active_speaker_reframe

Active-speaker vertical reframe keyframes, or static stacked / side-by-side two-speaker layouts

Rhythm Plans (2)

Tool

Description

plan_emphasis_zoom_keyframes

Punch-in zoom keyframes (Motion Scale + subject-anchored Position) from sentence starts, emphasis words, intervals, or supplied triggers

plan_beat_montage

Beat-grid shot assignment for a clip list with add_to_timeline_batch chunks, trim plan, and beat markers

Shorts Intelligence (2)

Tool

Description

rank_short_form_candidates

Rank sentence-aligned windows as short-form candidates with explainable hook, completeness, density, evidence, and duration-fit scores

plan_chapter_markers

Lexical-cohesion chapter segmentation with titles, YouTube timestamps, and ready Chapter marker payloads

Caption Authoring (2)

Tool

Description

build_caption_artifact

Word-grouped SRT/VTT captions with karaoke timestamps, emphasis markup, speaker prefixes, and style presets, written inside an approved workspace

check_caption_safe_zone

Overlap check for caption and graphic rectangles against approximate platform UI zones, with a suggested clear position

Transcript Word Edits (4)

Tool

Description

plan_filler_word_removal

Word-level filler removal plan (um, uh, you know…) with frame-snapped removal and keep ranges

plan_pause_tightening

Shorten long pauses to a target length without deleting speech

plan_word_mute_ranges

Mute or bleep listed words: padded ranges, ready audio keyframes, redacted text

detect_repeated_takes

Group near-duplicate retakes and plan removal of all but the kept take

Platform Delivery Planning (2)

Tool

Description

plan_platform_delivery_matrix

Per-platform sequence settings, fit/fill reframe math, duration and file-size fit, caption safe zones, and an ordered clone → reframe → caption → export → verify route

validate_platform_publish_package

Validate a rendered file plus title, description, hashtags, and content flags against approximate TikTok, Reels, Shorts, YouTube, LinkedIn, X, and Facebook limits

Scripting (2)

Tool

Description

execute_extendscript

Run arbitrary ExtendScript (ES3); requires explicit unsafe-script authority

evaluate_expression

Evaluate a one-line expression; requires explicit unsafe-script authority

...and 100+ more

Track targeting, batch operations, markers, audio levels, motion/transform, metadata, sequence settings, navigation, project analysis, and more. Run get_project_info to get started — the AI will discover what it needs.


MCP Resources

The server exposes fourteen LLM context resources and eleven workflow prompts:

Resource URI

Description

config://premiere-instructions

Best practices: workflow order, timeline rules, effect tips, error handling

config://extendscript-reference

Complete ExtendScript API reference for writing custom scripts

config://premiere-workflows

Machine-readable catalog for rough cuts, dialogue cleanup, captions, and delivery

config://premiere-project-context

Revisioned local project-context indexing and retrieval workflow

premiere://project/info

Fresh, path-redacted current-project and active-sequence summary

premiere://project/sequences

Bounded sequence inventory with stable Premiere IDs

premiere://project/media

Bounded, path-redacted project-media inventory

premiere://project/bins

Bounded, path-redacted project-bin inventory

premiere://timeline/active

Bounded active-timeline tracks, clips, and markers snapshot

premiere://effects/available

Bounded video/audio effect catalog for planning

premiere://effects/applied

Bounded active-timeline component inventory

premiere://transitions/available

Bounded video/audio transition catalog for planning

premiere://export/presets

Bounded export-preset names and formats, without native paths

premiere://project/metadata

Read-only project and active-timeline summary, without paths or timestamps

The ten premiere:// snapshots are read-only CEP bridge requests. They include a revision token for stale-state detection and omit native media, project-tree, preset, and output paths. A successful snapshot proves bridge readback only—not licensed-host feature coverage, playback, rendering, or editorial correctness.


Remote Deployment (Fly.io)

The server includes an HTTP/SSE transport (src/http-server.ts) for remote access via mcp-remote or any MCP client that supports Streamable HTTP.

A live operator-managed instance is running at https://premiere-pro-mcp.fly.dev. It is not a public desktop relay: it cannot connect an authenticated user to Premiere on that user's computer. Public users should use the local stdio setup until the separate device-pairing relay is available.

Connect to an operator-managed instance

{
  "mcpServers": {
    "premiere-pro": {
      "command": "npx",
      "args": ["mcp-remote", "https://your-authorized-instance.example/mcp"]
    }
  }
}

The instance must either provision an operator bearer token or use the OAuth resource-server configuration below. The production endpoint intentionally returns 401 to callers who have not been authorized.

Self-host on Fly.io

# Clone and deploy your own instance
git clone https://github.com/leancoderkavy/premiere-pro-mcp.git
cd premiere-pro-mcp
fly apps create your-app-name
# Required: add bearer token auth. Use a unique, high-entropy secret per deployment.
fly secrets set MCP_AUTH_TOKEN=your-secret-token
fly deploy --remote-only

Then connect with:

{
  "mcpServers": {
    "premiere-pro": {
      "command": "npx",
      "args": ["mcp-remote", "https://your-app-name.fly.dev/mcp",
               "--header", "Authorization: Bearer your-secret-token"]
    }
  }
}

Trusted-operator OAuth resource-server mode

For an identity-aware operator deployment, configure a real OAuth/OIDC authorization server rather than distributing MCP_AUTH_TOKEN. The authorization server must support the MCP client's registration model and issue signed access tokens with an exact audience for this MCP resource.

fly secrets set \
  MCP_OAUTH_ISSUER=https://identity.example.com \
  MCP_OAUTH_JWKS_URI=https://identity.example.com/.well-known/jwks.json \
  MCP_OAUTH_AUDIENCE=https://your-app-name.fly.dev/mcp \
  MCP_PUBLIC_URL=https://your-app-name.fly.dev \
  MCP_OAUTH_REQUIRED_SCOPES=premiere:mcp \
  MCP_OAUTH_ALLOWED_SUBJECTS=your-provider-user-subject

OAuth mode validates the token signature, algorithm, issuer, exact audience, expiry, issued-at time, subject, and required scopes. It publishes protected resource metadata at /.well-known/oauth-protected-resource/mcp and includes that URL in the WWW-Authenticate challenge. Configuration is fail-closed: partial OAuth settings, non-HTTPS production URLs, ambiguous OAuth/shared-token settings, and missing credentials all prevent startup.

MCP_OAUTH_ALLOWED_SUBJECTS is mandatory and restricts this single-bridge deployment to explicitly trusted operator identities. This is an enforcement boundary, not a public-user device model.

This mode authenticates trusted operators but does not yet implement device ownership, desktop pairing, or per-user Premiere routing. Do not expose editor mutations as a public multi-user service until an outbound desktop relay and durable user/device authorization are implemented.

Note: The file bridge still requires the CEP plugin to share the same PREMIERE_TEMP_DIR. For cloud deployments this means running a sync agent or using fly proxy / WireGuard to reach your local machine. detect_silence can analyze only media paths available inside the server filesystem; a desktop-only path is not automatically available to a remote Fly machine. For a shared or multi-user remote deployment, put a managed identity-aware edge in front of the server and replace the shared bearer secret with per-user authorization. The built-in limiter is intentionally process-local defense in depth, not a substitute for an edge/WAF or account system.


Environment Variables

Variable

Description

Default

PREMIERE_TEMP_DIR

Shared temp directory for MCP ↔ CEP communication

OS user temp dir + /premiere-mcp-bridge (macOS fallback is independent of TMPDIR)

PREMIERE_TIMEOUT_MS

Command timeout in milliseconds

30000

PREMIERE_DEFAULT_SEQUENCE_PRESET

Override the auto-discovered .sqpreset used by create_sequence

auto-discovered

PREMIERE_MCP_CAPABILITIES

Comma-separated authority profile; add unsafe-script only when raw scripting is required

inspect,edit,export,filesystem

PREMIERE_MCP_DEBUG

Set to 1 (or true) to emit verbose server diagnostics to stderr

unset

PREMIERE_CONTEXT_BACKEND

Local project-context store: auto, sqlite, json, or memory

auto

PREMIERE_CONTEXT_DIR

Override the local project-context storage directory

OS application-data directory

PORT

HTTP port (HTTP/SSE transport only)

3000

MCP_AUTH_TOKEN

Operator bearer token for controlled HTTP deployments; mutually exclusive with OAuth mode

unset

MCP_OAUTH_ISSUER

Exact trusted OAuth/OIDC token issuer URL

unset

MCP_OAUTH_JWKS_URI

HTTPS JWKS URL used to verify access-token signatures

unset

MCP_OAUTH_AUDIENCE

Exact MCP resource audience, normally the public /mcp URL

unset

MCP_PUBLIC_URL

Canonical HTTPS origin used in protected-resource discovery

unset

MCP_OAUTH_REQUIRED_SCOPES

Space- or comma-separated scopes required for /mcp

premiere:mcp

MCP_OAUTH_ALLOWED_SUBJECTS

Mandatory comma-separated token-subject allowlist for the single operator bridge

unset

ALLOW_UNAUTHENTICATED

Set to 1 only for local/test HTTP harnesses; it is rejected when NODE_ENV=production

unset

MCP_MAX_REQUEST_BYTES

Maximum HTTP MCP request body size

1048576

MCP_HEADERS_TIMEOUT_MS

Maximum time to receive request headers

10000

MCP_REQUEST_TIMEOUT_MS

Maximum time to receive an HTTP request

60000

MCP_KEEP_ALIVE_TIMEOUT_MS

Idle keep-alive socket timeout

5000

MCP_MAX_REQUESTS_PER_SOCKET

Requests permitted on one keep-alive socket

100

MCP_MAX_CONCURRENT_REQUESTS

In-flight authenticated MCP request ceiling

8

MCP_MAX_CONCURRENT_STREAMS

Open authenticated SSE stream ceiling; isolated from operation capacity

32

MCP_RATE_LIMIT_PER_MINUTE

Per-credential token-bucket refill rate

120

MCP_RATE_LIMIT_BURST

Per-credential short burst allowance

30

MCP_MAX_RATE_LIMIT_KEYS

In-memory rate-limit identity ceiling

2048

MCP_TRUST_PROXY

Set to 1 only behind a proxy that overwrites X-Forwarded-For

unset

POSTHOG_API_KEY

PostHog project token; enables privacy-safe MCP usage telemetry

unset

POSTHOG_HOST

PostHog ingestion host

https://us.i.posthog.com

POSTHOG_ENVIRONMENT

Environment property attached to telemetry events

production

POSTHOG_DISTINCT_ID

Optional stable anonymous server identifier

Fly machine ID or random boot ID

When PostHog is enabled, the server records mcp_connection_attempt, mcp_request, mcp_request_rejected, and mcp_tool_call. It also records premiere_mcp_activation_completed only after the read-only verify_premiere_connection check confirms the selected bridge, an open project, and an active sequence. Events contain bounded operational fields such as method, tool name, outcome, status code, duration, and selected bridge. Authentication tokens, IP addresses, MCP arguments, project paths, media names, and tool results are never sent. Person profiles are disabled for these events.

This signal is an aggregate emission, not proof that an analytics provider received it, a count of unique people or editors, or evidence that an editing workflow succeeded. It does not carry a person or editor identifier, so it cannot safely infer "first value."


Project Structure

premiere-pro-mcp/
├── src/
│   ├── index.ts                 # Entry point — stdio transport setup
│   ├── http-server.ts           # Entry point — HTTP/SSE transport (Fly.io / remote)
│   ├── server.ts                # MCP server — registers 369 tools, filtered by authority profile
│   ├── bridge/
│   │   ├── file-bridge.ts       # File-based IPC (write .jsx, poll .json)
│   │   └── script-builder.ts    # ExtendScript generator with ES3 helpers
│   ├── tools/                   # 51 tool modules
│   │   ├── discovery.ts         # Project discovery and queries
│   │   ├── recovery.ts          # Read-only autosave discovery and private bridge telemetry
│   │   ├── project.ts           # Project management and import
│   │   ├── media.ts             # Media and proxy management
│   │   ├── sequence.ts          # Sequence creation and settings
│   │   ├── timeline.ts          # Timeline clip operations
│   │   ├── effects.ts           # Effect application and color correction
│   │   ├── transitions.ts       # Transition management (QE DOM)
│   │   ├── audio.ts             # Audio levels, keyframes, and ffmpeg silence analysis
│   │   ├── av-settings.ts       # Documented AV inspection, mapping, and capability boundaries
│   │   ├── text.ts              # Text overlays and MOGRTs
│   │   ├── markers.ts           # Sequence and clip markers
│   │   ├── tracks.ts            # Track add/delete/lock/visibility
│   │   ├── playhead.ts          # Playhead, work area, in/out points
│   │   ├── metadata.ts          # Metadata, XMP, color labels
│   │   ├── export.ts            # Export, frame capture, encoding
│   │   ├── advanced.ts          # QE DOM: ripple, roll, slide, slip, speed
│   │   ├── keyframes.ts         # Keyframe CRUD and interpolation
│   │   ├── scripting.ts         # Execute arbitrary ExtendScript
│   │   ├── inspection.ts        # Deep project/sequence/clip inspection
│   │   ├── selection.ts         # Clip selection utilities
│   │   ├── clipboard.ts         # Copy effects, batch operations
│   │   ├── source-monitor.ts    # Source monitor control
│   │   ├── track-targeting.ts   # Track targeting, motion, audio props
│   │   ├── utility.ts           # Batch ops, analysis, navigation
│   │   ├── health.ts            # Connectivity ping
│   │   ├── workspace.ts         # Workspace layout switching
│   │   ├── captions.ts          # Caption track creation
│   │   ├── playback.ts          # Timeline/source playback control
│   │   └── project-manager.ts   # Project consolidation/transfer
│   └── resources/
│       └── extendscript-reference.ts  # API reference for LLM context
├── cep-plugin/                  # CEP panel that runs inside Premiere Pro
│   ├── CSXS/manifest.xml        # Extension manifest (PPRO 14.0+)
│   ├── index.html               # Panel UI
│   ├── main.js                  # Bridge polling and script execution
│   ├── host.jsx                 # ExtendScript entry point
│   └── CSInterface.js           # Adobe CEP interface library
├── after-effects-cep-plugin/    # Separate AE CEP bridge for guarded MOGRT recipes
├── scripts/
│   ├── install-cep.sh           # macOS CEP installer (symlink + debug mode)
│   └── install-cep.ps1          # Windows CEP installer (copy + REG_SZ debug mode)
├── Dockerfile                   # Multi-stage Docker build for Fly.io
├── fly.toml                     # Fly.io deployment config
├── RESEARCH.md                  # API research and implementation status
├── CONTRIBUTING.md              # Contribution guidelines
├── CHANGELOG.md                 # Version history
└── LICENSE                      # MIT License

Technical Details

CEP and UXP backends

CEP remains the production backend because it provides broad ExtendScript access and the undocumented QE DOM used for effects, ripple deletes, and advanced trims across Premiere Pro 2020–2026. The packaged uxp-plugin is a Premiere 25.6+ preview backend for supported frame export, capability discovery, and state events. It does not silently retry failed UXP mutations through CEP.

ExtendScript Compatibility

All generated scripts use ES3 syntax (var, manual for loops, no arrow functions, no let/const) since ExtendScript is based on ECMAScript 3. The bridge writes a versioned helper library to the shared temp directory and loads it once per ExtendScript engine via $.evalFile; each command then sends only its tool-specific script.

Security

Understand the trust model before deploying this: any client that can reach the MCP server can control Premiere Pro. execute_extendscript and evaluate_expression are arbitrary-code-execution tools by design and are omitted from discovery and denied at call time by default. Enable them only by setting PREMIERE_MCP_CAPABILITIES=inspect,edit,export,filesystem,unsafe-script.

  • Run it locally over stdio unless you have a specific reason not to. That's the safe default.

  • The HTTP transport (http-server) requires MCP_AUTH_TOKEN and refuses to start without it in production. It binds 0.0.0.0 and is remotely reachable, so never expose it publicly without a strong token and edge controls. ALLOW_UNAUTHENTICATED=1 is limited to non-production local/test use.

  • The HTTP transport admits only exact /mcp Streamable HTTP requests, enforces body/socket/request limits, and applies a bounded in-process per-credential rate and concurrency limit before MCP request parsing or Premiere bridge work begins. It returns 413, 429, or 503 on containment failures. Configure an upstream rate limit and request-size limit too; process-local counters do not protect a multi-machine deployment.

  • The landing CSP uses a per-response nonce for scripts, and its static assets use explicit cache policies. Keep the server in front of the exported landing so those controls are not bypassed by a separate static host.

  • The bridge temp directory is created private to your user (mode 0700), and the server refuses to use one owned by another user — relevant on shared machines, where the CEP panel would otherwise execute any cmd_*.jsx staged there.

  • There is a 500 KB script size limit, and a small regex check that rejects eval(), new Function(), and System.callSystem() in tool-generated scripts. This is a guard rail, not a sandbox — it is trivially bypassable and is not a security boundary. Do not rely on it to contain untrusted input; the real boundary is who can reach the server.

QE DOM

Many tools use the undocumented QE DOM (enabled via app.enableQE()). These tools are marked with "Uses QE DOM" in their descriptions. The QE DOM provides capabilities unavailable through the standard ExtendScript API:

  • Apply effects and transitions by name

  • Ripple delete, roll/slide/slip edits

  • Set clip speed and reverse

  • Frame blending and time interpolation

  • Remove all effects from a clip


Frequently asked questions

What is an MCP server for Adobe Premiere Pro? It is a Model Context Protocol server that gives a compatible AI assistant structured, reviewable control over supported Adobe Premiere Pro workflows on your own computer. This project's display name is MCP for Adobe Premiere Pro; its npm package is premiere-pro-mcp.

How do I use it with Claude? Install the Claude Desktop bundle, install the separate signed Premiere connector, restart Premiere, then ask Claude to run verify_premiere_connection with no changes. That first prompt is read-only.

Where is the GitHub repository? https://github.com/leancoderkavy/premiere-pro-mcp. Releases, the signed .zxp connector, and the Claude .mcpb bundle are on that repository's Releases page.

What is the bridge panel in Premiere Pro? A local CEP panel (Window > Extensions > MCP for Adobe Premiere Pro) that connects the server to a running Premiere Pro instance. "Running" in the panel means the local bridge is available; it does not by itself show that an edit completed. An authenticated UXP panel is an additional, capability-gated route.

Is there a setup guide? Yes - premiere-mcp-setup-guide.md is a portable guide you can attach to any AI assistant, and https://premiere-pro-mcp.com/docs/ hosts the published documentation.

Does it run on Windows and macOS? Both. Node.js 20.19 or newer and Premiere Pro 2020-2026 are required, and the assistant, server, connector, and Premiere should stay on the same computer. Individual tool support remains capability- and host-dependent.

Is this Adobe's AI Assistant? No. This is an independent MIT-licensed project, not an Adobe product and not Adobe's native AI Assistant. It is also distinct from other MCP servers for Premiere Pro; premiere-pro-mcp is the only npm package published from this repository.

Is it free? Yes. The server, the CEP connector, and the documentation are MIT licensed and free to use.


Troubleshooting

  1. Verify debug mode:

    • macOS: defaults read com.adobe.CSXS.12 PlayerDebugMode should return 1

    • Windows: reg query "HKCU\SOFTWARE\Adobe\CSXS.12" /v PlayerDebugMode should report REG_SZ 1 (a REG_DWORD value is not valid for unsigned CEP discovery)

  2. Check the plugin exists:

    • macOS: ls ~/Library/Application\ Support/Adobe/CEP/extensions/MCPBridgeCEP

    • Windows: dir "%APPDATA%\Adobe\CEP\extensions\MCPBridgeCEP"

  3. Completely restart Premiere Pro (not just close/reopen the project)

  4. Check the CSXS version matches your Premiere Pro version

  5. Run premiere-pro-mcp --diagnose-cep to check installation metadata and recent Premiere logs.

Version 1.3.0 and newer installs the signed artifacts/MCPBridgeCEP.zxp included in the npm package on Windows. If diagnostics report Signature verification failed, reinstall the latest npm version, fully quit every Premiere process, run premiere-pro-mcp --install-cep, and relaunch.

  1. Open the CEP panel and verify it shows "Running" with a green dot (the bridge normally starts automatically)

  2. Ensure temp directories match between MCP client config and CEP panel

  3. Read the timeout error: if it reports an in-flight heartbeat, dismiss any open Premiere modal dialog; without a heartbeat, verify the bridge is running and using the same temp directory

  4. Increase timeout: set PREMIERE_TIMEOUT_MS to 60000 or higher

  5. Try ping tool to test basic connectivity

  1. Restart the AI client after editing config

  2. Verify the path to dist/index.js is absolute and correct

  3. Run node dist/index.js in a terminal to check for startup errors

  4. Ensure npm run build completed without errors

  1. QE tools require an active sequence — open one first

  2. Some QE operations are index-based and can fail if clips have been reordered

  3. Re-query the sequence structure after QE operations


Star history

If this project saves you time in Premiere, a star helps other editors find it.


Support the project

This is an independently maintained, MIT-licensed project with no company behind it. Every release is tested against real Premiere versions on both Windows and macOS, which takes hardware, licenses, and time.

Free ways to help, in order of usefulness:

  • Star the repo — the main way editors discover it

  • 🐛 File a bug with your Premiere version, OS, and the tool name that failed

  • 📝 Report what worked on a host version not yet in the capability coverage table

  • 🔧 Open a PR — see CONTRIBUTING.md

Sponsorship funds host verification, signing certificates, and hosting. It does not buy prioritized support, roadmap influence, or any claim about unverified host behavior.


Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines.

The evidence-backed next improvement pull-request roadmap breaks the proposed feature, protocol, reliability, and performance work into ten reviewable changes with explicit dependencies and live-host acceptance gates.


License

MIT — free for personal and commercial use.

Available Tools

367 tools
add_adjustment_layerAdd Adjustment LayerA

Add an adjustment layer to the active sequence via QE DOM. The layer is added at the playhead position on the specified track.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_indexNoVideo track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already indicate a mutating, non-destructive, non-idempotent operation. The description adds useful behavioral context: the layer is placed at the playhead position on the specified track. It does not contradict any annotation, though it omits edge-case behavior such as missing active sequences.

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

Conciseness5/5

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

Two concise sentences front-load the action and resource, then give placement details. There is no filler or redundant restatement of the title.

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 single-parameter, no-required-parameter tool, the description plus schema cover what is needed to invoke it. An output schema is present, so return values do not need explanation. It could mention active-sequence requirements, but this is a minor gap.

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

Parameters3/5

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

The schema description covers 100% of parameters, including the default for track_index. The description only echoes 'specified track,' adding no additional meaning beyond the schema, so the baseline score applies.

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

Purpose5/5

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

The description states a specific verb, resource, and scope: 'Add an adjustment layer to the active sequence' with placement details. This clearly distinguishes it from sibling tools like get_clip_adjustment_layer or add_track.

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

Usage Guidelines2/5

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

No guidance is given for when to use this tool over alternatives, prerequisites, or exclusions. The description states what it does, but not when an agent should choose it among the many timeline-modification tools.

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

add_audio_keyframesAdd Audio KeyframesB

Add audio level keyframes to create fades or level changes

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
keyframesYesArray of keyframe objects with time_seconds and level_db

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already indicate this is a write operation (readOnlyHint=false) and not destructive or idempotent. The description adds the audio-level domain and fade/level-change intent, but it does not disclose whether existing keyframes are replaced or merged, or whether the array should be sorted by time_seconds.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler or redundant schema repetition. It conveys the action and purpose immediately.

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

Completeness3/5

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

For a simple two-parameter mutation with an output schema and fully described parameters, this is minimally adequate. However, it omits practical context such as whether the tool applies only to audio clips, whether it appends or replaces existing keyframes, and which sibling tools are better suited for non-keyframed level adjustments.

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

Parameters3/5

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

The input schema provides full 100% coverage for both parameters: node_id and keyframes with key-level time_seconds and level_db descriptions. The description adds no additional parameter semantics, so the schema carries the burden and the baseline of 3 applies.

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 uses a specific verb and resource: 'Add audio level keyframes' and explains the intended outcome: 'create fades or level changes.' This is clear and useful, though it does not explicitly distinguish itself from sibling tools like add_keyframe or adjust_audio_levels.

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

Usage Guidelines2/5

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

The description implies a usage scenario ('to create fades or level changes') but offers no explicit when-to-use guidance or alternatives. It does not mention when to prefer adjust_audio_levels or add_keyframe, nor does it state prerequisites such as the clip being an audio clip or having an editable audio track.

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

add_custom_metadata_fieldAdd Custom Metadata FieldA

Add a custom metadata field to the project's metadata schema. This creates a schema/column definition only; it does not set a per-item value. Use set_metadata with complete Project Metadata XML and readback to update a value.

ParametersJSON Schema
NameRequiredDescriptionDefault
field_nameYesInternal name for the metadata field
field_typeYesType of the field: 0 = Integer, 1 = Real, 2 = String, 3 = Boolean
field_labelYesDisplay label for the field

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already flag this as a mutating, non-idempotent operation. The description adds behavioral value beyond that by disclosing that the operation is structural only (does not set per-item values) and that value updates require a separate multi-step flow via set_metadata with readback. This contextualizes the tool's side effects beyond the annotation set.

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?

Three sentences with no filler: primary purpose, scope exclusion, and alternative routing. Each sentence earns its place, and the core action is front-loaded in the first sentence.

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 simple 3-parameter tool with an output schema present, the description covers the operation's scope, its key limitation, and the alternative path. A minor gap is the absence of prerequisites (e.g., an open project), but the low complexity and existing schema documentation make this nearly complete.

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

Parameters3/5

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

Schema description coverage is 100%: all three parameters (field_name, field_label, field_type) already have descriptive entries, including the field_type enum values (0-3). The description adds no parameter-level detail beyond the schema, so the baseline of 3 applies.

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

Purpose5/5

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

States a specific verb ('Add'), resource ('custom metadata field'), and target ('project's metadata schema'). It actively distinguishes itself from siblings by clarifying this creates a schema/column definition only, which separates it from set_metadata, attach_custom_property, and get_metadata.

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

Usage Guidelines5/5

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

Explicitly names the alternative ('Use set_metadata with complete Project Metadata XML and readback') and the condition that selects it (updating a value). The 'does not set a per-item value' exclusion tells the agent clearly when NOT to use this tool.

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

add_keyframeAdd KeyframeA

Add and read back a keyframe on an effect property. This verifies stored parameter data only; render/playback verification remains host-dependent.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesValue at the keyframe
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds relative to clip start where to add keyframe
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

Annotations only indicate readOnlyHint false, idempotentHint false, and destructiveHint false. The description adds useful behavioral context: it verifies stored parameter data only, and render/playback verification remains host-dependent. This goes beyond what the annotations already convey.

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

Conciseness5/5

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

Two sentences with no wasted words. The first sentence identifies the action and object; the second sets an important expectation about verification limits. Information is front-loaded and scannable.

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?

With a fully described input schema and an output schema present, the description provides sufficient operational context and highlights the key verification boundary. It would be slightly stronger with a note about behavior when a keyframe already exists at the same timestamp, but nothing essential is missing.

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

Parameters3/5

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

Schema coverage is 100% and every parameter already has a meaningful description. The tool description does not add parameter-level detail beyond the schema, so the baseline of 3 applies.

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

Purpose5/5

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

States a specific action ('Add and read back') and resource ('a keyframe on an effect property'), which clearly distinguishes it from audio-keyframe and other keyframing siblings. The scope is explicit and an agent can tell what it operates on.

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?

The description implies the intended scenario by naming the effect-property context and explains the verification scope, but it does not explicitly state when to use this tool over alternatives like set_effect_property or get_keyframes. No when-not-to-use guidance is provided.

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

add_markerAdd MarkerA

Add a marker to the active sequence or a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName/label for the marker
colorNoMarker color index (0=Green, 1=Red, 2=Purple, 3=Orange, 4=Yellow, 5=White, 6=Blue, 7=Cyan)
node_idNoOptional clip node ID to add marker to clip instead of sequence
commentsNoComments for the marker
time_secondsYesTime position in seconds for the marker
duration_secondsNoDuration of the marker in seconds (0 for point marker)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already convey that this is a mutating, non-idempotent, non-destructive operation, so the description only adds the active-sequence-or-clip target behavior. It does not go deeper into prerequisites like requiring an active sequence or what happens when node_id is omitted, so it meets but does not exceed the baseline.

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?

A single sentence with no filler, putting the operation and target first. It is appropriately concise given that the schema carries the parameter-level detail.

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 marker-creation tool with complete parameter documentation and an output schema, the description plus schema is sufficient. The only mild omission is explicitly stating that the active sequence is the default target when node_id is absent, but the node_id description implies this.

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

Parameters3/5

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

Input schema coverage is 100%, and each parameter, including the color mapping and node_id's sequence-vs-clip meaning, is documented in the schema. The description itself adds no parameter details, so the baseline 3 applies.

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

Purpose5/5

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

The description names the exact operation ('Add a marker') and the resource scope ('active sequence or a clip'), which is specific and distinguishes it from siblings like update_marker, delete_marker, and add_marker_to_project_item. It immediately conveys what the tool does and where it operates.

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 clearly states the intended context: adding a marker to the active sequence or, via node_id, to a clip. It does not explicitly discuss alternatives or exclusions, but the target scope is enough to route an agent away from project-item marker operations.

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

add_marker_to_project_itemAdd Marker To Project ItemB

Add a marker to a project item (source clip marker).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoMarker name
typeNoMarker type (default: Comment)
item_idYesNode ID or name of the project item
commentsNoMarker comments
color_indexNoColor label index (0-7)
time_secondsYesTime in seconds for the marker
duration_secondsNoDuration of the marker in seconds (0 for point marker)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

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

The description does not disclose behavioral details beyond what the annotations already provide. It does not mention whether existing markers are affected, how duplicate names are handled, or what happens when the time_seconds falls outside the clip duration. Despite annotations showing destructiveHint=false, the description adds no meaningful behavioral context.

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

Conciseness5/5

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

The description is one succinct sentence that front-loads the operation and target. Every word earns its place, and the clarifying parenthetical is efficiently integrated.

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 straightforward add operation with a complete input schema and an output schema present, the description covers the essential action and target. However, a short note about how this differs from the sequence-level 'add_marker' sibling would have made it more fully self-contained.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters are already fully documented in the input schema. The description adds no additional parameter meaning, such as defaults or relationships between time_seconds and duration_seconds. The baseline score of 3 is appropriate here.

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

Purpose5/5

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

The description uses the specific verb 'Add' and resource 'project item', and the parenthetical '(source clip marker)' clarifies exactly what kind of marker is targeted. This distinguishes it from sequence-level marker operations like the sibling 'add_marker'.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool versus the sibling 'add_marker', 'update_marker', or 'list_markers'. The description implies project-item usage but does not explicitly explain why one would choose this over alternatives or mention any prerequisites such as resolving an item_id.

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

add_text_overlayAdd Text OverlayA

Unavailable: Premiere does not expose a supported scripting API to create caption clips directly from raw text. Import an .srt/.vtt and use create_caption_track, or use a MOGRT/PNG overlay for title graphics.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesText content to display
start_secondsNoStart time in seconds (default: 0)
caption_formatNoCaption format (default: subtitle)
duration_secondsNoDuration in seconds (default: 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations, the description discloses that Premiere exposes no supported scripting API for this operation, making it clear the tool is a stub rather than a working mutation. This is significant behavioral context that prevents the agent from expecting a real text overlay side effect.

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

Conciseness5/5

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

The entire description is a single front-loaded sentence that states unavailability, explains why, and provides alternatives. Every phrase carries useful information with no filler.

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

Completeness5/5

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

For an unavailable tool, the description is fully sufficient: it explains the limitation, names the correct alternatives, and avoids leaving the agent to guess whether the operation will work. The presence of an output schema does not require extra explanation because the tool does not execute a real operation.

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

Parameters3/5

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

The input schema already documents all four parameters with full coverage, so the baseline is 3. The description does not add per-parameter meaning, but given the tool is explicitly unavailable, no additional parameter detail is necessary to improve selection behavior.

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

Purpose5/5

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

The description leads with 'Unavailable' and gives a concrete reason, so an agent immediately understands this tool cannot perform its nominal action. It also names the exact alternatives (create_caption_track, MOGRT/PNG overlay), which clearly differentiates it from related captioning tools.

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

Usage Guidelines5/5

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

The description provides explicit routing guidance: import an .srt/.vtt and use create_caption_track for captions, or use a MOGRT/PNG overlay for title graphics. This tells the agent when not to call this tool and which sibling to prefer.

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

add_to_render_queueAdd To Render QueueA

Request an Adobe Media Encoder render-queue handoff for the active sequence. Verify queue presence or the output file independently.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path
preset_pathNoPath to an AME preset file (.epr)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

The second sentence 'Verify queue presence or the output file independently' discloses that the tool only requests a handoff and does not guarantee the queue item or output file, which is valuable beyond the all-false annotations. It communicates asynchronous/non-deterministic behavior without contradicting the annotations.

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

Conciseness5/5

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

Two sentences, action first, with the caveat placed second; no filler or repetition of schema/annotation content. Every sentence earns its place.

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 two-parameter tool with an output schema and clear scope, the description is mostly complete and includes a crucial independent-verification caveat. It stops short of full completeness because it does not differentiate from AME-related siblings like start_batch_encode or get_render_queue_status.

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

Parameters3/5

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

Schema coverage is 100%, and the schema already documents output_path and preset_path clearly. The description adds no parameter-level detail, so the baseline of 3 applies.

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

Purpose5/5

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

The description names a specific verb ('request'), resource ('Adobe Media Encoder render-queue handoff'), and scope ('active sequence'), which distinguishes it from export_sequence, encode_file, and get_render_queue_status. It is not a tautology and tells an agent what the tool accomplishes.

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?

The active-sequence scope implies the tool is for handing off the current sequence, but there is no explicit when-to-use or when-not-to-use guidance, and no alternatives are named among AME-related siblings. The verification note is behavioral advice, not usage routing.

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

add_to_timelineAdd To TimelineA

Insert a project item at a timeline position and verify Premiere added no unexpected same-track fragments.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to add
track_indexNoVideo track index (0-based, default: 0)
start_secondsNoStart time in seconds on the timeline (default: 0)
audio_track_indexNoAudio track index for the audio portion (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations provide little behavioral context beyond generic false hints, so the description carries the burden. It adds useful behavior beyond a mere insert by promising to verify that Premiere did not create unexpected same-track fragments. This is meaningful, though it does not detail failure modes, permission needs, or what happens when unexpected fragments are found.

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

Conciseness5/5

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

The description is a single sentence with no redundant wording. Both clauses add value: the core operation and the verification behavior. It is front-loaded and easy to parse.

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?

With a complete parameter schema and an output schema present, the description supplies enough for basic invocation and clarifies an important post-condition. It does not explain what timeline is targeted (e.g., active sequence) or characterize the verification outcome, leaving minor contextual gaps.

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

Parameters3/5

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

Parameter schema coverage is 100%, with each parameter already described in the input schema. The description adds no additional parameter semantics or usage details, so a baseline score of 3 is appropriate.

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 clearly states a specific action ('Insert a project item at a timeline position') and adds a distinctive verification responsibility ('verify Premiere added no unexpected same-track fragments'). This makes the tool's purpose understandable and somewhat distinguishable from siblings like add_to_timeline_batch, though it does not explicitly name any alternative.

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?

The description implies when to use the tool: when a project item needs to be placed on the timeline. However, it gives no explicit guidance about prerequisites, when not to use it, or how to choose between this and closely related sibling tools such as insert_from_source or add_to_timeline_batch.

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

add_to_timeline_batchAdd To Timeline BatchA

Insert up to 32 project items in one validated CEP request. All items and target tracks are preflighted before the first insertion; every requested placement is read back, and the tool fails closed if Premiere cannot verify one.

ParametersJSON Schema
NameRequiredDescriptionDefault
clipsYesOrdered placements. They use the same insert-edit semantics as add_to_timeline; later placements must not share a target video-track start time.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior5/5

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

The description adds significant behavioral detail beyond the minimal annotations: all items and tracks are preflighted before the first insertion, every placement is read back, and the tool fails closed if verification fails. This clearly conveys atomicity and validation behavior, which is highly valuable for an agent deciding whether to invoke a mutating operation.

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

Conciseness5/5

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

Two sentences, each earning its place: the first states the operation and batch limit, the second states the key validation and failure behavior. Information is front-loaded and there is no redundant filler.

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

Completeness5/5

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

Given that an output schema exists, return values do not need to be described. The description covers batch size, validation semantics, read-back verification, and fail-closed behavior, while the schema fully covers parameters. No critical operational context is missing for an agent to invoke this tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the clips parameter and its sub-fields comprehensively. The description adds behavioral context about preflight and verification, but not new parameter-level meaning beyond what the schema provides. Baseline 3 applies.

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 clearly states a specific action ('Insert up to 32 project items in one validated CEP request') and names the resource. It does not explicitly contrast itself with the similar sibling add_to_timeline, but the batch scope and item cap make its purpose clear.

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?

The description implies use for batch insertion via 'up to 32' and 'one request', and references same insert-edit semantics via the schema, but it does not explicitly state when to prefer this tool over add_to_timeline or when not to use it. Usage context is implied rather than explicit.

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

add_trackAdd TrackB

Add verified video or audio tracks to the active sequence. Returns an error if Premiere cannot add the exact requested count.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of tracks to add (default: 1)
track_typeYesType of track to add

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate this is a mutating, non-idempotent operation. The description adds one useful behavioral disclosure: the tool returns an error if Premiere cannot add the exact requested count. It does not mention side effects on existing tracks, reversibility, or any other operational details, leaving this at a moderate level.

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

Conciseness5/5

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

Two short sentences, front-loaded with the action and target, with no filler. The error guarantee is a valuable second sentence that earns its place. The word 'verified' is slightly ambiguous but does not undermine the conciseness.

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 simple two-parameter tool with an output schema, the description is largely sufficient: it names the active sequence as context and the exact-count error condition. The only notable gap is the lack of differentiation from the similar-sounding 'add_tracks' sibling, and some ambiguity around what 'verified' means.

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

Parameters3/5

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

Schema coverage is 100%, so the parameters are already well-documented by the schema. The description adds no additional meaning beyond restating that video or audio tracks are supported, which mirrors the track_type enum. Baseline 3 is appropriate.

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 action ('Add'), a clear resource ('video or audio tracks'), and a target context ('active sequence'). It does not, however, distinguish itself from the sibling tool 'add_tracks', which appears to serve a very similar purpose.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as 'add_tracks', 'create_caption_track', or track manipulation tools. The error-handling note implies exact-count behavior, but no explicit selection criteria or exclusions are given.

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

add_tracksAdd TracksA

Add video and/or audio tracks through QE, verify the active sequence gained the exact requested counts, and report explicitly when QE inserted the new tracks at index 0 and shifted every existing track up.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_tracksNoNumber of standard stereo audio tracks to add (default: 0)
video_tracksNoNumber of video tracks to add (default: 0)
audio_51_tracksNoNumber of 5.1 audio tracks to add (default: 0)
audio_mono_tracksNoNumber of mono audio tracks to add (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false), the description reveals meaningful behavioral details: it verifies the result after adding, and it explicitly reports the edge case where QE inserts tracks at index 0 and shifts existing tracks up. This gives the agent important expectations about output behavior and side effects that annotations alone do not convey.

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

Conciseness5/5

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

The description is a single dense sentence that front-loads the main action, then states the verification requirement and the notable edge-case reporting behavior. Every clause earns its place; there is no filler or repetition of schema details.

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

Completeness5/5

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

Given that an output schema exists and annotations already establish the mutation/non-destructive nature, the description provides all necessary operational context: what to do (add tracks), where (active sequence via QE), what to confirm (exact counts), and what to report (index-0 insertion). Nothing essential for invoking the tool correctly is missing.

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

Parameters3/5

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

Input schema coverage is 100%, with clear descriptions for each numeric parameter (audio_tracks, video_tracks, audio_51_tracks, audio_mono_tracks). The description only refers generically to 'video and/or audio tracks' and 'requested counts', adding no parameter-specific meaning beyond what the schema already documents. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly identifies the action ('Add video and/or audio tracks through QE'), the target resource ('the active sequence'), and the expected outcome ('gained the exact requested counts'). It goes beyond a simple restatement by adding verification and reporting behavior, making it easy to distinguish from sibling tools like add_track or add_to_timeline.

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?

The description gives clear context that this tool is for adding tracks to the active sequence, with specific requested counts, and emphasizes verification as part of the operation. It does not explicitly state when to prefer this over alternatives such as add_track, so it stops short of full exclusion guidance.

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

add_transitionAdd TransitionB

Add a video transition between two clips at a cut point. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_indexYesVideo track index (0-based)
transition_nameYesName of the transition (e.g., 'Cross Dissolve', 'Dip to Black')
duration_secondsNoDuration of the transition in seconds (default: 1.0)
cut_point_secondsYesTime position in seconds of the cut point where the transition should be placed

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate this is a non-read-only, non-idempotent mutation, and the description adds little behavioral detail beyond that. The 'Uses QE DOM' note is an implementation detail rather than a useful behavior such as overwriting an existing transition or requiring handles around the cut.

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?

The description is short and front-loaded with the key action. The second sentence ('Uses QE DOM.') is an opaque implementation note that does not clearly earn its place but does not seriously harm clarity.

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

Completeness3/5

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

For a straightforward four-parameter tool with an output schema and annotations, the description is minimally sufficient. It is incomplete in that it never disambiguates from the similarly named add_transition_to_clip and gives no indication of prerequisites such as having an actual cut point.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters are already documented. The description adds only the contextual notion of placing a transition at a cut point, which does not materially extend the schema's meaning.

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 uses a specific verb ('Add'), a clear object ('video transition'), and precise placement ('between two clips at a cut point'), so the core purpose is evident. It does not explicitly contrast with the similarly named sibling add_transition_to_clip, so sibling differentiation is incomplete.

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?

The description implies the tool is for applying transitions at cuts, which gives a general context for use. However, it provides no explicit guidance on when to prefer this tool over add_transition_to_clip or batch_add_transitions, or what conditions would make it unsuitable.

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

add_transition_to_clipAdd Transition To ClipB

Add a transition to a specific clip's start or end

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
positionNoWhere to apply the transition (default: end)
transition_nameYesName of the transition
duration_secondsNoDuration of the transition in seconds (default: 1.0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already signal a non-readonly, non-idempotent mutation. The description adds the core behavioral detail that the transition is applied to the clip's start or end. It does not disclose whether an existing transition is replaced, whether duration is clamped, or any other side effects, but there is no contradiction with annotations.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every word contributes to identifying the action, the target, and the location of the change.

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?

The schema and output schema carry most of the operational detail, and the description covers the core intent of adding a transition to a specific clip. The main gap is explicit disambiguation from sibling tools like add_transition and batch_add_transitions, but the 'specific clip' wording partially fills that.

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

Parameters3/5

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

The input schema fully describes all four parameters, including the position enum and default values. The description mostly paraphrases the schema ('start or end', 'specific clip') without adding meaning beyond what is already structured.

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 uses a specific verb ('add') and resource ('specific clip's start or end'), making it clear the operation targets a single clip. It implicitly distinguishes itself from batch or generic transition tools by emphasizing 'specific clip', though it does not explicitly name a sibling alternative.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool instead of alternatives like add_transition or batch_add_transitions. It also omits prerequisites such as whether the transition name must be from the available transitions list or how the current selection relates to the node_id.

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

adjust_audio_levelsAdjust Audio LevelsA

Adjust a clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the audio or video clip
level_dbYesAudio level in dB (0 = unity, negative = quieter, positive = louder)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already establish readOnlyHint=false (a write) and destructiveHint=false (non-destructive), so the safety profile is covered. The description adds useful scoping context by confirming it targets only the Level property and does not read or modify Amplify automation. It does not disclose clamping behavior, keyframe interaction, or whether the value takes effect immediately, but for a simple setter this is adequate.

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

Conciseness5/5

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

Two short sentences with zero filler. The primary action ('Adjust a clip's Volume > Level in dB') is front-loaded, and the exclusion sentence earns its place by preventing a common misuse. Nothing could be removed without losing information.

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 simple two-parameter setter with a fully documented schema, an existing output schema, and annotations covering the write profile, the description covers the essentials: what is set, in what unit, and what is deliberately out of scope. The only notable gap is the missing routing guidance relative to set_clip_volume, which an agent might reasonably confuse with this tool.

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

Parameters3/5

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

Schema description coverage is 100%: node_id is documented as 'Node ID of the audio or video clip' and level_db is documented with units and direction ('0 = unity, negative = quieter, positive = louder'). The description's mention of 'in dB' only restates what the schema already provides. Per the high-coverage baseline, 3 is appropriate.

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 ('Adjust'), a precise resource ('a clip's Volume > Level'), and the unit ('in dB'), making the operation unambiguous. The second sentence clarifies what it does not touch (Essential Sound Amplify automation), which narrows scope further. However, it does not explicitly differentiate itself from the sibling tools set_clip_volume and set_clips_volume, which appear to overlap in function.

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?

The Essential Sound Amplify exclusion implies a boundary: use this for the clip's Volume > Level property, not for Amplify automation. But no alternative tool is named, and the description gives no explicit 'use X when...' guidance for the closely related volume siblings (set_clip_volume, set_clips_volume). Usage context is implied rather than stated.

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

analyze_dialogue_edit_candidatesAnalyze Dialogue Edit CandidatesA
Read-onlyIdempotent

Analyze caller-supplied, revision-bound transcript segments and optional local silence ranges for deterministic dialogue-edit candidates. It never calls a model, persists transcript text, or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
segmentsYesNormalized transcript segments with stable IDs, source IDs, transcript revisions, time ranges, text, and optional speaker labels.
filler_wordsNoExact normalized filler words or phrases to flag for review.
silence_rangesNoOptional source-time silence ranges returned by local analysis.
minimum_silence_secondsNoMinimum silence duration to return; defaults to 0.7 seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

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

The description adds valuable behavioral context beyond the annotations: it is deterministic, never calls a model, never persists transcript text, and never changes Premiere. These statements meaningfully expand on the readOnly and idempotent hints and directly address likely concerns about side effects and model dependence.

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

Conciseness5/5

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

Two short sentences carry the entire definition: the first states the core function and inputs, the second states key exclusions. There is no filler, and the most decision-relevant information is front-loaded.

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

Completeness5/5

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

Given the rich input schema, the existing annotations, and the presence of an output schema, the description is complete enough for an agent to select and invoke the tool correctly. It communicates the operational constraints and data dependencies without needing to repeat schema details or return-value documentation.

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?

The schema already documents all parameters at 100% coverage, so the baseline is 3. The description adds extra semantic value by emphasizing that segments are caller-supplied and revision-bound, and that silence ranges are optional and local, which clarifies the caller's responsibilities and the intended data flow.

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

Purpose5/5

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

The description names a specific verb ('Analyze') and a precise resource ('caller-supplied, revision-bound transcript segments and optional local silence ranges'), with a clear output concept ('deterministic dialogue-edit candidates'). It also separates itself from model-driven or mutating tools by stating what it never does, which helps distinguish it from siblings.

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?

The description gives clear context for when to use the tool: when the caller already has normalized transcript segments and optional silence data and wants deterministic analysis. It does not explicitly name sibling alternatives or state when not to use it, but the 'caller-supplied' and 'never calls a model' phrasing implies the boundary well.

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

analyze_loudnessAnalyze LoudnessA

Measure integrated loudness (LUFS), loudness range (LU), and true peak (dBFS) from a local media file using FFmpeg's EBU R128 filter. Analysis only: it does not normalize audio or change Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathNoAbsolute path to a local audio or video file. Provide this or project_item_id.
target_lufsNoOptional delivery target in LUFS (for example -14 streaming, -16 podcast, or -23 broadcast)
tolerance_luNoAllowed absolute difference from target_lufs (default: 1 LU)
project_item_idNoProject item whose local media path should be resolved through Premiere. Provide this or media_path.
max_true_peak_dbfsNoOptional maximum acceptable true peak in dBFS (commonly -1 or -2)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

Discloses the tool's non-mutating scope beyond what the annotations provide: no audio normalization and no changes to the Premiere project, which is valuable safety information for an agent, especially since the annotations carry only negative hints (readOnlyHint=false, idempotentHint=false). There is a minor tension between 'Analysis only' and readOnlyHint=false, but the specific caveats prevent it from being a hard contradiction.

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

Conciseness5/5

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

Two sentences with zero filler: the core function and measurement units are front-loaded, and the critical 'analysis only' caveat lands immediately after. Every clause earns its place.

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?

With an output schema present and full parameter coverage, the description only needs to cover selection criteria and side effects, which it largely does. Missing: no explicit guidance on choosing between media_path and project_item_id when both are provided, and no explicit routing to normalize_loudness_file or verify_delivery_file — minor gaps for an otherwise complete definition.

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

Parameters3/5

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

The input schema documents all 5 parameters at 100% coverage, so the schema carries the documentation burden and the baseline of 3 applies. The description connects to measurement outputs (LUFS/LU/dBFS) but adds no syntax, format, or relationship details about parameters like target_lufs or tolerance_lu beyond what the schema already states.

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

Purpose5/5

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

States a specific verb ('Measure') with precise resources: integrated loudness (LUFS), loudness range (LU), and true peak (dBFS) from a local media file via FFmpeg's EBU R128 filter. The closing clause explicitly distinguishes it from the mutating sibling normalize_loudness_file, so an agent can tell them apart at a glance.

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?

Provides a clear exclusion — 'it does not normalize audio or change Premiere' — which tells the agent this is the wrong tool for normalization or project-modification tasks. However, it doesn't explicitly name the alternative (normalize_loudness_file) or offer affirmative when-to-use guidance relative to nearby siblings like verify_delivery_file.

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

analyze_video_interlacingAnalyze Video InterlacingB

Classify decoded video frames as progressive, top-field-first, bottom-field-first, mixed, or undetermined using FFmpeg idet. Read-only delivery preflight.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local video file
sample_secondsNoDecode sample duration from 1 through 300 seconds (default: 30)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior1/5

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

The description explicitly claims the operation is 'Read-only', but the annotations set readOnlyHint to false. This is a direct contradiction that makes the safety profile unreliable. The description otherwise adds only the use of FFmpeg idet, which is method detail, not behavioral disclosure such as side effects, permissions, or resource implications.

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

Conciseness5/5

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

Two sentences, no filler, and the classification output is front-loaded. Every word earns its place, apart from the problematic 'Read-only' claim which hurts accuracy more than structure.

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?

The schema covers parameters and an output schema exists for return values, so those do not need elaboration. However, the direct contradiction between 'Read-only' and readOnlyHint=false leaves the tool's behavior profile untrustworthy, and there is no guidance on when to use this tool versus sibling quality-control or inspection tools. These gaps make the definition incomplete for safe autonomous invocation.

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

Parameters3/5

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

The input schema already provides 100% parameter coverage: media_path is described as an existing local video file, and sample_seconds is fully documented with range and default. The description adds little parameter-level meaning beyond clarifying that the sample duration applies to decoded frames, so the baseline of 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb ('classify'), a specific resource ('decoded video frames'), the possible classification outputs (progressive, top-field-first, bottom-field-first, mixed, undetermined), and the method ('using FFmpeg idet'). It also frames it as a delivery preflight, which distinguishes it from general analysis or encoding tools. This is a model of purpose clarity.

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?

The phrase 'Read-only delivery preflight' gives clear context that this is a pre-check, not an edit or export operation. However, it does not name sibling alternatives like analyze_video_qc or inspect_media_streams, nor does it state when this tool should be chosen over them. Clear context but no explicit exclusions.

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

analyze_video_qcAnalyze Video QcB

Analyze a local video delivery for sustained black and frozen sections with FFmpeg. Read-only: it does not contact Premiere or modify the file.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesPath to an existing local video file
minimum_black_secondsNoMinimum black duration to report (default: 0.5)
minimum_freeze_secondsNoMinimum frozen duration to report (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior1/5

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

The description explicitly claims 'Read-only: it does not contact Premiere or modify the file,' but the annotations set readOnlyHint=false. This is a direct contradiction between the described behavior and the structured metadata, so the agent cannot reliably trust the tool's side-effect profile.

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

Conciseness5/5

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

The description is two sentences and every sentence earns its place: the first states the operation and target, the second clarifies the safety profile. There is no filler, title repetition, or schema 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 simple three-parameter tool with a full input schema and an output schema, the prose covers the main non-schema context: local file, FFmpeg, black/freeze detection, and no Premiere modification. The annotation contradiction slightly undermines overall completeness, but the prose alone is nearly sufficient for correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters. The description's reference to a 'local video' aligns with media_path but adds no additional meaning, and the black/freeze thresholds are fully covered by the input schema.

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

Purpose5/5

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

The description names a specific action ('Analyze'), a specific input ('local video delivery'), specific targets ('sustained black and frozen sections'), and the method ('FFmpeg'). This makes the tool's purpose unmistakable and distinguishes it from sibling analyzers such as analyze_video_interlacing or inspect_media_streams.

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?

The description gives useful context that this is for local file QC and does not require Premiere, so an agent can infer when to use it. However, it does not explicitly state when not to use it or name alternative tools for related QC checks, so usage guidance is implied rather than fully explicit.

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

apply_after_effects_render_handoffApply After Effects Render HandoffA

Import exactly one previewed completed AE render into its approved Premiere bin after rechecking both hosts and file metadata. Requires confirmation and consumes the token before dispatch. Does not save, render, or change a timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time ten-minute token from preview_after_effects_render_handoff.
confirm_importYesMust be true after reviewing the exact file and destination.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, the description discloses several important behaviors: it requires confirmation, consumes the token before dispatch, rechecks hosts and file metadata, and explicitly does not save, render, or change a timeline. These details give the agent an accurate model of side effects and safety, and they do not contradict any annotation.

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

Conciseness5/5

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

Three tightly written sentences with no filler. The primary action is front-loaded, followed by required preconditions and explicit non-behaviors. Every sentence earns its place.

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

Completeness5/5

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

For a two-parameter tool with full schema coverage and an output schema, the description covers the essential preconditions, constraints, and exclusions an agent needs. It clearly explains the token requirement and confirmation flow, leaving no critical gap for invoking the tool correctly.

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

Parameters3/5

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

The input schema already has 100% coverage, documenting preview_token and confirm_import clearly. The description adds the behavioral note that the token is consumed before dispatch, which reinforces the one-time nature, but it does not add substantial new parameter meaning beyond the schema.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Import exactly one previewed completed AE render into its approved Premiere bin.' It also names the destination and unique constraints (exactly one, previewed, approved), which clearly separates this apply step from the sibling preview tool and other After Effects import tools.

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?

The description implies when to use this tool by referencing a previewed render and requiring a confirmation token from the preview step. It also clarifies boundaries with 'Does not save, render, or change a timeline.' However, it does not explicitly name the alternative preview tool or state a when-not-to-use condition.

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

apply_audio_effectApply Audio EffectA

Apply an audio effect to a clip. Uses QE catalog lookup, with an exact-name QE probe when enumeration is empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesName of the audio effect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already communicate mutability (readOnly=false) and non-destructiveness; the description adds a small behavioral detail: QE catalog lookup with a fallback exact-name probe when enumeration is empty. It still does not explain side effects, error behavior, or what happens when the exact-name probe fails, so it is only mildly additive.

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

Conciseness5/5

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

Two sentences with no fluff. The main action is front-loaded, and the technical QE note is separated and kept brief.

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

Completeness3/5

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

For a two-parameter tool with an output schema and mutation annotations, the description is mostly adequate. However, it relies on the unexplained acronym 'QE', omits how an agent should enumerate valid effect names, and provides no usage context versus the many effect-related siblings.

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

Parameters3/5

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

Schema coverage is 100%, so the schema defines node_id and effect_name. The phrase 'exact-name QE probe' adds some meaning to effect_name by implying an exact catalog name is needed, but the description lacks detail on where that catalog comes from. This remains near the baseline for high schema coverage.

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

Purpose5/5

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

The description states a specific verb, applying an audio effect to a clip, and identifies the resource type. This clearly differentiates it from the sibling apply_effect and list_available_audio_effects without requiring schema inspection.

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

Usage Guidelines2/5

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

No when-to-use guidance is provided, nor any exclusion against apply_effect or suggestion to consult list_available_audio_effects for valid effect names. The only usage-related detail is an internal QE fallback, which does not help an agent choose among siblings.

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

apply_edit_planApply Edit PlanA

Apply a previously previewed compound edit after revalidating every target. Requires the edit capability and exact preview confirmation token.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesAn edit plan containing insert_clip and remove_clip operations (maximum 100)
confirmation_tokenYesExact token returned by preview_edit_plan

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false), the description adds genuine behavioral context: it revalidates every target before acting, requires the edit capability, and is gated by an exact confirmation token. None of these details are expressed by the annotations, and the description does not contradict them.

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

Conciseness5/5

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

Two sentences with no filler: the first states the action and the key behavioral detail (revalidation), the second states the preconditions (capability and token). Everything earns its place and is front-loaded.

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 compound edit with revalidation and token gating, the description covers the core workflow, prerequisites, and safety behavior, while the output schema handles return values. The main uncovered gap is failure behavior (what happens when revalidation or token verification fails), but the essentials are all present.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents both parameters thoroughly, including the plan structure and the token's origin in preview_edit_plan. The description reinforces the confirmation_token semantics ('exact token') and the plan's compound-edit nature, but adds little meaning beyond the schema, matching the baseline for high coverage.

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

Purpose5/5

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

The description uses a specific verb-resource pair ('Apply a previously previewed compound edit') and adds distinguishing scope: revalidation and the confirmation-token gate. It clearly separates this commit-step tool from siblings like preview_edit_plan, create_context_edit_plan, apply_spot_workflow_plan, and apply_mogrt_premiere_handoff.

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?

The 'previously previewed' phrasing and the requirement for an 'exact preview confirmation token' make the preview-then-apply workflow evident, and the capability requirement signals when the tool is permitted. However, it does not explicitly name preview_edit_plan as the prerequisite or state when not to use this tool, leaving some inference to the agent.

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

apply_effectApply EffectA

Apply a video effect to a clip. Uses QE DOM catalog lookup, with an exact-name QE probe when Premiere's catalog enumeration is empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to apply the effect to
effect_nameYesName of the effect (e.g., 'Gaussian Blur', 'Lumetri Color')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations by disclosing the QE DOM catalog lookup and the exact-name QE probe fallback when catalog enumeration is empty. It does not contradict the readOnlyHint=false, destructiveHint=false, or idempotentHint=false annotations.

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?

The description is two sentences, front-loads the core purpose, and keeps implementation detail in a separate clause. It is appropriately sized, though 'QE' is used without expansion, which slightly reduces clarity for unfamiliar readers.

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 simple two-parameter tool with a fully covered schema and an output schema, the description is reasonably complete. It explains the main action and a fallback behavior, though it does not explicitly mention an effect must already exist or how failures are surfaced.

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?

The input schema already fully documents both parameters with 100% coverage, giving a baseline of 3. The description adds extra meaning by noting that effect_name is matched via an 'exact-name QE probe' in fallback conditions, which clarifies matching behavior beyond the schema.

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

Purpose5/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 video effect to a clip.' It distinguishes itself from sibling tools like apply_audio_effect by specifying 'video effect,' and the effect_name examples make the intent unambiguous.

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?

The description implies usage for video effects but does not explicitly say when to choose this over apply_audio_effect, list_available_effects, batch_apply_effect, or remove_effect. No when-not or alternative guidance is stated, only an internal implementation note.

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

apply_lutApply LutA

Apply a LUT file to a clip via Lumetri Color

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
lut_pathYesFull path to the .cube or .3dl LUT file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate this is not read-only and not idempotent. The description adds the behavioral detail that the LUT is applied through Lumetri Color, but it does not explain whether an existing Lumetri effect is replaced, how the modification is applied, or any side effects.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every word adds meaning: what is applied, to what, and through which mechanism.

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 simple two-parameter tool with full schema coverage, an output schema, and annotations, this description is nearly complete. It is slightly light on prerequisites or expected behavior around existing Lumetri effects, but the core call is adequately specified.

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

Parameters3/5

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

Schema description coverage is 100%, with both 'node_id' and 'lut_path' documented. The description mainly restates the LUT concept already in the schema and does not add meaningful parameter semantics beyond it.

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

Purpose5/5

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

The description states a specific verb ('Apply'), a specific resource ('a LUT file'), and the target ('a clip') via a specific method ('Lumetri Color'). This clearly distinguishes it from generic color correction or effect-applying tools in the sibling list.

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

Usage Guidelines2/5

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

The description gives no explicit guidance about when to use this tool versus siblings like 'color_correct' or 'apply_effect'. It implies usage through the resource type, but does not state alternatives or conditions.

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

apply_mogrt_premiere_handoffApply Mogrt Premiere HandoffA

Import exactly one previewed MOGRT into the empty track of the explicit disposable Premiere verification sequence, then read back insertion and control descriptors. Requires explicit confirmation; no rendered-frame claim is made.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time token returned by preview_mogrt_premiere_handoff.
confirm_importYesMust be true to import into the explicit verification sequence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already convey non-read-only and non-destructive traits, but the description adds valuable behavioral context beyond them: it targets a 'disposable' verification sequence, imports into an 'empty track,' requires explicit confirmation, and explicitly disclaims any rendered-frame guarantee. It does not elaborate on failure modes or side effects, but the guidance is materially richer than the raw annotations.

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

Conciseness5/5

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

The description is two sentences with no wasted words. It front-loads the primary action ('Import exactly one previewed MOGRT'), then adds the follow-up read-back and the two critical caveats (explicit confirmation and no rendered-frame claim). Every sentence contributes essential operational information.

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?

An output schema exists, so return descriptors need not be enumerated. The description covers the target sequence, track state, quantity, confirmation requirement, and a key limitation. It does not explicitly connect to the preceding preview step by name, but the schema's preview_token reference fills that gap. Overall, it is sufficiently complete for a specialized apply step.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters preview_token and confirm_import are already fully described in the input schema. The tool description adds no new parameter-specific detail beyond the general mention of 'explicit confirmation,' which aligns with confirm_import. With the schema handling the heavy lifting, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb ('Import'), a specific resource ('exactly one previewed MOGRT'), and a precise destination ('empty track of the explicit disposable Premiere verification sequence'). It also clarifies follow-up action ('read back insertion and control descriptors') and distinguishes this from preview by requiring a 'previewed' MOGRT and explicit confirmation. This is a clear, non-tautological statement of the tool's function.

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?

The description clearly implies this is the apply step after a preview, via 'previewed MOGRT' and the one-time preview_token requirement in the schema. It also states the important precondition of 'explicit confirmation.' However, it does not name sibling alternatives (e.g., preview_mogrt_premiere_handoff or apply_after_effects_render_handoff) or state when not to use this tool, so it falls short of a full routing guide.

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

apply_spot_workflow_planApply Spot Workflow PlanA

Apply one exact previewed motion-demo, product-spot, or brand-spot plan. Requires edit authority, requires filesystem authority for a MOGRT, and only targets empty explicitly named tracks. Host readback is not playback or render verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesExact plan returned by a preview_*_spot tool
confirmation_tokenYesExact token returned by the corresponding preview tool.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

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

The annotations provide only generic false hints, so the description carries the behavioral burden and does so strongly. It discloses that applying requires edit authority, that a MOGRT plan requires filesystem authority, that only empty explicitly named tracks are targeted, and that 'host readback is not playback or render verification.' These are non-obvious, high-value behavioral facts beyond what annotations or schema provide.

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

Conciseness5/5

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

Three dense, purposeful sentences with no filler. The core action is front-loaded, the constraints follow immediately, and the verification caveat closes the description. Every sentence earns its place.

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 2-parameter tool with an output schema, the description covers the core prerequisites, the empty-track-only constraint, and the important readback limitation. It does not explicitly step through the full 'preview first, then provide both returned values' flow, but that is recoverable from the schema descriptions and the word 'previewed.'

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description reinforces that the plan is exact and previewed and lists the relevant plan types, but it does not add substantial parameter-level meaning beyond what the input schema already states for plan and confirmation_token.

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

Purpose5/5

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

The description uses a specific verb, 'Apply,' and names an exact resource: 'one exact previewed motion-demo, product-spot, or brand-spot plan.' This clearly distinguishes the tool from the many preview_*_spot and apply_* siblings and tells an agent exactly what this tool consumes.

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?

The description clearly implies that the tool is only for plans generated by a matching preview tool, and it states important conditions: requires edit authority, requires filesystem authority for a MOGRT, and only targets empty explicitly named tracks. It does not explicitly name sibling alternatives such as apply_edit_plan or state when not to use this tool, so exclusion guidance is implied rather than fully spelled out.

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

attach_custom_propertyAttach Custom PropertyA

Attach a custom property (key/value pair) to the active sequence and confirm it against the sequence project item's XMP packet. Reports failure when the property never lands in XMP.

ParametersJSON Schema
NameRequiredDescriptionDefault
property_idYesUnique identifier for the custom property
property_valueYesValue for the custom property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already indicate a write operation (readOnlyHint=false) and non-destructive behavior. The description adds useful behavioral detail: it confirms the property against the sequence project item's XMP packet and reports failure when the property does not land in XMP. This goes beyond the annotations without contradicting them.

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

Conciseness5/5

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

The description is compact and front-loaded with the action and target, followed by a concise note about failure reporting. Every sentence contributes necessary information and there is no redundancy.

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

Completeness5/5

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

For a simple two-string-parameter write operation with full schema coverage, an output schema, and safety annotations, the description provides enough operational and verification context. An agent can select and invoke this tool correctly without additional clarification.

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

Parameters3/5

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

Schema description coverage is 100%, so both required parameters are fully documented in the input schema. The description only paraphrases them as 'key/value pair' and does not add meaningful semantic detail beyond what the schema already provides.

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

Purpose5/5

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

The description states a specific action, 'Attach a custom property (key/value pair)', and names the target, 'the active sequence', plus the XMP confirmation. This clearly distinguishes it from metadata-related siblings like set_metadata and set_xmp_metadata.

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?

The description gives context for the operation, namely attaching to the active sequence and verifying against the XMP packet, but it does not name alternatives or state when not to use this tool. Usage guidance is therefore implied rather than explicit.

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

audit_timeline_healthAudit Timeline HealthA
Read-onlyIdempotent

Audit one sequence snapshot for flash frames, gaps, overlaps, disabled clips, repeated shots, video without audio, extreme speed, invalid times, empty tracks, leading black, and trailing gaps; returns a 0..100 score, findings with timecodes, and fix routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
snapshotYesSequence snapshot to audit.
frame_rateNoFrame rate override for frame math and timecodes (1..240). Defaults to the snapshot frame rate or 30.
gap_min_framesNoMinimum gap length in frames to report (default 1).
max_speed_percentNoAbsolute speed above this percentage is flagged (default 400).
expected_frame_rateNoOptional expected frame rate; a mismatch is an error.
flash_frame_max_framesNoClips lasting this many frames or fewer are flagged as flash frames (default 3).
expected_duration_secondsNoOptional target duration; clips past it and trailing gaps before it are flagged.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/destructiveHint, and the description adds concrete guarantees: 'Local-only' and 'never changes Premiere.' It also discloses output shape (score, timecoded findings, fix routes), which helps the agent set expectations beyond the annotation flags.

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

Conciseness5/5

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

A single dense sentence front-loads the verb and resource, then packs the audit categories and output. No filler or repetition of schema content; every clause adds information.

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

Completeness5/5

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

The tool is complex with a nested snapshot object, 7 parameters, and an output schema, but the description covers the main behavior, categories, and guarantees. With rich input and output schemas present, nothing required for correct invocation is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents all parameters and nested snapshot shapes. The description adds no parameter-level detail, so the rubric baseline of 3 applies.

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

Purpose5/5

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

The description states a specific verb ('Audit'), a precise resource ('one sequence snapshot'), and enumerates the full set of checks it performs (flash frames, gaps, overlaps, disabled clips, etc.). This is specific enough to distinguish it from siblings like diff_sequence_snapshots or get_timeline_gaps without opening the schema.

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?

The description gives clear context: use this when you have a sequence snapshot and need a read-only health audit with a score, findings, and fix routes. It does not explicitly name alternatives or state when not to use it, so it stops short of a 5.

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

auto_reframe_sequenceAuto Reframe SequenceC

Auto-reframe a sequence for a different aspect ratio

ParametersJSON Schema
NameRequiredDescriptionDefault
new_nameNoName for the newly created auto-reframed sequence
sequence_idNoSequence name or ID to reframe. Uses active sequence if omitted.
target_widthYesTarget frame width in pixels
motion_presetNoPremiere Auto Reframe motion preset (default: default)
target_heightYesTarget frame height in pixels
use_nested_sequencesNoWhether Auto Reframe should honor nested sequences (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

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

The description adds little beyond the title and does not disclose key behaviors such as whether a new sequence is created, whether the original sequence is modified, or that Auto Reframe performs analysis. Annotations are present but only provide generic false hints; the description does not enrich them.

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?

The description is a single, front-loaded sentence with no filler. It is appropriately concise, though it could use the saved space to mention side effects or creation behavior.

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

Completeness3/5

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

The schema covers parameters and an output schema exists, so an agent can likely invoke the tool correctly. However, the description omits important contextual information such as whether a new sequence is created and what happens to the original sequence, making it only minimally viable.

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

Parameters3/5

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

Schema description coverage is 100%, so all six parameters are documented. The description only loosely contextualizes the target dimensions as an aspect-ratio change, which adds minimal meaning beyond the schema's explicit parameter descriptions.

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 specific action ('Auto-reframe'), a resource ('a sequence'), and the purpose ('for a different aspect ratio'). It is clear on its own, but it does not explicitly differentiate from similar sequence-creation or sequence-modification siblings such as create_sequence or set_sequence_resolution.

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

Usage Guidelines2/5

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

There is no guidance about when to use this tool versus alternatives, and no mention of prerequisites or situations where another tool would be more appropriate. The intended use is only implied by the action described.

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

batch_add_transitionsBatch Add TransitionsA

Add the same transition to all cut points on a track

ParametersJSON Schema
NameRequiredDescriptionDefault
track_indexNoVideo track index (0-based, default: 0)
transition_nameYesName of the transition (e.g., 'Cross Dissolve')
duration_secondsNoDuration of each transition in seconds (default: 1.0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

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

Annotations show destructiveHint=false but idempotentHint=false, so it's not clearly marked safe from repeated calls. The description doesn't disclose whether it overwrites existing transitions, whether it targets only clip-to-clip cuts (excluding gaps), or what happens with the default track_index=0.

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

Conciseness5/5

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

One sentence, zero filler, and the key behavior ('same transition to all cut points on a track') is front-loaded. This is an ideally compact definition.

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

Completeness3/5

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

As a simple batch version of an existing sibling operation, it is mostly complete; the output schema exists and parameters are well documented. The main gap is not saying whether existing transitions at cut points are replaced or skipped, which matters for idempotent behavior.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters. The description adds the contextual meaning of applying the same transition to all cut points but doesn't clarify effective defaults beyond the schema.

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

Purpose5/5

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

The description uses a specific verb ('add') and resource ('transition to all cut points on a track'), clearly distinguishing it from the sibling tools add_transition and add_transition_to_clip. It states the scope: all cut points on a track, not a single clip.

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?

The context makes it clear this is for batch/bulk transition application across cut points, implicitly distinct from the single-transition siblings. However, it doesn't explicitly state when to prefer it over add_transition or add_transition_to_clip, or mention the track_index default.

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

batch_apply_effectBatch Apply EffectA

Apply one audio or video effect to compatible selected clips, a compatible track, or all compatible clips. Every target is preflighted and then checked by component-count readback.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesWhich clips to apply to: selected clips, all on a track, or all in sequence
track_typeNoTrack type (required when target is 'track')
effect_nameYesDisplay name of the effect to apply (e.g., 'Gaussian Blur', 'Lumetri Color')
track_indexNoTrack index (required when target is 'track')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

The description reveals behavior beyond the annotations: targets are preflighted and verified via component-count readback, and non-compatible targets are excluded. This adds meaningful operational context, while the annotations already signal a mutating, non-idempotent operation; no contradiction.

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

Conciseness5/5

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

Two sentences, front-loaded with the action and scopes, with the verification detail in the second sentence. No filler or repetition of schema/annotations.

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?

The description plus a 100%-described schema covers the main operational decisions: target selection, track requirements, and effect name. Since an output schema is present, the lack of return-value detail is not a gap; only alternative routing and exact behavior on incompatible clips are left implicit.

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

Parameters3/5

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

The schema already covers all four parameters at 100% with descriptions. The description adds little param-level meaning, only the compatibility filter and the one-effect constraint, so baseline 3 is appropriate.

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

Purpose5/5

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

Description opens with a specific verb–resource pair ('Apply one audio or video effect') and enumerates the three target scopes. It clearly differentiates this batch tool from single-target siblings like apply_effect/apply_audio_effect by the target set and the word 'compatible'.

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 states exactly when to use it: to apply a single effect across selected clips, an entire compatible track, or all compatible clips. It does not name alternative tools or say when not to use it, but the scope is clear enough to route an agent.

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

batch_enable_disableBatch Enable DisableB

Enable or disable multiple clips at once (selected, track, or all).

ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesWhich clips to affect
enabledYestrue to enable, false to disable
track_typeNoTrack type (required when target is 'track')
track_indexNoTrack index (required when target is 'track')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

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

The annotations are all false-valued (not read-only, not idempotent, not destructive) and thus carry almost no safety context, leaving the burden on the description. The description only restates the core operation and adds no detail on prerequisites (e.g., active sequence, non-empty selection), failure conditions, or effects on locked/unselected clips. For a mutating tool this is a significant behavioral gap.

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?

The description is a single front-loaded sentence with no filler — verb, resource, and scope all appear near the front. The only minor redundancy is that 'multiple clips at once' echoes the title's 'Batch' concept, but this is acceptable reinforcement rather than waste.

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

Completeness3/5

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

For a 4-parameter tool with full schema coverage and an output schema present, the description conveys the core purpose adequately. It does not, however, mention the alternative singular tool, prerequisites for each target mode, or edge-case behavior (empty selection, locked tracks), which an agent would need to invoke it reliably among 180+ siblings. Adequate but with clear gaps.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters (target, enabled, track_type, track_index) are already documented, including the conditional requirement for track_type/track_index when target is 'track'. The description's parenthetical '(selected, track, or all)' merely restates the target enum and adds no new semantic meaning. Baseline 3 applies given full schema coverage.

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

Purpose5/5

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

The description states a specific verb ('Enable or disable'), a resource ('multiple clips'), and the targeting scope ('selected, track, or all'). The phrase 'multiple clips at once' distinguishes it from the sibling enable_disable_clip, which handles the singular case. This is immediately actionable and clearly differentiated.

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?

The targeting modes ('selected, track, or all') give a clear sense of when this tool applies to batch operations. However, it never names the singular sibling enable_disable_clip as the alternative for single-clip toggles, nor does it state when NOT to use it (e.g., for muting audio or locking tracks). Usage is implied rather than explicit.

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

batch_rename_clipsBatch Rename ClipsA

Rename multiple clips on the timeline using a pattern. Supports sequential numbering.

ParametersJSON Schema
NameRequiredDescriptionDefault
patternYesName pattern. Use {n} for a sequential number, ## for a zero-padded two-digit sequence number, and {name} for the original name (e.g., 'Scene_##', '{name}_v2')
track_typeYesTrack type to rename clips on
track_indexYesTrack index (0-based)
start_numberNoStarting number for {n} placeholder (default: 1)
selected_onlyNoOnly rename selected clips (default: false, renames all on track)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate this is a write operation and not idempotent. The description adds the context that it renames clips on a timeline and supports sequential numbering, but does not disclose side effects such as whether source media files are left untouched or whether re-running is safe. Given the annotation coverage, this is adequate but not rich.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every word adds meaningful context about what the tool does and the pattern capability it supports.

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?

With a complete input schema, useful annotations, and an output schema present, the description is largely sufficient for correct invocation. It covers the batch nature and pattern behavior. The main gap is lack of explicit guidance about when to choose this over rename_clip, but that is a usage-nuance rather than a blocking omission.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are already documented in the input schema. The description mentions pattern and sequential numbering, which lightly echoes the pattern schema, but it does not meaningfully add beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb ('Rename') and a specific resource ('multiple clips on the timeline') and adds the pattern-based renaming mechanism. This clearly differentiates it from sibling singular tools like rename_clip and rename_bin/rename_project_item.

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?

The phrasing 'Rename multiple clips' implies it is for batch operations rather than single-clip renaming, but no explicit alternatives or when-not-to-use conditions are given. The description leaves the decision to inference rather than naming a sibling such as rename_clip.

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

build_caption_artifactBuild Caption ArtifactA

Build a CapCut/Submagic-style SRT or VTT caption artifact from a caller-supplied word timeline: balanced word groups, sentence-aware breaks, min/max cue durations, optional karaoke word timestamps (VTT), emphasis and speaker markup. Local-only; returns the artifact inline or writes it inside an approved workspace and never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatYesArtifact format. SRT uses HH:MM:SS,mmm; VTT starts with WEBVTT and uses HH:MM:SS.mmm.
karaokeNoVTT only: emit per-word <HH:MM:SS.mmm> timestamps inside each cue for word-highlight styles. Errors for SRT.
max_linesNoMaximum lines of plain caption text per cue (default 1); markup does not add lines.
uppercaseNoRender caption text in upper case.
output_pathNoOptional absolute file path to write the artifact to. Requires approved_workspace_path; the file must not already exist. When omitted the artifact text is returned inline (up to 512 KiB).
style_presetNoStyle descriptor to return with the artifact (default clean). Documentation only; not encoded in SRT/VTT.
strip_fillersNoTokens removed from the caption text (case-insensitive, punctuation ignored).
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
words_per_cueNoTarget words per cue (default 4); sentences are split into balanced groups of at most this many words.
emphasis_wordsNoWords wrapped in <b> (SRT) or <c.emphasis> (VTT).
speaker_prefixNoPrefix cues with the speaker label when present: 'Speaker: ' in SRT, <v Speaker> in VTT.
max_cue_secondsNoMaximum cue duration (default 5).
min_cue_secondsNoMinimum cue duration (default 0.5); short cues are extended but never past the next cue start.
merge_gap_secondsNoExtend a cue to the next cue start when the gap is smaller than this (default 0.3) so captions do not flicker.
max_chars_per_lineNoMaximum characters per line of plain caption text (default 32); words are never split. Wrapping counts unescaped words only, so VTT escaping, karaoke timestamps, emphasis tags, and speaker prefixes can make the rendered line longer.
approved_workspace_pathNoAbsolute existing directory that must contain output_path (checked via realpath of the parent directory). Required with output_path.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the sparse annotations, the description discloses local-only execution, the two return modes (inline artifact or file write inside an approved workspace), and the hard guarantee that Premiere is never changed. This gives an agent critical side-effect and safety information.

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

Conciseness5/5

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

Two dense sentences front-load the core purpose and the most important behavioral constraints. Every clause contributes information; there is no filler or repetition of schema content.

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

Completeness5/5

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

For a complex 16-parameter tool with a rich schema and an output schema, the description covers the critical context: input source, output format, side effects, and the Premiere safety boundary. Remaining details live in the schema, which is appropriate given the schema's thoroughness.

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

Parameters3/5

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

The input schema already documents all 16 parameters with 100% coverage, so the baseline applies. The description adds a useful high-level summary of the grouping algorithm and optional markup, but it does not introduce new parameter-level constraints or relationships beyond what the schema provides.

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

Purpose5/5

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

The description opens with a specific verb ('Build'), a precise resource ('SRT or VTT caption artifact'), and the input ('caller-supplied word timeline'). It also distinguishes itself from caption-track editing siblings by stating it is local-only and never changes Premiere.

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 clear context: use this when you need a standalone SRT/VTT artifact from a word timeline, and it explicitly excludes Premiere mutation. However, it does not name alternative tools such as create_caption_track or read_sequence_captions, nor give explicit when-not conditions, so the guidance is implied rather than fully explicit.

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

capture_frameCapture FrameA

Capture the current frame and return it as inline image data for the LLM to see. This lets the AI visually inspect the current state of the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
time_secondsNoTime position in seconds to capture. Uses current playhead if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

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

With annotations providing only limited safety signals (readOnlyHint false, destructiveHint false), the description adds useful behavioral context by stating that the tool returns inline image data rather than writing to disk. It also communicates that this is an inspection aid for the LLM. It could disclose more about side effects or cost, but the core behavior is clear.

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

Conciseness5/5

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

Two tight sentences, front-loaded with the action and outcome. Every sentence earns its place: the first states what happens and the second states the intended use case.

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

Completeness5/5

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

For a simple tool with one optional parameter, 100% schema coverage, no nested objects, and an output schema, the description is sufficient. It clearly explains the purpose, return form, and the scenario in which an agent would want to invoke it.

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

Parameters3/5

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

The single optional parameter time_seconds is fully documented in the schema (100% coverage), including its default behavior. The description adds no new parameter-level detail beyond reinforcing that the 'current frame' is the default, so the baseline schema coverage score of 3 is appropriate.

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

Purpose5/5

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

The description names a specific action ('Capture the current frame') and delivers the key outcome ('return it as inline image data for the LLM to see'), which distinguishes it from sibling export/render tools like export_frame or freeze_frame. It clearly identifies the resource as the current timeline state.

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?

The second sentence gives clear context for when an agent should call it: when the AI needs to visually inspect the current timeline state. It does not explicitly name alternatives or say when not to use it, but the purpose is specific enough to guide selection.

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

check_caption_safe_zoneCheck Caption Safe ZoneA
Read-onlyIdempotent

Check caption, title, logo, and graphic rectangles against approximate platform UI overlay zones (TikTok, Reels, Shorts, feed, YouTube, LinkedIn, X) and suggest the nearest clear position. Local-only geometry on caller-supplied normalized rects; it never reads or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameYesOutput frame size in pixels; used for orientation checks and pixel readback.
elementsYesOn-screen rectangles normalized to the frame (0..1), with x,y at the top-left corner.
platformYesTarget platform whose UI overlays are checked.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint and idempotentHint annotations, the description adds valuable behavioral context: it is local-only, operates on caller-supplied normalized rects, never reads or changes Premiere, and uses approximate overlay zones. This fully discloses side effects and the level of precision.

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

Conciseness5/5

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

Two tight sentences: the first states purpose and scope, the second states constraints and non-interaction with Premiere. Every sentence carries meaningful information with no filler.

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

Completeness5/5

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

For a read-only analysis tool with a rich input schema and an output schema, the description covers what matters: platforms, element kinds, normalized coordinates, local-only behavior, and non-invasiveness. The output schema handles return-value details, so nothing essential is missing.

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%, so the schema documents all parameters. The description adds useful semantic context by tying 'elements' to caption/title/logo/graphic rectangles, emphasizing normalized caller-supplied rects, and linking platform to UI overlay zones, which enriches the schema without redundancy.

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

Purpose5/5

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

The description states a specific verb ('check'), a clear resource ('caption, title, logo, and graphic rectangles'), and a concrete result ('suggest the nearest clear position'). It also names the target platforms and distinguishes the tool from Premiere-bound siblings by noting it never reads or changes Premiere.

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?

The description provides clear context: this is a local-only geometry check for platform UI safe zones, independent of Premiere. It doesn't explicitly name alternatives or when-not-to-use conditions, but the scope and constraints are clear enough for an agent to select it appropriately among the large sibling set.

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

check_offline_mediaCheck Offline MediaB
Read-onlyIdempotent

Check for offline (missing) media in the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered by structured fields. The description adds no behavioral context beyond these hints - it does not clarify whether 'check' yields a boolean, a list, or a count, and the only added detail is the parenthetical definition that offline means missing.

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

Conciseness5/5

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

A single eight-word sentence with the verb and resource front-loaded and zero wasted words. The '(missing)' parenthetical usefully disambiguates the domain term without adding bulk.

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

Completeness3/5

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

For a zero-parameter, annotated read-only tool with an output schema, most of the burden is already carried by structured fields. The remaining gap is the unexplained relationship to get_offline_media and the unresolved ambiguity of what 'check' returns, which the description does not address.

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?

The tool has zero parameters and schema description coverage is 100%, so there is nothing for the description to document. The baseline 4 for parameterless tools applies.

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?

States a specific verb and resource: checking for offline (missing) media in the project. The meaning is clear, but the description does not distinguish this tool from the near-identically named sibling get_offline_media, so an agent cannot tell whether it returns a status check or a retrieval of the media items.

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

Usage Guidelines2/5

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

Provides no guidance on when to use this tool versus alternatives. It does not mention get_offline_media, which appears to cover similar ground, nor any workflow context such as pre-export media validation or preparation for relinking.

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

clear_item_in_outClear Item In OutA

Clear in and/or out points on a project item (reset to full duration).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
clear_inNoClear the in point (default: true)
clear_outNoClear the out point (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate this is a mutation (readOnlyHint=false) that is not flagged destructive. The description adds genuine behavioral context beyond annotations: the operation resets the item to full duration, explaining the semantic consequence of clearing points. It doesn't discuss reversibility or effects on existing sequences, but the core behavior is disclosed and there is no contradiction with annotations.

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

Conciseness5/5

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

A single sentence with zero filler: verb, target, and outcome in one compact phrase. The behavioral clarification is delivered as a parenthetical that earns its place rather than padding the description.

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 simple 3-param boolean operation with an output schema and full schema coverage, the description captures the essential semantics. Minor gaps: it doesn't orient the agent toward the closely related set_item_in_out and clear_sequence_in_out siblings, and the definition of 'project item' is left to the schema. These are small omissions for a low-complexity tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents item_id, clear_in, and clear_out including defaults. The description adds the 'and/or' clarification and the 'reset to full duration' outcome, but no param-specific detail beyond what the schema already provides. Baseline 3 is appropriate when the schema carries the load.

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

Purpose5/5

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

The description names a specific verb (clear), a precise resource (in/out points on a project item), and the resulting state (reset to full duration). The parenthetical clarifies what 'clearing' actually means, and the phrase 'project item' distinguishes it from sequence-level siblings like clear_sequence_in_out and set_sequence_in_out_points.

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?

The resource scope ('on a project item') implies when the tool applies, and the sibling list contains sequence-level counterparts (clear_sequence_in_out, set_sequence_in_out_points) that an agent could infer are alternatives. However, no explicit routing, exclusions, or conditions are given — the agent must infer the boundaries between this tool and related item-level tools like set_item_in_out.

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

clear_sequence_in_outClear Sequence In OutA

Clear the in and/or out points on the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
clear_inNoClear in point (default: true)
clear_outNoClear out point (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already signal a non-read-only, non-idempotent operation, so the description's job is lighter. It adds that the action targets in/out points on the active sequence and that either or both can be cleared, but it does not disclose recovery behavior, no-op behavior, or what happens if the sequence lacks in/out points.

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

Conciseness5/5

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

A single, front-loaded sentence with no redundant words. It efficiently states the operation, target, and scope.

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

Completeness5/5

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

For a simple two-optional-boolean tool with a full schema and output schema, the description plus schema are sufficient for an agent to invoke it correctly. No critical behavioral or contextual information is missing.

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

Parameters3/5

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

Schema coverage is 100%: both clear_in and clear_out have descriptive text and defaults. The description's 'and/or' phrasing matches the boolean combination model, but it adds little beyond what the schema already communicates.

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

Purpose5/5

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

The description names a specific verb ('clear'), a precise resource ('the in and/or out points'), and a scope ('active sequence'). This cleanly distinguishes it from related tools like set_sequence_in_out_points and clear_item_in_out.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives such as set_sequence_in_out_points, get_sequence_in_out_points, or clear_item_in_out. The intended invocation context is only implied by the phrase 'active sequence.'

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

close_all_source_clipsClose All Source ClipsA
Destructive

Close all clips in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior2/5

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

The annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds no extra behavioral context beyond the basic close action, such as whether unsaved state is affected or whether the operation can be undone.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no redundant words. It states exactly what the tool does without elaboration.

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

Completeness5/5

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

Given the tool has no parameters, an output schema is present, and annotations cover the destructive nature, the description is sufficient for an agent to select and invoke this tool correctly. No additional context is needed.

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?

The tool has zero parameters and the schema is empty, so there is nothing for the description to clarify. The 100% schema coverage and absence of parameters make this a straightforward baseline.

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

Purpose5/5

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

The description uses a specific verb ('Close') with a clear resource ('all clips in the Source Monitor'). This differentiates it from the sibling close_source_monitor, which likely closes the monitor panel itself rather than the clips within it.

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?

The intended usage is implied by the action itself: call this when you want to clear all clips from the Source Monitor. However, there is no explicit guidance about when to prefer this over related tools like close_source_monitor or remove_selected_clips.

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

close_projectClose ProjectA
Destructive

Close the current Premiere Pro project

ParametersJSON Schema
NameRequiredDescriptionDefault
save_firstNoWhether to save before closing (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

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

Annotations already flag destructiveHint=true and readOnlyHint=false, so the description does not need to restate the destructive nature. It adds no further behavioral detail such as unsaved-changes handling, but the input schema's save_first parameter covers that, and the description does not contradict the annotations.

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

Conciseness5/5

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

A single sentence that is direct and front-loaded: it names the action and target immediately. There is no filler or 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 simple one-parameter destructive action, the description plus annotations and output schema cover the essential context. It does not discuss failure cases like no open project, but that is reasonably implied by 'current project' and is not a critical gap.

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

Parameters3/5

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

Schema description coverage is 100% and the single save_first parameter is self-explanatory in the schema. The tool description adds no parameter-specific detail, which is acceptable because the schema carries full semantic weight.

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

Purpose5/5

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

States a specific verb ('Close') and resource ('the current Premiere Pro project'), clearly distinguishing it from sibling tools like open_project, create_project, and save_project. The word 'current' adds necessary scope and prevents confusing it with closing a sequence or source clip.

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?

The description makes the usage context clear: call it to close the active Premiere Pro project. It does not explicitly enumerate alternatives or when not to use it, but the action is distinct enough among siblings that the context alone is sufficient.

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

close_sequenceClose SequenceA
Destructive

Close a sequence tab in the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

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

The description adds some context beyond the annotations by specifying that the tab (not the sequence data) is what gets closed, which mitigates confusion with delete_sequence. However, it does not elaborate on the destructive implications flagged by destructiveHint=true — e.g., whether unsaved state is lost or whether the sequence remains available after closing.

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

Conciseness5/5

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

A single, front-loaded sentence with zero filler. The core action ('Close a sequence tab') appears first, followed by the location ('in the timeline'), which is all the description needs.

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 simple one-parameter tool with an output schema and 100% schema coverage, the description covers the essential operation. The only notable gap is not clarifying the distinction between closing a tab and deleting a sequence, given the destructiveHint=true annotation.

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

Parameters3/5

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

The description adds no parameter information, but schema description coverage is 100% — the schema already documents that sequence_id accepts a name or ID and defaults to the active sequence. Per the baseline for high coverage, a 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb+resource pair — 'Close a sequence tab in the timeline' — which precisely distinguishes it from sibling tools like delete_sequence (removes the sequence), close_project, and close_source_monitor. The mention of 'tab' signals a UI-level operation, not data deletion.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus its many siblings. Notably, it does not clarify when to use close_sequence instead of delete_sequence, close_project, or close_source_monitor, nor does it address the destructiveHint=true annotation by explaining the consequences of closing a sequence tab.

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

close_source_monitorClose Source MonitorA
Destructive

Close the clip currently open in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true and readOnlyHint=false, signaling a mutating operation. The description adds the specific scope of the action but does not disclose additional behavioral details such as whether unsaved changes are lost or what state the Source Monitor is left in. This is acceptable given the annotation coverage, though not highly informative beyond it.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every word contributes to identifying the operation and its target.

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

Completeness5/5

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

For a no-parameter, focused action with annotations covering the destructive nature and an output schema present, the description is complete enough. No additional details are needed for an agent to invoke this tool correctly.

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?

The tool has zero parameters, so the schema fully covers the interface and the description has no parameter burden. Per the baseline for 0-parameter tools, this is appropriately rated.

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

Purpose5/5

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

The description states a specific verb ('Close') and a clear resource ('the clip currently open in the Source Monitor'). It distinguishes this tool from the sibling close_all_source_clips by its singular scope and from close_sequence by specifying the Source Monitor context.

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?

The description implies when to use the tool: when there is a single clip open in the Source Monitor that needs closing. However, it does not explicitly mention alternatives such as close_all_source_clips or provide conditions for choosing between them, leaving the routing mostly to inference.

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

color_correctColor CorrectA

Apply basic color correction to a clip using Lumetri Color

ParametersJSON Schema
NameRequiredDescriptionDefault
tintNoTint adjustment
blacksNoBlacks adjustment (-100 to 100)
whitesNoWhites adjustment (-100 to 100)
node_idYesNode ID of the clip
shadowsNoShadows adjustment (-100 to 100)
contrastNoContrast adjustment (-100 to 100)
exposureNoExposure adjustment (-4.0 to 4.0)
highlightsNoHighlights adjustment (-100 to 100)
saturationNoSaturation (0-200, 100 = normal)
temperatureNoColor temperature adjustment

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false, covering the basic safety profile. The description adds that the operation uses Lumetri Color and is 'basic', but does not disclose whether an existing correction is replaced, whether a new effect is created, or any other side effects beyond mutation.

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

Conciseness5/5

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

A single, front-loaded sentence contains the essential verb, target, and method with no wasted words. It is concise while still conveying the tool's core purpose.

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?

With a fully documented input schema, an output schema, and annotations covering the mutation profile, the definition is largely complete for invocation. The only notable gap is the absence of usage guidance and deeper side-effect disclosure, but those are already reflected in other dimensions.

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

Parameters3/5

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

The schema covers 100% of the 10 parameters with descriptions, so the schema carries the burden of parameter semantics. The tool description itself adds no parameter-level detail, which is acceptable given the full coverage.

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

Purpose5/5

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

The description uses a specific verb ('Apply'), a clear resource ('a clip'), and the method ('Lumetri Color'), making the tool's function immediately identifiable. It also distinguishes itself from sibling tools like apply_lut or apply_effect by specifying 'basic color correction' and the Lumetri mechanism.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as apply_effect, apply_lut, or set_color_value. There are no stated exclusions, prerequisites, or conditions that would help an agent decide between this and sibling tools.

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

compare_cmx3600_edlsCompare Cmx3600 EdlsA

Compare two local CMX 3600 EDLs by event number and report bounded added, removed, and changed editorial events. Read-only; it does not alter either interchange file or Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
after_pathYesExisting revised .edl file
before_pathYesExisting baseline .edl file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

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

The description explicitly claims 'Read-only; it does not alter either interchange file or Premiere,' but the annotations set readOnlyHint to false. This is a direct contradiction between the description and structured metadata, which undermines an agent's trust in side-effect expectations.

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

Conciseness5/5

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

The entire description is one focused sentence with no filler. It front-loads the action and resource, then adds the key behavioral caveat and the nature of the report.

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?

With an output schema present and full parameter schema coverage, the description gives enough context: inputs are local EDLs, comparison key is event number, and the outcome is a bounded list of added/removed/changed events. The term 'bounded' is slightly under-specified but not fatal.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The parameter descriptions ('Existing revised .edl file' and 'Existing baseline .edl file') already clarify role and expected state; the main description does not add further parameter-level meaning.

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

Purpose5/5

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

The description names a specific verb ('Compare'), a specific resource ('two local CMX 3600 EDLs'), and the comparison dimension ('by event number'), and lists the output classes: added, removed, and changed editorial events. This clearly distinguishes the tool from siblings like inspect_cmx3600_edl and validate_cmx3600_edl.

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?

The context is clear: use this for comparing two local CMX 3600 EDL files, not for inspecting or validating a single EDL. However, it does not explicitly name alternatives or state when not to use the tool, so it stops short of full routing guidance.

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

consolidate_and_transferConsolidate And TransferB

Consolidate, copy, or transcode project media using the Project Manager. Reports success only after a new destination folder contains a copied Premiere project.

ParametersJSON Schema
NameRequiredDescriptionDefault
transcodeNoTranscode media during copy (default: false)
rename_mediaNoRename media to match clip names (default: false)
exclude_unusedNoExclude unused clips (default: true)
convert_ae_compsNoConvert After Effects compositions (default: false)
destination_pathYesDestination folder path for the consolidated project
convert_syntheticNoConvert synthetic importer items (default: false)
copy_to_new_locationNoCopy media to a new location (default: true)
include_all_sequencesNoInclude all sequences (default: true). If false, only active sequence is used.
include_preview_filesNoInclude preview/render files (default: false)
convert_image_sequencesNoConvert image sequences to clips (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

The description adds a useful behavioral guarantee: success is reported only after a new destination folder contains a copied Premiere project. Annotations already signal non-read-only and non-destructive intent. However, it does not disclose whether the source project is modified, whether the operation is long-running, or what happens on failure.

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

Conciseness5/5

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

Two tight sentences with the core action front-loaded and the key success condition second. No fluff, no repetition of schema details. Every sentence earns its place.

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?

Given a rich input schema and an output schema, the description provides the essential behavioral contract. It could mention prerequisites or failure handling, but the success criterion compensates for much of that gap. The tool is adequately specified for an agent to invoke it confidently.

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

Parameters3/5

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

All 10 parameters are fully documented in the schema, so the description carries little parameter burden. The high-level mention of consolidate/copy/transcode maps loosely onto the boolean flags, but no parameter-specific meaning is added beyond the schema.

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 clearly states the operation: consolidate, copy, or transcode project media via the Project Manager. It names the resource and adds a concrete success condition. It does not explicitly differentiate from sibling tools like export_as_project or consolidate_duplicates, but the Project Manager framing provides enough distinction.

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

Usage Guidelines2/5

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

The description implies the tool is for consolidating/transferring project media but gives no explicit guidance on when to use it versus alternatives, and no prerequisites such as saving the project or ensuring destination availability. Without exclusions or conditions, an agent has limited decision support.

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

consolidate_duplicatesConsolidate DuplicatesB

Consolidate duplicate project items and report success only when duplicate media groups decrease.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations indicate this is not read-only and not destructive, but they do not explain the actual side effects. The description adds useful behavioral context by stating that success is reported only when duplicate media groups decrease, which implies a conditional outcome. However, it does not disclose what 'consolidate' does to the underlying project items, whether changes are undoable, or what happens when duplicate groups do not decrease.

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

Conciseness5/5

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

The description is a single sentence that front-loads the main action and then adds a concise success condition. There is no filler, redundancy, or unnecessary detail.

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

Completeness3/5

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

For a tool with no parameters and an output schema, the description provides the core operation and outcome condition, which is adequate at a basic level. However, it lacks context about when to invoke this tool, what 'consolidate' concretely does to the project, and whether any setup is required. Given the consequential nature of the operation, more context would make the definition more complete.

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?

The tool has zero parameters, so the schema requires no documentation and the description has no parameter burden. The baseline for a zero-parameter tool is 4, and the description does not need to compensate for any missing parameter information.

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 action on a specific resource: 'Consolidate duplicate project items.' It also adds a distinguishing success criterion: 'report success only when duplicate media groups decrease.' This is clear and not a mere restatement of the tool name, though it does not explicitly contrast itself with related sibling tools like consolidate_and_transfer or get_duplicate_media.

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

Usage Guidelines2/5

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

There is no explicit guidance about when to use this tool versus alternatives. It does not mention prerequisites such as first identifying duplicates with get_duplicate_media, nor does it warn against using it when a different consolidation behavior (like consolidate_and_transfer) is desired. The intended context is only implied by the action described.

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

copy_effects_between_clipsCopy Effects Between ClipsA

Copy all effects (or a specific effect) from one clip to another. Does not copy intrinsic properties like Motion/Opacity unless specified.

ParametersJSON Schema
NameRequiredDescriptionDefault
effect_nameNoSpecific effect display name to copy (copies all non-intrinsic effects if omitted)
source_node_idYesNode ID of the source clip to copy effects from
target_node_idYesNode ID of the target clip to paste effects to

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

Annotations already mark this as non-read-only, non-idempotent, and non-destructive; the description adds the valuable behavioral caveat that intrinsic properties like Motion/Opacity are not copied unless a specific effect is named. It clarifies scope without contradicting the annotations, though it doesn't say what happens to existing target effects.

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

Conciseness5/5

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

Two concise sentences: the first states the core operation and optional scope, the second adds the key exclusion. Every word earns its place and the main purpose is front-loaded.

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?

With full parameter schema, an output schema, and annotations present, the description is sufficient for a moderate-complexity tool. It captures the core behavior and the critical intrinsic-properties caveat; only deeper details like target-effect replacement behavior are left out.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter docs already describe effect_name, source_node_id, and target_node_id fully. The description adds only a mild restatement of the effect_name behavior ('or a specific effect', 'unless specified'), which is already encoded in the schema.

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

Purpose5/5

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

The description states a specific action ('Copy'), a clear resource ('all effects or a specific effect from one clip to another'), and an important scope exclusion ('Does not copy intrinsic properties like Motion/Opacity unless specified'). This clearly distinguishes it from related tools such as apply_effect or copy_effect_values.

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?

The description implies when to use it—when copying effects between clips—and explains the optional effect_name choice ('all effects' vs 'a specific effect'), but it never explicitly contrasts this tool with siblings such as copy_effect_values or apply_effect. No clear when-not or alternative routing is provided.

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

copy_effect_valuesCopy Effect ValuesA

Copy verified scalar effect-property values from one effect to the matching effect on another clip. Both clips must already have the same effect applied. Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.

ParametersJSON Schema
NameRequiredDescriptionDefault
effect_nameYesDisplay name of the effect to copy values for
source_node_idYesNode ID of the source clip
target_node_idYesNode ID of the target clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, the description discloses a meaningful behavioral quirk: 'Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.' This explains a limitation and its rationale, which is exactly the kind of context an agent needs to avoid an unexpected failure.

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

Conciseness5/5

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

The description is two sentences with no filler. It front-loads the core operation, then adds the prerequisite and the important Blend Mode limitation. Every sentence earns its place.

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

Completeness5/5

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

For a tool with only three required parameters, a clear prerequisite, an important exception, and an existing output schema, the description is complete. An agent can determine when to call it, what it copies, what it refuses to copy, and the preconditions required for success.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter meanings are already fully documented. The description adds context about 'scalar' values and the matching-effect requirement, but it does not add per-parameter detail beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly identifies the action ('Copy'), the resource ('verified scalar effect-property values'), and the operation's scope ('from one effect to the matching effect on another clip'). It distinguishes itself from broader copy tools like copy_effects_between_clips by noting it only handles scalar values and requires both clips to already have the same effect applied.

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?

The description gives an explicit precondition: 'Both clips must already have the same effect applied.' It also notes a specific non-supported case (Blend Mode). However, it does not explicitly name alternative tools or state when to prefer a sibling like set_effect_property or copy_effects_between_clips.

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

create_bars_and_toneCreate Bars And ToneA

Create a Bars and Tone synthetic media item in the project (useful for leader/calibration)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName for the bars and tone item (default: 'Bars and Tone')
widthNoFrame width in pixels (default: 1920)
heightNoFrame height in pixels (default: 1080)
timebaseNoTimebase as ticks-per-second string (default uses sequence timebase)
audio_sample_rateNoAudio sample rate in Hz (default: 48000)
pixel_aspect_numeratorNoPixel aspect ratio numerator (default: 1)
pixel_aspect_denominatorNoPixel aspect ratio denominator (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

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

Annotations already carry the safety profile (readOnlyHint=false, destructiveHint=false, idempotent=false), and the description aligns with these by describing a creation operation. The description adds that the result is a synthetic, generated item that lands in the project, which is useful. However, it does not disclose prerequisites (e.g., an open project), where the item is inserted (which bin), or that repeated calls keep producing new items. With annotations covering the safety profile, a mid score is appropriate.

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

Conciseness5/5

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

A single front-loaded sentence: the verb and object appear immediately, and the parenthetical earns its place by contributing the use case (leader/calibration). There is zero filler, repetition of the title, or extraneous detail. This is the right size for a simple creation tool.

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?

Given 0 required parameters, a fully described schema, an output schema, and annotations pinning down the safety profile, the description covers everything essential: what is created, where it appears, and why an agent would use it. Minor gap: no explicit statement that an open project is required or mention of the default insertion bin, though 'in the project' implies the active project context.

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

Parameters3/5

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

Schema description coverage is ​​100%, so every parameter (name, width, height, timebase, audio_sample_rate, pixel_aspect_*) already has its own documented meaning and default. The tool description adds no parameter-level information, which the rubric's high-coverage baseline of 3 explicitly permits. There is no gap for the description to compensate for.

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

Purpose5/5

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

The description opens with the specific verb 'Create' and names a precise resource: 'a Bars and Tone synthetic media item in the project.' The 'synthetic media item' qualifier is what separates this from the many create_* siblings (create_sequence, create_bin, create_subclip, create_caption_track) that create project structures, not generated test patterns. The resource and scope are unambiguous.

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?

The parenthetical '(useful for leader/calibration)' states the intended use case explicitly. There is no competing sibling tool that generates synthetic media items, so the absence of named alternatives is tolerable. It lacks explicit when-not-to-use language, but for a unique tool the clear use-case context is sufficient.

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

create_binCreate BinB

Create a new bin (folder) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the new bin
parent_binNoOptional parent bin name or node ID. Creates in root if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

The description aligns with the annotations (readOnlyHint=false matches the mutating 'create' verb) and adds the location context 'in the project panel,' which is mildly useful. However, it reveals nothing beyond the creation fact — no information about name-collision behavior, project-scope requirements, or side effects — and the annotation flags are all false defaults that carry little weight.

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

Conciseness5/5

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

A single ten-word sentence with zero filler; the core action and resource are front-loaded. The '(folder)' gloss and the 'project panel' location qualifier both earn their place and cost nothing.

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 simple two-parameter tool, the combination of a fully documented schema, an output schema, and annotations covers the mechanics of invocation. The single real gap is the missing routing distinction from create_smart_bin, which is already penalized under purpose clarity and usage guidance.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents both parameters, including the meaningful distinction that parent_bin accepts a name or node ID and defaults to root when omitted. The description adds no parameter-level meaning, so the baseline of 3 applies.

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 action (create) on a specific resource (bin) and clarifies the domain meaning with '(folder)' and the location 'in the project panel.' It clearly differentiates from delete_bin and rename_bin, but it does not distinguish itself from the near-identical sibling create_smart_bin, which also creates a bin in the project panel. That missing distinction keeps it from a 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as create_smart_bin, import_folder, or move_item_to_bin. No prerequisites (e.g., an open project) or exclusions are mentioned, and with over 160 siblings including a smart-bin creation tool, an agent must infer selection criteria entirely from the tool name.

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

create_caption_trackCreate Caption TrackA

Import an already reviewed caption artifact into the active sequence, or create a local lecture-caption timing and review workflow plan. Import reports structural success only when the host exposes a caption-track readback; the planning action never contacts Premiere or changes an artifact.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoUse import (the default) to create a Premiere caption track, or plan_lecture_workflow for a read-only SRT/VTT timing and review plan.import
item_idNoFor action import, the node ID or name of the imported caption project item (for example, an SRT file). Omit for plan_lecture_workflow.
start_secondsNoFor action import, offset in seconds from the start of the sequence (default: 0).
caption_formatNoFor action import, Premiere caption format: subtitle (default), 608, 708, teletext, ebu, op42, or op47.
artifact_formatNoFor plan_lecture_workflow, the syntax of caption_content. VTT content must include its WEBVTT header.
caption_contentNoFor plan_lecture_workflow, the caller-owned SRT or VTT content to parse locally. The returned plan contains no caption text and does not write this artifact.
observed_offset_secondsNoFor plan_lecture_workflow, an editor-observed constant offset in seconds. Positive means captions currently appear later than intended; the preview proposes the inverse shift when safe.
target_duration_secondsNoFor plan_lecture_workflow, optional intended sequence duration. A mismatch requires review unless proportional scaling is explicitly authorized.
timing_tolerance_secondsNoFor plan_lecture_workflow, tolerance used to classify an offset or duration mismatch (default: 0.25 seconds).
allow_proportional_scalingNoFor plan_lecture_workflow, explicitly permit a bounded timing-scale preview when the artifact end does not match target_duration_seconds. This still never rewrites a caption artifact.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior5/5

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

The description discloses important behavioral nuance beyond annotations: import success is structural and depends on host readback support, while the planning action is fully local and does not modify artifacts. This is valuable operational context that the annotation hints alone do not provide.

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

Conciseness5/5

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

The description is two dense sentences that front-load the main action and include only necessary distinctions. Every clause contributes either to the import/plan split or to the critical behavioral caveats, with no filler.

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

Completeness5/5

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

Given a detailed output schema, high parameter coverage, and the provided annotations, the description sufficiently covers the key decision points and behavioral caveats. An agent can understand mode selection, what the planner does not touch, and import success semantics without needing additional context.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already explains every parameter, including action-specific applicability. The description adds the two-mode framing that maps to the action enum, but does not add meaning beyond what the schema provides, so the baseline 3 is appropriate.

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 the specific actions: importing a caption artifact into the active sequence, or creating a local lecture-caption timing/review plan. It is clear about the two-mode behavior and distinguishes this from caption-building or reading tools by emphasizing 'already reviewed' and 'local' planning, though it does not explicitly name sibling tools.

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?

The description clearly distinguishes when to use the import mode versus the planning mode, and emphasizes that planning never contacts Premiere or changes artifacts. It does not explicitly state when to choose a sibling tool like build_caption_artifact or read_sequence_captions, but the context is strong enough for an agent to select correctly.

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

create_context_edit_planCreate Context Edit PlanA
Read-onlyIdempotent

Create a non-mutating, evidence-backed edit-plan scaffold from indexed Premiere context. It returns ranked source/time candidates and stale-state guards; the model must review them and use preview_edit_plan before any mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesEditing goal, such as finding the strongest budget explanation for a rough cut
strategyNoPlanning mode; default rough_cut
project_idYesProject context ID returned by manage_project_context capture
sequence_idNoOptional exact sequence ID filter
max_candidatesNoMaximum 25; default 8

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

The description goes beyond the annotations by stating non-mutating behavior, describing the return value as ranked candidates and stale-state guards, and requiring model review before any subsequent mutation. This gives the agent a clear behavioral contract without contradicting readOnlyHint or idempotentHint.

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

Conciseness5/5

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

Two dense, purposeful sentences front-load the tool's core nature and immediately state the workflow constraint. No filler or redundant restatement of the schema or title.

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

Completeness5/5

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

Combined with a rich schema, an output schema, and safety annotations, the description supplies the essential behavioral context and next-step workflow. The mention of indexed context, ranked candidates, stale-state guards, and the preview_edit_plan prerequisite is enough for correct invocation.

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

Parameters3/5

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

The input schema provides 100% coverage with meaningful descriptions for all five parameters, so the description does not need to restate them. It adds no parameter-specific detail beyond the general notion of ranked source/time candidates, so the schema carries the semantic weight.

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

Purpose5/5

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

The description identifies a specific verb and resource ('Create ... edit-plan scaffold') and characterizes the output as ranked source/time candidates plus stale-state guards. It clearly distinguishes this non-mutating planning tool from mutation-oriented siblings by explicitly requiring preview_edit_plan before any mutation.

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 states when to use the tool — building an evidence-backed plan from indexed Premiere context — and explicitly routes the model to preview_edit_plan before mutation. However, it does not contrast with create_editorial_plan or spell out cases where this tool should be skipped.

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

create_editorial_context_packCreate Editorial Context PackA
Read-onlyIdempotent

Create a compact Markdown reading view from already captured local transcript, shot, audio, note, source, or timeline context. It returns stable evidence IDs and context revisions for review, never calls an AI/provider or Premiere, and cannot change the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNoOptional context-kind filter. Omit to retrieve all matching local evidence.
intentYesThe editorial question used to retrieve and compact local evidence.
project_idYesProject context ID returned by manage_project_context capture.
max_entriesNoMaximum matching evidence entries to include.
sequence_idNoOptional exact sequence ID filter.
max_charactersNoStrict maximum length of the Markdown reading view.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

The description adds meaningful behavior beyond the annotations: it explicitly states that the tool never calls an AI/provider or Premiere and cannot change the project, which goes beyond the generic readOnlyHint and destructiveHint flags. It also discloses the return behavior—stable evidence IDs and context revisions for review—giving the agent a clearer model of what invoking the tool will produce. No contradiction with annotations exists.

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

Conciseness5/5

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

The description is two sentences long with no filler. The first sentence front-loads the core purpose and inputs, and the second sentence adds safety and output behavior, all in a compact and scannable structure. Every clause earns its place.

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

Completeness5/5

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

Given the rich annotation set, a full output schema, and 100% schema parameter coverage, the description covers the essential non-schema aspects: what the output is for, that it operates on local captured context, and that it has no external or mutating side effects. The tool's complexity is well addressed without requiring the description to duplicate structured metadata.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all six parameters, including the kinds enum, intent, project_id, max_entries, sequence_id, and max_characters. The description adds no parameter-specific detail beyond mentioning the local context kinds, which merely mirrors the enum values. Baseline 3 is appropriate because the schema carries the parameter-semantics burden.

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

Purpose5/5

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

The description clearly identifies the action (create), the resource (compact Markdown reading view), and the input domain (already captured local transcript, shot, audio, note, source, or timeline context). It also distinguishes itself by explicitly stating that it returns stable evidence IDs and context revisions rather than modifying a project, which separates it from related create/plan tools. This is a specific, non-tautological purpose statement.

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?

The description gives clear contextual guidance: the tool operates on already captured local context and produces a review-oriented Markdown view, so an agent can infer when to call it. It also states what the tool never does (calls an AI/provider or Premiere and cannot change the project), which helps rule out inappropriate uses even though it does not name alternatives explicitly. It lacks an explicit 'use X instead' statement, but the context is sufficiently clear.

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

create_editorial_planCreate Editorial PlanA
Read-onlyIdempotent

Create a local, evidence-backed editorial workflow plan from captured project context. It never calls an LLM, uploads media, or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesThe editorial goal used to retrieve relevant local evidence.
workflowYesThe workflow to plan. Every workflow remains review-only.
project_idYesProject context ID returned by manage_project_context capture.
sequence_idNoOptional exact sequence ID filter for evidence retrieval.
max_candidatesNoMaximum evidence candidates to include; defaults to 8.
platform_targetsNoRequired only for platform_cutdown. These are proposed derivative sequence dimensions; this tool does not create or reframe a sequence.
organization_rulesNoRequired only for organize. Rules are supplied by the editor or MCP client; the server does not infer categories from filenames alone.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already convey a safe, read-only, idempotent profile. The description adds valuable concrete behavioral guarantees: local execution, no LLM invocation, no media uploads, and no Premiere mutations. This goes beyond the structured annotations and is consistent with them. It does not describe output or persistence behavior, but the output schema and annotations reduce the need for that.

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

Conciseness5/5

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

The description is two tight sentences with no filler. It front-loads the purpose first, then packs the key behavioral constraints into a compact second sentence. Every clause earns its place.

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?

Given 100% schema parameter coverage, a rich input schema with conditional requirements, an output schema, and safety annotations, the description is nearly sufficient. The main missing piece is situating the tool among planning-related siblings like preview_editorial_plan and create_editorial_context_pack, which would strengthen tool-selection confidence.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema already explains required parameters, conditionally required nested objects, and defaults. The description reinforces the 'evidence-backed' and 'captured project context' framing for intent/project_id but adds no per-parameter information beyond what the schema provides. Baseline 3 is appropriate given full schema coverage.

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 clearly identifies the action (create), the resource (editorial workflow plan), and the input source (captured project context), with useful qualifiers like 'local' and 'evidence-backed.' It does not explicitly contrast itself with close siblings such as preview_editorial_plan or create_context_edit_plan, so differentiation is implied rather than stated.

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?

The description implies appropriate use: when you have captured project context and need a plan, since it is local and evidence-backed. It also provides useful exclusions ('never calls an LLM, uploads media, or changes Premiere'). However, it does not explicitly name alternatives or state when to use another tool such as preview_editorial_plan, manage_project_context, or create_context_edit_plan.

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

create_mogrt_batchCreate Mogrt BatchA

Create the exact MOGRT recipes from a one-time batch preview. Requires explicit export confirmation and stops on the first After Effects failure without claiming rollback.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time token returned by preview_mogrt_batch.
confirm_exportYesMust be true to request every planned export.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses key behaviors beyond the annotations: it requires explicit export confirmation, stops on the first After Effects failure, and does not claim rollback. This is valuable safety-relevant context that is not present in the annotations or schema descriptions.

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

Conciseness5/5

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

Two tightly written sentences deliver the essential purpose, prerequisite, and failure behavior with no filler. The most important information is front-loaded and every clause earns its place.

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

Completeness5/5

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

The description covers the prerequisite (batch preview token), the required confirmation flag, and the failure/rollback behavior. With an output schema present, return-value details are already handled elsewhere, and nothing critical is missing for selecting and correctly invoking this tool.

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

Parameters3/5

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

Schema description coverage is 100%, and both parameters are already clearly explained in the schema. The description adds no parameter-level detail beyond what the schema provides, so the baseline score applies.

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

Purpose5/5

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

The description states a specific action ('Create the exact MOGRT recipes') and identifies the source ('from a one-time batch preview'), distinguishing it from single-recipe creation or preview-only tools. The schema's preview_token reference to preview_mogrt_batch reinforces this unique scope.

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?

The description clearly implies when to use it: after a one-time batch preview and only with explicit export confirmation. It does not explicitly name alternatives or exclusions, but the batch-preview context and the token dependency provide strong usage guidance.

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

create_mogrt_recipeCreate Mogrt RecipeA

Create exactly one previewed MOGRT recipe in a saved After Effects project inside the approved workspace. Requires explicit export confirmation; it never creates projects or output folders.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time token returned by preview_mogrt_recipe; it expires after 10 minutes.
confirm_exportYesMust be true to save the open AE project and request the planned .mogrt export.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already signal that this is a non-read, non-idempotent, non-destructive action. The description adds useful behavioral boundaries: it never creates projects or output folders and requires explicit export confirmation. It could explicitly mention that the open AE project is saved, but the confirm_export parameter description covers that detail.

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

Conciseness5/5

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

Two dense sentences front-load the core action and then add the most important behavioral caveats. There is no filler, and every phrase contributes either scope, a precondition, or a safety boundary.

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 non-trivial mutation/export tool, the description covers the key preconditions, constraints, and negative side effects. Combined with full schema descriptions and an output schema, it is sufficient for an agent to understand the workflow without needing return-value details repeated in prose.

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

Parameters3/5

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

Schema description coverage is 100%, so both preview_token and confirm_export are already fully documented in the schema. The description adds only the general requirement of explicit export confirmation, which aligns with confirm_export but does not provide additional parameter-level meaning.

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

Purpose5/5

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

The description states a specific action—create exactly one previewed MOGRT recipe in a saved After Effects project—and clearly distinguishes it from preview-only and batch operations. Naming the scope ('saved project', 'approved workspace') helps an agent separate it from preview_mogrt_recipe and create_mogrt_batch.

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?

The description gives clear preconditions: the recipe must already be previewed, the project must be saved and in the approved workspace, and explicit export confirmation is required. It does not explicitly name alternatives or say 'do not use for batch', but the requirement of a preview token and 'exactly one' strongly imply the intended workflow.

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

create_projectCreate ProjectA

Create a new Premiere Pro project at the specified path

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path for the new .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

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

Annotations already establish mutability (readOnly=false) and non-destructive/non-idempotent profile. The description adds the core behavior—creates a file at the given path—but does not disclose overwrite behavior, whether the created project becomes active, or failure conditions. With annotations covering safety, this is adequate but not rich.

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

Conciseness5/5

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

One short sentence with no filter; the action and path scoping are front-loaded. Every word earns its place.

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?

This is a low-complexity tool with one fully documented parameter, annotations, and an output schema, so the description does not need to explain return values. Missing edge details—existing-path behavior and whether the project opens—keep it just below the top score.

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

Parameters3/5

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

Schema description covers 100% of parameters, including the .prproj requirement. The description merely restates 'specified path' and adds no syntax, format, or constraints beyond the schema, so the baseline 3 applies.

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

Purpose5/5

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

Uses a specific verb ('Create'), names the resource ('Premiere Pro project'), and scopes it ('at specified path'). This clearly differentiates it from sibling project tools like open_project, save_project, and create_project_backup.

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?

The word 'new' signals the intended use case—starting a fresh project—rather than opening or saving an existing one. It does not explicitly name alternatives or exclusions, but the context is clear enough for a simple creation action.

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

create_project_backupCreate Project BackupA

Create a collision-safe, byte-verified backup beside an existing .prproj file without opening or modifying the source project.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYesAbsolute or working-directory-relative path to an existing .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already indicate readOnly=false and destructive=false. The description adds meaningful behavioral guarantees beyond this: collision-safe naming, byte verification, and no modification or opening of the source project. These are important operational details an agent would not know otherwise.

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

Conciseness5/5

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

A single, front-loaded sentence communicates the action, the target resource, the key safety guarantees, and the non-destructive nature. There is no redundant or filler content.

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

Completeness5/5

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

The tool has only one parameter, full schema coverage, and an output schema. The description covers the essential behavior, the file type, the location of the backup, collision safety, and verification. Nothing critical is missing for an agent to select and invoke this tool correctly.

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

Parameters3/5

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

Schema coverage is 100%, with project_path already documented as an existing .prproj path. The description adds only the contextual detail that the backup is created beside that file, which is helpful but does not add substantial semantic information beyond the schema.

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

Purpose5/5

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

States a specific verb and resource: create a backup of an existing .prproj file. The qualifiers 'collision-safe', 'byte-verified', and 'without opening or modifying the source project' make the tool's purpose precise and distinguish it from save/save-as/export siblings.

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?

The description provides clear context: this is a non-modifying safety backup created beside the original file. It does not explicitly name alternatives or state when not to use it, but the preconditions and non-destructive nature are clear enough for an agent to infer when it is appropriate.

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

create_sequenceCreate SequenceB

Create a new sequence in the project

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
preset_pathNoOptional path to a sequence preset file (.sqpreset). If omitted, a default preset is discovered from the Premiere installation (override with PREMIERE_DEFAULT_SEQUENCE_PRESET).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnly=false, idempotent=false, and destructive=false, and the description confirms a mutating create operation without contradicting those flags. It adds only the project scope; it does not disclose what happens on name collision, where the sequence appears in the bin, or whether it becomes the active sequence. With the annotation baseline present, this is minimally adequate but thin.

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?

A single sentence with no filler, and the essential create-verb and sequence-resource are front and center. It is appropriately concise, though it carries so little content that it reads almost as an expansion of the title rather than a standalone guide.

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

Completeness3/5

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

For a two-parameter creation tool with a full schema and output schema, the description covers the basic what and where. It is not fully complete because it omits placement/activation side effects and does not distinguish this route from create_sequence_from_preset, which matters given the large sibling set.

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

Parameters3/5

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

Both parameters are fully described in the input schema (name, and optional preset_path with default-preset behavior and the PREMIERE_DEFAULT_SEQUENCE_PRESET override). The prose description adds no parameter meaning beyond the schema, so it meets the baseline for 100% schema coverage but nothing more.

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 specific verb (create) and a resource (a new sequence) and scopes it to the project, so an agent knows the core operation. It does not differentiate create_sequence from close siblings such as create_sequence_from_preset or create_sequence_from_clips, so it misses the top level of clarity.

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

Usage Guidelines2/5

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

The description gives no guidance about when to choose this tool over create_sequence_from_preset, duplicate_sequence, or import_sequences. There is no mention of alternatives, prerequisites, or exclusion criteria; the only contextual hint is that the sequence is created in the current project.

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

create_sequence_from_clipsCreate Sequence From ClipsB

Create a new sequence by automatically placing project items in order

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
item_idsYesArray of project item names or node IDs to include in order

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already signal that the operation is not read-only, not idempotent, and not marked destructive. The description adds the behavioral detail that items are placed automatically and in order, but it does not disclose side effects such as whether source items are modified or where the new sequence is created.

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

Conciseness5/5

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

The description is one sentence with no wasted words. The action and primary behavior are front-loaded, and every word contributes to the tool's meaning.

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?

Given the simple two-parameter schema with full coverage and an output schema present, the description is largely sufficient for invoking the tool correctly. It could add context about bin placement or whether original items are affected, but nothing essential is missing.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description's reference to 'project items in order' adds little beyond the item_ids description, which already states 'to include in order.' No extra parameter-level meaning is provided.

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 ('Create a new sequence') and adds a distinguishing mechanism ('automatically placing project items in order') that separates it from sequence tools like create_sequence_from_preset. It does not explicitly name a sibling, so it stops short of full differentiation.

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

Usage Guidelines2/5

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

No guidance is given about when to choose this tool over siblings such as create_sequence, create_sequence_from_preset, or create_subsequence. The description implies a scenario indirectly, but it provides no explicit context, alternatives, or exclusions.

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

create_sequence_from_presetCreate Sequence From PresetA

Create a new sequence from a specific preset file (.sqpreset)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
preset_pathYesFull path to the .sqpreset file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, covering the mutation and non-idempotent nature of the operation. The description adds no additional behavioral context beyond the operation itself, but it does not contradict the annotations.

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

Conciseness5/5

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

A single, efficient sentence that states the action, resource, and file type with no filler or redundancy. Every word contributes to the tool's purpose.

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?

The tool is simple with only two parameters, full schema descriptions, a defined output schema, and annotations covering mutation and idempotency behavior. The description sufficiently orients an agent, though it does not mention preconditions like an active project or conflict handling if the sequence name already exists.

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

Parameters3/5

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

Schema description coverage is 100%, with both parameters already described ('Name for the new sequence' and 'Full path to the .sqpreset file'). The description reinforces the .sqpreset extension for preset_path but adds no substantial meaning beyond the schema.

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

Purpose5/5

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

The description uses a specific verb ('Create') and resource ('a new sequence from a specific preset file'), explicitly naming the .sqpreset file format. This clearly differentiates it from siblings like create_sequence or create_sequence_from_clips without needing to inspect schemas.

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?

The description provides clear context: use this tool when creating a sequence from a .sqpreset preset file. It does not explicitly mention alternatives or when-not-to-use, but the file-format constraint makes the intended usage unambiguous.

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

create_smart_binCreate Smart BinB

Create a smart bin (search bin) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the smart bin
queryYesSearch query for the smart bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so this is clearly a write operation. However, the description adds no behavioral detail beyond the simple fact of creation, such as whether a duplicate name is allowed or what happens on repeated calls with the same name.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. It communicates the action, the object, and the location efficiently.

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 simple two-parameter creation tool with a rich schema and an output schema, the description is nearly complete. It clearly identifies what a smart bin is and where it is created, though it doesn't address edge cases like duplicate names or overwrite behavior.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters (name and query) are already documented in the schema. The description adds only contextual meaning around the tool itself, not additional parameter-level semantics, so the baseline score of 3 is appropriate.

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 clear action ('Create'), a specific object ('smart bin (search bin)'), and a location ('in the project panel'). It is distinguishable from a generic bin creation tool, though it does not explicitly contrast with create_bin.

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?

The phrase 'smart bin (search bin)' implies this is for search-based bins rather than regular folders, but there is no explicit guidance on when to use this versus create_bin or search_project_items. Usage context is mostly implied rather than stated.

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

create_subclipCreate SubclipB

Create a subclip from a project item with in/out points

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the subclip
item_idYesNode ID or name of the source project item
in_secondsYesIn-point in seconds
out_secondsYesOut-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already communicate that this is a write operation (readOnlyHint=false) and is not destructive; the description is consistent with that. It adds minimal behavioral context beyond the schema, such as indicating the source is an existing project item, but no extra side effects, prerequisites, or return behavior are disclosed.

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

Conciseness5/5

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

A single front-loaded sentence states the verb and object immediately and contains no filler or repetition. It is appropriately sized for a simple create operation.

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?

With full schema coverage, annotations, and an output schema present, the brief description is largely sufficient for a well-scoped create tool. It could add value by noting the relationship to create_subsequence or naming what object is returned, but nothing essential for invocation is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the description is not required to explain the parameters. The phrase 'with in/out points' loosely echoes in_seconds/out_seconds but adds no semantic detail beyond the schema.

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 the specific operation (Create), the object produced (a subclip), and the source/input (a project item with in/out points). It is easily distinguished from sibling creation tools like create_sequence or create_subsequence because it targets a subclip, though it does not explicitly name those alternatives.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is given. The description is a definition rather than decision support, and it names no alternatives such as create_subsequence, so an agent must infer when this tool is the right choice.

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

create_subsequenceCreate SubsequenceA

Create a separate subsequence from selected clips or a time range. This Premiere API does not replace the original timeline clips with a nested-sequence reference.

ParametersJSON Schema
NameRequiredDescriptionDefault
ignore_track_targetingNoWhether to ignore track targeting (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate this is not read-only and not destructive, but the description adds a meaningful behavioral detail: the tool creates a separate subsequence and does not replace original timeline clips with a nested-sequence reference. This clarifies the mutation's scope and allays concerns about destructive replacement.

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

Conciseness5/5

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

The description is two sentences with no filler: the first states the operation and inputs, and the second provides a key behavioral clarification. Information is front-loaded and every sentence earns its place.

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?

The definition is mostly complete for a tool with one optional documented parameter, an output schema, and annotation coverage. Minor gaps remain around implicit prerequisites such as requiring an active timeline selection or work area, but these are unlikely to block correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, and the single parameter ignore_track_targeting is already documented in the schema. The tool description adds no additional parameter-level meaning, so the baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states the operation: 'Create a separate subsequence from selected clips or a time range.' It also adds a distinguishing behavior—this API 'does not replace the original timeline clips with a nested-sequence reference'—which helps differentiate it from sibling tools like nest_clips.

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?

The description implies when to use the tool by specifying inputs (selected clips or a time range), but it does not explicitly contrast it with alternatives such as nest_clips, duplicate_sequence, or create_sequence_from_clips. There are no when-not-to-use conditions, so the agent must infer routing from context.

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

crop_clipCrop ClipA

Apply or update Premiere's Crop effect on one video clip and read back every requested value. Adding Crop uses the legacy QE catalog only when the clip does not already contain it.

ParametersJSON Schema
NameRequiredDescriptionDefault
topNoPercent cropped from the top edge.
leftNoPercent cropped from the left edge.
zoomNoWhether Crop should scale the remaining image to fill the frame.
rightNoPercent cropped from the right edge.
bottomNoPercent cropped from the bottom edge.
node_idYesTimeline video-clip node ID.
edge_featherNoCrop edge feather percentage.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

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

The description goes beyond the annotations by explaining that the tool both adds and updates the Crop effect, and that it returns requested values. The note about using 'the legacy QE catalog only when the clip does not already contain it' adds useful implementation context beyond the readOnly/destructive hints.

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

Conciseness5/5

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

Two sentences, no filler, with the core action and target resource front-loaded. The second sentence earns its place by explaining a non-obvious implementation behavior about the legacy QE catalog.

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 tool with a rich schema and output schema present, the description covers the core operation and an important implementation nuance. It lacks explicit usage guidance relative to siblings, but the operation scope and parameter coverage make it sufficiently complete for most selection and invocation cases.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all seven parameters and their ranges. The description adds only the general idea that parameters are 'requested values' that get read back, which is helpful but does not add per-parameter semantics.

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

Purpose5/5

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

The description names a specific operation ('Apply or update Premiere's Crop effect'), a specific resource ('one video clip'), and an explicit outcome ('read back every requested value'). It distinguishes this tool from generic effect tools like apply_effect or set_effect_property by focusing on the Crop effect and its read-back behavior.

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

Usage Guidelines2/5

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

No explicit guidance is given for when to use this tool versus alternatives such as apply_effect, set_effect_property, or remove_effect. The description implies usage for Crop-effect operations but does not state when not to use it or which sibling covers other cases.

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

delete_binDelete BinC
Destructive

Delete a bin (folder) from the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_idYesName or node ID of the bin to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already carry destructiveHint=true and readOnlyHint=false, so the description adds only the minor 'project panel' location detail. Critically, it does not disclose whether deleting a bin cascades to its contents (clips, sequences) or requires the bin to be empty first — the most consequential behavioral fact for a destructive container operation.

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

Conciseness5/5

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

A single ten-word sentence with the verb and object front-loaded. There is no filler, no repetition of schema content, and nothing that could be trimmed.

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?

The tool is simple (one parameter, output schema present, destructiveHint annotation present), but the unanswered cascade-deletion question — whether the bin's contents are also destroyed — is a material gap that affects whether an agent should call this tool at all. For a destructive operation, the description should disclose the blast radius.

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

Parameters3/5

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

Schema description coverage is 100%, and the bin_id property is already fully documented in the input schema ('Name or node ID of the bin to delete'). The description adds no parameter-level information beyond what the schema provides, so the baseline 3 applies.

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 specific verb ('Delete'), a resource ('bin'), and clarifies both the resource type ('folder') and its location ('project panel')). This orients an agent and distinguishes it from sibling delete_sequence. It does not, however, address how it relates to the overlapping sibling deletion tools delete_project_item and delete_multiple_project_items, so full sibling differentiation is not achieved.

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

Usage Guidelines2/5

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

No guidance is given on when to use delete_bin versus the sibling deletion tools delete_project_item, delete_multiple_project_items, or delete_sequence. With a sibling list of 300+ tools and several plausible deletion targets, this ambiguity is left entirely unresolved for the agent.

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

delete_markerDelete MarkerC
Destructive

Delete a marker at a specific time position

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID (deletes from sequence if omitted)
time_secondsYesTime position of the marker to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, and the description merely restates the destructive nature through the verb 'Delete' without adding behavioral context such as irreversibility, behavior when no marker exists at time_seconds, or consequences for dependent workflows. The description does not contradict the annotations, but it also adds no disclosure beyond what annotations already convey.

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?

A single, tightly worded sentence with the action verb front-loaded and no filler. It is appropriately short, though it could earn a 5 if it packed in scope or usage guidance at the cost of only a few words.

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

Completeness3/5

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

The output schema and annotations cover return values and destructive safety, and the input schema fully documents both parameters, so much of the burden is already carried by structured fields. The remaining gaps are usage context: no guidance on when deletion is appropriate versus updating a marker, and no caveat about the sequence-vs-clip scope beyond the node_id parameter description.

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

Parameters3/5

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

Schema description coverage is 100%, with both time_seconds and node_id documented in the input schema, so the baseline of 3 applies. The description adds no meaning beyond the schema — 'at a specific time position' merely echoes the time_seconds parameter description, and it says nothing about node_id that the schema doesn't already cover.

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 ('Delete') and resource ('a marker') plus the identifying criterion ('at a specific time position'), which distinguishes it from marker siblings like add_marker, update_marker, and list_markers by action. However, it does not specify whether the marker lives on a sequence or a clip — that scope is left to the node_id parameter, so differentiation from sibling marker tools is incomplete.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives; it never mentions update_marker for modifying markers, list_markers for finding them, or the fact that omitting node_id deletes from the sequence while providing it deletes from a clip. The only usage hint lives in the node_id parameter description, not in the tool description itself.

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

delete_multiple_project_itemsDelete Multiple Project ItemsB
Destructive

Delete multiple project items at once from the project panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsYesArray of node IDs or names of items to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already carry destructiveHint=true, so the description does not need to restate danger. It adds that the target is project-panel items and that deletion happens in batch, but it does not disclose whether deletion is permanent, reversible, or cascading. This is acceptable given the annotation coverage but not rich.

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

Conciseness5/5

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

One short, direct sentence with no filler or redundancy. The action, object, scope, and batch nature are all conveyed efficiently.

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

Completeness3/5

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

For a simple one-parameter destructive operation with an output schema and strong annotations, the description is mostly sufficient. However, it omits usage guidance distinguishing it from delete_project_item and does not clarify permanence or side effects beyond what the destructiveHint annotation already conveys.

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

Parameters3/5

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

Schema description coverage is 100%, so the single parameter item_ids is already fully documented. The description adds no extra meaning about how IDs or names resolve to project items, so it neither improves nor detracts from the schema's explanation.

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 clearly states the action ('Delete') and the resource ('multiple project items') with a specific scope ('from the project panel'). It is easy to tell this is the batch counterpart to single-item deletion, though it does not explicitly name or contrast sibling tools.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as delete_project_item, delete_sequence, or delete_bin. The 'multiple... at once' wording implies a batch use case, but no explicit selection criteria or exclusions are provided.

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

delete_preview_filesDelete Preview FilesA
Destructive

Delete all preview/render cache files for the project. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_typeNoType of preview files to delete: 'video', 'audio', or 'all' (default: 'all')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

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

The annotations already declare destructiveHint=true, and the description adds useful context by specifying exactly what is destroyed: 'all preview/render cache files for the project.' It also notes 'Uses QE DOM,' which hints at the underlying implementation, although this detail is somewhat cryptic.

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?

The description is two concise sentences with the main purpose front-loaded. The second sentence ('Uses QE DOM') is short but adds limited value and could arguably be omitted; overall, there is minimal waste.

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?

The destructive scope is clearly stated, the optional parameter is fully documented in the schema, and an output schema exists so return values do not need description. The description is sufficient for a straightforward cleanup tool, though it does not mention prerequisites or reversibility beyond the destructive hint.

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

Parameters3/5

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

The input schema covers 100% of the single parameter (media_type) with a clear description and default value. The tool description adds no parameter-specific meaning beyond what the schema already provides, so the baseline of 3 applies.

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

Purpose5/5

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

The description clearly states a specific verb ('Delete'), resource ('preview/render cache files'), and scope ('for the project'), making the tool's function unambiguous. It also differentiates itself from sibling tools like delete_sequence or delete_bin by specifying preview/render cache specifically.

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?

The description implies usage through the imperative 'Delete all preview/render cache files,' but it does not explicitly state when to use this tool or when to prefer an alternative. No exclusions or alternative tool references are provided, so an agent must infer the intended context.

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

delete_project_itemDelete Project ItemA
Destructive

Delete a project item (clip, bin, etc.) from the project panel. This removes it from the project but does not affect timeline instances.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already establish destructiveHint=true, readOnlyHint=false, and idempotentHint=false. The description adds value beyond those hints by specifying that deletion does not affect timeline instances and occurs in the project panel, which is a meaningful behavioral nuance. No contradiction with annotations.

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

Conciseness5/5

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

Two short sentences, each earning its place. The first defines the action and scope; the second prevents confusion with timeline-level deletion. No redundant or filler content.

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?

With one documented parameter, destructiveHint=true, and an output schema, the description is nearly sufficient for an agent to call the tool correctly. It clearly explains deletion scope and the important non-effect on timeline instances, though explicit tool-selection boundaries against sibling tools are left to inference.

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?

The schema already covers item_id fully with the description 'Node ID or name of the project item to delete.' The description adds examples of what counts as a project item ('clip, bin, etc.'), which helps interpret valid values, but it does not change the format or semantics.

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?

States an explicit verb and resource: 'Delete a project item (clip, bin, etc.) from the project panel.' It clearly scopes the operation to the project panel and clarifies it is not a timeline operation. However, it does not differentiate itself from overlapping siblings like delete_bin, delete_sequence, or delete_multiple_project_items.

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?

The description gives useful context: the item is removed from the project but timeline instances are unaffected, which implies the intended use is project-panel deletion rather than timeline removal. However, it never names alternative tools or states explicit exclusions, and the 'bin, etc.' example overlaps with the dedicated delete_bin sibling.

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

delete_sequenceDelete SequenceB
Destructive

Delete a sequence from the project

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already indicate destructiveHint=true, and the description adds no behavioral context beyond that. It does not mention whether the deletion affects underlying media, whether it is undoable, or what happens to open sequence references.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler or redundant content. For a simple one-parameter destructive tool, this length is appropriate.

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 straightforward deletion tool with one fully documented parameter, destructive annotations, and an output schema, the description is nearly sufficient. It lacks only a clarifying note about when sequence deletion is preferred over project-item deletion and whether media is removed.

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

Parameters3/5

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

Schema description coverage is 100%, with the sequence_id parameter documented as 'Sequence name or ID to delete.' The tool description itself adds no parameter-level detail, but the baseline of 3 applies because the schema fully covers the parameter semantics.

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

Purpose5/5

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

The description clearly states the specific action ('Delete') and the target resource ('a sequence from the project'). It distinguishes this tool from sibling tools like delete_bin, delete_track, and delete_project_item by naming the sequence resource directly.

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

Usage Guidelines2/5

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

The description provides no guidance on when to prefer this tool over alternatives such as delete_project_item or delete_multiple_project_items. There are no preconditions, exclusions, or hints about scope, leaving the selection decision to inference.

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

delete_trackDelete TrackA
Destructive

Delete a video or audio track from the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesType of track to delete
track_indexYesIndex of the track to delete (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

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

The destructiveHint annotation already communicates that this operation is destructive, and the description does not contradict it. The description adds the active-sequence scoping constraint, but it does not disclose what happens to the track's contents (e.g., whether clips on that track are also deleted) or any preconditions.

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

Conciseness5/5

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

The description is a single focused sentence with no filler or repetition of the schema. It states the action, target, and scope efficiently, making it easy for an agent to parse quickly.

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 simple two-parameter destructive operation with a full input schema and an output schema, the description is largely complete. The main gap is that it does not mention the side effects on clips contained in the deleted track, which would be useful for an agent reasoning about consequences.

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

Parameters3/5

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

Schema description coverage is 100%, and both parameters have clear descriptions including the track_type enum and the 0-based track_index. The description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('Delete'), a precise resource ('video or audio track'), and a clear scope ('from the active sequence'). This naturally distinguishes it from sibling tools like delete_sequence, delete_bin, and remove_from_timeline without requiring the agent to open schemas.

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?

The intended usage is implied: use this when you need to delete a video or audio track from the active sequence. However, the description gives no explicit when-not-to-use guidance and names no alternatives, even though siblings like add_track, list_sequence_tracks, and delete_sequence exist.

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

deselect_all_clipsDeselect All ClipsA

Deselect all clips in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

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

The description adds the important scoping detail that only the active sequence is affected, which goes beyond the generic annotation hints. It also implies a mutable selection-state change, consistent with readOnlyHint=false. No contradiction exists, though it does not detail edge cases like an empty selection.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. It states the action and scope economically and fully.

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

Completeness5/5

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

For a zero-parameter tool with an output schema present, the description is complete. It names the action, the target ('all clips'), and the scope ('active sequence'), leaving no essential ambiguity for an agent invoking it.

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?

The tool has zero parameters, so there is nothing for the description to clarify. The baseline of 4 applies because no parameter documentation is needed.

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

Purpose5/5

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

The description uses a specific verb and resource: 'Deselect all clips in the active sequence.' It clearly identifies both the action and the scope, and is easily distinguished from sibling tools like select_all_clips or invert_selection.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives such as invert_selection, set_clip_selection, or link_selection. The intended use is implied by the name, but the description does not state usage context or exclusions.

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

detach_proxyDetach ProxyB

Detach/remove the proxy from a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description carries low burden for safety, but it still adds no specific behavioral context. It does not explain whether detaching deletes proxy files, affects other items, or has side effects beyond removing the association. The description merely restates the tool's action without depth.

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

Conciseness5/5

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

The description is one short, direct sentence with no filler. It front-loads the core verb and target immediately, making it easy to parse. Every word earns its place.

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

Completeness3/5

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

For a simple one-parameter tool with an output schema and annotations, the description is minimally acceptable, but it lacks guidance on edge cases such as handling an item with no proxy or whether the operation is reversible. It is adequate but not rich enough to fully prepare an agent for unexpected runtime situations.

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

Parameters3/5

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

The schema has 100% description coverage for the single parameter item_id, and the description confirms that the item is a 'project item'. The description does not add new semantic detail beyond the schema, so the baseline of 3 is appropriate.

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 uses specific verb 'Detach/remove' and a defined resource 'proxy from a project item', clearly indicating the operation. It does not explicitly distinguish itself from sibling tools like manage_proxies or has_proxy, but the action is unambiguous enough for an agent to infer intent.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool over siblings such as manage_proxies or has_proxy. The description implies a simple detach action but provides no context about prerequisites, alternatives, or conditions that would make this tool the correct choice.

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

detect_active_picture_boundsDetect Active Picture BoundsA

Detect the most frequent active-picture crop rectangle in decoded video, exposing probable letterbox or pillarbox bars without modifying the source.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoCropdetect black threshold from 0 through 255 (default: 24)
media_pathYesExisting local video file
sample_secondsNoDecode sample duration from 1 through 300 seconds (default: 30)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

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

The description adds valuable behavioral context by stating the tool decodes video and does not modify the source. It also signals that the result is 'probable', which is important for managing agent expectations about precision. This is meaningful beyond the annotations, and no contradiction exists with the annotation fields.

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

Conciseness5/5

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

The description is a single, dense sentence with no filler or repetition. It front-loads the core action and result and includes the key safety qualifier ('without modifying the source') without bloating the text.

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?

The input schema fully documents all parameters and their constraints, and an output schema exists, so the description does not need to explain return values. The description covers the tool's core purpose, the practical detection target, and its non-mutating behavior. The main gap is the lack of explicit usage routing relative to sibling detect tools, but this does not prevent correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter already documented with types, ranges, defaults, and purpose. The description adds no parameter-level detail, but it does not need to because the schema carries the full semantic load. This matches the baseline expectation for fully documented schemas.

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

Purpose5/5

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

The description uses a specific verb ('Detect') and names the exact resource ('active-picture crop rectangle in decoded video'). It also explains the practical output (probable letterbox/pillarbox bars), which clearly distinguishes it from the many other detect_* sibling tools. This is not a tautology or a generic restatement of the name.

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?

The description implies the tool is for analyzing whether video contains letterbox or pillarbox bars and emphasizes that it does not modify the source. However, it does not explicitly state when to prefer this tool over related detect_* tools, nor does it provide any when-not conditions or named alternatives. The usage context is clear enough to infer, but routing is left to the agent.

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

detect_audio_transientsDetect Audio TransientsA

Find probable beat or edit-point transients from decoded audio peaks. Returns candidates for editorial review; it does not claim musical beat-grid accuracy or change a timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local audio or video file
maximum_eventsNoMaximum returned candidates from 1 through 1000 (default: 200)
threshold_dbfsNoMinimum transient peak from -60 through 0 dBFS (default: -12)
minimum_interval_secondsNoMinimum spacing from 0.05 through 10 seconds (default: 0.25)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

With all annotations false, the description carries the disclosure burden and adds real value: the output is provisional (candidates, not authoritative results), the quality limitation is stated (no beat-grid accuracy), and a non-side-effect is declared (does not change a timeline). It does not clarify what side effects may exist given readOnlyHint=false, but that is a minor gap for an analysis tool.

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

Conciseness5/5

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

Two sentences with zero waste: the first names the operation and input source, the second covers output purpose and limitations. The core purpose is front-loaded before the caveats, and every clause earns its place.

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?

The output schema covers return values and the input schema covers parameters, so the description only needs to carry purpose and behavioral context. It provides purpose, a quality caveat, and a non-effect; the only gap is not explicitly naming detect_beats as the alternative when beat-grid-accurate results are needed.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters (media_path, maximum_events, threshold_dbfs, minimum_interval_seconds) are already documented with ranges and defaults. The tool description adds no parameter-level detail beyond what the schema provides, so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb ('find') and resource ('probable beat or edit-point transients from decoded audio peaks'). The disclaimer about musical beat-grid accuracy effectively distinguishes it from sibling detect_beats, so an agent can tell what this tool produces without opening the schema.

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?

'Returns candidates for editorial review' establishes the use context (human judgment on edit points), and 'does not claim musical beat-grid accuracy' is an implicit when-not that separates it from detect_beats. However, it stops short of naming the alternative tool or stating an explicit exclusion condition.

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

detect_beatsDetect BeatsA

Estimate a steady beat grid from a local audio or video file without changing Premiere. FFmpeg decodes at most 30 minutes to a bounded mono analysis stream; local onset autocorrelation returns BPM, phase-aligned beat times, confidence, and half/double-time alternatives.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_beatsNoMaximum beat times returned (default: 500).
media_pathYesAbsolute path to an existing local audio or video file.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior4/5

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

The description explicitly discloses internal behavior: FFmpeg decodes at most 30 minutes to a bounded mono analysis stream, and the algorithm uses local onset autocorrelation, returning BPM, phase-aligned beat times, confidence, and half/double-time alternatives. This is valuable beyond the annotations, which are all false hints and do not convey what the tool actually does or its constraints.

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

Conciseness5/5

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

Two sentences, front-loaded with the primary action and resource, then the key technical constraints. No redundant filler or repetition of schema names. Every clause adds information an agent needs: non-mutating, FFmpeg decode limit, analysis method, and output components.

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?

The description covers the core return structure (BPM, beat times, confidence, half/double-time alternatives) and the key operational limit (30-minute decode cap). It could mention how confidence values are expressed or how half/double-time alternatives are formatted, but for a single-input tool with an output schema, the description is strong enough to guide correct invocation.

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 description coverage is 100%, so the schema already documents both parameters. The description adds meaningful context: 'max_beats' is not just a generic maximum count but caps the returned beat times, and 'media_path' is the local file that feeds the bounded decode/analysis pipeline. The phrase 'local onset autocorrelation' clarifies the analysis behavior the parameters control, which pushes this above the schema-only baseline.

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

Purpose5/5

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

The description states a specific verb ('Estimate') and resource ('a steady beat grid from a local audio or video file') and adds a non-mutating contrast ('without changing Premiere'). This clearly distinguishes it from sibling analysis tools like detect_audio_transients, detect_motion_peaks, and detect_scene_edits.

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?

The description implies the main use case: analyzing a local media file for beat structure. It clarifies that it operates on local files and does not modify the Premiere project, which helps an agent choose it over sibling analysis tools. It could be more explicit about when to prefer it over detect_audio_transients or detect_motion_peaks, but the mention of 'steady beat grid' and 'BPM' gives a clear signal.

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

detect_motion_peaksDetect Motion PeaksA

Find probable high-motion moments in a bounded local video sample from decoded frame differences. Read-only editorial candidates; camera movement, flashes, cuts, and subject motion are not semantically distinguished.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNoMinimum mean luma-frame difference from 0 through 255 (default: 12)
media_pathYesExisting local video file
maximum_eventsNoMaximum returned candidates from 1 through 1000 (default: 200)
sample_secondsNoDecode duration from 1 through 300 seconds (default: 60)
samples_per_secondNoFrame samples per second from 1 through 10 (default: 4)
minimum_interval_secondsNoMinimum peak spacing from 0.1 through 30 seconds (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior1/5

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

The description says 'Read-only editorial candidates,' which claims a read-only behavior, while the annotations set readOnlyHint to false. This is a direct contradiction and makes the behavioral profile misleading. Although the description adds useful algorithmic context about decoded frame differences, the contradiction overrides that value.

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

Conciseness5/5

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

Two sentences with no wasted words. The core operation is front-loaded, followed by a compact caveat about semantic limitations. The structure is easy to scan and parse for an agent.

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

Completeness3/5

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

The description, input schema, and output schema together cover the operation, parameters, and return contract adequately. However, the contradiction between the 'read-only' claim and readOnlyHint=false leaves the side-effect profile unclear, so the context is not fully trustworthy as written.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters are already well documented. The phrase 'from decoded frame differences' adds mild interpretive context for threshold and samples_per_second, but the description does not meaningfully expand on any parameter beyond the schema.

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

Purpose5/5

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

The description uses a specific verb and resource: 'Find probable high-motion moments' in a 'bounded local video sample from decoded frame differences.' It also separates itself from sibling detection tools by explicitly noting that camera movement, flashes, cuts, and subject motion are not semantically distinguished, making its purpose and limitations clear.

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?

The description implies when to use the tool: when high-motion candidates are needed from a local video sample. The caveat that cuts are not semantically distinguished signals it is not the right tool for scene-cut detection, but it does not explicitly name alternatives such as detect_scene_edits or detect_source_scene_changes.

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

detect_repeated_takesDetect Repeated TakesA
Read-onlyIdempotent

Detect repeated sentence takes (retakes) in a word timeline using token similarity within a time window, and plan removal of all but the kept take. Returns take groups, removal and keep ranges, and apply routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
keepNoWhich take in each group to keep; defaults to last.
min_wordsNoMinimum tokens a sentence needs before it is compared; defaults to 4.
frame_rateNoTimebase used to snap ranges to whole frames; defaults to 30.
max_groupsNoMaximum take groups to return; defaults to 64.
handle_framesNoFrames of handle left inside each removal so cuts are not tight; defaults to 1.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
max_gap_secondsNoOnly sentences starting within this many seconds of an earlier candidate are compared; defaults to 20.
similarity_thresholdNoToken Jaccard/containment similarity needed to group two sentences; defaults to 0.8.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false. The description complements these by adding a concrete promise: 'never changes Premiere' and 'Local-only,' plus the planning-only nature and the return of apply routes. It does not discuss failure modes or input validation, but for a read-only analysis tool the safety profile is well covered by annotations plus the added local-only promise.

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?

The description is two sentences that front-load the main function and conclude with safety and output summaries. It is compact but includes the key disambiguation: it detects and plans, it does not apply. It could be slightly tighter, but every clause carries information and the structure is scannable.

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?

The tool has an output schema, so return values are already specified elsewhere. The description covers input domain, algorithm family, output categories, and safety. It does not mention prerequisites like get_clip_transcript_uxp, although that is referenced inside the word_timeline schema. Given the schema richness and output schema presence, the description is sufficiently complete for correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 8 parameters in detail, including defaults, bounds, and the word_timeline structure. The description adds the algorithmic framing ('token similarity within a time window') and the outputs, which helps an agent understand why parameters like similarity_threshold and max_gap_seconds matter. Since coverage is complete, baseline 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('detect', 'plan removal') and names the exact resource ('repeated sentence takes (retakes) in a word timeline') plus the method ('token similarity within a time window'). It also clarifies what it returns (take groups, removal/keep ranges, apply routes), which distinguishes it from generic detection tools. Among siblings like plan_filler_word_removal or detect_silence, this clearly stands out as take/retake detection and removal planning.

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?

The description states the tool works on a 'word timeline' and is 'Local-only; never changes Premiere,' which gives clear context for when it is safe to use. It does not explicitly name alternative tools or exclusion conditions, but the word-timeline input requirement and read-only promise are enough to guide an agent away from direct Premiere mutation tools. A short 'use this before apply_edit_plan/preview_edit_plan' alternative note would have made it a 5.

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

detect_scene_editsDetect Scene EditsB

Safe scene-edit facade. It uses the authenticated Premiere UXP bridge when connected and explicitly confirmed; CEP fallback is intentionally withheld because synchronous scene detection can block the panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesHow Premiere should materialize detected edits on the current native selection.
operation_idNoOptional idempotency key sent to the UXP bridge.
confirm_non_undoableYesMust be true because the host operation mutates the project and is not claimed undoable.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior4/5

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

Beyond the all-false annotations, the description discloses meaningful behavioral traits: it requires an authenticated bridge and explicit confirmation, and it intentionally withholds CEP fallback because synchronous scene detection can block the panel. That explains both the architectural dependency and the blocking risk. The 'safe' label is never reconciled with the schema's statement that the operation mutates the project and is not claimed undoable, which keeps this short of a 5.

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?

The description is two sentences and roughly thirty words, with the second sentence carrying dense, useful information: the bridge condition, the confirmation requirement, and the CEP-blocking rationale. There is no filler. The weak point is the front-loaded opener, 'Safe scene-edit facade,' which restates the title without stating the function, but the overall structure is compact and ordered as claim plus rationale.

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

Completeness3/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 are covered, and the schema fully documents every parameter. The gaps are decision-level: no differentiation from the two similarly named sibling detection tools, no error behavior described for when the bridge is not connected, and no concrete definition of what 'safe' means. For a guarded mutating operation, the description explains the mechanism but not the selection context.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema already documents mode (materialization strategy), operation_id (idempotency key sent to the bridge), and confirm_non_undoable (required because the host operation mutates the project). The description's mention of the 'authenticated Premiere UXP bridge' and 'explicitly confirmed' loosely reinforces operation_id and confirm_non_undoable, but it adds no parameter-level detail of its own. Baseline 3 applies.

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

Purpose3/5

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

The description opens with 'Safe scene-edit facade,' which gestures at the domain but never states the actual operation: detecting scene edits and materializing them as cuts, markers, or subclips. That core function only becomes visible through the mode enum in the schema. It also does not differentiate from near-identically scoped siblings like detect_source_scene_changes and scene_edit_detection.

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?

The description states a real precondition: the authenticated Premiere UXP bridge must be connected and explicitly confirmed, and CEP fallback is deliberately unavailable. This lets an agent infer it should verify connection state before calling. However, it never says when to prefer this tool over the sibling detection tools, nor what to do when the bridge is absent, so the routing guidance is implied rather than explicit.

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

detect_silenceDetect SilenceA

Find silent ranges in a media file and return both the silences and the complementary segments worth keeping. Analysis only — nothing in the project or on the timeline is modified. Requires ffmpeg on PATH: Premiere's scripting API exposes no audio-level or waveform data, so silence cannot be measured through the bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathNoAbsolute path to the media file to analyse. Provide this or project_item_id.
project_item_idNoNode ID or name of a project item whose media path is resolved through Premiere. Provide this or media_path.
noise_threshold_dbNoLevel at or below which audio counts as silence, in dBFS. Closer to 0 is more aggressive (default: -30).
min_duration_secondsNoShortest run of silence to report, in seconds (default: 1.5).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

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

The description states 'Analysis only — nothing in the project or on the timeline is modified,' but the annotations declare readOnlyHint=false. This directly contradicts the annotation, so the behavioral transparency score must be 1 per the contradiction rule.

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

Conciseness5/5

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

Two sentences with no wasted words: the first covers purpose and output, the second covers safety and the external ffmpeg dependency. Information is front-loaded and each sentence earns its place.

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?

The description covers the core details: what the tool does, that it is analysis-only, and why ffmpeg is required. The schema covers parameter semantics and defaults. The only gap is the readOnlyHint contradiction, which creates some confusion but does not prevent correct invocation.

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

Parameters3/5

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

All four parameters have thorough descriptions in the schema (100% coverage), so the baseline is 3. The tool description does not add additional parameter-level meaning beyond the schema, which is acceptable given the schema's completeness.

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

Purpose5/5

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

Description states a specific verb ('Find'), a clear resource ('silent ranges in a media file'), and the exact output ('both the silences and the complementary segments worth keeping'). This clearly distinguishes it from sibling analysis tools like analyze_loudness or plan_silence_review_markers.

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?

Provides strong context: it is analysis-only and requires ffmpeg because Premiere's bridge exposes no audio-level data. This tells an agent when this tool is necessary, though it does not explicitly name alternative tools or state 'use X instead when...'.

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

detect_source_scene_changesDetect Source Scene ChangesA

Detect probable visual cuts in a local source file using FFmpeg scene scores. Read-only and source-relative; it does not cut a Premiere timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNoScene-score threshold from 0.01 through 1 (default: 0.3)
media_pathYesPath to an existing local video file
maximum_eventsNoMaximum returned changes (default: 500; maximum: 2000)
minimum_interval_secondsNoKeep only the strongest event within this interval (default: 0.25)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior1/5

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

The description explicitly states 'Read-only', but the annotations declare readOnlyHint: false. This is a direct contradiction between the description and the structured annotation metadata. Because the description contradicts annotations, it does not provide trustworthy behavioral transparency.

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

Conciseness5/5

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

Two tight sentences deliver the core purpose and the most important boundary. Every phrase earns its place, and the key differentiator is front-loaded. No unnecessary detail or repetition.

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

Completeness3/5

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

The description adequately covers the tool's source-relative scope and its main non-behavior. However, the contradiction with readOnlyHint weakens its reliability, and it does not clarify when to choose this over related sibling tools like detect_scene_edits. Given the output schema exists, return-value detail is not required, but the unresolved metadata conflict leaves the context incomplete.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter schemas already document threshold, media_path, maximum_events, and minimum_interval_seconds. The description adds the FFmpeg scene-score context, which slightly clarifies the domain, but it does not add substantial parameter-level meaning beyond the schema.

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

Purpose5/5

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

The description clearly identifies a specific operation: detecting probable visual cuts in a local source file via FFmpeg scene scores. It also distinguishes itself from timeline-affecting tools by stating it does not cut a Premiere timeline. This is strong, actionable purpose clarity.

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?

The description communicates the intended context: operate on source media files, not the active sequence. It also provides an exclusion ('does not cut a Premiere timeline'). It does not name alternative scene-detection siblings such as detect_scene_edits, but the scope guidance is clear enough to route selection.

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

diff_sequence_snapshotsDiff Sequence SnapshotsA
Read-onlyIdempotent

Diff two sequence snapshots (from get_sequence_structure or inspect_sequence_structure_uxp) into added, removed, moved, trimmed, retimed, enabled, and renamed clip changes with frame deltas, per-track counts, and EDL-like timecode lines. Local-only; never reads or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterYesLater sequence snapshot.
beforeYesEarlier sequence snapshot.
frame_rateNoFrame rate override for frame math and timecodes (1..240). Defaults to the snapshot frame rate or 30.
tolerance_framesNoDeltas of at most this many frames count as unchanged (default 0).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds an explicit guarantee that it never reads or changes Premiere and is local-only, which goes beyond the annotation hints and gives the agent confidence about side effects. No contradictions with annotations.

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

Conciseness5/5

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

The description is a single, focused sentence that front-loads the core purpose and then lists the key output categories. It contains no filler, repetition, or tangential information, making it both concise and information-dense.

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

Completeness5/5

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

The description is complete for the tool's purpose: it identifies inputs (two sequence snapshots), sources, output categories (change types, frame deltas, per-track counts, EDL-like timecode lines), and side-effect behavior (local-only, no Premiere reads/writes). Combined with a fully described input schema and output schema, an agent has enough context to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description itself adds some context by explaining that snapshots come from get_sequence_structure or inspect_sequence_structure_uxp and by using the terms 'Earlier' and 'Later' to clarify before/after ordering, but it does not add substantial parameter detail beyond what the schema already provides.

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

Purpose5/5

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

The description clearly states the tool's specific verb ('Diff two sequence snapshots') and resource (sequence snapshots), and enumerates the exact kinds of changes it detects (added, removed, moved, trimmed, retimed, enabled, renamed). It distinguishes itself from sibling tools by referencing the snapshot sources (get_sequence_structure / inspect_sequence_structure_uxp) and noting it is local-only.

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?

The description provides practical context by stating it operates on snapshots from get_sequence_structure or inspect_sequence_structure_uxp and that it is local-only, never reading or changing Premiere. It does not explicitly name alternative tools or say 'use this when...', but the intended workflow is clear enough for an agent to select it appropriately.

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

duplicate_clipDuplicate ClipA

Duplicate a clip on the timeline (copy to same position on next available track)

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to duplicate

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate the operation is a write but not destructive. The description adds useful context beyond annotations: the copy preserves timeline position and lands on 'the next available track.' It doesn't detail edge cases like no available track or whether all clip attributes are copied, but the core side effect is disclosed.

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

Conciseness5/5

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

A single sentence that front-loads the verb and resource, then adds the key placement detail in a parenthetical. No filler or redundant restatement.

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 one-parameter mutation tool with annotations and an output schema, the description is largely complete. The only notable gap is that 'next available track' is not fully defined (e.g., direction or behavior when no track is available), but this is minor for selecting and invoking the tool.

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

Parameters3/5

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

Schema description coverage is 100%: node_id is already documented as 'Node ID of the clip to duplicate.' The description adds no additional parameter-level meaning, so it relies on the schema, which is sufficient for the single parameter.

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

Purpose5/5

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

The description states a precise operation—duplicate a clip—on a specific resource (a clip on the timeline), and includes the placement result 'copy to same position on next available track.' This clearly distinguishes it from the many clip-edit siblings and from duplicate_sequence.

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?

The description implies when this tool is appropriate: to create a copy of a clip at the same timeline position on the next free track. It doesn't explicitly name alternatives or exclusions, but the behavior is specific enough that an agent can select it without opening other tool definitions.

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

duplicate_sequenceDuplicate SequenceB

Duplicate an existing sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to duplicate

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

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

The annotations already indicate this is not read-only and not destructive, but the description adds no additional behavioral context such as whether a new sequence is created, how it is named, or whether the original is left untouched. It primarily restates the tool's title.

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

Conciseness5/5

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

The description is a single compact sentence with no filler and delivers the core meaning immediately. It is appropriately sized for a simple one-parameter operation.

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

Completeness3/5

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

The tool is simple, has one required parameter, and an output schema is reported to exist, so return-value details are not the description's responsibility. However, useful context about the behavior of duplication, such as naming collision handling and whether the original sequence is unchanged, is missing.

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

Parameters3/5

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

The input schema provides full coverage of the single parameter, sequence_id, described as 'Sequence name or ID to duplicate'. The description adds nothing beyond the schema, but with 100% schema coverage a baseline score of 3 is appropriate.

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 uses a specific verb ('Duplicate') and identifies the resource ('an existing sequence'), making the core operation clear. It does not explicitly contrast with related tools like create_sequence or duplicate_clip, but the phrasing is specific enough to distinguish the intent.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool versus alternatives such as create_sequence, create_subsequence, or duplicate_clip. The description implies the operation but provides no exclusions or selection criteria.

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

enable_disable_clipEnable Disable ClipB

Enable or disable a clip on the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesSet to true to enable, false to disable
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already indicate this is a non-read-only, non-idempotent mutation. The description merely restates the action and adds no behavioral context such as effect on disabled clips, visual state changes, or relationship to selection. It does not contradict the annotations, but it also does not add value beyond them.

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

Conciseness5/5

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

The description is a single, focused sentence with no filler words. It front-loads the action and the object, and every word contributes meaning.

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?

This is a simple two-parameter toggle operation with an output schema available, so a brief description is largely sufficient. However, it would be slightly stronger if it clarified that this applies to the active timeline/sequence or distinguished itself from batch_enable_disable.

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

Parameters3/5

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

Schema description coverage is 100%, with both 'node_id' and 'enabled' already documented clearly. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

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 uses a specific verb ('enable or disable') and a clear resource ('a clip on the timeline'), making the core action unambiguous. It does not explicitly differentiate itself from sibling tools like batch_enable_disable, but the singular 'a clip' implies single-clip operation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as batch_enable_disable or set_clip_properties. An agent must infer from the name that this handles a single clip, and there is no mention of prerequisites or context.

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

encode_fileEncode FileA

Request an Adobe Media Encoder encode for an external file. The returned job ID is an unverified handoff; verify queue presence or the output file independently.

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsNoOptional start time in seconds
input_pathYesFull path to the input file
out_secondsNoOptional end time in seconds
output_pathYesFull output file path
preset_pathYesPath to an AME preset file (.epr)
remove_on_completionNoRemove from queue on completion (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations are sparse, but the description adds a meaningful behavioral caveat: the returned job ID is an unverified handoff and must be checked against the queue or output file independently. This goes beyond the structured annotations and sets correct expectations about asynchronous behavior.

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

Conciseness5/5

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

The description is two sentences with no wasted words. The main action is front-loaded, followed by the single most important caveat about verification.

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?

With full parameter descriptions and an output schema, the tool is mostly self-contained. The description supplies the key non-obvious detail about the unverified job ID, though it could also mention prerequisites like AME availability or file accessibility.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents all six parameters. The tool description adds no extra parameter-level meaning, which is acceptable per the baseline for full schema coverage.

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

Purpose5/5

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

The description states a specific verb ('Request') and resource ('Adobe Media Encoder encode for an external file'), which makes the core action unambiguous. The 'external file' qualifier distinguishes this from siblings like encode_project_item or add_to_render_queue without needing to open the schema.

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

Usage Guidelines2/5

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

The description gives no explicit when-to-use guidance and names no alternatives. The 'external file' wording provides some scope hint, but an agent is not told when to choose this over encode_project_item, start_batch_encode, or add_to_render_queue.

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

encode_project_itemEncode Project ItemA

Request an Adobe Media Encoder encode for a project item. The returned job ID is an unverified handoff; verify queue presence or the output file independently.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to encode
output_pathYesFull output file path
preset_pathYesPath to an AME preset file (.epr)
remove_on_completionNoRemove from queue on completion (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior4/5

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

The description discloses a key behavioral trait beyond the annotations: the returned job ID is an 'unverified handoff' and must be independently checked. This is genuinely useful context that the schema and annotations do not provide. It aligns with readOnlyHint=false and does not contradict any annotation.

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

Conciseness5/5

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

The description is two sentences with no wasted words. The main action is stated first, followed by the essential caveat about verification. It is compact, readable, and front-loaded.

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

Completeness3/5

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

The description covers the core operation and the most important caveat, and an output schema exists to document return structure. However, for a cross-application encode operation, it omits useful context such as prerequisites (e.g., an open project, AME availability), differences from batch or file-based encoding, and failure modes beyond the unverified handoff. This leaves an agent somewhat under-informed when selecting among encode-related siblings.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters are already documented with meaningful descriptions. The tool description adds no additional parameter-level nuance, such as required formats, path conventions, or relationships between parameters. The baseline of 3 is appropriate because the schema does the heavy lifting.

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 clearly identifies the action ('Request an Adobe Media Encoder encode') and the resource ('a project item'). It is specific enough to distinguish from many sibling tools by naming AME and the project-item scope. It does not explicitly contrast with nearby tools like encode_file or start_batch_encode, so it stops short of a perfect differentiation.

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

Usage Guidelines2/5

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

No guidance is given about when to choose this tool over alternatives such as add_to_render_queue, encode_file, or start_batch_encode. The description includes an important post-call verification caveat but does not state prerequisites, when not to use it, or which sibling tools serve overlapping purposes.

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

enqueue_after_effects_renderEnqueue After Effects RenderA

Queue exactly one previewed After Effects render with named host templates. Requires explicit confirmation; it saves the open project but never starts rendering or overwrites output.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time token returned by preview_after_effects_render.
confirm_enqueueYesMust be true to queue the planned render.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

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

Adds important behavioral disclosure beyond annotations: saves the open project, requires confirmation, and explicitly disclaims rendering/overwriting. Annotations are consistent, so no contradiction, though it could further explain queue persistence or undo semantics.

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

Conciseness5/5

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

Two compact, information-dense sentences with the main action front-loaded. No filler or redundant restatement of the title.

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?

Complete enough for a two-parameter tool with full schema coverage and output schema present: it covers side effects, safety, and prerequisite. The phrase 'named host templates' is slightly ambiguous and no explicit alternative routing is provided, preventing a 5.

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

Parameters3/5

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

Schema coverage is 100%, with both parameters documented; the description reinforces them via 'exactly one previewed' and 'requires explicit confirmation' but adds no new format or syntax details beyond the schema.

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

Purpose5/5

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

States a specific verb ('Queue'), resource ('After Effects render'), and clear scoping ('exactly one previewed... with named host templates'). It also differentiates itself from rendering tools by explicitly noting it never starts rendering.

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?

Gives clear context: requires explicit confirmation, saves the project, and never starts rendering or overwrites output. It implies the preview prerequisite via preview_token but does not explicitly name sibling alternatives or exclusion conditions.

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

export_aafExport AafA

Unavailable on the CEP backend. Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/export.aaf')
sample_rateNoAudio sample rate (default: 48000)
mix_down_videoNoMix down video to single track (default: true)
bits_per_sampleNoAudio bit depth (default: 16)
explode_to_monoNoExplode multichannel audio to mono (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

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

All annotations are default false values (readOnlyHint, idempotentHint, destructiveHint, openWorldHint), so they convey almost nothing and the description carries the disclosure burden. The description discloses the single most decision-relevant behavioral fact — calls to this tool will not work on the CEP backend — and adds an authentication prerequisite for the alternative. No contradiction with annotations exists since 'unavailable' does not conflict with any of the default hints. It falls short of 5 only because it discloses nothing about the tool's actual behavior beyond unavailability, though for a dead-end tool that is arguably all that matters.

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

Conciseness5/5

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

Two short sentences where every word earns its place. The critical fact is front-loaded ('Unavailable on the CEP backend'), followed immediately by the action directive naming the alternative. Zero waste, no filler, ideal structure for an agent to parse quickly.

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

Completeness5/5

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

For a tool whose only purpose is to divert the agent, the description is complete: it states unavailability, names the replacement, and gives the required version and authentication context for that replacement. The output schema exists, all parameters are schema-documented, and nothing an agent needs to decide whether/how to invoke this tool is missing. Full context for a dead-end redirect.

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

Parameters3/5

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

Schema description coverage is 100% — all 5 parameters (output_path, sample_rate, mix_down_video, bits_per_sample, explode_to_mono) have descriptions in the schema — so the baseline 3 applies and the description need not compensate. The description adds no parameter-level meaning, which is acceptable given the tool is a redirect and the schema already documents every field.

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 explicitly communicates the tool's operational status — 'Unavailable on the CEP backend' — and distinguishes it from the working sibling export_aaf_uxp, which is the sibling differentiation the rubric rewards. It never states the verb+resource ('exports AAF files') explicitly, but the title 'Export Aaf' and the tool name carry that meaning, so an agent can infer the function. Slightly under a 5 because the function itself is only implied, not described.

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

Usage Guidelines5/5

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

Provides explicit when-not-to-use guidance ('Unavailable on the CEP backend') and names the exact alternative with its prerequisite: 'Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.' This is textbook routing behavior — the agent knows not to call this tool and knows exactly what to call instead and under what conditions.

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

export_as_fcp_xmlExport As Fcp XmlA

Export the active sequence as a Final Cut Pro XML file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/export.xml')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior2/5

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

No annotations provide meaningful safety context (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the description carries the burden. It only says 'Export' and does not disclose that a file is written to output_path, whether an existing file may be overwritten, or what happens if no sequence is active. The description adds little behavioral detail beyond the tool name.

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

Conciseness5/5

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

One short, front-loaded sentence contains every essential element: action, target, and output format. There is no filler or redundant restatement of the title.

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 single-parameter export tool with a documented schema and an output schema present, the description is nearly complete. The only notable gap is the lack of explicit guidance about when to choose this over other export formats, but the basic invocation requirements are clear.

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

Parameters3/5

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

Schema description coverage is 100%: the single output_path parameter is fully documented with an example. The description adds nothing beyond the schema, which is acceptable given the complete schema coverage, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description names a specific verb ('Export'), a clear resource ('the active sequence'), and an unambiguous output format ('Final Cut Pro XML file'). This distinguishes it from related siblings like export_aaf, export_omf, and export_sequence without requiring schema inspection.

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?

The format 'Final Cut Pro XML' implies when this tool should be used, but the description does not explicitly contrast it with alternatives such as export_aaf, export_omf, or export_sequence. There is no when-not-to-use guidance, only an implicit usage condition.

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

export_as_projectExport As ProjectA

Export a sequence as a standalone Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path for the exported .prproj file
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

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

Annotations provide only negative hints (readOnly=false, destructive=false) and are not informative. The description adds that the operation creates a standalone .prproj file, which is useful behavioral context. It does not mention overwrite behavior, whether the current project is modified, or whether media is embedded/referenced, leaving some side-effect ambiguity.

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

Conciseness5/5

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

One tightly worded sentence contains the action, target, and output format with no filler or redundant framing. It is appropriately sized for a simple export operation.

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?

The description, combined with 100% schema documentation and an output schema, covers the essential aspects of the operation. It lacks an explicit note about whether the output file overwrites an existing path or whether the current project remains untouched, but the 'standalone' wording partially covers the latter.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents output_path and sequence_id, including the active-sequence fallback. The description adds no parameter detail beyond identifying the sequence as the thing being exported, so it meets the baseline but does not exceed it.

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

Purpose5/5

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

The description uses a specific verb ('Export') with a clear resource ('a sequence') and a precise output ('standalone Premiere Pro project file'). This distinguishes it from sibling export tools like export_sequence (media output) and export_as_fcp_xml / export_aaf / export_omf (interchange formats).

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?

The phrase 'standalone Premiere Pro project file' gives a clear usage context: choose this tool when a sequence must become a .prproj rather than a media or interchange file. It does not explicitly name alternatives or exclusions, so it misses the top tier, but the context is unambiguous enough for an agent to route correctly.

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

export_frameExport FrameB

Export the current frame as an image file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/frame.png'). Extension determines format.
time_secondsNoTime position in seconds to export. Uses current playhead if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

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

The description mostly restates the tool's purpose and does not disclose behavior beyond the annotations. It does not mention whether an existing file at output_path gets overwritten, whether an active sequence is required, or what side effects occur when time_seconds is provided. Annotations already indicate this is not read-only and not destructive, but the description adds little behavioral context beyond that.

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

Conciseness5/5

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

The description is a single, direct sentence with no filler. It front-loads the action and object clearly, making it easy for an agent to grasp quickly.

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

Completeness3/5

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

The tool is simple, the schema documents all parameters, annotations cover the safety profile, and an output schema exists, so the description does not need to explain return values. However, it omits contextual details like active-sequence requirements and does not help disambiguate from similar frame-export siblings, leaving the description minimally adequate rather than complete.

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

Parameters3/5

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

The input schema already provides 100% coverage for both parameters, including output_path extension-based format selection and time_seconds defaulting to the current playhead. The description itself adds no parameter-specific meaning, so the baseline score of 3 applies.

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 clear verb and resource: export the current frame as an image file. It is understandable in isolation and distinguishable from sequence-level exports, but it does not explicitly differentiate itself from similar frame-related siblings like capture_frame or freeze_frame.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool instead of alternatives such as capture_frame, freeze_frame, or export_sequence_review_frames. The only usage hint is the time_seconds parameter note in the schema, which is parameter-level guidance rather than tool-selection guidance.

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

export_omfExport OmfA

Export the active sequence as an OMF file (Open Media Framework, for audio post-production)

ParametersJSON Schema
NameRequiredDescriptionDefault
include_panNoInclude pan information in the OMF (default: false)
output_pathYesFull output file path (e.g., '/Users/me/export.omf')
sample_rateNoAudio sample rate (default: 48000)
handle_framesNoHandle length in frames when trimming (default: 1000)
bits_per_sampleNoAudio bit depth (default: 16)
trim_audio_filesNoTrim audio to used range plus handles (default: true)
audio_file_formatNoAudio format: 0=AIFF, 1=WAV. Default: 1
audio_encapsulatedNoEmbed audio in OMF (true) or reference external files (false). Default: true

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate this is not read-only, not idempotent, and not destructive, so the bar for additional behavioral disclosure is lower. The description adds the target scope ('active sequence') and format, but does not disclose side effects such as file creation/overwriting, whether the OMF embeds or references media, or what happens if no sequence is active. No contradiction with annotations exists.

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

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the verb and target, then adds the format clarification. Every word earns its place, with no filler or repetition of schema content.

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?

Given the 100% schema coverage, presence of an output schema, and annotations covering the basic operation type, the description is largely complete for invocation. It could add a hint about prerequisites like requiring an active sequence or note about file overwrite behavior, but these are relatively minor gaps for an export tool whose parameters are fully documented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all eight parameters are already documented in the input schema with meaningful descriptions. The tool description itself adds no parameter-level detail, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Export'), a specific resource ('the active sequence'), and a specific output format ('OMF file'). The parenthetical '(Open Media Framework, for audio post-production)' further disambiguates the tool from other export tools like export_aaf or export_as_fcp_xml.

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?

The description provides useful context ('for audio post-production') that implies when OMF export is appropriate, but it does not explicitly state when to choose this tool over alternatives such as export_aaf or export_sequence. There is no when-not-to-use guidance or mention of sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequenceExport SequenceB

Export the active sequence using Adobe Media Encoder

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/exports/video.mp4')
preset_pathNoPath to an AME preset file (.epr). Uses default H.264 if omitted.
work_area_onlyNoExport only the work area (default: false, exports entire sequence)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations mark the tool as non-read-only, non-idempotent, and non-destructive. The description adds the useful behavioral detail that it delegates to Adobe Media Encoder, but it does not disclose whether the operation blocks, queues asynchronously, or overwrites existing output files. There is no contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that identifies the action, target resource, and encoding mechanism with no filler. Every word contributes to the tool's meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The rich schema and presence of an output schema mean parameter and return-value documentation is largely covered. However, the description omits operational context such as asynchronous behavior, relationship to the render queue, and when to choose alternative export-related tools, leaving it minimally complete for a medium-complexity tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with output_path, preset_path, and work_area_only already documented in the input schema. The description adds no parameter-level meaning, so the baseline of 3 is appropriate.

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 object: 'Export the active sequence using Adobe Media Encoder.' This makes the tool's purpose unambiguous and identifies the target resource and mechanism. However, it does not explicitly distinguish it from sibling tools like add_to_render_queue, start_batch_encode, or encode_project_item.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as add_to_render_queue, start_batch_encode, or export_frame. It also omits prerequisites like requiring an active sequence or Adobe Media Encoder being installed. Only the basic operation is stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_clip_review_framesExport Sequence Clip Review FramesA

Export one file-verified composite frame at the midpoint of each clip on a chosen video track in one bridge request. Read-only in Premiere; it does not mute tracks or claim visual quality.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum clips to sample (default: 20; maximum: 50)
output_dirYesExisting directory for clip_001.png and subsequent review frames
track_indexNoZero-based video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful behavioral context beyond the annotations: it is read-only with respect to the Premiere project, does not mute tracks, and does not claim visual quality. These caveats help an agent understand side effects and limitations. It does not contradict the annotations; the false readOnlyHint is consistent with writing files to disk.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core operation and followed by two caveats. There is no redundant restatement of schema information and every sentence earns its place.

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 moderately complex export tool, the description covers key behavioral constraints: one bridge request, midpoint frames, track selection, read-only behavior in Premiere, and no muting/visual-quality claims. The output schema covers return values. The main minor gap is explicit guidance on when to prefer this over closely related export sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the input schema, so schema description coverage is 100%. The description adds top-level context like 'chosen video track' and 'midpoint,' but it does not provide additional per-parameter semantic detail beyond what the schema already includes. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Export') and precisely defines the resource and scope: one file-verified composite frame at the midpoint of each clip on a chosen video track, in one bridge request. This clearly differentiates it from sibling tools like export_sequence_review_frames and export_sequence_marker_review_frames even without naming 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?

The description implies the use case of sampling clip midpoints on a selected track and highlights the 'one bridge request' efficiency, but it never explicitly states when to choose this tool over export_sequence_review_frames, export_sequence_marker_review_frames, or capture_frame. No alternatives or exclusion conditions are given, so usage guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_marker_review_framesExport Sequence Marker Review FramesA

Export up to 24 file-verified composite frames at active-sequence marker positions in one bridge request for marker-driven review. It reads markers and writes image files only; it does not add, update, or remove Premiere markers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum chronological marker frames to export (default: 12; minimum: 1; maximum: 24).
output_dirYesExisting directory where marker_review_001.png through marker_review_NNN.png will be written
end_secondsNoOptional positive exclusive upper bound for marker positions in seconds.
marker_typeNoOptional exact Premiere marker type to include (for example Comment or Chapter).
start_secondsNoOptional non-negative lower bound for marker positions in seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond the annotations by clarifying that the tool reads markers and writes image files only and explicitly disclaims any add/update/remove behavior on Premiere markers. It also notes the 'file-verified composite frames' and single-request behavior, which helps the agent understand side effects and expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. The first sentence conveys action, scope, limit, and purpose; the second sentence clarifies side-effect boundaries. It is front-loaded and every sentence earns its place.

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?

Given the output schema exists, annotations are present, and schema coverage is complete, the description covers the core behavior and side-effect constraints well. A minor gap is that it does not explicitly differentiate itself from sibling frame-export tools, but the description is still sufficient for an agent to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents all five parameters. The description reinforces that frames are exported at marker positions and up to 24, which loosely tracks the limit parameter, but it does not add significant parameter-level meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: exporting up to 24 file-verified composite frames at active-sequence marker positions. It also distinguishes the tool by saying it reads markers and writes image files only and does not add, update, or remove Premiere markers, making its scope and purpose unambiguous.

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?

The description gives context by stating the use case is 'marker-driven review' and that the export happens 'in one bridge request.' However, it does not explicitly guide the agent on when to choose this tool over sibling export tools like export_sequence_review_frames or export_sequence_clip_review_frames, so usage guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_review_framesExport Sequence Review FramesA

Export 2-24 evenly spaced, file-verified frames from an active-sequence range in one bridge round trip for visual review. This samples rendered output; it does not prove playback, audio, or editorial quality.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_dirYesExisting directory where review_001.png through review_NNN.png will be written
end_secondsNoOptional positive range end in seconds (default: sequence end)
frame_countNoNumber of evenly spaced frames to export (default: 6; minimum: 2; maximum: 24)
start_secondsNoOptional non-negative range start in seconds (default: sequence start)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the sparse annotations: it specifies the 2-24 frame count, even spacing, file verification, and the single-round-trip efficiency. It also sets expectations with the sampling caveat, which is valuable since annotations only declare readOnly/destructive/idempotent hints as false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler. The first states the operation, constraints, and purpose; the second adds a critical limitation. All content is relevant and front-loaded.

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?

Given the fully documented input schema and presence of an output schema, the description adequately covers range, count, file verification, and limitations. It could be slightly more complete by contrasting with the marker- and clip-specific review-frame siblings, but nothing essential to invoking the tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the input schema already documents output_dir, optional start/end_seconds, and frame_count with defaults, minimum, and maximum. The description reinforces the 'active-sequence range' idea but adds no new parameter-specific syntax or meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Export') and identifies the precise resource: '2-24 evenly spaced, file-verified frames from an active-sequence range.' It also states the intended purpose ('for visual review') and distinguishes itself from sibling review-frame tools by emphasizing even spacing and range-based sampling.

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?

The phrase 'for visual review' provides a clear intended use case, and 'it does not prove playback, audio, or editorial quality' explicitly tells the agent when the tool is not appropriate. It does not name sibling alternatives such as export_sequence_marker_review_frames, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_selectionExtract SelectionA

Extract (remove and close gap) the content between sequence in/out points.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clearly discloses that the tool removes content and closes the resulting gap, which is more specific behavioral information than the annotations alone provide. The destructiveHint:false is not contradicted because the removal is a normal editing operation within the timeline context. It could add more detail about undoability or selection side effects, but for a no-parameter operation this is solid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is a single, well-structured sentence. It front-loads the action, clarifies the key behavioral nuance (remove and close gap), and specifies the scope without any filler or 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 zero-parameter editing command with an output schema present, the description provides enough information for an agent to invoke the tool correctly. It clearly states what is extracted and how the timeline is affected. A small gap is that it does not explicitly mention that it operates on the active sequence, but 'sequence in/out points' strongly implies this context.

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?

The tool has zero parameters, so parameter semantics are inherently simple. The description correctly identifies the operation's implicit inputs (sequence in/out points), compensating for the empty schema. No additional parameter documentation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action (Extract) and immediately clarifies the behavior as 'remove and close gap', which distinguishes it from related operations like lift_selection (remove but leave gap). It also identifies the exact resource: content between sequence in/out points.

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?

The description implies usage by describing the operation's scope ('between sequence in/out points'), but it does not explicitly state when to choose Extract over alternatives such as lift_selection or ripple_delete. The parenthetical helps differentiate behavior but provides no direct when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_items_by_media_pathFind Items By Media PathA
Read-onlyIdempotent

Find project items whose media path contains the given search string

ParametersJSON Schema
NameRequiredDescriptionDefault
path_searchYesPartial file path to search for

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral detail by specifying substring/contains matching semantics rather than exact path matching, which is useful for setting agent expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single concise sentence with no filler. The core action and search criterion are front-loaded, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read-only search tool with full schema coverage and an output schema, the description is complete. An agent has everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the parameter description ('Partial file path to search for') already conveys the key meaning. The tool description reinforces this by linking path_search to media path containment, but adds little beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Find'), a clear resource ('project items'), and a precise search criterion ('media path contains the given search string'). It is immediately distinguishable from sibling tools like find_project_item_by_name, which searches by name rather than media path.

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?

The description clearly conveys when this tool is appropriate: when searching for project items by a partial media path. It does not explicitly name alternatives or exclusions, but the intended use case is unmistakable from the phrasing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_project_item_by_nameFind Project Item By NameA
Read-onlyIdempotent

Find a project item by name (searches recursively through bins)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the project item to find

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context—recursive traversal through bins—but does not disclose match semantics, such as whether the first match is returned or what happens when no item is found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the core action and resource, followed by a parenthetical that adds important scope. No filler or redundant restatement of the title.

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 one-parameter, read-only lookup tool with an output schema present, the description covers the essential facts: what to search for and where to search. Minor ambiguity remains around uniqueness, match behavior, and not-found handling, but these are unlikely to block correct invocation for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single 'name' parameter already described as 'Name of the project item to find'. The tool description adds no additional parameter-level meaning, such as exact vs partial matching or case sensitivity, so it remains at the schema-supported baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description specifies the action 'Find', the resource 'project item', the search criterion 'by name', and adds scope 'searches recursively through bins'. This clearly distinguishes it from siblings like find_items_by_media_path, which searches by media path, and list_project_items, which lists rather than searches.

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?

The description implies the tool is for locating a project item by name across nested bins, but it does not explicitly state when to prefer it over alternatives such as search_project_items or get_project_item_info. It gives clear context but no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

freeze_frameFreeze FrameA

Create a freeze frame from a clip at a specific time. Exports the frame and imports it back as a still image.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path for the exported frame (e.g., /path/to/freeze.png)
time_secondsNoTime in the sequence to freeze (in seconds). Uses playhead if omitted.
duration_secondsNoDuration of the freeze frame on the timeline (default: 2)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations mark this as a mutating operation (readOnlyHint=false), and the description adds useful behavioral context by disclosing that the tool both exports the frame and imports it back as a still image. This reveals the side effect on the timeline beyond the schema. It does not mention file-overwrite behavior or source-clip requirements, but the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly-written sentence that front-loads the primary action and adds the key export/import nuance without wasted words. Every segment earns its place.

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 3-parameter tool with full schema coverage and an output schema present, the description is mostly sufficient. The primary gap is that it does not specify which clip or sequence the freeze frame is created from (e.g., selected clip, playhead context), which is a relevant operational detail. Still, the essentials are covered, so only a minor gap remains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear descriptions for output_path, time_seconds, and duration_seconds. The description adds little beyond the schema; phrases like 'at a specific time' mirror the time_seconds parameter description. Since the schema carries the full semantic weight, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb-resource pair: 'Create a freeze frame from a clip at a specific time.' It further distinguishes itself from similar export/capture tools by noting the frame is 'imported back as a still image,' which sets it apart from sibling tools like export_frame or capture_frame. This makes its purpose unambiguous.

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?

The description implies usage: when you need to create a freeze frame from a clip. However, it does not explicitly state when to prefer this tool over alternatives (e.g., export_frame or capture_frame) nor mention prerequisites like having a clip selected or an active sequence. There is no exclusionary guidance, so an agent might struggle to choose between highly related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_media_contact_sheetGenerate Media Contact SheetA

Generate a new, disk-verified PNG contact sheet from evenly sampled source frames. Refuses to overwrite an existing output and does not modify Premiere or the source.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoGrid rows from 2 through 8 (default: 3)
columnsNoGrid columns from 2 through 8 (default: 4)
media_pathYesExisting local video file
output_pathYesNew .png output path
thumbnail_widthNoThumbnail width from 160 through 1280 pixels (default: 320)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes beyond annotations by disclosing important side-effect behavior: it refuses to overwrite existing outputs, verifies the file on disk, and explicitly guarantees it does not modify Premiere or the source media. This is highly useful for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise, front-loaded sentences deliver the core purpose first, then critical behavioral constraints. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderate-complexity tool with a full schema, annotations, and an output schema, the description sufficiently covers the tool's purpose, behavior, side effects, and safety guarantees. Nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with all parameters already documented including defaults and ranges. The description adds contextual framing about evenly sampled frames but does not need to repeat parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear, specific operation: generate a new disk-verified PNG contact sheet from evenly sampled frames. It clearly differentiates from sibling export/capture tools by emphasizing it creates a contact sheet and does not modify Premiere or the source.

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?

Provides clear context for when to use the tool: when a new contact sheet is needed. It does not explicitly mention alternative tools or exclusions, but the purpose is specific enough that an agent can infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_active_sequenceGet Active SequenceA
Read-onlyIdempotent

Get detailed information about the currently active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe, non-mutating query. The description adds little behavioral detail beyond restating the query intent, though it does clarify that the target is the active sequence rather than a general list or project-wide overview.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence states exactly what the tool does with no filler or repetition. Every word earns its place, and the sentence is immediately understandable.

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 zero-parameter read-only query with a rich output schema and strong annotations, the description is mostly sufficient. The main gap is the lack of sibling differentiation and the absence of guidance about what happens when no sequence is active, but the output schema likely covers return shape and the annotations cover safety.

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?

The tool has zero parameters and an empty input schema, so there is no parameter documentation burden for the description to carry. With 0 params, the baseline is 4; the description does not need to add parameter semantics and does not attempt to.

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 clearly states the action ('Get detailed information') and the resource ('currently active sequence'), which conveys the core purpose. However, it does not distinguish itself from closely related siblings such as get_full_sequence_info or get_sequence_settings, both of which could plausibly provide detailed information about the active sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives like list_sequences, get_sequence_settings, or get_full_sequence_info. It implies the intended context through the phrase 'currently active sequence,' but it never states exclusions, prerequisites, or when another tool would be preferable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_advanced_feature_supportGet Advanced Feature SupportB
Read-onlyIdempotent

Report public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features

ParametersJSON Schema
NameRequiredDescriptionDefault
backendNoBackend being evaluated (default: cep, the current production MCP transport)
frameio_entitledNoWhether the operator has confirmed Frame.io account/project access
premiere_versionNoOptional Premiere version such as 26.3.0 for version-specific eligibility
network_availableNoWhether required Adobe/cloud services are reachable
generative_ai_entitledNoWhether the operator has confirmed Adobe generative AI entitlement

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that this reports 'user-assisted boundaries,' which hints at interactive/assisted workflows but does not explain what that means in practice. No contradiction with annotations.

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?

The description is a single, focused sentence that front-loads the primary action ('Report') and the key subject matter. It is efficiently worded, though the phrase 'user-assisted boundaries' is somewhat of a jargon-heavy noun pile that could be clearer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema reduces the need to explain return values, and the optional parameters are all individually described. However, with closely related siblings like get_av_feature_support and get_capabilities, the description would be more complete if it clarified when this specific advanced feature check is the right choice.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents all five optional parameters, including the backend enum and boolean entitlement flags. The description adds no parameter-level detail, but it does not need to because the schema already carries that burden.

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 uses a specific verb ('Report') and names the resource: public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features. It is clear enough to distinguish from the general get_capabilities tool, though it does not explicitly contrast with the similarly named get_av_feature_support sibling.

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?

The description implies this tool is for checking support/entitlements before using collaboration or AI features, but it never states when to prefer it over get_av_feature_support or get_capabilities. No explicit usage context, prerequisites, or exclusions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_all_project_pathsGet All Project PathsA
Read-onlyIdempotent

Get all unique media file paths used in the project. Useful for asset management and archiving.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds one useful behavioral detail—'unique'—and the scope 'used in the project,' but it does not describe output shape or potential behaviors beyond that. Given the annotation coverage, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The action and scope are front-loaded, and the second sentence provides a brief rationale. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, idempotent tool with an output schema present, the description is complete enough. It states what is returned (unique media file paths used in the project) and why it is useful. Nothing critical is missing for an agent to invoke it correctly.

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?

The tool has zero parameters, so there is no parameter semantics burden on the description. The schema coverage is 100% and there is nothing to clarify. The baseline of 4 for zero-parameter tools applies, and no description text is required for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Get all unique media file paths used in the project.' This clearly identifies what the tool does and the 'unique' qualifier adds precision. It is readily distinguishable from sibling tools by focusing specifically on media file paths used in the project.

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?

The description provides clear context by stating it is 'Useful for asset management and archiving,' which signals when an agent might select this tool. It does not explicitly compare against alternatives or state when not to use it, but for a simple read-only listing tool this context is reasonable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_av_feature_supportGet Av Feature SupportA
Read-onlyIdempotent

Report the documented automation boundary for advanced audio and modern color management, including actionable reasons for UI-only features.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive). The description adds meaningful behavioral context beyond annotations: the tool reports a 'documented automation boundary' and includes 'actionable reasons for UI-only features,' clarifying that the output is a structured assessment rather than merely a capability list.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, dense sentence that front-loads the core function and then adds the key differentiator (actionable reasons for UI-only features). No filler or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only tool with an output schema and comprehensive annotations, the description fully captures what the agent should expect: a report on automation boundaries and UI-only feature rationale. Nothing essential is missing.

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?

The tool has zero parameters and 100% schema description coverage, so there is little for the description to add. The description correctly focuses on behavior rather than parameters, satisfying the baseline for a parameterless tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Report') and names a precise resource: the documented automation boundary for advanced audio and modern color management. It also adds the distinctive detail of providing 'actionable reasons for UI-only features,' which clearly differentiates it from the broad sibling get_advanced_feature_support.

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?

The description implies this tool should be used to discover what is and isn't automatable for audio and color features, but it does not explicitly state when to prefer it over the similarly named sibling get_advanced_feature_support or any other inspection tool. Usage context is clear by implication but lacks explicit exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bin_contentsGet Bin ContentsA
Read-onlyIdempotent

Get detailed contents of a specific bin (folder) including all nested items, media paths, offline status, color labels, and metadata. Searches by bin name or node ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum direct children to return. Pair with recursive false for the smallest bounded response.
bin_idYesBin name, node ID, or path (e.g., 'Footage', 'Footage/Raw')
offsetNoZero-based offset into the bin's direct children. Pair with limit for a bounded page.
max_depthNoMaximum nested-bin depth when recursive is true. Defaults to the legacy unlimited recursion.
recursiveNoInclude items from sub-bins recursively (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds useful behavioral context by listing what the response includes: media paths, offline status, color labels, and metadata. It also discloses that lookup can be by name or node ID. It does not contradict annotations, though 'all nested items' is slightly oversimplified given the recursive parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two focused sentences with no filler. The first sentence front-loads the tool's purpose and key return contents, and the second adds identifier flexibility. Every part earns its place.

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?

The output schema and annotations cover the return structure and safety profile, while the parameter schema covers pagination and recursion controls. The description provides enough context to call the tool correctly, but it could more explicitly distinguish itself from project/item-level lookup siblings and qualify the 'all nested items' statement against recursive=false.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains bin_id, limit, offset, recursive, and max_depth. The description repeats the bin name/node ID lookup capability but adds no significant new parameter-level meaning. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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 ('Get detailed contents of a specific bin') and enumerates the returned data types: nested items, media paths, offline status, color labels, and metadata. It also clarifies search flexibility by bin name or node ID, making the tool's scope clear even among many sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is given about when to use this tool versus alternatives such as list_project_items, get_item_info, or search_project_items. The description implies usage through its title and content but does not state when-not-to-use or name relevant sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bridge_telemetryGet Bridge TelemetryA
Read-onlyIdempotent

Inspect privacy-preserving aggregate bridge health: pending command/response counts, busy operations, queue age, and CEP heartbeat state without returning project or personal data.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish that the tool is read-only, idempotent, and non-destructive, so the description adds worthwhile behavioral detail by specifying the aggregate, privacy-preserving nature and the exact telemetry areas returned. It also clarifies a meaningful boundary: no project or personal data will be included, which is not implied by the annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that front-loads the primary purpose and immediately follows with specific telemetry categories and a privacy guarantee. Every clause earns its place, with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, a read-only/idempotent annotation set, and an output schema already present, the description is fully sufficient for correct invocation. It tells the agent what the tool inspects, what it will not return, and what to expect in terms of scope.

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?

The tool has no parameters, and the input schema is empty, so the description carries no parameter-documentation burden. The baseline for a zero-parameter tool is high, and the description appropriately focuses on what the tool returns rather than inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect') and clearly identifies the resource ('aggregate bridge health') plus concrete metric categories: pending command/response counts, busy operations, queue age, and CEP heartbeat state. It distinguishes itself from data-access tools by explicitly stating it returns no project or personal data, which is important given the large sibling list.

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?

The description provides clear context for when to use this tool: when you need a privacy-preserving view of bridge operational health without exposing project or personal data. It does not explicitly name alternative tools or exclusions, but the usage context is unambiguous enough for an agent to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_capabilitiesGet CapabilitiesA
Read-onlyIdempotent

Discover Premiere operations and report backend coverage, authority, and verification requirements. Use tool_query with task keywords (for example transcript, captions, or review frames) for ranked, bounded matches available in this session. Use tool_names for exact lookups or tool_offset/tool_limit for paging. Discovery never grants authority or proves a live host is ready.

ParametersJSON Schema
NameRequiredDescriptionDefault
tool_limitNoMaximum tool catalog entries to return. Omit with tool_offset to preserve the complete legacy response.
tool_namesNoOptional exact tool-name allowlist. Returns only those catalog entries while retaining the overall capability summary.
tool_queryNoOptional case-insensitive keywords matched against tool names and descriptions. Exact names rank first. Search defaults to 20 results with descriptions and session availability; page with tool_offset/tool_limit.
tool_offsetNoZero-based offset into the filtered tool catalog. Pair with tool_limit for an explicitly sized page.
available_onlyNoFilter to tools registered under this session's authority and tool packs. Defaults to true for tool_query, false otherwise. Set false to diagnose unavailable matches; this does not enable them.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even with readOnly, idempotent, and non-destructive annotations, the description adds meaningful behavioral context: matches are ranked and bounded, availability is session-scoped, and discovery has no side effects on authority or live-host status. This goes beyond the annotations and prevents common misuse.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences with no filler. The purpose is front-loaded, and each sentence addresses a distinct concern: what the tool reports, how to query it, and what it does not do.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a discovery tool with 0 required parameters, rich annotations, and an output schema, the description is complete. It covers matching, paging, session scope, authority, and the host-readiness caveat, so an agent has enough context to select and invoke it correctly.

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?

The schema already documents all five parameters with 100% coverage, so the baseline is 3. The description adds value by prescribing which parameter mode fits which task: keyword search via tool_query, exact lookups via tool_names, and paging via tool_offset/tool_limit, which supplements the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Discover Premiere operations') and the exact report content ('backend coverage, authority, and verification requirements'). It also distinguishes itself from sibling verification/discovery tools by clarifying that results are scoped to the current session and that discovery does not prove host readiness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit routing guidance: use tool_query for task keywords, tool_names for exact lookups, and tool_offset/tool_limit for paging. The caveat 'Discovery never grants authority or proves a live host is ready' tells agents when not to rely on this tool, effectively differentiating it from connection-verification tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_adjustment_layerGet Clip Adjustment LayerB
Read-onlyIdempotent

Check if a clip is an adjustment layer

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe, non-mutating call. The description clarifies the predicate nature ('Check if') but adds little beyond what the safety annotations and tool name already imply; no side-effect or error behavior is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler or repetition. It front-loads the essential action and resource, and every word contributes to meaning.

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 low-complexity, one-parameter, read-only tool with rich annotations and a declared output schema, the description is largely sufficient. It explains the core behavior, and remaining details like return format are plausibly covered by the output schema. There is no mention of edge cases, but none seem critical for this simple predicate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id documented as 'Node ID of the clip.' The description adds no additional meaning about the parameter's format, source, or validity constraints. Baseline 3 is appropriate because the schema already fully documents the single parameter.

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 'Check if a clip is an adjustment layer' uses a specific verb ('Check') and resource ('clip... adjustment layer'), clearly indicating this is a predicate-style query. It is not a tautology, and it is distinguishable from the sibling add_adjustment_layer, though it does not explicitly name that sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or context such as 'use this before adding an adjustment layer' or 'use get_clip_properties instead for other clip info.' The usage context must be inferred entirely from the tool name and description's single sentence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_at_playheadGet Clip At PlayheadA
Read-onlyIdempotent

Get all clips at the current playhead position across all tracks.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type to check (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, lowering the bar for behavioral disclosure. The description adds useful behavioral context by specifying 'all clips' and 'across all tracks,' clarifying that it is a broad query rather than a per-track or selected-clip operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the resource and scope with no filler, repetition, or re-statement of annotation data. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only query with one optional, fully documented parameter and an output schema present, the description is sufficient. It identifies the target, the scope, and leaves the optional filter to the schema, so nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, track_type, is fully documented in the schema with an enum and a default of 'both.' The description adds no parameter-specific meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('all clips at the current playhead position') and adds explicit scope ('across all tracks'). This clearly differentiates it from related tools like get_clip_at_position, which targets an arbitrary position.

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?

The phrase 'current playhead position' implies the intended use case, and the optional track_type parameter gives some context, but the description does not explicitly name alternatives or state when not to use this tool. Usage guidance must be inferred rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_at_positionGet Clip At PositionB
Read-onlyIdempotent

Get the clip at a specific time position on a track

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesTrack type
track_indexYesTrack index (0-based)
time_secondsYesTime position in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered externally. The description is consistent with those annotations and adds a mild scoping trait ('specific time position' rather than playhead), but it discloses no edge-case behavior such as what happens when no clip exists at the requested position or whether a missing clip returns null or errors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler. Every word contributes to stating the operation's purpose and scope, and nothing is repeated from the title or schema. This is appropriately sized for a simple read-only getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with an output schema present, full parameter coverage, and strong annotations, the definition is mostly sufficient. However, it lacks guidance distinguishing it from get_clip_at_playhead and omits any note about the empty-position edge case. These are gaps, but not critical ones given the output schema handles return-value documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter briefly described ('Track type', 'Track index (0-based)', 'Time position in seconds'). The tool description adds no parameter meaning beyond the schema, so the baseline of 3 applies. The enum restriction on track_type and the 0-based note on track_index are already in the schema.

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 uses a specific verb ('Get'), a resource ('the clip'), and a precise scope ('at a specific time position on a track'), so an agent knows immediately what the tool does. It implicitly contrasts with the sibling get_clip_at_playhead by emphasizing 'specific time position,' but it does not explicitly name that alternative, so it misses full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives. The obvious sibling get_clip_at_playhead (clip at the playhead) is never mentioned, and there are no exclusions or conditions stated. Usage context must be inferred entirely from the tool name and one-line description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_markersGet Clip MarkersA
Read-onlyIdempotent

Get all markers on a specific project item (source clip markers, not sequence markers).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is well covered. The description adds meaningful scope beyond annotations by specifying that markers returned belong to a project item and are source clip markers rather than sequence markers, which clarifies the tool's actual behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no waste. The core action and the critical scoping distinction are presented immediately, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one fully documented parameter and an output schema, the description is complete. The annotations cover safety and idempotency, the schema covers the parameter, and the description covers the semantic scope. Nothing essential is missing for an agent to select and invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter item_id, with a clear description 'Node ID or name of the project item'. The tool description adds no parameter-level details beyond what the schema already provides, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a specific resource ('all markers on a specific project item'), and immediately disambiguates from related tools by clarifying these are source clip markers, not sequence markers. This distinguishes it from siblings like list_markers and get_sequence_markers_by_type without needing to open their schemas.

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?

The description clearly frames when to use the tool: when you need markers on a project item, and explicitly excludes sequence markers. It does not name alternative tools or provide explicit 'use this instead' guidance, but the source-clip-vs-sequence distinction is a strong usage boundary for an agent navigating the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_propertiesGet Clip PropertiesB
Read-onlyIdempotent

Get detailed properties of a specific clip by its node ID

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesThe node ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered by structured data. The description adds no behavioral context beyond the lookup semantics; it does not mention response shape, error conditions, or any side effects, but for a simple annotated getter this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler or redundancy. Every word contributes to identifying the action, resource, and required identifier.

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?

Given the simple one-parameter schema, rich annotations, and presence of an output schema, the description is largely sufficient for correct invocation. It lacks explicit differentiation from similar getter tools, which prevents a perfect score, but nothing critical for making the call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single parameter node_id is documented as 'The node ID of the clip'. The description repeats this idea without adding new meaning such as format, origin, or validation rules, so it stays at the baseline.

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 clearly states a specific action ('Get') and resource ('detailed properties of a specific clip') with the lookup key ('by its node ID'). It is clear and understandable, though it does not explicitly distinguish itself from closely related siblings like get_full_clip_info or get_qe_clip_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives such as get_full_clip_info, get_qe_clip_info, or get_item_info. There are no exclusions, prerequisites, or contextual cues beyond the basic lookup mechanism.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_speedGet Clip SpeedB
Read-onlyIdempotent

Get the playback speed and reverse state of a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe, repeatable read. The description is consistent with those annotations and adds none of the riskiest ambiguity, but it also contributes no extra behavioral context (e.g., behavior on invalid node_id, or whether speed is expressed as a ratio versus a percentage). With annotations covering the safety profile, this lands at baseline 3.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence of nine words that is verb-first and front-loaded with the key facts: what is retrieved and from what. There is zero redundancy and every word earns its place.

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 one-parameter getter with a full output schema and comprehensive safety annotations, the description states exactly what data the agent will receive and nothing critical is missing for invoking the call. The only minor gap is the lack of distinction from overlapping getter siblings, which is a real but small omission at this simplicity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id documented as 'Node ID of the clip.' The description adds no parameter-level meaning, but the schema fully carries that burden, so the baseline 3 applies without requiring the description to compensate.

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 uses a specific verb ('Get') and resource ('clip') and precisely states the data returned: playback speed and reverse state. This is clear and unambiguous. However, it does not explicitly differentiate from overlapping siblings such as get_clip_properties or get_qe_clip_info, which could also surface speed-related data, so it stops short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. Siblings like get_clip_properties and get_qe_clip_info overlap in scope, and setter counterparts (speed_change, reverse_clip, set_clip_speed_qe) represent the write-side operations, yet no when-to-use context, exclusions, or alternative mentions appear anywhere in the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_volumeGet Clip VolumeA
Read-onlyIdempotent

Read an audio clip's Volume > Level in dB. Use this to verify a level actually applied - setValue() clamps silently. Does not report Essential Sound Amplify automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the audio clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered. The description adds value beyond annotations by explaining that setValue() clamps silently, positioning this read as the authoritative verification path, and by disclosing the Amplify automation limitation. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, each earning its place: purpose, use-case rationale, and limitation. The purpose is front-loaded in the first sentence, and there is zero filler or repetition of information already present in the annotations or schema.

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 single-parameter read tool with full schema coverage, an output schema, and readOnly/idempotent annotations, the description covers the purpose, the verification use case, and a key limitation. Minor edge cases — such as return behavior when no volume is set — are left to the output schema, which is an acceptable division of labor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — node_id is already documented as 'Node ID of the audio clip.' The description's phrase 'audio clip's' reinforces the parameter's target type but adds no syntax, format, or edge-case meaning beyond the schema. Baseline 3 is appropriate since the schema fully carries the parameter documentation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Read an audio clip's Volume > Level in dB.' This precisely identifies the operation, the target property path, and the unit of measurement, clearly distinguishing it from write tools like set_clip_volume and broad reads like get_clip_properties. The final sentence further defines scope by naming what is excluded (Essential Sound Amplify automation).

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?

The description gives a concrete when-to-use: 'Use this to verify a level actually applied - setValue() clamps silently,' which tells the agent this is the verification read after a set operation. It also notes a limitation of the tool ('Does not report Essential Sound Amplify automation'). However, it never names alternative tools or explicit when-not conditions, leaving some sibling routing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_color_labelGet Color LabelA
Read-onlyIdempotent

Get the color label of a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds no further behavioral context such as error handling or edge cases, but it does not contradict any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that names the action, target, and resource without filler. This is appropriately concise for a one-parameter read-only getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity getter, the description plus the complete input schema, existing output schema, and strong safety annotations cover everything needed to invoke it correctly. There are no missing prerequisites or ambiguous fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the single parameter is documented as 'Node ID or name of the project item.' The description does not add parameter-level details beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a specific resource ('color label'), and a precise target ('project item'). This clearly distinguishes it from the sibling set_color_label and from broader getters like get_item_info.

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?

The intended use is implied: call this when you need the color label of a project item. It does not explicitly name alternatives or exclusions, but for a simple getter this is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_color_spaceGet Color SpaceA
Read-onlyIdempotent

Get the color space information for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is transparent. The description adds no further behavioral context, but it also does not contradict the annotations or obscure any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It states the action and target resource immediately, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read-only getter, the description plus schema and annotations is mostly sufficient. However, it lacks guidance on item types that support color space or how to handle items without color space information, and it does not clarify when this tool is preferable over similar getters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers the single parameter item_id with a clear description ('Node ID or name of the project item'), so schema coverage is 100%. The tool description adds no additional parameter meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: get color space information for a project item. The specific resource ('color space') and object ('project item') make it easy to distinguish from sibling getters like get_color_label or get_item_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to use this tool versus alternatives such as get_item_info or get_clip_properties. It does not mention situations where another getter would be more appropriate, so an agent must infer usage entirely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_duplicate_mediaGet Duplicate MediaA
Read-onlyIdempotent

Find project items that reference the same source media file. Useful for consolidation.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile with readOnlyHint, idempotentHint, openWorldHint false, and destructiveHint false. The description adds the matching criterion ('same source media file') but does not disclose additional behavioral details like grouping, scope, or performance. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core behavior is front-loaded, and the use case is stated efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-argument, read-only lookup tool with an output schema present, the description is sufficient for correct selection and invocation. It explains what constitutes a duplicate and hints at the downstream consolidation workflow.

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?

The tool has zero parameters and an empty input schema, so there is no parameter meaning for the description to add. Baseline for zero-parameter tools is 4, and the description correctly needs no parameter-specific information.

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 uses a specific verb ('Find') and specifies the resource ('project items that reference the same source media file'), so an agent can tell what the tool does. It clearly distinguishes from concepts like unused media, though it does not explicitly name a sibling tool for that distinction.

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?

'Useful for consolidation' signals a workflow context and implies the tool should be used before consolidation, but it does not explicitly state when to use this tool versus alternatives like consolidate_duplicates or find_items_by_media_path. No exclusions or conditions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_effect_propertiesGet Effect PropertiesA
Read-onlyIdempotent

List all properties of a specific effect on a clip, including current values

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect (e.g., 'Motion', 'Opacity', 'Lumetri Color')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the detail that current values are included, which slightly supplements the read-only intent, but it does not disclose error cases or additional behavior beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One well-formed sentence that front-loads the action and resource, with no filler or repeated title content. Every word contributes meaning.

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?

Given the rich annotations and the presence of an output schema, this is nearly complete for a simple read-only listing tool. It could name the natural companion tools or clarify how effect names are resolved, but nothing essential is missing for a straightforward call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's phrase 'specific effect on a clip' aligns with the node_id and effect_name parameters, but it does not add any semantic detail beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('List all properties') on a specific resource ('a specific effect on a clip'), and adds that it includes current values. This clearly distinguishes it from sibling tools like list_clip_effects (which lists effects) and set_effect_property (which modifies a property).

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?

The description conveys the basic use case: retrieve properties for a named effect on a clip. However, it does not explicitly say when to choose this over related tools such as list_clip_effects or get_clip_properties, leaving that to inference from the name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_encoder_presetsGet Encoder PresetsA
Read-onlyIdempotent

List available Adobe Media Encoder export presets, with the .epr path of each so it can be passed to export_sequence or encode_project_item. Presets are discovered by scanning the .epr files Adobe ships on disk (Premiere's ExtendScript API exposes no preset enumeration).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoFilter to presets whose name or format bucket matches this (e.g. 'H.264', 'ProRes', 'Proxy'). Omit to list all.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false, and destructiveHint=false, so the safety profile is fully covered. The description adds behavioral context about disk scanning of .epr files, which is useful for an agent to understand that results come from filesystem enumeration. However, it doesn't describe ordering, possible latency, or what happens if no presets match the optional format filter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry the tool's purpose, its distinguishing constraints, and its downstream usage. The most important fact—that the output is a list of presets with .epr paths—is front-loaded, and every clause contributes information without 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 simple read-only list tool with one optional parameter and an output schema present, the description is largely complete. It could mention how missing or invalid format values are handled, but annotations and the output schema cover safety and return shape, so the remaining gap is minor.

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%, so the schema already explains the optional format filter. The description adds a helpful list of example values ('H.264', 'ProRes', 'Proxy') and clarifies that 'format bucket' is part of the matching logic, which goes slightly beyond the schema's plain description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List'), a specific resource ('Adobe Media Encoder export presets'), and the key output detail (the .epr path for each). It also distinguishes this tool from the larger export pipeline by explaining the discovery mechanism, which effectively separates it from sibling tools like validate_export_preset or export_sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says the .epr path is intended to be passed to export_sequence or encode_project_item, giving the agent a clear downstream use. It also explains that preset enumeration is not exposed via Premiere's ExtendScript API, which tells the agent why this tool exists and when to prefer it over direct API enumeration.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_export_file_extensionGet Export File ExtensionA
Read-onlyIdempotent

Get the file extension that would be used when exporting the active sequence with a given preset

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_pathYesFull path to the export preset file (.epr)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the context that this returns a hypothetical extension based on the active sequence and preset, which is useful but not a rich behavioral disclosure beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, succinct sentence with no filler or redundant wording. It front-loads the action and resource immediately, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only query tool with a full input schema and an output schema, the description is complete. It identifies the active-sequence dependency, the preset input, and the query nature of the operation; nothing essential is missing for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% because preset_path is described as 'Full path to the export preset file (.epr)'. The description's reference to 'a given preset' adds no new meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and a clear resource ('the file extension that would be used when exporting the active sequence'), making the tool's purpose unambiguous. It is distinct from sibling export tools like export_sequence and validate_export_preset by focusing on querying the extension rather than performing or validating an export.

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?

The phrase 'when exporting the active sequence with a given preset' implies a pre-export query context, but the description does not explicitly state when this should be used over alternatives like validate_export_preset or export_sequence. No exclusions or explicit alternative routing is provided, so usage guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_footage_interpretationGet Footage InterpretationA
Read-onlyIdempotent

Get footage interpretation settings for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is well covered. The description aligns with those annotations and adds the scope 'for a project item,' but it does not disclose any additional behavioral details beyond what the schema and annotations already convey. No contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. The verb appears first, and every word contributes either the operation or the target resource. Nothing is repeated from the annotations or unnecessarily expanded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple read-only tool with one required parameter, a fully described schema, comprehensive annotations, and an output schema available. The description, combined with the structured metadata, gives an agent everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, item_id, has 100% schema description coverage ('Node ID or name of the project item'), so the schema already carries the semantic weight. The description's phrase 'for a project item' is consistent but adds no new param information such as lookup behavior, format examples, or constraints.

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 clearly states a specific verb ('Get') and resource ('footage interpretation settings') for a project item, distinguishing it from generic getters like get_item_info and get_clip_properties. It does not explicitly call out set_footage_interpretation as its counterpart or further disambiguate from similar item-level getters, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as set_footage_interpretation, get_item_info, or get_clip_properties. The description is purely a statement of action and offers no when-to-use, exclusions, or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_clip_infoGet Full Clip InfoA
Read-onlyIdempotent

Get exhaustive information about a specific clip: all effects with every property value, source media details, footage interpretation, metadata, markers, speed, enabled state, color label, linked clips, and proxy status.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip on the timeline

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a safe read-only, idempotent, non-destructive operation, so the description does not need to restate that. It adds value by detailing what data the call exposes, but it does not disclose additional behavioral traits such as response size, failure modes, performance cost, or any prerequisites beyond the annotated safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the verb, resource, and exhaustive intent, followed by a compact colon-separated list of covered data categories. Every phrase contributes information, and there is no filler or repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only tool with a full input schema and an output schema present, the description is complete: it identifies the clip, the exhaustive scope, and the safety profile. Nothing needed for correct invocation is missing, and the sibling list confirms this tool occupies a clear 'full detail' niche.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, node_id, is already fully described in the schema at 100% coverage. The description's 'specific clip' phrasing adds no new meaning about the node_id format or how to obtain it, so it does not go beyond the baseline set by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Get') and resource ('specific clip'), then marks the tool as 'exhaustive' and enumerates its full scope: effects, source media, footage interpretation, metadata, markers, speed, enabled state, color label, linked clips, and proxy status. This distinguishes it clearly from granular siblings like get_clip_properties, list_clip_effects, or get_color_label, even without naming them.

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?

The phrase 'Get exhaustive information about a specific clip' and the wide list of included domains imply that this is the right tool when a comprehensive clip snapshot is needed, rather than a single property getter. It gives clear context but never explicitly states when not to use it or names alternatives, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_project_overviewGet Full Project OverviewA
Read-onlyIdempotent

Get a comprehensive overview of the project. Use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_bin_depthNoMaximum recursive bin-tree depth when include_bin_tree is true (default: 10).
sequence_limitNoMaximum sequences to include. Omit to preserve the complete legacy response.
sequence_offsetNoZero-based offset into project sequences.
include_bin_treeNoInclude the recursive bin tree (default: true). Set false to return project statistics and sequences only.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish readOnly, idempotent, nondestructive behavior. The description adds useful behavioral context beyond annotations by warning that the response can be large and recommending bounded parameters for large projects, which helps an agent anticipate heavy payloads.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the first states the tool's purpose, and the second gives immediately actionable parameter guidance. The most important behavioral caveat is front-loaded and clearly worded.

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 read-only overview tool with no required parameters, an output schema, and safety annotations, the description is nearly complete. It could have briefly enumerated what the overview includes, but the combination of the purpose statement, parameter guidance, and output schema covers the essential context an agent needs.

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 description coverage is 100%, so the schema already documents all parameters. The description adds value by explaining the practical intent behind include_bin_tree, sequence_offset, and sequence_limit as a way to bound response size on large projects, going beyond raw parameter definitions.

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 clearly states the tool gets a comprehensive overview of the project, with a specific verb and resource. It does not explicitly differentiate itself from similar siblings like get_project_info, but the 'comprehensive overview' phrasing and the bin-tree/sequence parameters make the scope reasonably distinct.

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?

The description offers conditional usage guidance: use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects. However, it does not say when to prefer this tool over alternatives or when a different tool like get_project_info would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_sequence_infoGet Full Sequence InfoA
Read-onlyIdempotent

Get exhaustive information about a sequence: settings, all tracks with lock/mute/target state, all clips with positions/effects/speed/enabled state, all markers, transitions, in/out points, and work area.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish that this is read-only, idempotent, and non-destructive. The description adds useful behavioral scope by enumerating exactly what is included (all tracks, clips, markers, transitions, in/out points, work area). It does not mention potential performance weight of an exhaustive call, but this is minor given annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense sentence that is front-loaded with 'exhaustive information' and then efficiently lists each component category. Every clause earns its place and there is no filler or repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema is present, so the description does not need to describe the exact response shape. It comprehensively lists the major data categories returned and the sequence scoping is handled by the schema. Nothing essential is missing for an agent to understand what this tool provides.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, sequence_id, is fully documented in the schema, including the fallback to the active sequence when omitted. The description does not add extra semantic detail about the parameter itself, so it does not exceed the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('Get exhaustive information about a sequence') and then enumerates the full scope: settings, tracks with lock/mute/target state, clips with positions/effects/speed/enabled state, markers, transitions, in/out points, and work area. This clearly distinguishes it from narrower siblings like get_sequence_settings or list_sequence_tracks.

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?

The word 'exhaustive' and the detailed category list imply this is the comprehensive sequence retrieval tool, but it does not explicitly state when to prefer it over a narrower getter or any alternative. Usage guidance is therefore present only implicitly, not as direct guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_graphics_white_luminanceGet Graphics White LuminanceA
Read-onlyIdempotent

Get the graphics white luminance value (HDR setting) for the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the read-only behavior is well covered. The description adds the 'HDR setting' context but no additional behavioral traits such as return format, error conditions, or effects, so it does not go beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler. It front-loads the action and resource, and every word adds meaningful context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only getter with an output schema and strong annotations, the description provides all necessary context. It identifies the value, its relation to HDR settings, and the project scope, leaving no critical gaps.

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?

The tool has zero parameters, so there is no parameter schema to elaborate on. The description correctly indicates there is nothing to configure, which is sufficient for this tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and explicitly names the resource ('graphics white luminance value') plus the domain ('HDR setting') and scope ('for the project'). It clearly distinguishes this read tool from the sibling set_graphics_white_luminance.

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?

The description implies this tool is for reading rather than setting the white luminance value, especially given the sibling setter. However, it does not explicitly state when to prefer this tool or exclude the setter, leaving the usage context to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_insertion_binGet Insertion BinA
Read-onlyIdempotent

Get the current target bin for new imports (the bin that is currently focused in the Project panel)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the description does not need to repeat those. It adds useful behavioral context by emphasizing that the value is 'current' and tied to the Project panel focus, meaning it reflects live UI state rather than a static setting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action and adds a clarifying parenthetical. There is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple, side-effect-free getter with no parameters, strong non-destructive annotations, and an output schema available. The description fully explains what is being retrieved and the UI context, leaving no meaningful gap for an agent to select and invoke the tool correctly.

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?

The tool has zero parameters, so there is no parameter burden for the description to carry. The description correctly focuses on what the operation returns rather than on input semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Get the current target bin for new imports.' The parenthetical clarification 'the bin that is currently focused in the Project panel' makes the semantics unambiguous and helps distinguish this from sibling tools like get_bin_contents or get_project_panel_metadata.

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?

The description provides clear context for when to use this tool (to determine where new imports will land), but it does not explicitly mention alternatives or exclusion criteria. It is still clear enough for an agent to recognize this is the correct tool for querying the current insertion bin.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_item_infoGet Item InfoB
Read-onlyIdempotent

Get detailed type info about a project item (is it a sequence, multicam, merged clip, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the description only adds the semantic clarification that it returns type classification. It does not disclose edge cases like unknown item IDs or whether lookup by name is exact, but with annotations covering safety this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; the key scoping term 'type info' and examples appear immediately.

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 simple 1-parameter tool with full schema coverage, an output schema, and read-only annotations, the description is mostly sufficient. It only lacks explicit differentiation from similar item-info siblings, which keeps it from a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers the single parameter at 100% ('Node ID or name of the project item'), so the description adds nothing beyond the schema. Baseline 3 is appropriate.

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 identifies a specific operation ('get detailed type info') on a project item and gives concrete examples (sequence, multicam, merged clip). It does not name sibling tools, but the 'type info' scope distinguishes it from get_project_item_info, get_full_clip_info, and get_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to choose this over the many sibling getters, nor any exclusions or prerequisites. The 'type info' phrasing weakly implies use for classification, but no alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_keyframesGet KeyframesA
Read-onlyIdempotent

Get all keyframes for a specific effect property on a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false). The description adds little beyond confirming a read operation, though 'all keyframes' implies no filtering or pagination. No additional context about edge cases or return behavior is provided, but the annotations lower the bar.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the action and resource, with no filler. Every word contributes to understanding the tool's purpose.

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?

This is a simple getter tool with an output schema present and detailed annotations covering safety. The description is sufficient for an agent to know what to request. A minor gap is not explaining ordering or behavior when no keyframes exist, but the output schema covers return structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter (node_id, effect_name, property_name) having a clear description. The tool description adds no further semantic detail about how the parameters relate, but the schema itself is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the exact scope ('all keyframes for a specific effect property on a clip'). This distinguishes it from siblings like add_keyframe, remove_keyframe, and get_effect_properties by identifying the specific resource being retrieved.

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?

The intended use is implied: call this when you need keyframes for a known effect property on a clip. However, the description does not explicitly mention alternatives or when not to use this tool, such as when you need to modify keyframes or inspect only effect properties.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_linked_itemsGet Linked ItemsA
Read-onlyIdempotent

Get all clips in the sequence that are linked to the same source as a given clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, non-destructive behavior, so the description need not repeat safety. It adds a small semantic context (same source, within the sequence) but discloses no further behavioral traits such as return shape or edge cases; with the annotation safety burden covered, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one clean, front-loaded sentence with no filler, restatement, or duplicated schema content. Every word earns its place.

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 single-parameter, read-only lookup with a full input schema and an output schema, the description is mostly sufficient. The one missing element is optional guidance distinguishing this from get_clip_links, but nothing essential about how to invoke the tool is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers node_id at 100% with 'Node ID of the clip', and the description adds no new parameter-level detail beyond calling it 'a given clip'. Per the high-coverage baseline, the schema does the work and the description does not meaningfully extend it.

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 uses a specific verb ('Get'), names an exact resource ('all clips in the sequence linked to the same source as a given clip'), and clearly conveys what the tool operates on. It is unambiguous, but it does not explicitly contrast itself with the similarly named sibling get_clip_links, so it stops short of full sibling differentiation.

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?

The description implies when to call the tool (when you have a clip's node_id and need all clips sharing its source), which is adequate for a simple query. However, it gives no explicit when/where-not guidance or alternative recommendations, e.g., no mention of get_clip_links or other lookup tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_metadataGet MetadataA
Read-onlyIdempotent

Get metadata for a project item. Disable either XML payload when a bounded identity/path response is sufficient.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
include_xmp_metadataNoInclude the potentially large XMP XML payload (default: true). Set false for a bounded identity/path response.
include_project_metadataNoInclude the potentially large Project Metadata XML payload (default: true). Set false for a bounded identity/path response.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and non-destructive behavior, so the description carries a lighter burden. It adds useful context about potentially large XML payloads and the availability of a bounded identity/path response, but it does not disclose other behavioral details such as response size limits or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The primary purpose is front-loaded, and the second sentence provides a practical, actionable qualifier about payload control.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only metadata getter with a rich output schema and strong annotations, the description is mostly sufficient. The main gap is the lack of differentiation from overlapping sibling tools with similar metadata-focused names, which leaves some ambiguity about when exactly this tool should be selected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter meanings and defaults are already fully documented. The description reinforces the relationship between the two boolean flags and the bounded response, but it does not add significant semantic value beyond the schema.

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 clearly states the operation ('Get metadata') and resource ('a project item'), so an agent can understand the basic purpose. However, the generic 'metadata' scope overlaps with sibling tools like get_item_info, get_project_item_info, and get_xmp_metadata, and no distinctions are drawn.

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?

The description offers actionable guidance on when to disable the XML payloads ('when a bounded identity/path response is sufficient'), which is useful for efficient invocation. However, it does not explain when to choose this tool over nearby sibling metadata tools, so the tool-selection context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_mogrt_componentGet Mogrt ComponentB
Read-onlyIdempotent

Get MOGRT (Motion Graphics Template) component parameters from a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the MOGRT clip on the timeline

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description adds the scope 'from a clip' and expands the MOGRT acronym, but does not disclose return format, error behavior, or other runtime traits. Given the rich annotations, the description does enough to earn a mid score without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-front-loaded sentence with no filler. It states the action, the resource, and the source clip efficiently, and the acronym expansion is useful rather than redundant.

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 low-complexity, read-only getter with a single fully documented parameter and an output schema, the description is nearly complete. It lacks usage guidance and return-value details, but those are largely covered by the schema, output schema, and annotations, so the provided text is sufficient for the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully documents the single parameter node_id with a clear description, so schema coverage is 100%. The tool description adds no additional parameter syntax, defaults, or constraints, so the baseline score of 3 is appropriate.

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 clearly states the verb 'Get' and the specific resource 'MOGRT component parameters from a clip', and helpfully expands the acronym MOGRT. It does not explicitly call out sibling tools for differentiation, but the resource is specific enough that an agent can generally distinguish it from related getters like get_clip_properties or get_effect_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus similar tools. The description only says what it does ('Get MOGRT component parameters from a clip') but gives no scenarios, exclusions, or pointers to alternatives. This is a clear gap given the large number of getter siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_next_edit_pointGet Next Edit PointA
Read-onlyIdempotent

Find the next or previous edit point (clip boundary) from the playhead position.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNoDirection to search (default: next)
track_typeNoTrack type to check (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and destructiveHint=false, so there is no safety contradiction. The description adds behavioral context by anchoring the search at the current playhead and defining an edit point as a clip boundary. No-result behavior is not described, but the output schema likely covers that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the action and target, with an inline parenthetical that removes ambiguity. No filler or redundant restatements of the annotations.

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 read-only tool with two optional parameters, a full input schema, and an output schema, this description is nearly complete. The only notable gap is that it does not explicitly say it does not move the playhead, which would fully disambiguate it from move_playhead_to_edit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both parameters already have clear enum descriptions for direction and track_type. The description's 'next or previous' restates the direction parameter but adds no new parameter-level meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States exactly what it does: 'Find' the 'next or previous edit point (clip boundary)' relative to 'the playhead position'. The parenthetical definition of edit point and the playhead anchor clearly distinguish it from siblings like get_clip_at_position and move_playhead_to_edit.

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?

The playhead-relative phrasing gives clear context for when it applies, and 'find' implies a read-only query. However, it never names alternatives or exclusions, such as using move_playhead_to_edit when the playhead itself needs to move, so an agent must infer the boundary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_offline_mediaGet Offline MediaA
Read-onlyIdempotent

Find all offline/missing media in the project with their expected file paths. Essential for diagnosing broken links.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well-covered. The description adds the project-wide scope and the expected file paths aspect, but does not disclose any deeper behavioral details such as scan scope depth or whether all media types are included. With annotations carrying the main burden, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler. The core behavior is front-loaded, and the diagnostic use case adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With zero parameters, a true read-only annotation profile, and an output schema available, the description is sufficient for an agent to decide when to call and what the call will produce. Nothing essential is missing for invoking this tool.

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?

The tool has zero parameters and the schema is an empty object, so there is no parameter documentation burden. The description correctly implies no inputs are needed, making this baseline appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Find all offline/missing media'), a clear resource ('in the project'), and the output content ('with their expected file paths'). It also states the practical purpose ('diagnosing broken links'), which differentiates it from tools like get_unused_media or get_duplicate_media.

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?

The description clearly implies when to use it: when diagnosing broken links or locating missing media. It does not explicitly exclude alternatives like check_offline_media, but the stated use case is specific enough to give an agent actionable context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_playhead_positionGet Playhead PositionA
Read-onlyIdempotent

Get the current playhead (CTI) position in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds context beyond the annotations by clarifying that the position is read from the active sequence and refers to the CTI. The readOnlyHint, idempotentHint, and destructiveHint already cover side-effect expectations, so the added scope is sufficient. It does not mention behavior when no active sequence exists, but that is a minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, direct sentence with no filler. It front-loads the action and resource, and every word earns its place by specifying current, CTI, and active sequence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only tool with an output schema, the description is complete. It identifies the target context (active sequence), what is read (CTI position), and the annotations cover safety and idempotency. No critical missing information is needed for correct invocation.

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?

This tool takes zero parameters and the schema is empty with 100% coverage. Per the rubric, zero parameters earns a baseline of 4; there is no parameter meaning for the description to add.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the specific verb 'Get', the resource (current playhead/CTI position), and the context (active sequence). It clearly distinguishes itself from sibling tools like set_playhead_position (get vs set) and get_work_area (playhead vs work area).

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?

The description makes the usage context clear: use this when you need the current playhead position in the active sequence. It does not explicitly name alternatives, but no sibling tool has exactly the same purpose, and the scaffold (get vs set, timeline vs source monitor) is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_premiere_stateGet Premiere StateA
Read-onlyIdempotent

Get a comprehensive snapshot of the current Premiere Pro state: project info, active sequence, playhead position, selected clips, and available sequences. The best first call to understand the current context.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds value by specifying the scope of the snapshot and its aggregate nature, but it does not disclose additional behavioral traits such as performance implications or whether the snapshot is point-in-time.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no redundant wording. The main action and scope are front-loaded, and the usage guidance is appended naturally without bloating the definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a zero-parameter input schema, a rich output schema, and strong read-only indications from annotations, the description covers what the tool does, what it includes, and when to call it. Nothing material is missing for an agent to select and invoke it correctly.

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?

The tool has zero parameters and schema description coverage is 100%, so there are no parameters needing clarification. The description appropriately focuses on what the tool returns rather than inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and identifies a clear resource: a comprehensive snapshot of the current Premiere Pro state. It enumerates the exact contents (project info, active sequence, playhead position, selected clips, available sequences), making it easy to distinguish from granular siblings like get_project_info or get_playhead_position.

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 explicitly says 'The best first call to understand the current context,' which gives concrete guidance on when to use it. However, it does not explicitly state when not to use it or name alternatives for more targeted queries, though the sibling granular getters imply that.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_infoGet Project InfoA
Read-onlyIdempotent

Get information about the currently open Premiere Pro project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the scope constraint 'currently open', which is useful, but it does not explain behavior such as what happens when no project is open or what subset of project info is returned, though the output schema likely covers return values.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word earns its place, and 'currently open' is meaningful scope information.

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 no-parameter read-only tool with a strong annotation profile and an output schema, the description is nearly complete. The main gap is differentiation from similarly named read-only siblings, which is already penalized in usage guidelines.

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?

The tool has zero parameters and the schema is empty with 100% coverage, so there is no parameter documentation burden on the description. Baseline 4 for 0-param tools is appropriate.

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 specific verb ('Get') and resource ('currently open Premiere Pro project'), which is more specific than the plain title. However, 'information' is broad and does not distinguish this from overlapping siblings like get_full_project_overview or get_premiere_state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to call this tool versus the many sibling read-only tools such as get_full_project_overview, get_version_info, or get_project_scratch_disks. The only implicit context is 'currently open', but there are no exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_item_infoGet Project Item InfoA
Read-onlyIdempotent

Get detailed information about a project item (media file in the project panel): media path, resolution, duration, frame rate, codec info, metadata, color label, offline status, in/out points, and proxy status.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds useful context about the scope (project panel media file) and the type of data returned, but it does not disclose any additional behavioral traits such as authentication requirements, rate limits, or potential side effects beyond what annotations already indicate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action and resource, then efficiently lists the specific information fields. Every part contributes value, and there is no filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, read-only getter with one parameter and an existing output schema, the description is complete. It identifies what the tool operates on, what information it returns, and the annotations confirm it is safe and side-effect-free. No critical calling context is missing for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with item_id described as 'Node ID or name of the project item'. The main description adds a bit of context by clarifying that the item is a media file in the project panel, but it does not provide additional parameter-level details such as examples, ID formats, or how to obtain the item_id. Since the schema already describes the single parameter adequately, the baseline of 3 is appropriate.

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 specific verb ('Get') and resource ('project item (media file in the project panel)') and enumerates the exact fields returned, making the purpose clear. It does not explicitly differentiate from the very similarly named sibling 'get_item_info' or related metadata tools, but the detail level still distinguishes it well enough for most cases.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives like get_item_info, get_project_panel_metadata, or inspect_project_item_av_metadata. The description implies it is for reading project item details, but it does not state when not to use it or which sibling covers overlapping functionality.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_panel_metadataGet Project Panel MetadataA
Read-onlyIdempotent

Get the current project panel metadata/column configuration as XML

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that the result is XML and reflects the 'current' configuration, but it does not add deeper behavioral context such as freshness guarantees or output size/format caveats. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence conveys the verb, resource, scope, and output format with no filler or redundancy. It is appropriately front-loaded and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters, strong read-only/idempotent annotations, and an output schema available, the description covers what an agent needs to select and invoke the tool. The XML return format is stated, and nothing material is missing for a no-arg getter.

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?

The tool has zero parameters, so the schema fully defines the input surface and description-level parameter guidance is unnecessary. The baseline of 4 applies.

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 uses a specific verb ('Get') and names a specific resource ('current project panel metadata/column configuration') plus the return format ('as XML'). It is clear, though it does not explicitly differentiate itself from get_project_info or get_full_project_overview.

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?

The phrase 'current project panel metadata/column configuration as XML' implies the calling context: you need a snapshot of the panel's column configuration. It does not state when to prefer this over sibling tools like get_project_info or set_project_panel_metadata, so guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_scratch_disksGet Project Scratch DisksA
Read-onlyIdempotent

Get the current scratch disk paths for the project.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to restate safety. It adds the notion of 'current' and 'paths' (plural), which is slightly useful, but it does not disclose behavior such as whether a project must be open or how missing scratch disks are represented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, clear sentence that directly states the tool's function with no filler or redundant information. It is appropriately front-loaded and concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only tool with a rich set of annotations and an output schema, the description is sufficient. Nothing essential is missing for an agent to understand and invoke this tool correctly.

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?

The tool has 0 parameters and schema description coverage is 100%. The description adds no parameter-specific meaning, but no parameters exist, so the baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and identifies a clear resource ('current scratch disk paths') scoped to the project. It is immediately distinguishable from sibling tools like set_scratch_disk_path and set_project_scratch_disk.

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?

Usage is implied by the read-only nature of the description, but there is no explicit statement about when to use this versus related tools such as set_scratch_disk_path or get_all_project_paths. No alternatives or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_qe_clip_infoGet Qe Clip InfoA
Read-onlyIdempotent

Get QE DOM information about a clip, including properties not available through the standard API.

ParametersJSON Schema
NameRequiredDescriptionDefault
clip_indexYesClip index on the track (0-based)
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile externally. The description adds only that this exposes QE DOM/non-standard data; it doesn't disclose output structure, failure modes, or operational caveats, but with the annotations and output schema present the gap is modest.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words or redundant restating of the tool name or schema. The qualifier about non-standard properties earns its place by differentiating the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three fully documented parameters, read-only annotations, and an output schema present, the description is minimally sufficient for making a basic call. It lacks explicit routing against sibling clip-inspection tools and a clearer definition of 'QE DOM', so an agent comparing get_qe_clip_info with get_clip_properties receives only implicit guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter is already explained in the input schema, including 0-based indexing and the track_type enum. The description adds no additional meaning about how the parameters are used, so the schema carries the weight.

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 operation ('Get QE DOM information about a clip') and adds a distinguishing qualifier ('properties not available through the standard API') that separates it from standard clip-property tools like get_clip_properties or get_full_clip_info. However, 'QE DOM' is unexplained jargon, so an agent without domain knowledge may still be unsure exactly what is being fetched.

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?

The phrase 'properties not available through the standard API' implies this is for non-standard or internal DOM data rather than ordinary clip properties, but it never names alternatives or states when not to use it. Usage context is implied, not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_render_queue_statusGet Render Queue StatusA
Read-onlyIdempotent

Report the Adobe Media Encoder queue running state, or fail closed with a named capability error when this Premiere build exposes no queue-status method on app.encoder.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds valuable context by disclosing the conditional failure mode: it fails closed with a named capability error when the Premiere build lacks the queue-status method. This goes beyond the annotations and helps the agent handle unsupported environments.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly worded sentence that front-loads the core action and then states the important fallback condition. Every clause earns its place, and there is no redundant or misleading content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters, an output schema present, and annotations covering side effects, the description supplies the essential behavioral information: what the tool reports and how it behaves when the queue-status method is unavailable. Nothing important is missing.

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?

The tool has zero parameters, so there is no parameter documentation burden. The schema is empty and fully self-describing; the description does not need to add parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Report') and a precise resource ('Adobe Media Encoder queue running state'), which clearly identifies the tool as a read-only status check. It is easily distinguished from sibling tools like start_batch_encode or add_to_render_queue that perform encoding actions.

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?

The description makes the intended use clear: report whether the render queue is running. It also explains the fail-closed behavior when the capability is unavailable, which helps an agent anticipate errors. It does not explicitly name alternatives, but the status-reporting purpose is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_selected_clipsGet Selected ClipsA
Read-onlyIdempotent

Get the currently selected clips in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the active-sequence scoping but does not describe edge-case behavior such as no active sequence or empty selection; this is acceptable for a simple getter but not standout.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the exact operation with no filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only getter with an output schema and annotations covering side effects, the description is complete. An agent can correctly invoke it without additional context.

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?

The tool has zero parameters and the input schema is an empty object, so there is nothing for the description to clarify about parameters. Baseline 4 applies because no parameter documentation burden exists.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('currently selected clips in the active sequence'), making the tool's function unambiguous and distinguishing it from sibling getters that target playhead position or timeline clips.

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?

The phrase 'currently selected clips in the active sequence' gives clear context for when to call this tool: whenever the agent needs the user's current selection in the active sequence. It does not explicitly name alternatives or exclusions, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_countGet Sequence CountA
Read-onlyIdempotent

Get the total number of sequences in the project.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the project-scoped counting behavior but discloses nothing beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, direct sentence with no extraneous words. The key information is front-loaded and the description earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless read-only count operation with an output schema and safety annotations, the description provides all necessary context. Nothing important is missing.

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?

The tool has zero parameters and schema description coverage is 100%, so the baseline is 4. There are no parameter semantics to clarify; the description is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get'), resource ('total number of sequences'), and scope ('in the project'). This clearly distinguishes it from siblings like list_sequences, which returns the sequences themselves rather than a count.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides no guidance on when to use this tool versus alternatives such as list_sequences or get_active_sequence. The agent must infer from the name and description that a count is desired.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_in_out_pointsGet Sequence In Out PointsA
Read-onlyIdempotent

Get the current sequence in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds only the scoping detail that this reads the current sequence, but it does not describe what happens when no sequence is active or how the values are represented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler or repeated information. It conveys the essential action and target resource while remaining appropriately minimal for a parameterless getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless read-only getter with an output schema and complete annotations, the description is sufficient. It clearly identifies the current sequence as the scope, and the output schema covers return-value details.

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?

This tool has zero parameters, so the schema is trivially complete and the baseline of 4 applies. The description has no parameter details to add, and none are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('current sequence in out points'), making the tool's purpose immediately clear. It is distinct from sibling tools like set_sequence_in_out_points and clear_sequence_in_out, so an agent can tell read vs. write operations apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus related tools such as get_sequence_settings, get_playhead_position, or set_sequence_in_out_points. The use case is implied by the name, but there is no stated context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_markers_by_typeGet Sequence Markers By TypeA
Read-onlyIdempotent

Get all markers of a specific type (comment, chapter, web link, etc.) from a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
marker_typeYesType of marker to filter
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds scoping to a sequence and marker type, which is useful, but it discloses no additional behavioral details such as ordering, empty results, or defaults beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler; the core action, object, filter, and scope all appear up front. Every word earns its place.

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?

The tool is a simple filtered read operation, and the output schema plus annotations cover return values and safety. The description omits the active-sequence default but the parameter schema documents that, so nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents marker_type and sequence_id, including the active-sequence fallback. The description's examples ('comment, chapter, web link') add a little human-readable color but no essential meaning beyond the enum.

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 clear action ('Get'), a resource ('markers'), and a distinguishing filter ('of a specific type') from a sequence. It is clear enough to select this tool over general list_markers, though it does not explicitly name sibling tools or contrast them.

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?

The description implies usage when the agent needs markers filtered by a given type from a sequence, which is clear context. It does not explicitly say when to prefer list_markers, get_clip_markers, or other marker tools, so no exclusions or alternatives are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_settingsGet Sequence SettingsA
Read-onlyIdempotent

Get the settings (resolution, frame rate, etc.) of a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds that it retrieves 'resolution, frame rate, etc.' but does not disclose whether the returned settings reflect effective or override values, nor whether it errors when no sequence is active. With annotations covering the read-only nature, a 3 is appropriate.

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?

The description is a single concise sentence that gets to the point and includes examples of what settings are returned. It is front-loaded and wastes no words. It could name alternatives, but for its length it is effective.

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 simple, read-only, single-parameter tool with a full output schema and complete parameter documentation, the description is sufficient. It lacks guidance on when to prefer this over richer sequence inspection tools, and doesn't state what happens if no sequence is active, but those are minor gaps given the tool's simplicity and annotation coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the single parameter is fully documented in the schema. The description does not add much beyond that, only confirming the tool returns settings and implying the sequence can be identified by ID or name or omitted to use the active sequence. Baseline 3 is correct when schema does the heavy lifting and description provides no additional parameter detail.

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: 'Get the settings (resolution, frame rate, etc.) of a sequence.' It is clear what the tool does and distinguishes it from siblings like set_sequence_settings since it is a read operation. It doesn't explicitly name sibling alternatives, so not a 5, but it is specific enough to understand its role.

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?

The description implies usage context: use this when you need a sequence's settings. It doesn't explicitly say when not to use it or mention alternatives such as get_sequence_structure or get_full_sequence_info for more detailed sequence data. The optional sequence_id parameter hints at active-sequence behavior, but no explicit guidance is given for choosing this over similar read tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_structureGet Sequence StructureA
Read-onlyIdempotent

Get a complete structural overview of the active sequence: all tracks, all clips with positions, gaps, and clip metadata. Essential for understanding timeline state before making edits.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description mostly restates the tool's informational content rather than adding behavioral details such as performance implications or edge cases. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences: the first front-loads the core scope and contents, the second provides a practical use case. Every sentence earns its place with no redundant filler.

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?

Given the low parameter count, strong annotations, and presence of an output schema, the description is nearly complete. The only notable gap is that it says 'active sequence' without explicitly noting that sequence_id can override that default, though the input schema covers this.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully documents the single optional sequence_id parameter (100% coverage), so the description doesn't need to explain it. The phrase 'active sequence' confirms the default behavior but doesn't add meaning beyond what the schema already states.

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 specific verb and resource: it 'Get[s] a complete structural overview' of a sequence, and enumerates the contents (tracks, clips with positions, gaps, clip metadata). It is clear, but it does not explicitly distinguish itself from overlapping siblings like get_full_sequence_info, get_timeline_summary, or list_sequence_tracks.

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?

The description gives useful context ('Essential for understanding timeline state before making edits'), which implies when an agent might want this tool. However, it provides no explicit guidance on when to prefer it over the many related sibling query tools, and it names no alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_source_monitor_infoGet Source Monitor InfoA
Read-onlyIdempotent

Get information about the clip currently loaded in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is established. The description adds the scoping detail that the operation targets the currently loaded Source Monitor clip, which is useful context, but it does not disclose behavior such as what happens when no clip is loaded.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that conveys the tool's purpose without any filler or repetition. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple zero-parameter read-only query, the annotations fully cover safety, and an output schema exists to document the return payload. The description is sufficient for an agent to select and call the tool correctly.

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?

The tool has zero parameters, so the input schema is empty and carries no semantic burden. With no parameters to document, the baseline is 4; the description need not explain parameter behavior.

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 ('Get'), a resource ('information about the clip'), and a clear scope ('currently loaded in the Source Monitor'). It distinguishes itself from related siblings such as get_source_monitor_position and open_in_source by focusing on the clip loaded in the Source Monitor, though it does not enumerate exactly which clip properties are returned.

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?

The wording 'currently loaded in the Source Monitor' implies when the tool should be used: when the agent needs details about the clip presently open in the Source Monitor. However, it provides no explicit guidance about when not to use it or what to use instead, especially relative to the closely related get_source_monitor_position.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_source_monitor_positionGet Source Monitor PositionA
Read-onlyIdempotent

Get the current time indicator position in the Source Monitor

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so safety is covered. The description adds minimal behavioral context beyond the resource and quantity being fetched, but it aligns with annotations and does not contradict them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler. It states the operation and resource immediately, making it easy for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only getter with an output schema and comprehensive annotations, the description is sufficient. It identifies the exact value being retrieved and needs no further elaboration on return values or side effects.

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?

The tool has zero parameters, so there is nothing for the description to explain. The empty input schema fully covers the parameter surface, and the baseline for a no-parameter tool is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Get the current time indicator position in the Source Monitor.' It clearly identifies what is being retrieved and the 'Source Monitor' scope distinguishes it from timeline-position siblings like get_playhead_position.

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?

The usage is implied: call this when you need the time indicator position in the Source Monitor. However, there is no explicit guidance about when not to use it or how it differs from related tools such as get_playhead_position or get_source_monitor_info.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_target_tracksGet Target TracksA
Read-onlyIdempotent

Get which tracks are currently targeted for editing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds 'currently targeted' context, suggesting a dynamic but non-destructive read, but does not disclose any additional behavioral specifics such as scope (e.g., active sequence) or output semantics. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, front-loaded with the verb and resource. Every word earns its place, with no repetition of the title or annotations.

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 zero-parameter, read-only tool with an output schema, the description is mostly sufficient: it states what information is returned and annotations cover safety. It is slightly thin on scope context (e.g., whether 'currently' refers to the active sequence), but this is minor and partly inferable from sibling tools.

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?

The tool has zero parameters and schema coverage is 100%, so there is no parameter ambiguity for the description to resolve. Per the rubric, a zero-parameter tool receives the baseline 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and names a distinct resource ('which tracks are currently targeted for editing'). It clearly differentiates this read tool from sibling setters like set_target_track and set_all_tracks_targeted, and from generic track-listing tools.

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?

The intended use is implied by the verb and resource: call it when you need to know the current target track state before editing. However, there is no explicit when-to-use guidance, exclusions, or mention of alternatives, so the agent must infer context from the name and sibling set.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timeline_gapsGet Timeline GapsA
Read-onlyIdempotent

Find all gaps (empty spaces) on the timeline between clips. Useful for identifying where content is missing or where clips can be tightened.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoWhich track type to analyze (default: both)
sequence_idNoSequence name or ID. Uses active sequence if omitted.
min_gap_secondsNoMinimum gap duration in seconds to report (default: 0.04 = ~1 frame at 24fps)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful context about what constitutes a 'gap' and frames the operation as an analysis task, which is consistent with the read-only annotation. No hidden mutation or side effects are suggested.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the core action and then gives a practical use case, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is low-complexity, has zero required parameters, full schema coverage, rich annotations, and an output schema. The description, combined with the structured metadata, gives an agent everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters (track_type, sequence_id, min_gap_seconds) are already fully documented in the schema. The description does not add parameter semantics, but the baseline of 3 applies because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Find') and a specific resource ('gaps/empty spaces on the timeline between clips'), which clearly defines what the tool does. This focus on inter-clip gaps distinguishes it from related timeline-analysis siblings like get_timeline_summary or get_sequence_structure.

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 a clear use case ('identifying where content is missing or where clips can be tightened'), which implies when this tool is useful. However, it does not explicitly mention when not to use it or name alternative tools for related timeline analysis, so the guidance is implied rather than fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timeline_summaryGet Timeline SummaryA
Read-onlyIdempotent

Get a human-readable summary of the timeline: total duration, clip count per track, total gaps, coverage percentage, used media files, effect usage, and marker overview. Great for a quick understanding of sequence state.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The read-only, idempotent, non-destructive nature is already declared in annotations, so the description only needs to add scoping context. It does this by disclosing that the result is a human-readable summary covering duration, clips, gaps, coverage, media, effects, and markers. Nothing contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: the first lists what the tool returns, the second states the use case. There is no filler, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one optional parameter and an output schema present, the description together with the schema and annotations gives an agent everything needed to decide whether and how to call it. No important safety, parameter, or return information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single optional sequence_id parameter is fully documented by the schema, including the 'active sequence if omitted' behavior. The description adds no extra parameter detail, but at 100% schema coverage the schema already carries the burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Get a human-readable summary of the timeline', then enumerates the exact metrics returned. This lets an agent clearly distinguish it from lower-level siblings like get_timeline_gaps or get_used_media_report.

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?

'Great for a quick understanding of sequence state' provides a clear intended use case. It does not explicitly name alternatives for raw or structured timeline data, but for a read-only overview tool this is adequate contextual guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_total_clip_countGet Total Clip CountA
Read-onlyIdempotent

Get the total number of clips across all tracks in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds meaningful scoping behavior—'across all tracks' and 'in the active sequence'—which clarifies what collection is being counted without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every word contributes to specifying the exact operation and scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only count operation with an output schema present, the description is complete. It specifies the scope (active sequence, all tracks), and the annotations plus output schema handle safety and return value expectations.

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?

The tool has zero parameters, so the baseline is 4. There is nothing for the description to add about parameters, and the empty schema already fully documents that no input is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('total number of clips across all tracks in the active sequence'), precisely identifying what is counted. This clearly distinguishes it from sibling tools like get_sequence_count, which counts sequences, and list_sequence_tracks, which lists tracks.

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?

The description gives clear context: the count is for the active sequence and includes all tracks, so an agent knows exactly when to call it. It does not explicitly name alternatives or exclusion cases, but for a simple getter this context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_track_infoGet Track InfoA
Read-onlyIdempotent

Get detailed information about a specific track: name, clip count, muted, locked, targeted, and list of all clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a safe, read-only, idempotent operation. The description adds value by specifying exactly what information is returned, including the notable inclusion of all clips on the track. This gives the agent a clear picture of the operation's behavior beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence that front-loads the action and resource, then lists the returned fields with no redundancy or filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple two-parameter schema, full enum coverage, read-only annotations, and presence of an output schema, the description covers all necessary context for an agent to select and invoke this tool correctly. Nothing important is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents track_type and track_index adequately. The description does not add parameter-level detail beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('specific track'), and enumerates the exact fields returned: name, clip count, muted, locked, targeted, and list of clips. This clearly distinguishes it from sibling tools like list_sequence_tracks, which list tracks rather than detail one track.

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?

The description implies the tool is for retrieving details about a single identified track, versus listing or modifying tracks. However, it does not explicitly state when to choose this over alternatives such as list_sequence_tracks or get_sequence_structure, nor does it mention any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_unused_mediaGet Unused MediaA
Read-onlyIdempotent

Find all project items that are NOT used in any sequence. Useful for cleaning up projects.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly/idempotent/non-destructive. The description adds the context that this is a discovery operation for cleanup, which aligns with the annotations and adds minimal extra behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no redundant words. Purpose and use case are both covered efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided, but the description clearly indicates the result (a list of project items not used in any sequence). No additional context is needed for a tool of this simplicity.

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?

The input schema is an empty object, so there are no parameters to document. Description fully covers the absence of parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Find') and a well-defined resource ('project items') with a clear condition ('NOT used in any sequence'). It distinguishes this tool from siblings like get_used_media_report and list_project_items.

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?

Provides a clear use case ('Useful for cleaning up projects') that tells the agent when to invoke it. It doesn't explicitly mention alternatives or when not to use, but the purpose is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_used_media_reportGet Used Media ReportA
Read-onlyIdempotent

Get a report of all media files used in a sequence: which source files are used, how many times each appears, on which tracks, and whether any sources are offline.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the description does not need to restate safety. It adds meaningful behavioral context by specifying exactly what the report covers, including offline detection, which goes beyond the annotations. It does not mention potential costs or failure modes, but the output schema covers return structure and annotations cover side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that immediately identifies the tool's purpose and then compactly lists what the report contains. There is no filler or redundant restatement.

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 read-only reporting tool with one optional parameter, full schema coverage, output schema, and strong annotations, the description covers the essential semantics: what is reported and what statuses are included. It is slightly less explicit about how the target sequence is resolved beyond the schema, but the schema already handles that, leaving no critical gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the parameter description already explains that sequence_id is a sequence name or ID and that the active sequence is used if omitted. The description adds no additional parameter-level meaning beyond referring to 'a sequence', so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get'), a clear resource ('report of all media files used in a sequence'), and enumerates the report's contents: source files, usage counts, tracks, and offline status. This clearly differentiates it from related siblings like get_unused_media or get_offline_media by anchoring on media usage within a sequence.

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?

The description implies the tool is for analyzing media usage in a sequence and detecting offline sources, providing useful context. However, it does not explicitly state when to prefer this over alternatives such as get_unused_media, get_offline_media, or check_offline_media, nor does it note any exclusions or prerequisites like having an active sequence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_value_at_timeGet Value At TimeA
Read-onlyIdempotent

Get the interpolated value of an effect property at a specific time

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds to query the value at
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the key behavioral nuance that the returned value is interpolated rather than a raw keyframe value. It does not describe edge-case behavior such as querying before/after the first/last keyframe, but with read-only annotations and an output schema the bar is lower.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, dense sentence that front-loads the core behavior. Every word contributes: 'interpolated' and 'at a specific time' carry the semantic payload distinguishing this tool from peers. No fluff or 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 simple read-only lookup tool with all parameters documented in the schema and an output schema present, the description is largely complete. It explains the purpose, the interpolation nuance, and the time dimension. It could explicitly mention that the property needs keyframes for interpolation to apply, but this is a modest gap given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and each parameter already has a clear description. The description adds only the 'interpolated' and 'specific time' context, which slightly reinforces the meaning of time_seconds but does not add substantial semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get'), a clear resource ('effect property'), and two important qualifiers ('interpolated', 'at a specific time'). This distinguishes it from related tools like get_keyframes (which returns keyframe data) and get_effect_properties (which returns property metadata), even among a crowded sibling list.

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?

The description implies the usage context: use this when you need the interpolated value of an effect property at a given time rather than raw keyframes or property metadata. However, it does not explicitly mention alternatives or state when not to use it, leaving the agent to infer routing from the sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_version_infoGet Version InfoA
Read-onlyIdempotent

Get Premiere Pro version and build information.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnly, idempotent, and non-destructive behavior, so the safety profile is covered. However, the description adds no further behavioral context (e.g., side effects, required permissions, or rate limits), providing no extra transparency beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no redundancy or extraneous information. It is optimally brief for its straightforward purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple getter with no parameters and no output schema provided, the description fully conveys the tool's function. No additional context is necessary for an agent to understand when and how to use it.

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?

The tool has zero parameters, so the schema description coverage is trivially 100%. With no parameters to document, the baseline is 4, and the description correctly avoids implying any input expected.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get') and a specific resource ('Premiere Pro version and build information'). It is unambiguous and distinguishes this tool from the many sibling tools by focusing on a unique, simple purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives, nor any mention of conditions or exclusions. While the purpose is obvious, the description does not proactively direct the agent to this tool over others or clarify when it is the appropriate choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_work_areaGet Work AreaA
Read-onlyIdempotent

Get the current work area in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, fully covering the safety profile. The description adds little behavioral context beyond 'current', but it does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the exact purpose with no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple, zero-parameter, read-only getter with an output schema and complete annotations. The description is sufficient for an agent to correctly select and invoke the tool.

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?

The tool has zero parameters, so there is no parameter documentation burden on the description. The baseline of 4 applies because there is nothing for the schema or description to explain beyond the call itself.

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 clearly states the verb 'get' and the resource 'current work area', and specifies that it returns in and out points. It is distinguishable from siblings like set_work_area and get_sequence_in_out_points through the resource name, but it does not explicitly call out those distinctions.

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?

Usage is implied: call this when you need the active work area's in and out points. However, there is no explicit guidance about when to prefer it over related getters such as get_sequence_in_out_points or is_work_area_enabled.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_workspacesGet WorkspacesA
Read-onlyIdempotent

List all available workspace layouts in Premiere Pro

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already disclose readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the scope 'all available' and the Premiere Pro context, but does not provide further behavioral detail, such as the shape or ordering of the returned workspace layouts; the output schema likely covers the return structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence with no filler. It front-loads the action ('List') and immediately specifies the resource, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only listing tool with an output schema and safety annotations, this description is complete enough for correct selection and invocation. Nothing essential is missing; the output schema can carry the return-format details.

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?

The input schema is an empty object, so there are no parameter semantics for the description to clarify. With zero parameters, the baseline is 4, and the description appropriately focuses on the action and result rather than on inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List') and resource ('all available workspace layouts in Premiere Pro'), so the agent knows exactly what the tool returns. It is also clearly distinguishable from the sibling tool set_workspace, which performs the opposite operation.

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?

The description makes the invocation context clear: call this tool when the agent needs to enumerate the available workspace layouts. Since the tool takes no parameters and is purely a read operation, explicit exclusions or alternative routing are less critical; the distinguishing sibling set_workspace is obvious from its name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_xmp_metadataGet Xmp MetadataB
Read-onlyIdempotent

Get the raw XMP metadata for a project item (includes EXIF, IPTC, Dublin Core, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds minor value by clarifying that the metadata is raw and includes EXIF, IPTC, and Dublin Core, but does not disclose much beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action (get raw XMP metadata) and succinctly lists the included metadata standards. There is no redundancy or wasted language.

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 simple read-only tool with one well-documented parameter and an output schema, the description is reasonably complete. It could slightly improve by clarifying how this differs from get_metadata or set_xmp_metadata, but the existing content is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, item_id, is fully described in the schema as 'Node ID or name of the project item', so schema description coverage is 100%. The tool description does not add any additional parameter-level meaning beyond what the schema already provides.

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 clearly identifies the operation: 'Get the raw XMP metadata for a project item' and enriches it with the metadata families included (EXIF, IPTC, Dublin Core). It is distinct enough from the sibling get_metadata by emphasizing 'raw XMP', though it does not explicitly name or contrast that sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives like get_metadata or set_xmp_metadata. The description implies a read-only metadata retrieval use case but provides no explicit when-to-use or when-not-to-use context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

has_proxyHas ProxyA

Check if a project item has a proxy attached

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

'Check if' clearly signals a query-style, non-mutating operation, and the description adds the specific subject matter (proxy attachment). However, annotations provide no positive safety hints, and the description does not cover edge cases like invalid item IDs or behavior when no proxy exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, focused sentence front-loads the action and resource, with no redundant wording or restatement of the title.

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 simple single-parameter predicate with an output schema, the description is largely complete. The only minor gap is edge-case behavior, which is low-risk for a tool of this simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides complete coverage for item_id with a clear description, so the tool description adds no additional parameter semantics. The baseline of 3 applies because the schema carries the parameter documentation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Check'), a clear resource ('a project item'), and a precise condition ('has a proxy attached'). It is easy to distinguish from related proxy tools like detach_proxy and manage_proxies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states what the tool does but gives no guidance on when to use it, what to do before/after, or how it compares to alternatives. The intended use as a predicate before proxy operations is only implied, not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_ae_compsImport Ae CompsA

Import After Effects compositions from an .aep file, failing closed when the file does not exist or when the target bin gains no items.

ParametersJSON Schema
NameRequiredDescriptionDefault
comp_namesNoArray of composition names to import. If omitted, imports all comps.
target_binNoTarget bin name or node ID (optional)
ae_project_pathYesFull path to the .aep file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes beyond annotations by stating 'failing closed' and specifying two exact failure conditions (file does not exist, target bin gains no items). This gives the agent concrete expectations for error behavior on a mutating operation. It does not cover every edge case, but the disclosed behavior is meaningful.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact sentence front-loads the primary action and source, then appends the key failure behavior. Every phrase earns its place; there is no redundant restatement of the title or schema.

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?

With an output schema present and full parameter schema coverage, the description covers the most important operational nuance (fail-closed behavior). Minor gaps like dependency on an After Effects connection or behavior when only some comp_names are valid are not addressed, but the overall picture is sufficient for a competent agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameter semantics are already fully documented. The description's 'file does not exist' and 'target bin gains no items' phrasing subtly relates to ae_project_path and target_bin, but it does not add new parameter-level meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Import') with a precise resource ('After Effects compositions') and source format ('.aep file'), making the tool's purpose immediately clear. This distinguishes it from sibling import tools like import_media, import_folder, and import_sequences by the AE-specific domain.

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?

Usage context is only implied: an agent can infer this is for bringing Ae comps from an .aep into the project, but there is no explicit when-to-use guidance or comparison to alternatives such as import_sequences or import_media. The sibling list contains many import tools, so explicit routing would add value.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_edlImport EdlA

Unavailable by design: CMX 3600 EDL import opens Premiere UI that can block the CEP bridge. No import is attempted; convert the EDL to FCP7 XML and use import_fcp_xml for unattended interchange.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesAbsolute path to the CMX 3600 .edl file that was requested for import.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description fully discloses that the tool performs no import and why: the Premiere UI it would open can block the CEP bridge. This behavioral detail goes well beyond the annotations, which only carry generic hints and do not reveal the no-op nature or the blocking risk.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry all essential information: unavailability, the risk, the no-op behavior, and the alternative. The key verdict is front-loaded with 'Unavailable by design,' and there is no filler or redundant restating of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a deliberately unavailable tool, the description is complete: it explains what would happen if called naively, why it is not attempted, and exactly which sibling tool to use instead. The output schema exists, the parameter list is minimal, and the guidance is sufficient for an agent to make the correct routing decision.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents file_path with 100% coverage. The description adds the CMX 3600 EDL context but does not add new parameter-level semantics such as path format, validation rules, or expected file extensions. Since schema coverage is complete, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description immediately states 'Unavailable by design' and 'No import is attempted,' making the tool's actual behavior unmistakable. It names the specific resource (CMX 3600 EDL) and clearly distinguishes itself from the sibling import_fcp_xml rather than just restating the title.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains that this tool should not be used for EDL import and gives the exact alternative workflow: convert the EDL to FCP7 XML and call import_fcp_xml. This is strong when-to-use and when-not-to-use guidance, including the reason for the exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_fcp_xmlImport Fcp XmlA

Open a Final Cut Pro XML file as a new Premiere project. app.openFCPXML(path, projPath) requires a destination project path; it does not merge the XML into the currently open project.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull path to the FCP XML file to read
project_pathYesFull path of the new .prproj file Premiere should create for the imported timeline. Required: app.openFCPXML takes both a source and a destination path.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description reveals important behavioral traits beyond the annotations, such as requiring both source and destination paths and the fact that the XML becomes a new project rather than being merged. It also exposes the underlying API call, which helps an agent understand the operation's behavior. Annotations are not contradicted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words: the first states the core action, and the second provides the key caveat and requirement. The most important behavioral distinction is front-loaded, making it easy for an agent to quickly evaluate the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with two well-documented parameters, healthy annotations, and an output schema, the description covers everything an agent needs to call it correctly. It explains the required destination path, the API method, and the crucial non-merge behavior. No critical contextual gap remains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and both parameters already have clear descriptions. The description reinforces the role of the destination path and mentions the API signature, but does not add significant semantic detail beyond what the schema already provides. A baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Open a Final Cut Pro XML file as a new Premiere project') with a specific resource and destination. It also distinguishes itself by explicitly noting it does not merge into the currently open project, which separates it from related import tools.

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?

The description provides clear usage context: it requires a destination project path and is intended for creating a new project rather than merging into an existing one. It gives an explicit exclusion ('does not merge') but does not name an alternative tool for merging, so the guidance is clear but not fully complete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_folderImport FolderB

Import an entire folder of media into the project

ParametersJSON Schema
NameRequiredDescriptionDefault
folder_pathYesPath to the folder to import

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only assert that the operation is not read-only, not idempotent, and not destructive. The description adds no further behavioral detail such as whether the import is recursive, whether a bin is created, how duplicates are handled, or what happens on unsupported files. This is a meaningful gap for a mutating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one efficient sentence with no filler, and the key information (action, resource, destination) is front-loaded. It is appropriately sized for a simple one-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema, the description is minimally viable for invocation, but it omits important contextual details such as supported media types, recursion behavior, destination bin, and how it differs from the many sibling import tools. This leaves the agent to infer selection criteria.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage for the single folder_path parameter with a clear description. The tool description does not add extra parameter context, but the baseline of 3 applies because the schema already documents the only parameter adequately.

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 clearly states a specific action ('Import'), a resource ('an entire folder of media'), and a destination ('into the project'). It is more informative than the title and implies a distinction from single-file import tools, though it does not explicitly name any sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to choose this tool over siblings such as import_media, import_image_sequence, import_sequences, or import_ae_comps. The phrase 'entire folder' is the only implicit cue, and no exclusions or conditions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_image_sequenceImport Image SequenceA

Import a numbered image sequence as a single video clip.

ParametersJSON Schema
NameRequiredDescriptionDefault
target_binNoTarget bin name to import into (optional, imports to root if omitted)
first_file_pathYesFull path to the first image in the sequence (e.g., /path/to/frame_001.png)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the key behavior that the result is a single video clip, which is useful context beyond the annotations. However, with all annotations set to false and thus providing no meaningful guidance, the description does not cover side effects, sequence naming requirements, or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of eleven words, front-loaded with the verb and object, with zero wasted words. It is efficiently structured.

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 simple two-parameter import tool with an output schema present, the description covers the essential use case and result. It does not address edge cases like non-contiguous sequences, but the schema and output schema make the definition adequately complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 even without parameter details in the description. The description adds no extra parameter-level information, but the schema already documents both parameters clearly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Import', a specific resource 'numbered image sequence', and names the outcome 'as a single video clip'. This clearly distinguishes it from sibling import tools like import_media and import_folder.

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?

The description clearly indicates the use case: importing a numbered image sequence as a single clip. It does not explicitly name alternatives or exclusions, but the specificity of 'numbered image sequence' provides clear context that generic import tools do not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mediaImport MediaC

Import media files into the project

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathsYesArray of file paths to import
target_binNoOptional bin name or node ID to import into. Imports to root if omitted.
suppress_uiNoSuppress import dialogs (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations exist but only convey that the operation is not read-only, not idempotent, and not destructive. The description adds no behavioral context beyond that, such as whether files are copied or linked, whether duplicates are handled, or whether dialogs are suppressed (though suppress_ui appears in the schema).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It communicates the core operation directly and every word earns its place.

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?

Given the large set of sibling import tools and the presence of an output schema, the description is too thin to be fully actionable by itself. It lacks usage context, tool-selection guidance, and behavioral detail, though the schema does cover parameter semantics well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are already well documented in the schema. The description itself does not add parameter meaning beyond the schema, which places it at the baseline for high coverage.

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: 'Import media files into the project.' It is clear enough at a high level, but it does not explicitly differentiate from sibling import tools such as import_folder, import_image_sequence, import_sequences, or import_fcp_xml.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus the many sibling import tools. No conditions, alternatives, or exclusions are mentioned, so an agent must infer which import scenario this tool handles.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mogrtImport MogrtB

Import a Motion Graphics Template (.mogrt) file and add it to the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesFull path to the .mogrt file
track_indexNoVideo track index (default: 0)
start_secondsNoStart time in seconds (default: 0)
duration_secondsNoDuration in seconds (default: 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is not read-only, not destructive, and not idempotent, and the description adds that the template is placed on the timeline. It does not disclose behavior around repeated imports, missing files, or whether a project item is created, but the annotation coverage lowers the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single declarative sentence with no filter: it states the action, the resource, and the timeline target directly. The description earns its place without repeating the title or schema.

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?

This is a low-complexity tool with a complete parameter schema, defaults, and an output schema, so the description plus structured data is mostly sufficient. The notable gap is the lack of any pointer to the sibling import_mogrt_from_library, but that is more a tool-selection issue than an invocation gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (mogrt_path, track_index, start_seconds, duration_seconds) are already documented with defaults and descriptions. The description adds no additional parameter-level meaning, which matches the baseline for full schema coverage.

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 specific verb (Import), a specific resource (.mogrt Motion Graphics Template), and a concrete outcome (add to the timeline). It is clear enough to distinguish from generic media or sequence import tools, though it does not explicitly contrast with the sibling import_mogrt_from_library.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to choose this tool over import_mogrt_from_library, import_media, or add_to_timeline. There are no prerequisites, exclusions, or selection criteria stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mogrt_from_libraryImport Mogrt From LibraryB

Import a MOGRT from a named Adobe Creative Cloud Library.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_nameYesName of the MOGRT in the library
track_indexNoVideo track index (default: 0)
library_nameYesName of the Adobe Creative Cloud Library that contains the MOGRT
start_secondsNoStart time in seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so there is no contradiction. However, the description adds no behavioral context beyond the act of importing—it does not say whether the MOGRT is placed on the timeline, into a bin, duplicated, or whether it requires an active sequence. The marginal transparency contribution is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word earns its place and the core verb+resource+source pattern is immediately scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The 100% parameter documentation and presence of an output schema mean basic invocation details are covered. However, the description omits operational context such as how the track_index and start_seconds parameters relate to placing the MOGRT, and it does not distinguish itself from sibling 'import_mogrt'. Adequate but with visible gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all four parameters with descriptions (100% coverage), so the description does not need to explain them. It adds no additional parameter-level semantics, but the schema carries the burden adequately, warranting the baseline score.

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?

States a specific verb ('Import') and resource ('MOGRT from a named Adobe Creative Cloud Library'), so an agent can tell this is a library-source import. It does not explicitly contrast with the sibling 'import_mogrt', but the 'from a named Adobe Creative Cloud Library' qualifier provides meaningful differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'import_mogrt' or other import-related tools. No mention of prerequisites, placement behavior, or conditions that would make this the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_sequencesImport SequencesB

Import sequences from another Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYesFull path to the source .prproj file
sequence_idsYesNon-empty array of sequence IDs to import from the source project.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the operation is expected to modify state and may not be idempotent. The description adds the key fact that this imports sequences from another Premiere Pro project file, but it doesn't clarify what happens on conflict (e.g., duplicate sequence names), whether existing sequences are overwritten, or how the response reports success/failure. With the annotations carrying the safety profile, the description provides moderate additional context but no conflict or side-effect detail.

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?

The description is a single clear sentence, front-loaded with the action and resource. It is concise and easy to parse. It could add a bit more context (like destination behavior) without becoming bloated, but as-is it is well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is an output schema (not shown in the provided context), which presumably describes the return value. The tool has only two required parameters, both documented. For a relatively simple import operation, the description plus schema covers the basics. However, it doesn't mention key contextual details: whether the source project must be closed while importing, how sequence IDs are obtained (e.g., via list_sequences on the source project), or what happens when a sequence with the same name already exists in the destination. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters (project_path and sequence_ids) are already documented in the schema. The description phrase 'from another Premiere Pro project file' reinforces the meaning of project_path. However, the description does not explain where the imported sequences land in the destination project (e.g., whether they are placed in the same bin or at root level), which is a semantic gap. Overall, the schema does the heavy lifting, and the description adds little beyond that baseline.

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 action (import) and a resource (sequences from another Premiere Pro project file), which is clear enough. However, it doesn't distinguish itself from sibling tools like import_media, import_folder, import_fcp_xml, import_ae_comps, or import_edl—all of which involve importing some asset. The verb 'import' plus 'sequences from another project file' narrows it, but explicit differentiation from those siblings is missing.

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?

The description implies the tool is used when sequences need to be brought in from another .prproj file, and the parameters (project_path, sequence_ids) reinforce this. But there is no explicit statement about when to use this vs. alternatives like import_ae_comps or import_fcp_xml, nor any mention of prerequisites (e.g., the source project must be closed or the current project must be open). The usage context is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

insert_from_sourceInsert From SourceA

Insert the clip from the Source Monitor at the playhead position (insert edit — shifts existing clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_track_indexNoTarget audio track index (default: 0)
video_track_indexNoTarget video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that the operation is not read-only and is not flagged destructive, but the description adds the key behavioral consequence: 'shifts existing clips.' This is useful beyond structured hints, though it does not elaborate on undoability or exact timeline state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one front-loaded sentence with a parenthetical that explains the key consequence. Every word contributes; there is no filler or repetition of structural metadata.

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 two-parameter tool with no required arguments and an output schema, the description covers the essential operation and its main side effect. It leaves minor implied prerequisites (a loaded Source Monitor clip, an active sequence) unstated, but these are reasonably inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and each parameter has a meaningful description plus a default, so the tool description does not need to repeat them. The description adds no parameter-specific semantics, which is acceptable at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb ('Insert'), names the source ('Source Monitor'), and the destination ('playhead position'), and distinguishes the operation from overwrite-style edits by noting it 'shifts existing clips.' This is clear and disambiguates from sibling overwrite_from_source.

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?

The description gives context (Source Monitor, playhead position) and notes the shift behavior, so an agent can infer when an insert edit is appropriate. However, it does not explicitly state when not to use it or name alternatives such as overwrite_from_source, leaving selection partly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_after_effects_render_templatesInspect After Effects Render TemplatesA
Read-onlyIdempotent

Read available render and output-module template names from the first existing After Effects render-queue item. It never queues or renders a composition.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is established. The description adds meaningful behavioral context beyond that: it reads from the first existing render-queue item and explicitly disclaims queue/render side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences deliver the core purpose and a key exclusion with no filler. The primary behavior is front-loaded, and the negative guarantee adds value without bloating the description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only inspection tool with a full output schema and strong annotations, the description is sufficient. It identifies the data source, the type of data returned, and the critical non-behavior (no queueing/rendering), so an agent can invoke it correctly without further clarification.

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?

The tool has zero parameters and an empty input schema, so there are no parameter semantics for the description to clarify. The description correctly omits parameter detail and the schema is already unambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Read'), resource ('render and output-module template names'), and source ('first existing After Effects render-queue item'). It also draws a clear line against queueing or rendering, which distinguishes it from sibling tools like enqueue_after_effects_render and preview_after_effects_render.

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?

The description clearly implies when to use it: when the agent needs template names without triggering a render. It also states a firm exclusion ('never queues or renders'), but it does not explicitly name alternative sibling tools or spell out conditions for choosing a different inspection tool like inspect_after_effects_template_source.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_after_effects_template_sourceInspect After Effects Template SourceA
Read-onlyIdempotent

Inspect a saved After Effects source composition for MOGRT-relevant dimensions, duration, text fonts, layer-source kinds, and Essential Graphics controller names when the host exposes the AE 16.1+ readback API. It never creates a composition or returns asset paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
composition_nameNoOptional exact composition name; omit to inspect the active composition.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds meaningful behavioral constraints beyond annotations: it never creates a composition and never returns asset paths, and it depends on the AE 16.1+ readback API being exposed. This gives the agent important failure-context and scope information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The main purpose and scoped dimensions are front-loaded, and the behavioral exclusions are stated succinctly in the second sentence. Every clause adds useful information.

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?

This is a simple read-only inspection tool with one optional parameter and an output schema, so the description does not need to explain return values. It covers what is inspected, the API prerequisite, and explicit non-behaviors. It is complete for an agent to select and call the tool correctly, though it stops short of detailing error behavior when the API is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the single optional parameter composition_name, including the active-composition fallback behavior. The tool description does not add parameter-level detail beyond the schema, but it does not need to; the schema already carries the semantic load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Inspect a saved After Effects source composition') and enumerates the exact dimensions of interest: MOGRT-relevant dimensions, duration, text fonts, layer-source kinds, and Essential Graphics controller names. This clearly distinguishes it from sibling tools like inspect_after_effects_render_templates or verify_mogrt_artifact.

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?

The description gives a clear condition for use: 'when the host exposes the AE 16.1+ readback API.' It also states what the tool does not do ('never creates a composition or returns asset paths'), which helps avoid misuse. It does not explicitly name alternative tools when the API is unavailable, but the context is clear enough for an agent to route appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_cmx3600_edlInspect Cmx3600 EdlA
Read-onlyIdempotent

Parse a local CMX 3600 EDL into bounded event, reel, track, transition, and timecode facts without importing it into Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .edl file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds that parsing occurs 'without importing it into Premiere', reinforcing non-mutating behavior. It does not disclose other traits like error handling or file access specifics, but given the annotation coverage, the bar is met at a basic level.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly constructed sentence with no filler. The verb and primary subject are front-loaded, and every element (facts list, import exclusion) earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a simple single-parameter schema, an existing output schema, and annotations covering safety, the description fully conveys the tool's purpose and constraints. Nothing essential is missing for an agent to decide when to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage with the description 'Existing local .edl file', which is clear. The tool description does not add any additional parameter-specific semantics beyond what the schema already conveys, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Parse'), a precise resource ('local CMX 3600 EDL'), and enumerates the output facts (event, reel, track, transition, timecode). It explicitly says 'without importing it into Premiere', which distinguishes it from import-related tools and clarifies its non-destructive nature.

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?

The description implies usage for inspection without import, but does not explicitly state when to prefer this tool over alternatives like validate_cmx3600_edl or compare_cmx3600_edls. It lacks explicit exclusions or alternative tool mentions, though the contrast with import is helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_dom_objectInspect Dom ObjectA
Read-onlyIdempotent

Inspect a Premiere Pro DOM object and list its properties, methods, and values. Useful for exploring the API and debugging.

Examples:

  • "app.project" → project properties

  • "app.project.activeSequence" → sequence properties

  • "app.project.activeSequence.videoTracks[0].clips[0]" → first clip on V1

  • "app.project.activeSequence.videoTracks[0].clips[0].components[0]" → first component of a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
max_depthNoMax depth for nested inspection (default: 1, max: 3)
object_pathYesDot-path to the DOM object to inspect (e.g., 'app.project.activeSequence')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, non-destructive behavior. The description adds the behavioral detail that it lists properties, methods, and values and provides concrete examples, but it does not add rich context such as error behavior or output size. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the purpose, and every example earns its place by clarifying realistic usage. No redundant or filler content.

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?

Given the presence of a full input schema, output schema, and read-only annotations, the description is largely complete. It clearly explains what the tool does, how to use it, and what kind of paths are valid. It leaves minor room for more detail about invalid paths or output size, but nothing essential is missing.

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 description coverage is 100%, so the baseline is 3. The description adds meaningful value by providing concrete dot-path examples, including array indexing, which helps an agent understand valid object_path formats beyond the schema text.

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?

Description states a clear verb ('Inspect') and resource ('a Premiere Pro DOM object') and says it lists properties, methods, and values. It is distinct from more specific sibling inspectors, though it does not explicitly differentiate itself from them.

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?

Says it is 'useful for exploring the API and debugging,' which gives clear context for when an agent would use it. It does not mention alternatives or exclusions, but the intended use case is reasonably explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_edit_readinessInspect Edit ReadinessA
Read-onlyIdempotent

Audit the active sequence in one read-only bridge request for empty timelines, primary-track gaps, disabled clips, muted tracks, and excessive Motion scale. Structural diagnostics only; it cannot judge story, framing, sound, or final delivery.

ParametersJSON Schema
NameRequiredDescriptionDefault
primary_video_trackNoVideo track used for gap inspection (default: 0)
gap_tolerance_secondsNoIgnore smaller gaps caused by time rounding (default: 0.001)
maximum_scale_percentNoWarn above this Motion scale percentage (default: 110)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by emphasizing 'one read-only bridge request' and confirming the scope is structural diagnostics only, which prevents misuse for creative or delivery decisions. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two tight sentences with no filler. The first sentence front-loads the action and the specific diagnostic checks; the second sentence sets an important limitation. Every clause contributes to selection or invocation clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the three optional parameters are fully described in the schema, an output schema is present, and annotations already communicate read-only/idempotent safety, this description is complete enough for an agent to invoke the tool correctly. It covers scope, limitations, and the active-sequence target without needing to explain return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all three optional parameters. The description adds slight contextual mapping by mentioning 'primary-track gaps' and 'excessive Motion scale,' which relate to primary_video_track and maximum_scale_percent, but it does not add meaning beyond what the parameter descriptions already provide. A baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Audit the active sequence'), then enumerates the exact diagnostic checks: empty timelines, primary-track gaps, disabled clips, muted tracks, and excessive Motion scale. It also distinguishes itself from quality-review tools by declaring 'Structural diagnostics only' and listing what it cannot judge. This makes the tool's scope unmistakable even among the many sibling inspect/analyze tools.

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?

The description clearly states when this tool is appropriate (structural readiness audit) and explicitly excludes story, framing, sound, and final delivery judgments. It does not name a specific sibling tool as the alternative for those qualitative concerns, but the boundary is concrete enough that an agent can infer when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_fcpxml_interchangeInspect Fcpxml InterchangeA
Read-onlyIdempotent

Inspect a local FCPXML document's root version, sequence/clip counts, bounded asset declarations, and text-only parser warnings before deliberate Premiere import.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .fcpxml or .xml file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral detail: it performs text-only parser warnings and reports structural counts without mutating, which reinforces the read-only nature beyond the annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence delivers the subject, scope, and purpose without filler. The most important information is front-loaded, and every clause adds specific detail about what the inspection covers.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the single well-documented parameter, the presence of an output schema, and read-only annotations, the description provides sufficient context for correct invocation. It states what is inspected and why, leaving no critical operational gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one parameter, 'path', and the schema already describes it fully as an existing local .fcpxml or .xml file. Schema description coverage is 100%, so the description adds no additional parameter-level meaning beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Inspect'), a specific resource ('a local FCPXML document'), and enumerates the concrete aspects inspected: root version, sequence/clip counts, bounded asset declarations, and parser warnings. This clearly distinguishes it from neighboring tools like import_fcp_xml or export_as_fcp_xml.

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?

The phrase 'before deliberate Premiere import' gives a clear usage context as a pre-flight inspection step. It does not explicitly name alternatives or exclusions, but the context is strong enough to guide an agent away from mutation or import tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_film_editorial_workflowInspect Film Editorial WorkflowA
Read-onlyIdempotent

Validate a revision-bound film editorial manifest against captured source and timeline identities. Build complete declared coverage review groups, independent picture/audio preferences, screening-note exceptions, story dependencies, VFX state, change impact and a department turnover manifest. Local inspection only: no host edits, exports, automatic creative decisions or verified host claims.

ParametersJSON Schema
NameRequiredDescriptionDefault
vfxYesIndependent creative and delivery states; reconciled deliveries require a receipt.
notesYesVersion-bound screening notes. Stale notes remain unresolved; frames are never guessed onto a new cut.
scenesYesExpected script scenes, including those without coverage.
profileYesCustom review preferences; overlap is a review-only source handle in each source timebase.
sourcesYesDeclared source inventory tied to captured source evidence; technical values require host verification.
viewingYesExplicit output viewing profile; rendered-output checks remain required.
coverageYesMany-to-many source-range to scene graph. Preferences never remove unselected coverage.
previousNoOptional previously saved occurrence snapshot for change impact. Caller supplied, not an authenticated host receipt.
turnoverYesRequested turnover settings; handles use each source timebase. This tool creates a manifest, never an export.
project_idYesCaptured project-context ID.
storyCardsYesReorderable story fragments and explicit dependency graph.
occurrencesYesExplicit source/timeline occurrences, separate from source coverage; retimes block automatic handoff.
script_revisionYesHuman-supplied script revision for scene and line identities.
expected_source_revisionYesExact captured source revision.
expected_context_revisionYesExact captured context revision; stale requests fail.
expected_timeline_revisionYesExact captured timeline revision.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, and the description extends these with concrete operational boundaries: local-only inspection, no host edits, no exports, no automatic creative decisions, and notably 'no verified host claims' — clarifying the output carries no host-verification authority. This adds real behavioral context beyond the structured hints, and nothing contradicts the annotations.

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?

Three sentences with the core purpose front-loaded in the first sentence, a bounded output enumeration in the second, and a terse boundary statement in the third. Every sentence earns its place for a 16-parameter tool, though the middle sentence's seven-item list of outputs is dense and could be structured more readably.

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 tool with 16 deeply nested parameters, 100% schema coverage, a rich annotation set (read-only, idempotent, non-destructive, closed-world), and an output schema present, the description covers the essential context: what is validated, what artifacts are produced, and the operational safety boundaries. The residual gap is missing selection guidance against the many inspection/audit siblings, which is more a usage-guideline shortfall than a completeness failure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with rich per-parameter semantics (e.g., 'Stale notes remain unresolved; frames are never guessed onto a new cut,' 'Preferences never remove unselected coverage'), so the baseline of 3 applies. The description adds high-level workflow framing ('independent picture/audio preferences,' 'screening-note exceptions,' 'department turnover manifest') that maps parameter groups to their role in the tool, but it does not add operational detail the schema already lacks.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and resource: 'Validate a revision-bound film editorial manifest against captured source and timeline identities.' The second sentence enumerates concrete artifacts it builds (coverage review groups, independent picture/audio preferences, screening-note exceptions, story dependencies, VFX state, change impact, department turnover manifest), which clearly distinguishes it from surface-similar siblings like inspect_edit_readiness or audit_timeline_health. An agent can tell what this tool does without opening the schema.

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?

The 'Local inspection only' clause implies inspection context and the negative list ('no host edits, exports, automatic creative decisions or verified host claims') sets a clear boundary of what the tool will not do. However, it never states when to use this tool versus alternatives such as inspect_edit_readiness, inspect_sequence_review_report, or audit_timeline_health, and names no sibling or precondition. The agent must infer selection criteria from the name and output enumeration.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_media_streamsInspect Media StreamsA
Read-onlyIdempotent

Inspect a local media file with ffprobe and return container, stream, codec, time-base, channel, and chapter metadata. Read-only and independent of Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local media file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful context beyond these: it relies on ffprobe, works independent of Premiere, and enumerates the metadata categories returned. It stops short of caveats like ffprobe availability or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one tight, information-dense sentence that front-loads the main action and result. Every clause earns its place: the ffprobe method, the metadata fields, read-only safety, and Premiere independence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one fully documented parameter, an output schema present, and annotations covering the read-only/idempotent safety profile, the description covers everything an agent needs to select and invoke this tool correctly. The only minor addition would be an example path, but nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with media_path described as 'Existing local media file'. The tool description adds the word 'local' and the ffprobe framing but does not meaningfully elaborate on the parameter beyond the schema. Baseline 3 applies because the schema already documents the parameter fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action — inspect a local media file via ffprobe — and lists the exact metadata returned (container, stream, codec, time-base, channel, chapter). This clearly distinguishes it from sibling inspect_* tools like inspect_cmx3600_edl or inspect_dom_object, which target different resources.

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?

The phrase 'local media file' and 'independent of Premiere' establish a clear context for when to use this tool versus project-state inspection tools. However, it does not explicitly name alternative tools or state when not to use it, which prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_mogrt_libraryInspect Mogrt LibraryA
Read-onlyIdempotent

List bounded top-level template names and version directories in an existing workspace-contained local MOGRT library. It never reads MOGRT contents or changes the library.

ParametersJSON Schema
NameRequiredDescriptionDefault
library_directoryYesExisting workspace-contained local library root.
approved_workspace_pathYesAbsolute operator-approved workspace root.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds more specific behavioral context by stating the tool never reads MOGRT contents or changes the library, and that it is bounded to top-level listing. This is consistent with the annotations and provides meaningful extra detail beyond the structured hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. The first sentence front-loads the action and scope, and the second clarifies non-destructive and non-content-reading behavior. Every sentence contributes meaningful information without repeating the title or schema.

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 read-only listing tool with only two parameters and an output schema present, the description provides the key prerequisites and behavioral boundaries needed for correct invocation. The phrase 'bounded top-level' is slightly ambiguous, but the output schema likely clarifies the returned structure, so nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters already described as 'existing workspace-contained local library root' and 'absolute operator-approved workspace root'. The tool description reinforces the workspace-contained and existing constraints but does not add parameter-specific syntax, formatting, or additional semantic detail beyond what the schema already provides.

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 action ('List bounded top-level template names and version directories') on a specific resource (workspace-contained local MOGRT library). It distinguishes the tool from import/preview/publish MOGRT siblings by emphasizing that it never reads MOGRT contents or changes the library, though it does not explicitly name those siblings.

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?

The description supplies clear contextual guidance: it applies to an existing workspace-contained library and is appropriate when only top-level template names and version directories are needed. It does not explicitly name alternatives or state when not to use it, but the 'never reads MOGRT contents or changes the library' phrasing implies exclusions for content inspection or mutation workflows.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_project_item_av_metadataInspect Project Item Av MetadataA
Read-onlyIdempotent

Inspect a project item's documented effective/original color space, LUT IDs, available color-space overrides, and audio channel shape.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesProject item node ID or exact name

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey read-only, idempotent, and non-destructive behavor, so the description only needs to add contextual value. It adds the specific metadata domains returned and the 'documented' qualifier, which hints that the tool reads stored metadata rather than deriving values. No behavioral contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence that front-loads the action and then tersely lists exactly what will be inspected. Every word earns its place, and there is no redundant restating of the title or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, read-only tool with a strong annotation profile and an output schema, this description is sufficient. It tells the agent what data is exposed, and the output schema can carry the return structure. No critical usage or safety information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter item_id is fully documented in the schema ('Project item node ID or exact name'), so schema coverage is 100%. The description adds no extra parameter-level meaning, so it does not need to compensate; the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect'), a specific resource ('project item'), and enumerates concrete metadata facets: effective/original color space, LUT IDs, color-space overrides, and audio channel shape. This makes it distinguishable from generic siblings like get_item_info or inspect_sequence_av_settings without needing to open their schemas.

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?

The narrow scope implies when to use it: when a caller needs these specific AV metadata facets for a project item. However, it does not explicitly state when not to use it or name an alternative tool, so the agent must infer the boundary from sibling names and context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_project_recoveryInspect Project RecoveryA
Read-onlyIdempotent

Read-only recovery inspection: diagnose the active project path and list adjacent Premiere Auto-Save project candidates without opening, copying, or restoring anything.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description discloses that it inspects the active project path and lists Auto-Save candidates while deliberately avoiding opening, copying, or restoring. This adds useful behavioral context without contradicting the readOnlyHint, idempotentHint, or destructiveHint annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence front-loads the tool category with a colon and then packs essential scoping and safety constraints. Every clause earns its place with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless read-only inspection tool with an output schema and strong annotations, the description provides enough behavioral and safety context for an agent to select and invoke it correctly. It explains what it inspects and what it deliberately avoids doing.

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?

The tool takes zero parameters and the input schema is empty, so there are no parameter semantics to clarify. This matches the baseline for parameterless tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a precise action: diagnosing the active project path and listing adjacent Premiere Auto-Save project candidates. It also distinguishes itself from mutation tools by explicitly noting it does not open, copy, or restore anything.

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?

The description establishes clear invocation context as a read-only recovery inspection of the active project. It does not explicitly name alternative sibling tools or state when-not-to-use, but the read-only and non-restoring qualifiers strongly signal when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_sequence_av_settingsInspect Sequence Av SettingsA
Read-onlyIdempotent

Inspect documented audio, tone-mapping, linear-compositing, bit-depth, render-quality, and display settings for the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safe read behavior is covered. The description adds the active-sequence scope and the specific setting domains, which is useful context, but it does not disclose any additional behavior such as failure modes, prerequisites, or output format. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that names the action, resource, and all covered setting categories without filler. Every part earns its place and the structure makes the scope immediately parseable.

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 zero-parameter read-only inspection tool with an output schema and strong annotations, the description is largely sufficient. It clearly states the resource and the settings inspected; it only stops just short of naming the closest sibling tools or clarifying the slightly unusual phrase 'documented settings.'

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?

The tool takes zero parameters, so there is no parameter burden for the description to carry. Input schema coverage is effectively complete and the description needs to explain nothing about arguments.

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 identifies a specific action (inspect) applied to a specific resource (the active sequence) and enumerates the settings covered: audio, tone-mapping, linear-compositing, bit-depth, render-quality, and display. It is clear, but it does not distinguish itself from nearby siblings such as get_sequence_settings or get_av_feature_support.

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?

The intended use is implied by the tool's specialized scope and the active-sequence qualifier, but the description gives no explicit when-to-use guidance, no exclusions, and does not name any alternative tool. An agent would infer it for inspecting active-sequence AV settings but receives no routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_sequence_review_reportInspect Sequence Review ReportA
Read-onlyIdempotent

Build one read-only sequence handoff report with timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. Media paths are never returned; marker comments require an explicit opt-in. It does not prove rendered pixels, audio quality, caption correctness, rights, or editorial approval.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_markersNoMaximum marker entries to return from the start of the sequence (default: 50, maximum: 200).
sequence_idNoSequence name or ID. Uses the active sequence if omitted.
primary_video_trackNoVideo track used for gap inspection (default: 0).
include_marker_commentsNoInclude marker comments. Defaults to false because comments can contain private editorial notes.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable behavioral context beyond annotations: media paths are never returned, marker comments require explicit opt-in, and the report stops short of proving certain quality or rights aspects. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tightly packed sentences: the first lists the report contents, the second states privacy and opt-in constraints, the third states what the report does not prove. No word is wasted and the most important facts are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, annotations carry the safety profile, and the description covers contents, privacy constraints, and false-confidence limits, the tool is well specified. An agent can decide whether to call it and what to expect without hidden surprises.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters well. The description reinforces the marker-comment opt-in behavior, matching include_marker_comments, but adds little new parameter-level meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Build') and resource ('sequence handoff report') and enumerates the exact report contents: timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. This precise enumeration distinguishes it from similar sibling tools like get_timeline_summary or get_offline_media.

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?

The description provides clear when-not-to-use boundaries by stating what the tool does not prove (rendered pixels, audio quality, caption correctness, rights, editorial approval) and what it never returns (media paths). It does not name explicit alternative tools, but the exclusions give meaningful usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_stabilizer_statusInspect Stabilizer StatusA
Read-onlyIdempotent

Read Warp Stabilizer presence, exposed status properties, and conservative analysis state for one clip or every video clip in the active sequence. Read-only: unknown or localized host values remain unknown rather than being reported as solved.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID. Omit to inspect every video clip in the active sequence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds a meaningful behavioral caveat beyond annotations: 'unknown or localized host values remain unknown rather than being reported as solved.' This conditions expectations for ambiguous host state and does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action and resource, and the second sentence adds a necessary edge-case caveat. No filler or redundant restatement of the title/schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one optional parameter), schema is complete, an output schema exists, and the annotations already cover safety/idempotency. The description provides the remaining context about scope and unknown-value handling, making it complete for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single optional parameter has a clear description; the tool description mostly restates the node_id scope. It adds no new parameter meaning beyond clarifying the one-clip vs every-video-clip behavior, so a baseline score is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with a specific verb and resource: 'Read Warp Stabilizer presence, exposed status properties, and conservative analysis state.' It also defines scope ('one clip or every video clip in the active sequence'), which clearly separates it from action siblings like stabilize_clip.

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?

The description makes the tool's role as a read-only inspection clear and explains the optional node_id scope, so an agent knows when to call it. It does not explicitly name alternatives or state when not to use it, but the read-only framing gives adequate context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

invert_selectionInvert SelectionA

Invert the current clip selection in the active sequence (selected become deselected and vice versa).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The parenthetical explicitly discloses the behavioral result: selected clips become deselected and unselected clips become selected. This goes beyond the annotations by explaining the exact state change, and it also implies non-idempotence since inverting twice restores the original selection. There is no contradiction with readOnlyHint=false, destructiveHint=false, or idempotentHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One compact sentence with a clarifying parenthetical and no filler. The action and scope are front-loaded, and every word contributes to understanding what the tool does.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, low-complexity selection toggle, the description is complete: it identifies the target, the scope, and the exact effect. The output schema exists and the annotations cover safety and side-effect expectations, so nothing essential is missing.

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?

The input schema has zero parameters, so the description has no parameter burden to carry; the baseline of 4 applies. The only relevant scope qualifier, 'active sequence,' is clearly stated in the prose rather than left to the schema.

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 uses a specific verb ('invert'), names the exact resource ('current clip selection in the active sequence'), and clarifies the semantics with 'selected become deselected and vice versa.' It is clearly distinct from sibling selection tools like set_clip_selection or deselect_all_clips, though it does not explicitly name any alternative.

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?

The description clearly scopes the operation to the current selection in the active sequence and implies the toggle use case. It does not explicitly contrast with sibling selection tools or state when not to use it, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

is_work_area_enabledIs Work Area EnabledA

Check whether the work area bar is enabled on the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the behavioral trait of 'checking' and the context of the active sequence, which is useful. However, the annotations declare readOnlyHint: false, so the description's 'check' wording does not fully resolve whether the call could have side effects; it also does not mention any return characteristics, though an output schema exists. This creates mild ambiguity but no direct contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, compact sentence that front-loads the verb and resource, with zero filler words. Every word contributes to the meaning, making it an efficiently structured description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and an output schema indicating the result shape, the description supplies the essential context: the operation is a check of the work area bar's enabled state on the active sequence. Nothing needed for correct invocation is missing.

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?

The input schema has zero parameters and 100% schema description coverage, so the baseline is 4 per the rubric. There are no parameters for the description to explain, and the description correctly focuses only on the operation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Check whether' followed by the resource state 'work area bar is enabled' and scopes it to 'the active sequence'. This clearly distinguishes it from sibling tools like get_work_area and set_work_area, which deal with the work area values rather than the enabled state of the bar.

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?

The intended usage is implied: call this when you need to know whether the work area bar is enabled on the active sequence. However, there is no explicit guidance about when not to use it or mention of alternative predicates, leaving the routing entirely to inference from the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lift_selectionLift SelectionA

Lift (remove without closing gap) the content between sequence in/out points or selected clips.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the key behavioral outcome: content is removed from the timeline but a gap is left behind. This adds meaningful context beyond the annotations, which only indicate that the tool is not read-only and not flagged destructive. It does not mention prerequisites or error cases, but the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundant wording. The parenthetical clarification 'remove without closing gap' efficiently adds crucial distinguishing meaning.

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 zero-parameter tool with an output schema, the description is sufficiently complete: it states the action, the target content, and the resulting gap behavior. It could be slightly more explicit about prerequisites such as an active sequence or having either an in/out range or a selection, but those are reasonably implied.

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?

The tool has zero parameters, so there are no parameter details to explain. Per the baseline for no-parameter tools, the description appropriately focuses on the operation itself rather than parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lift') with an explicit resource ('content between sequence in/out points or selected clips') and clarifies the defining behavior ('remove without closing gap'). This clearly distinguishes it from sibling operations like extract_selection or ripple_delete, which do close the gap.

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?

The description provides clear context for when to use the tool: when targeting sequence in/out points or selected clips. However, it does not explicitly name alternatives or state when not to use this tool, relying instead on the implied contrast of 'without closing gap.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_audio_effectsList Available Audio EffectsA
Read-onlyIdempotent

List all available audio effects in Premiere Pro. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds that this is a listing operation but does not disclose additional behavioral details such as output format or whether an open project is required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no redundant wording, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list operation with no parameters and an existing output schema, the description is sufficient for an agent to understand when and how to call it.

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?

The tool has no parameters and the schema coverage is complete, so the baseline of 4 applies. No parameter descriptions are needed.

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?

States a specific verb ('List') and resource ('all available audio effects in Premiere Pro'), clearly distinguishing it from general effects or transitions. The mention of QE DOM is implementation detail but does not obscure the purpose.

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?

The phrase 'all available audio effects' provides clear context for when to use it, and the audio qualifier separates it from sibling tools like list_available_effects and list_available_audio_transitions, though it does not explicitly name alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_audio_transitionsList Available Audio TransitionsA
Read-onlyIdempotent

List all available audio transitions. Uses QE DOM and reports an unavailable or empty legacy catalog as an error rather than an assumed usable list.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value beyond annotations by disclosing the QE DOM data source and specifying that an unavailable or empty legacy catalog is reported as an error rather than silently returning an empty list. This is meaningful behavioral context not present in the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary purpose is stated first, and the important error-behavior caveat is added in the second sentence. Every clause earns its place and the description is easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only listing tool with an output schema and comprehensive annotations, the description covers the core purpose and the key edge-case behavior (legacy catalog error handling). Nothing critical is missing for an agent to invoke it correctly.

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?

The tool has zero parameters and the schema description coverage is 100%, so there are no parameter semantics for the description to clarify. Per the baseline for zero-parameter tools, a 4 is appropriate; the description adds no unnecessary parameter details because none exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('all available audio transitions'), clearly distinguishing this tool from sibling tools like list_available_transitions and list_available_audio_effects. The audio-specific scope is front and center, so an agent can identify what this tool does without inspecting schemas.

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?

The description implies this tool is for retrieving available audio transitions and notes error behavior for unavailable/empty legacy catalogs, but it does not explicitly state when to prefer this over list_available_transitions or list_available_audio_effects. Usage context is implied rather than clearly scoped with alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_effectsList Available EffectsA
Read-onlyIdempotent

List available video effects in Premiere Pro. Uses the full QE catalog when exposed; otherwise returns a verified, explicitly partial set of common effects resolved by exact name.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds valuable context beyond this by disclosing that the returned set may be the full QE catalog or a partial, verified set of common effects depending on whether the catalog is exposed. This helps an agent calibrate expectations about completeness without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the core purpose in the first sentence and then adds the essential completeness caveat in the second, with every phrase earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, no parameters, and annotations covering safety and idempotency, the description is complete for an agent to select and invoke the tool correctly. It even covers the practical caveat about catalog exposure, which is the main behavioral nuance an agent would need to know.

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?

The tool has zero parameters and the schema is an empty object, so there is nothing for the description to clarify. The baseline of 4 for a parameterless tool is appropriate, and no additional parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('available video effects in Premiere Pro'), and the 'video' qualifier distinguishes it from sibling tools like list_available_audio_effects and list_available_transitions. The purpose is immediately clear and not a tautology.

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?

The description implies that this tool is for video effects rather than audio effects or transitions, which provides a basic usage context. However, it never explicitly names alternative tools or states when to prefer them, so the guidance is only implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_transitionsList Available TransitionsA
Read-onlyIdempotent

List all available video transitions. Uses QE DOM. Returns a hint set on PPro 2026 where the transition registry list is empty even though by-name lookup works.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes beyond annotations by disclosing the use of QE DOM and a known limitation on PPro 2026 where the registry is empty but by-name lookup works. Annotations (readOnly, idempotent, non-destructive) are consistent with the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no redundant phrasing; the key purpose and the important caveat are directly stated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool, the description is complete: it states what it returns, mentions a known edge case, and aligns with the provided annotations and output-schema presence.

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?

The tool has no parameters, so the baseline of 4 applies; there are no parameter semantics to clarify.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action ('List all available video transitions') and specifies the resource ('video transitions'), distinguishing it from audio transitions and other effect-listing tools.

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?

Provides clear context that this lists video transitions, implicitly differentiating from sibling audio-transition tools, though it does not explicitly state when not to use it or name alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_clip_effectsList Clip EffectsA
Read-onlyIdempotent

List all effects/components on a clip with their properties and current values. Essential for debugging effect issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to inspect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds that the tool returns 'all' effects/components with 'current values,' which is useful scoping, but it does not disclose any additional behavioral traits such as ordering, handling of clips with no effects, or whether disabled effects are included. This is adequate given the annotations but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core behavior is front-loaded in the first sentence, and the second sentence adds a practical purpose ('Essential for debugging effect issues') without 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 simple single-parameter read-only tool with strong annotations and an output schema, the description is largely sufficient. It clearly states what is returned and the intended debugging context. It could be slightly more complete by explicitly naming related sibling tools for alternative use cases, but that gap is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the node_id parameter is described as 'Node ID of the clip to inspect.' The tool description does not add meaning beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'List all effects/components on a clip with their properties and current values.' This clearly distinguishes the tool from siblings like list_available_effects, which lists available effects rather than effects on a clip, and get_effect_properties, which appears to target a specific effect.

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?

The phrase 'Essential for debugging effect issues' gives some usage context, but it does not explicitly state when to use this tool versus related siblings such as list_available_effects, get_effect_properties, or remove_effect. No exclusions or alternative routing are provided, so usage guidance is mostly implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_markersList MarkersA
Read-onlyIdempotent

List all markers on the active sequence or a specific clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID to list clip markers instead of sequence markers

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey readOnly, idempotent, and non-destructive behavior. The description adds the active-sequence-versus-clip scope, which is useful, but it does not disclose any other behavioral traits such as timing, ordering, or side effects. This is acceptable for a simple list operation but not rich context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the action, resource, and optional scope with no filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list operation with one optional parameter, a rich annotation set, and an output schema, the description is complete enough. Nothing critical for invoking it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the single optional node_id parameter is already fully documented. The description restates the active-sequence/clip distinction but adds no format, sintax, or edge-case information beyond the schema.

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 the specific verb 'List' and resource 'markers', with the key scoping distinction between active sequence and a specific clip. It does not explicitly distinguish itself from close siblings like get_sequence_markers_by_type or get_clip_markers, so it misses the top level of differentiation.

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?

The description clearly conveys the two supported contexts: active sequence markers or clip-specific markers via node_id. It does not mention when not to use it or point to alternative tools, but the intended usage is immediately understandable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_project_itemsList Project ItemsB
Read-onlyIdempotent

List all items in the project panel (clips, bins, sequences)

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_pathNoOptional bin path to list items from (e.g., 'Footage/Raw'). Lists root items if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already carry the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), and the description is consistent with them — no contradiction. The description adds useful scoping context (which item types are returned) and the root-items-if-omitted behavior is documented in the parameter schema, but little else is disclosed beyond the annotations and schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the verb and resource, with a compact parenthetical for scope. No filler, no redundancy with the title or schema.

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 read-only, idempotent tool with one well-documented optional parameter, rich annotations, and an output schema, the definition is nearly complete. The main missing piece is disambiguating overlap with get_bin_contents and search_project_items, but that gap is already captured in the usage_guidelines dimension rather than indicating a fundamental completeness failure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the sole parameter bin_path is well documented ('Optional bin path to list items from (e.g., 'Footage/Raw'). Lists root items if omitted.'). The tool description adds no parameter-level detail beyond what the schema already provides, so the baseline of 3 applies.

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 uses a specific verb ('List') with a clear resource ('all items in the project panel') and parenthetical scope clarification ('clips, bins, sequences'). This distinguishes it from list_sequences (sequences only) and find_project_item_by_name (single item lookup), though it does not explicitly contrast with the closely overlapping get_bin_contents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus siblings like get_bin_contents, search_project_items, or find_project_item_by_name. The bin_path parameter description explains filter behavior but provides no when-to-use or when-not-to-use information, leaving tool selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sequencesList SequencesA
Read-onlyIdempotent

List all sequences in the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only the scope 'all sequences in the project', which is useful but modest beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Seven words with no filler. The sentence is front-loaded with the action and resource, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only listing tool with an output schema and comprehensive annotations, the description is complete. Nothing essential about invocation or expected behavior is missing.

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?

There are zero parameters, so the baseline is 4. The description does not need to explain parameters and correctly indicates the tool takes no input for this listing operation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List all sequences in the project' uses a specific verb and resource with clear scope. It is distinguishable from siblings like get_active_sequence (one active sequence) and get_sequence_count (a count), making its purpose unambiguous.

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?

The description implies use when a full enumeration of project sequences is needed, but it does not explicitly contrast with alternatives such as get_active_sequence or list_sequence_tracks. The 'all' phrasing suggests broad coverage, yet no direct when-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sequence_tracksList Sequence TracksB
Read-onlyIdempotent

List all tracks (video and audio) in a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to restate safety. It adds useful scope by saying 'all tracks' and explicitly including video and audio, but it does not disclose details like track ordering or whether hidden, locked, or muted tracks are included.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tight sentence with no filler. The core verb and object are front-loaded, and every phrase adds relevant scope information.

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 simple read-only listing operation with one optional parameter, safety annotations, and an output schema, the description is nearly complete. It would be slightly stronger if it helped disambiguate from structurally similar sequence- or track-related tools, but nothing essential is missing for invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully documents the only parameter, sequence_id, including that it can be an ID or name and defaults to the active sequence when omitted. The tool description adds no additional parameter meaning beyond what the input schema already provides.

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 uses a specific verb ('List'), a concrete resource ('tracks'), and a clear scope ('video and audio' and 'in a sequence'). It is easy to understand what the tool returns, but it does not explicitly distinguish itself from similar siblings such as get_sequence_structure or get_track_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to prefer this tool over alternatives and does not mention exclusions or fallback behavior. The only implied context is that it operates on a sequence, which is already evident from the tool name and schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lock_trackLock TrackA

Lock or unlock a video track

ParametersJSON Schema
NameRequiredDescriptionDefault
lockedYesTrue to lock, false to unlock
track_indexYesVideo track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds no behavioral information beyond the annotations, which already indicate it's a non-read-only, non-destructive operation. It does not mention side effects like preventing edits or the scope of the operation (e.g., active sequence).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that gets directly to the point without extraneous detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and annotations, the description is minimally adequate but omits the implicit scope (active sequence) and any effect on the timeline. It could mention that locking prevents editing, but it doesn't.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents both parameters with descriptions for `locked` and `track_index`, so the description adds no additional semantic value. The baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (lock/unlock) and the resource (video track), distinguishing it from sibling tools like toggle_track_visibility or mute_track which affect different properties.

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?

The description gives no explicit guidance on when to use this tool versus alternatives like toggle_track_visibility. The usage is implied by the specific action, but no exclusions or comparisons are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_media_watchManage Media WatchA

Start, inspect, rescan, or stop one session-scoped local media-folder monitor. It records bounded file-change signals and never imports media automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesWatcher action.
recursiveNoMonitor contained subdirectories; defaults to false.
watch_pathNoAbsolute contained directory to monitor; required for start.
target_bin_idNoOptional proposed Premiere destination-bin ID.
allowed_extensionsNoFile extensions eligible for proposals; required for start.
approved_workspace_pathNoAbsolute approved workspace root; required for start.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations that only declare non-read-only, non-idempotent, and non-destructive behavior, the description adds meaningful safety-relevant detail: it records only bounded file-change signals, is session-scoped, and never imports media automatically. This helps an agent predict side effects better than the annotations alone. It could still state more about what happens to existing monitor state on repeated start calls, but the added context is solid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences capture the resource, operations, scope, behavioral bounds, and key exclusion (no automatic imports). Every phrase earns its place and the primary operations are front-loaded.

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?

The description covers the monitor lifecycle and its safety profile, and an output schema exists so return values do not need to be described. It is complete enough for an agent to understand the tool's role, though it does not spell out prerequisites like whether watch_path must be inside approved_workspace_path. That detail is left to the parameter schemas.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds minimal parameter-level meaning, mostly by mapping "rescan" to the scan action and framing the monitor as non-importing. This meets the baseline but does not go beyond it with additional insight such as flags, defaults, or path restrictions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (one session-scoped local media-folder monitor) and a precise set of operations (start, inspect, rescan, stop). It also explicitly distinguishes itself from import tools by stating it "never imports media automatically." This clearly separates it from siblings like preview_watched_media_import and import_media.

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?

The description conveys the intended use context: managing a local media-folder monitor rather than importing media. It does not explicitly name an alternative tool or state "use X instead," though the "never imports media automatically" line rules out using this tool for imports. The lifecycle verbs also make the available actions reasonably discoverable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_project_contextManage Project ContextA
Destructive

Capture, enrich, import revision-bound editorial evidence, inspect, or clear a durable local Premiere project-context index. Capture stores bounded active-sequence/source metadata; local enrichment and evidence import add caller-approved transcripts, speaker labels, shots, audio observations, notes, or opaque frame references without re-analyzing media. Never include secrets or unrelated customer data.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesCapture active context, enrich it, import revision-bound editorial evidence, inspect status, or clear one local project index.
recordsNoFor enrich, up to 512 transcript, shot, audio, or note records
replaceNoFor enrich, replace prior enrichments while retaining captured core records
evidenceNoFor import_evidence, up to 512 caller-approved records with strict source/timeline revision guards. The server does not read referenced frame files, invoke analysis, or contact a provider.
project_idNoProject context ID returned by capture; optional for status to list projects

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal destructiveness and non-read-only behavior; the description adds valuable context beyond those flags: the index is durable and local, evidence import is caller-approved, media is not re-analyzed, and secrets or unrelated customer data must never be included. It does not contradict annotations and provides meaningful side-effect context, though the full destructive scope of 'clear' is left implicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each earning its place: the first states the full action scope, the second clarifies the capture/enrich/import data contract and constraint, and the third is a necessary safety warning. The key verbs and resource are front-loaded with no filler.

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 complex five-action tool with rich schemas and an output schema, the description provides enough high-level context for an agent to understand the tool's purpose and safety posture. Per-field specifics, revision guards, and limits are delegated to the schema, which is acceptable; a bit more about the relationship between actions and the returned project_id would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds some conceptual alignment by naming transcripts, speaker labels, shots, audio observations, notes, and frame references, which map to the record/evidence kinds, but it does not add syntax-level meaning beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise list of specific operations—capture, enrich, import evidence, inspect, clear—applied to a clearly defined resource: a durable local Premiere project-context index. This makes the tool's role immediately distinguishable from read-style siblings like search_project_context, even without naming 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?

The description gives useful in-tool guidance: capture stores bounded metadata, while enrichment and evidence import add caller-approved content without re-analyzing media. It implies a workflow of capture-then-enrich, but it never explicitly addresses when to choose this tool over siblings such as search_project_context or create_editorial_context_pack, and it offers no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_proxiesManage ProxiesA

Create, attach, or toggle proxies for a project item. Note: 'create' only requests a proxy encode from Adobe Media Encoder and returns an unverified handoff. Independently verify the AME queue or output file before calling this tool again with action 'attach' and proxy_path set to the output_path you passed here. There is no single-call create-and-attach in Premiere's ExtendScript API.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesAction to perform on proxies
item_idYesNode ID or name of the project item
proxy_pathNoPath to an existing proxy file (required for 'attach')
output_pathNoFull output path for the proxy to be rendered to (required for 'create')
preset_pathNoPath to a proxy ingest preset (.epr) for 'create'. If omitted, the first preset found in Premiere's IngestPresets/Proxy folder is used.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

It reveals that create is asynchronous and unverified, requires external AME verification, and cannot be combined with attach in one call. These are non-obvious behavioral traits not visible in the annotations or schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences front-load the purpose and then add the critical workflow caveat without filler. Every sentence contributes necessary behavioral or sequencing information.

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?

The description covers the non-obvious create/attach handoff and external verification requirement, and the output schema covers return values. It is nearly complete, but it leaves the toggle action's exact semantics and the boundary with detach_proxy unstated.

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?

The input schema already documents all 5 parameters at 100% coverage, so the baseline is 3. The description adds cross-parameter semantics by linking output_path to proxy_path and specifying the preset_path default behavior, justifying a slightly higher score.

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 sentence names the exact operations (create, attach, toggle) and the target resource (project item), and the caveat clarifies the granular create/attach split. It does not explicitly contrast with sibling tools like has_proxy or detach_proxy, so it is clear but not fully sibling-differentiating.

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?

The description gives a concrete two-step recipe: call create, independently verify the AME queue or output file, then call attach with proxy_path set to the prior output_path. It does not state when to prefer has_proxy/detach_proxy or what toggle implies, so it lacks explicit alternatives and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

match_frameMatch FrameA

Get source media info for the frame at the current playhead on a specific track. Useful for match frame operations.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: video)
track_indexNoTrack index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, so they provide no positive safety signals; the description's 'Get' communicates a read-style action and adds playhead/track scoping. It does not mention prerequisites like an active sequence or behavior when no frame exists, but for a simple info-returning tool this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, with the core action front-loaded and no filler. The second sentence adds context for when the tool is useful, so every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has an output schema, and its parameters are fully documented, so the main missing piece is disambiguation from sibling tools and a clearer definition of what 'source media info' includes. This is adequate for a basic getter but not fully rich.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers both optional parameters with defaults and the track_type enum, giving 100% coverage. The description adds no parameter-level detail, which is fine because the schema already carries the full burden.

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 clearly states a specific action ('Get source media info') and a specific resource ('frame at the current playhead on a specific track'), going well beyond a tautology. It does not explicitly differentiate from sibling tools like get_clip_at_playhead or capture_frame, but it is distinctive enough on its own.

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?

The description implies a use case with 'Useful for match frame operations' and gives the operational context of the current playhead and track. However, it does not state when to prefer this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_clipMove ClipC

Move a clip to a new position on the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to move
new_track_indexNoOptional new track index to move the clip to
new_start_secondsYesNew start time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only restates the basic operation and adds no behavioral context beyond the annotations, which already indicate this is a mutable, non-idempotent operation. It does not disclose whether moving a clip leaves a gap, overwrites neighboring clips, ripples the timeline, or requires any track/sequence conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single declarative sentence that is front-loaded and contains no filler. It is appropriately concise for a tool whose parameter details are already covered by the input schema.

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?

For a timeline mutation with many sibling editing tools, the description is too thin: it omits ripple/overwrite behavior, what happens to the clip's previous slot, and how this differs from move_clip_to_track or trim_clip. The output schema reduces the need to describe return values, but the side-effect context is still missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters node_id, new_start_seconds, and new_track_index are already documented. The description adds little beyond the phrase 'new position', which loosely maps to the start time and optional track parameters but does not clarify units, defaults, or behavior when new_track_index is omitted.

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 ('move'), a resource ('a clip'), and a scope ('on the timeline'), so an agent can understand the core operation. However, it does not explicitly differentiate from the sibling tool move_clip_to_track; 'new position' could refer to time, track, or both.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use move_clip versus related timeline editing tools such as move_clip_to_track, trim_clip, set_clip_start_time, or overwrite_clip. The description provides no contextual triggers, exclusions, or alternative routing, leaving tool selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_clip_to_trackMove Clip To TrackC

Move a clip to a different track. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
target_track_indexYesTarget track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a non-read-only mutation, but the description does not disclose relevant behaviors such as whether the clip's timeline position is preserved, whether target_track_index must exist, or what happens if the target track is locked. 'Uses QE DOM' is an implementation note, not behavioral transparency.

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?

The description is short and front-loaded with the primary action. However, 'Uses QE DOM' is arguably unnecessary and does not earn its place, preventing a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter mutation with an output schema, the description is minimally viable. However, it lacks usage guidance and behavioral caveats, and the presence of similarly named siblings like 'move_clip' means additional context would materially improve the agent's ability to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully describes both parameters with 100% coverage. The description adds no additional semantic meaning beyond the schema, so the baseline of 3 applies.

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 clear verb and resource: 'Move a clip to a different track.' This distinguishes the operation from many siblings, though it does not explicitly differentiate it from the similarly named 'move_clip' tool. The phrase 'Uses QE DOM' adds little to purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives such as 'move_clip', 'add_to_timeline', or 'overwrite_clip'. The intended context is implied by the action, but there are no explicit exclusions or alternative routing instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_items_to_binMove Items To BinA

Move multiple project items to a target bin at once.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsYesArray of node IDs or names of items to move
target_binYesName or node ID of the target bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly=false, destructive=false, idempotent=false), and the description correctly adds the batch-move semantic rather than contradicting them. It does not go further into behaviors like partial failures, invalid IDs, or whether source bins are emptied, but for this mutation tool the annotation burden is largely satisfied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that states the action, scope, destination, and batch nature with no filler. It is appropriately front-loaded and every word earns its place.

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 two-parameter operation with a complete schema, an output schema, and annotations, the description is nearly sufficient. It could additionally point to 'move_item_to_bin' for single items, but nothing essential for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: item_ids and target_bin already specify accepted forms (IDs or names). The description adds only the batch/project-item framing, so the schema carries the parameter-documentation load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific action ('Move'), a clear resource ('multiple project items'), and a destination ('target bin'), and the phrase 'at once' marks it as a batch operation. This distinguishes it from the sibling 'move_item_to_bin' without requiring an agent to open the schemas.

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?

The description clearly signals a batch usage context through 'multiple' and 'at once', which is enough to route many-item requests here. It does not explicitly name the singular alternative or state exclusions, but the context is not misleading.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_item_to_binMove Item To BinB

Move a project item to a different bin

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the item to move
target_binYesName or node ID of the target bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is not read-only, and the description merely restates the move operation. It adds no detail about side effects, whether the item is removed from its original bin, what happens if the target bin is invalid, or any failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler or repetition. It efficiently communicates the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter mutation, the schema and annotations cover the basics, and an output schema exists. However, the description omits guidance on when to choose this tool over move_items_to_bin and does not disclose operational side effects, leaving meaningful gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented with their types and meanings. The description adds little beyond confirming the item moves to a different bin, so it stays at the baseline for schema-heavy definitions.

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 action and resource: 'Move a project item to a different bin.' It is clear and distinct from bin creation/deletion tools, though it does not explicitly distinguish itself from the sibling move_items_to_bin other than by singular phrasing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to prefer this tool over move_items_to_bin, nor any mention of prerequisites such as the item or target bin needing to exist. The description only states what the tool does, not when to use it versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_playhead_to_editMove Playhead To EditB

Move the playhead to the next or previous edit point.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNoDirection (default: next)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations indicate readOnlyHint=false, so this is understood to be a state-changing navigation operation, but the description adds no behavioral context beyond the basic action. It does not mention potential failures, side effects, or prerequisites such as an open sequence.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, front-loading the verb and target. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter navigation tool with an output schema, the description is usable as-is. However, it lacks any mention of sequence requirements or boundary behavior, which slightly reduces completeness for an agent operating autonomously.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the direction parameter is fully documented with an enum and default value. The description adds no additional parameter-level detail; it only restates 'next or previous,' which is already in the schema.

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 uses a specific verb ('Move') and resource ('playhead... edit point'), clearly conveying the action. It does not explicitly differentiate itself from sibling tools like set_playhead_position or get_next_edit_point, but its 'next or previous edit point' phrasing is sufficient to understand its unique role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as get_next_edit_point or set_playhead_position. It also omits practical context like whether an active sequence is required or what happens when no edit point exists in the requested direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

multiple_undoMultiple UndoA

Unavailable: Premiere exposes no supported, observable undo-stack API for multiple scripted undo steps.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of undo steps (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a critical non-obvious behavioral fact: no supported API exists, so the tool cannot perform multiple scripted undo steps. This goes beyond the annotations, which only signal readOnly/idempotent/destructive hints and do not convey unavailability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the decisive 'Unavailable:' verdict, and no filler. Every word contributes to preventing misuse.

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 tool that is unavailable, the description provides the essential context an agent needs: why it cannot be used. It stops short of naming the fallback of repeated single undo calls, but the sibling tool list and the clear unavailability statement make the definition sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents count as the number of undo steps with a default of 1, so the description adds no parameter-level semantics. Given 100% schema coverage, the baseline score of 3 is appropriate.

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 that the operation is unavailable because Premiere has no supported undo-stack API for multiple scripted undo steps, which clarifies what the tool cannot do and distinguishes it from the single-step undo and redo siblings. It lacks an active verb describing an operation, but the explicit 'Unavailable' label is purposeful and unambiguous.

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?

The description clearly tells an agent not to use this tool for multi-step undo and gives the technical reason. It does not explicitly name 'undo' as the alternative, but the sibling list supplies that and the unavailability message is sufficient exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mute_trackMute TrackB

Mute or unmute an audio track

ParametersJSON Schema
NameRequiredDescriptionDefault
mutedYesTrue to mute, false to unmute
track_indexYesAudio track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating, non-read-only operation. The description simply restates the action without adding context about side effects, state transitions, error conditions, or whether the track must be unlocked or present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, front-loaded sentence with no filler. It is appropriately sized for a simple state-changing tool and every word earns its place.

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 two-parameter tool with full schema coverage and an output schema, the description combined with structured data is sufficient to invoke correctly. It is only missing optional usage routing and contextual guidance, which was already penalized under usage guidelines.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%; both track_index (0-based number) and muted (boolean semantics) are already documented. The description adds no additional parameter-level meaning, so the baseline score of 3 applies.

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?

States a specific action ('Mute or unmute') and resource ('audio track'), so an agent knows exactly what the tool does. It doesn't explicitly differentiate from sibling audio/clip-level operations, but the 'audio track' scope disambiguates at the track level.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus related alternatives such as set_clip_volume, enable_disable_clip, or track-level lock/visibility commands. The description also omits any mention of prerequisites like requiring an active sequence or valid track index.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nest_clipsNest ClipsC

Unavailable on the legacy CEP backend: Premiere's documented createSubsequence API only creates a separate sequence and cannot safely replace the selected timeline clips with a nested-sequence reference.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the nested sequence

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal this is a non-read-only, non-idempotent, non-destructive operation. The description adds some useful context by disclosing that the legacy CEP backend is unsupported and that the underlying createSubsequence API cannot safely replace selected clips, but it still does not explain what the tool actually does on success.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, but it spends its only sentence on a limitation rather than defining the tool's behavior. Structurally it front-loads a caveat, which makes the description less useful for tool selection.

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?

Even with only one parameter and an output schema present, the description omits the core action entirely. An agent cannot determine what nest_clips does, what the output represents, or what side effects to expect, so the definition is not complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with the only parameter 'name' described as 'Name for the nested sequence'. The description adds no additional meaning beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states the verb and resource directly; it only says the operation is 'Unavailable on the legacy CEP backend' and describes a limitation of Premiere's createSubsequence API. The agent must infer from the title that this tool is meant to nest selected clips, but the description itself is a caveat rather than a purpose statement.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is given about when to use nest_clips versus alternatives like create_subsequence or unnest_sequence. The backend limitation hints at platform context, but there is no when-to-use or when-not-to-use direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

normalize_loudness_fileNormalize Loudness FileA

Create a new loudness-normalized media derivative with FFmpeg, then remeasure that exact output using EBU R128. Never overwrites the input or an existing output file.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYesExisting local audio or video file
output_pathYesNew output path; must not already exist
target_lufsNoIntegrated loudness target from -70 through -5 LUFS (default: -16)
tolerance_luNoPost-render integrated-loudness tolerance (default: 1 LU)
max_true_peak_dbfsNoTrue-peak ceiling from -9 through 0 dBFS (default: -1.5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveness and read-only behavior, and the description adds specific, valuable safety context: 'Never overwrites the input or an existing output file.' It also discloses the implementation approach (FFmpeg) and the post-measurement step, which go beyond the minimal annotation hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler. The key workflow and the most important safety constraint are front-loaded, and every phrase adds value.

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 file-creating tool with five parameters, the description, combined with full schema coverage and an output schema, provides enough context to call it correctly. It could mention the relationship to analyze_loudness, but the core workflow, safety guarantee, and tool boundaries are sufficiently clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description adds no new per-parameter meaning beyond reinforcing that output_path must not pre-exist, which is already stated in the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Create') and resource ('loudness-normalized media derivative'), and explains the two-step workflow with FFmpeg and EBU R128 remeasurement. This clearly distinguishes it from sibling tools like analyze_loudness that only measure without creating a new file.

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?

The description implies its use case: when a new loudness-normalized derivative is needed. However, it does not explicitly state when to prefer this tool over alternatives such as analyze_loudness, nor does it provide any when-not-to-use guidance or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

open_in_sourceOpen In SourceA

Open a project item in the Source Monitor for preview and trimming.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to open

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations provide no meaningful safety or behavior signals (all hints are false), so the description carries the burden. It discloses only that the item will be opened in the Source Monitor, but does not mention that the Source Monitor's current item may be replaced, whether playback is affected, or any side effects beyond opening.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one efficient sentence that front-loads the action and destination while adding the purpose. Every word earns its place, with no padding or repetition.

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 simple one-parameter tool with a full schema and output schema present, the description is nearly complete. It covers what the tool does and its purpose. The main missing element is explicit guidance on side effects in the Source Monitor, but this is a minor gap for such a straightforward operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents the single parameter (item_id) with a clear description including accepted forms ('Node ID or name'). The tool description does not add extra meaning, but none is needed given the schema's 100% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Open') with a clear resource ('a project item') and target location ('Source Monitor'), plus the intended purpose ('preview and trimming'). It is easily distinguished from sibling tools like close_source_monitor, play_source_monitor, and get_source_monitor_info.

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?

The description implies when to use this tool ('for preview and trimming') and clearly names the destination (Source Monitor), but it does not explicitly compare against alternatives or state when not to use it. This leaves the routing decision mostly to the agent's inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

open_projectOpen ProjectC

Open a Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path to the .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal readOnlyHint=false and idempotentHint=false, indicating this mutates application state, but the description adds no context about the consequences: opening a project likely replaces the currently open one and may discard unsaved changes, and no error behavior for missing or invalid files is disclosed. There is no contradiction with the annotations, but the description fails to convey the operation's real-world impact.

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?

A single front-loaded sentence with zero filler, appropriate for a simple one-parameter tool. The brevity is efficient, though it trades away behavioral context that is penalized in other dimensions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool, invocation is fully specified: one required parameter with complete schema coverage, annotations present, and an output schema available so return values need no explanation. The notable gap is the absence of side-effect disclosure (replacing the current project) for a non-readonly, non-idempotent operation, which makes the package adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — the single required parameter (path) is already documented as 'Full file path to the .prproj file'. The description merely reinforces that the resource is a project file without adding new semantic detail, so the baseline 3 is appropriate.

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 uses a specific verb ('Open') and resource ('Premiere Pro project file'), making the core action unambiguous. It differentiates from project-lifecycle siblings like create_project, close_project, and save_project via the distinct verb, though it doesn't explicitly distinguish from import-style tools (import_media, import_fcp_xml) that are conceptually adjacent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to open versus create, import, or restore a project. With roughly 200 siblings including create_project, close_project, import_fcp_xml, and get_all_project_paths, the agent gets no help routing between adjacent tools, and there is no mention of prerequisites such as whether an existing project must be closed first.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

overwrite_clipOverwrite ClipC

Overwrite a project item onto validated timeline tracks and verify a new source placement at the requested time

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to add
track_indexNoVideo track index (0-based, default: 0)
start_secondsNoStart time in seconds on the timeline (default: 0)
audio_track_indexNoAudio track index (0-based, default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description says 'Overwrite a project item onto validated timeline tracks,' which is definitionally destructive to whatever occupies the target timeline range, yet annotations declare destructiveHint=false. This is an Annotation Contradiction: the tool's semantic behavior conflicts with the structured safety signal.

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?

The description is a single economical sentence with the core action front-loaded. However, 'validated timeline tracks' is vague and does not earn its place as clearly as the rest of the sentence.

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?

For a mutating, non-idempotent tool, the description omits key behavioral context: what happens to clips already on the track, whether track targeting is required, and when to use this over insert/append alternatives. The output schema helps with return values but cannot compensate for the missing side-effect disclosure and the contradictory destructive hint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents item_id, track_index, start_seconds, and audio_track_index. The description does not add parameter semantics beyond referring to the 'requested time,' so the baseline of 3 applies.

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 specific verb (overwrite), a resource (project item), a target (validated timeline tracks), and a requested time, making the intended operation reasonably clear. It is distinguishable from siblings like overwrite_from_source and add_to_timeline, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this tool over related tools such as add_to_timeline, insert_from_source, overwrite_from_source, or replace_clip. No exclusions, prerequisites, or contextual conditions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

overwrite_from_sourceOverwrite From SourceB

Overwrite the clip from the Source Monitor at the playhead position (overwrite edit — replaces existing clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_track_indexNoTarget audio track index (default: 0)
video_track_indexNoTarget video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states 'replaces existing clips,' which is destructive behavior, but the annotation destructiveHint is false. This is a direct contradiction between the description and the structured metadata, so the description actively misleads the agent about the safety profile of this tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the action, target, position, and effect. There is no filler, repetition, or unnecessary elaboration.

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?

The description covers the core mechanic but omits prerequisites such as requiring a loaded source clip or an open sequence, and it does not mention undo/recovery implications. The annotation contradiction further weakens the overall context, leaving the agent without reliable guidance for a mutating editing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and both parameters (audio_track_index and video_track_index) already carry clear descriptions with defaults. The tool description adds no additional parameter meaning, so the baseline of 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Overwrite'), a specific resource ('the clip from the Source Monitor'), and a location ('at the playhead position'). It further clarifies the operation type ('overwrite edit') and its effect ('replaces existing clips'), making it identifiable among siblings like insert_from_source and overwrite_clip.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states what the tool does but gives no guidance on when to use it instead of related tools such as insert_from_source, overwrite_clip, or ripple_delete. There are no exclusions, prerequisites, or alternative conditions, so the agent must infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pingPingA

Health check — verify the CEP plugin is running and connected to Premiere Pro. Call this before other tools to confirm connectivity.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description implies a read-only, idempotent operation (just verifying connectivity), but the annotations state readOnlyHint=false and idempotentHint=false. This contradicts the description's implied behavior, so the transparency is poor and potentially misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, directly to the point, with no unnecessary detail. It efficiently conveys the tool's function and usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is completely sufficient for an agent to understand what the tool does, when to call it, and what it returns (connection status). No additional context is needed for this simple health check.

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?

The tool has zero parameters, and the description does not need to explain any. There is no gap between the schema (empty) and the description, so this dimension is fully satisfied.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: a health check to verify the CEP plugin is running and connected to Premiere Pro. It uses a specific verb ('verify') and names the target resource, distinguishing it from other tools that perform more complex actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is given: 'Call this before other tools to confirm connectivity.' This tells the agent exactly when to use the tool and what to expect, leaving no ambiguity about its role in a workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_active_speaker_reframePlan Active Speaker ReframeA
Read-onlyIdempotent

Plan an active-speaker vertical reframe (Motion Scale/Position keyframes that follow whoever is talking) or a static stacked/split layout from a word timeline and static speaker regions. Returns framings, switches, keyframes, and apply routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
layoutNoauto (default) picks active_speaker for 3+ speakers or a region wider than 0.6, stacked for exactly 2 speakers.
headroomNoFraction of the crop height reserved above the region top; defaults to 0.12.
frame_rateNoSequence frame rate used to snap times to frames; defaults to 30.
ease_framesNoFrames to ease each switch with bezier keyframes; 0 (default) emits hold keyframes (hard cuts).
source_frameYesSource clip frame size in pixels, e.g. 1920x1080 or 3840x2160.
target_frameNoTarget sequence frame size in pixels; defaults to 1080x1920.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
speaker_regionsYesNormalized (0..1) face/body rectangle of every speaker that appears, measured in the source frame.
min_hold_secondsNoNever switch faster than this; shorter turns are absorbed. Defaults to 1.5.
switch_lead_secondsNoSwitch this long before the speaker starts; defaults to 0.15.
base_video_track_indexNoVideo track holding the source clip in the target sequence; defaults to 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and idempotentHint annotations, the description explicitly states 'Local-only; never changes Premiere,' which is an unusually clear behavioral guarantee. It also discloses the nature of the output (framings, switches, keyframes, apply routes) without contradicting any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences front-load the purpose, then state the return contents and the safety guarantee. There is no filler or repetition of schema details; every sentence earns its place.

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 complex planning tool with 11 parameters and an output schema, the description covers the essential context: what it plans, what it returns, and its non-destructive local behavior. It does not mention how the returned apply routes should be consumed, but the output schema and sibling apply tools cover that gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents every parameter in detail. The description maps high-level inputs ('word timeline', 'static speaker regions') to the required parameters but does not add meaning beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Plan'), a concrete resource (active-speaker vertical reframe, stacked/split layout), and the exact inputs (word timeline and static speaker regions). It also clearly separates this from apply tools by stating it only returns framings, switches, keyframes, and apply routes.

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?

The description clearly conveys that this is a planning-only tool for generating reframe/keyframe plans from transcript and speaker-region data. It does not explicitly name alternative siblings like apply_edit_plan or plan_emphasis_zoom_keyframes, but the 'never changes Premiere' line provides a strong when-to-use/when-not-to-use signal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_beat_montagePlan Beat MontageA
Read-onlyIdempotent

Plan a beat-synced montage: carve a detect_beats grid into shots every N beats (merging short and splitting long spans), assign clips in order, and emit add_to_timeline_batch chunks, trim ranges, and cut markers. Local-only and deterministic; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
clipsYesSource clips available for the montage, in the caller's preferred order.
orderNoClip assignment order; defaults to as_given. round_robin interleaves priority groups.
frame_rateNoSequence frame rate used to snap shot boundaries; defaults to 30.
allow_reuseNoWhen true, cycle through clips again once they run out (continuing from where each stopped); otherwise the montage stops.
beat_secondsYesStrictly ascending beat times in sequence seconds, such as beatTimesSeconds from detect_beats.
max_shot_secondsNoLonger spans split at intermediate beats; defaults to 6.
min_shot_secondsNoShorter spans merge with the next beats; defaults to 0.4.
start_beat_indexNoIndex of the first beat to cut on; defaults to 0.
audio_track_indexNoTarget audio track for linked audio; defaults to 0.
cut_every_n_beatsNoBeats per shot; defaults to 2.
video_track_indexNoTarget video track for every placement; defaults to 0.
total_duration_secondsNoOptional cap on montage length measured from the first cut.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, idempotent, and non-destructive; the description adds value by stating 'Local-only and deterministic' and 'never changes Premiere', reinforcing the safety profile and clarifying determinism for planning output. It contributes context beyond the structured annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense sentence with no filler; the core purpose is front-loaded, and each clause adds a distinct piece of behavior (grid carving, clip assignment, output artifacts, non-mutation). It earns its length.

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 12-parameter, planning-only tool with a full input schema and an output schema, the description covers the algorithm, output, and safety, and the schema covers parameter details. It could add an explicit dependency note on detect_beats or a pointer to add_to_timeline_batch, but these are already implied and partially documented in the schema.

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?

With 100% schema description coverage, the schema already defines each parameter, so the description only needs to add algorithmic meaning. It does this by explaining the shot carving rule ('every N beats', 'merging short and splitting long spans') and the assignment order concept, which maps to cut_every_n_beats, min_shot_seconds/max_shot_seconds, and order.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description leads with a specific verb and resource ('Plan a beat-synced montage') and then details the exact behavior: carving a detect_beats grid into shots, assigning clips, and emitting add_to_timeline_batch chunks, trim ranges, and cut markers. This clearly distinguishes it from related planning tools and from detect_beats/add_to_timeline_batch.

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?

The description makes the planning-only, no-mutation role explicit via 'never changes Premiere', which routes an agent away from apply-style tools. It also references detect_beats as the source of the beat grid, implying it should follow beat detection and precede timeline application, though it does not explicitly name the apply alternative or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_chapter_markersPlan Chapter MarkersA
Read-onlyIdempotent

Plan YouTube-style chapters from a word-timed transcript using local TextTiling-lite topic-shift detection, titling each chapter from its distinctive tokens. Returns chapters, a youtube_timestamps block and add_marker-ready Chapter markers. Local-only plan; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateNoFrame rate used to snap start/end frames; defaults to 30.
stop_wordsNoExtra stop words removed before similarity and titling.
block_wordsNoApproximate words compared on each side of a sentence gap; defaults to 60.
title_wordsNoMaximum words in each generated chapter name; defaults to 4.
max_chaptersNoMaximum number of chapters; deepest topic valleys win. Defaults to 12.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
min_chapter_secondsNoMinimum chapter duration in seconds; defaults to 90.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already carry readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value beyond those hints by disclosing local-only computation ('TextTiling-lite' runs locally) and explicitly stating 'never changes Premiere', which makes the no-side-effect contract concrete for an agent. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences with no filler: purpose and algorithm first, then return shape, then side-effect safety. Every clause earns its place, and the most decision-relevant fact ('never changes Premiere') is positioned at the end as a crisp guarantee.

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?

Given the tool's complexity (nested word_timeline object, 7 params), the schema carries the full parameter burden at 100% coverage, annotations carry the safety profile, and an output schema exists so the return structure need not be spelled out. The description covers what remains: the algorithm, the three output components, and the local-only guarantee. A minor gap is the absence of an explicit prerequisite pointer to get_clip_transcript_uxp, though the schema's transcript_revision pattern communicates it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already documents all seven parameters, including defaults and constraints on frame_rate, block_words, title_words, max_chapters, and min_chapter_seconds. The description's algorithm language ('topic-shift detection', 'titling from distinctive tokens') loosely maps to stop_words, block_words, and title_words, but adds no parameter-specific meaning beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb+resource ('Plan YouTube-style chapters from a word-timed transcript') and adds a distinctive algorithm ('TextTiling-lite topic-shift detection', 'titling from distinctive tokens'). This clearly separates it from planning siblings like plan_silence_review_markers, plan_beat_montage, and plan_filler_word_removal without needing to open any schema.

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?

The description makes the usage context clear: the caller supplies a word-timed transcript and receives a plan, not a Premiere mutation. Mentioning 'add_marker-ready Chapter markers' implies the follow-on application step, and 'Local-only plan; never changes Premiere' clarifies this is a planning-stage tool. However, it does not explicitly name alternatives or when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_cross_app_workflowPlan Cross App WorkflowA
Read-onlyIdempotent

Plan an After Effects MOGRT or rendered-file handoff to Premiere using existing tools. Returns ordered dependencies, separate approvals, required evidence, and manual render stops. Local-only planning; never executes steps, issues approval tokens, or claims host readiness.

ParametersJSON Schema
NameRequiredDescriptionDefault
workflowYesSupported After Effects to Premiere handoff to plan.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly, idempotent, non-destructive behavior, and the description adds substantial transparency: it enumerates what the tool returns and explicitly clarifies what it does not do (execution, approval tokens, host readiness claims). This goes well beyond the annotations and prevents an agent from mistaking planning for execution.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry the full burden: the first states purpose and outputs, the second states constraints and exclusions. Every phrase adds value, and the most important scoping information ('Local-only planning; never executes') is positioned at the end as a clear guardrail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a single enum parameter, full schema coverage, rich annotations, and an output schema present, the description is complete for its complexity. It explains what the tool returns, what it does not do, and its planning-only scope. Nothing critical is missing for correct selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single 'workflow' parameter is already described with an enum of the two supported handoff types. The description echoes these two variants at a high level but adds no additional parameter-level detail beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Plan') with a clear resource ('After Effects MOGRT or rendered-file handoff to Premiere'). It also states concrete outputs (ordered dependencies, separate approvals, required evidence, manual render stops) and explicitly distinguishes itself from execution tools by saying it 'never executes steps, issues approval tokens, or claims host readiness.'

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?

The description clearly establishes this as a local-only planning tool and explicitly says it never executes steps or issues approval tokens. This gives an agent strong context for when to use it, though it does not name specific alternative tools such as apply_after_effects_render_handoff or preview_mogrt_premiere_handoff.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_emphasis_zoom_keyframesPlan Emphasis Zoom KeyframesA
Read-onlyIdempotent

Plan CapCut-style punch-in zoom keyframes (Motion Scale + subject-anchored Position) from a word timeline or supplied trigger times, with cooldown, easing, and hold controls. Local-only and deterministic; returns a keyframe plan for automate_effect_parameters_uxp or add_keyframe and never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameNoSequence frame size in pixels; defaults to 1080x1920.
triggerNoTrigger mode. Defaults to sentence_start with word_timeline and supplied with trigger_seconds.
alternateNoWhen true, triggers alternate between a punch-in that stays zoomed and a punch-out back to base instead of every trigger zooming and returning.
max_zoomsNoMaximum accepted zoom events; defaults to 120.
base_scaleNoResting Motion Scale percent; defaults to 100.
frame_rateNoSequence frame rate used to snap keyframe times; defaults to 30.
zoom_scaleNoPeak Motion Scale percent for each punch-in; defaults to 112 and must exceed base_scale.
hold_secondsNoSeconds to hold the zoomed scale before easing out; defaults to 1.2.
subject_pointNoNormalized (0..1) subject location the zoom should stay anchored on; defaults to x 0.5, y 0.4 for talking heads.
word_timelineNoCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
ease_in_framesNoFrames to ramp from base to zoom (0 = instant cut zoom); defaults to 3.
emphasis_wordsNoWords or short phrases that trigger a zoom in emphasis_words mode (case and punctuation insensitive).
ease_out_framesNoFrames to ramp back to base (0 = instant); defaults to 6.
every_n_secondsNoTrigger interval for every_n_seconds mode, measured from the start of the word timeline.
trigger_secondsNoClip-relative trigger times in seconds; use instead of word_timeline (exactly one is required).
cooldown_secondsNoMinimum spacing between accepted triggers; closer triggers are dropped with a warning. Defaults to 2.5.
clip_start_secondsNoTimeline offset of the clip; added to produce timeline_seconds on every keyframe. Defaults to 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the bar is lower. The description adds genuine value by stating it is 'Local-only and deterministic', that it returns a plan rather than applying changes, and explicitly that it 'never changes Premiere' — all consistent with the annotations. It does not cover edge-case behaviors like trigger dropping, but those are documented in the schema, so the added context is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with zero filler: the first front-loads the verb and resource while enumerating inputs and controls, and the second delivers the behavioral guarantees and downstream consumers. Every clause earns its place, and the description wisely leaves parameter minutiae to the 100%-covered schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 17-parameter tool with nested objects, the combination of annotations (read-only, idempotent, non-destructive) and an output schema relieves the description of explaining return values. The description covers what the tool produces, its input modes, its safety profile, and how its output is consumed. Nothing an agent needs to decide whether and how to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3; the schema's per-parameter descriptions already document defaults, bounds, and relationships (e.g., zoom_scale must exceed base_scale). The description adds only a high-level grouping of 'cooldown, easing, and hold controls' and the two input modes, which is useful orientation but not additional semantic detail. With 17 parameters fully covered in the schema, no compensation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Plan CapCut-style punch-in zoom keyframes (Motion Scale + subject-anchored Position)', which is unique among the large sibling list. It further specifies the input sources ('word timeline or supplied trigger times'), the configurable controls ('cooldown, easing, and hold'), and the downstream consumers ('automate_effect_parameters_uxp or add_keyframe'), making it fully distinguishable from every other plan_* sibling.

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?

The description gives clear context that this is a planning step whose output feeds automate_effect_parameters_uxp or add_keyframe, and that it is 'Local-only and deterministic' and 'never changes Premiere', signaling it is safe to run as a preview before any application step. However, it does not explicitly name an alternative tool and state the condition for choosing it over that alternative (when-not-to-use guidance), which keeps it slightly below the strongest examples.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_filler_word_removalPlan Filler Word RemovalA
Read-onlyIdempotent

Plan word-level filler removal (um, uh, you know...) from a revision-bound word timeline. Returns frame-snapped removal and keep ranges plus apply routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateNoTimebase used to snap ranges to whole frames; defaults to 30.
filler_wordsNoFiller words or multi-word phrases to remove (matched as consecutive normalized tokens). Defaults to: um, uh, er, ah, hmm, you know, i mean, sort of, kind of. 'like' is only removed when listed explicitly.
max_removalsNoMaximum merged removals to return; defaults to 256.
handle_framesNoFrames of handle left inside each removal so cuts are not tight; defaults to 1.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
min_confidenceNoOptional: only remove fillers whose every word carries a confidence at or above this value.
merge_gap_secondsNoRemovals separated by less than this are merged into one cut; defaults to 0.15.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already carry readOnlyHint=true, idempotentHint=true, and destructiveHint=false; the description strengthens this with a host-specific, actionable claim ('Local-only; never changes Premiere') rather than merely repeating annotation text. It also discloses the result behavior (frame-snapped removal and keep ranges plus apply routes) that an agent would want before calling. No contradiction with any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero waste: purpose (with examples), output artifacts, and safety guarantee. The most important information is front-loaded in sentence one, and each subsequent sentence earns its place by answering a distinct question an agent would have (what do I get back? does this mutate anything?).

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 moderately complex tool — 7 params, a nested word_timeline object, and an output schema — the description plus the 100%-covered schema covers the essentials: purpose, input binding constraint, output shape, and non-destructive behavior. The only notable gap is not naming the downstream apply route (e.g., apply_edit_plan) explicitly, though the 'apply routes' phrase hints at it and the output schema presumably documents the plan structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — every one of the 7 parameters has a detailed schema description covering defaults, matching semantics for filler_words, frame-snapping for frame_rate, handle_frames behavior, and revision binding for word_timeline. Per the rubric baseline, when coverage exceeds 80% the description need not duplicate parameter details, and it doesn't add significant param semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ('Plan word-level filler removal') and immediately scopes it with concrete examples ('um, uh, you know...') and an input constraint ('revision-bound word timeline'). The second sentence names the exact output artifacts ('frame-snapped removal and keep ranges plus apply routes'), which distinguishes it from near-siblings like plan_word_mute_ranges (mute vs. remove), plan_pause_tightening, and plan_silence_review_markers. This is far from a tautology — it adds real specificity beyond the name.

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?

The description conveys clear context for when this tool is appropriate: it is a planning-stage operation that runs locally and never touches the Premiere project, so an agent knows it can be invoked safely before any editing step and that its output (apply routes) feeds a downstream apply phase. However, it never explicitly names alternatives or exclusions — e.g., it doesn't say 'use apply_edit_plan to execute the plan' or contrast itself with plan_word_mute_ranges — leaving some routing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_pause_tighteningPlan Pause TighteningA
Read-onlyIdempotent

Plan shortening (not deleting) of inter-word pauses longer than max_pause_seconds down to a target, respecting sentence boundaries. Returns centered removal ranges, keep ranges, savings and apply routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_editsNoMaximum pauses to tighten (longest first when capped); defaults to 256.
frame_rateNoTimebase used to snap ranges to whole frames; defaults to 30.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
max_pause_secondsNoPauses longer than this are tightened; defaults to 1.0.
target_pause_secondsNoPause length kept after tightening (split evenly around the cut); defaults to 0.35 and must not exceed max_pause_seconds.
sentence_pause_secondsNoPause length kept after sentence-ending punctuation; defaults to 0.6.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which covers the safety profile. The description adds meaningful behavior beyond those annotations: it clarifies the output shape (centered removal ranges, keep ranges, savings, apply routes), explicitly states it respects sentence boundaries, and emphasizes it is local-only and never mutates Premiere. This is useful context, though it doesn't go into detail about failure modes or edge cases like overlapping ranges.

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?

Three sentences with no waste. The first sentence states the core function and constraints, the second lists the output categories, and the third covers the safety profile. It avoids repeating parameter details already in the schema. Minor gap: 'apply routes' is a bit terse and could use one short clarifying phrase, but overall it is efficiently structured.

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?

The tool is planning-only with rich input schema (100% coverage) and an output schema, so the description doesn't need to explain return values in depth. It covers the key behavioral constraints (sentence boundaries, local-only, non-destructive) and output categories. The main omission is not explicitly noting that the word_timeline must come from get_clip_transcript_uxp, although that's already in the schema. Given the complexity of the nested word_timeline object, the description could have mentioned prerequisites or that it is a compute-only planning step, but it is still reasonably complete.

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?

The input schema already provides detailed descriptions for all six parameters (schema description coverage is 100%), covering defaults, bounds, and semantics. The description adds interpretive meaning that goes beyond individual parameter docs: it explains how max_pause_seconds and target_pause_seconds interact (pauses longer than max are shortened down to target), and that target splits evenly around the cut. This adds genuine value without needing to repeat schema field docs.

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 operation: planning (not executing) the shortening of inter-word pauses, scoped to pauses longer than max_pause_seconds and respecting sentence boundaries. It clearly distinguishes itself from deleting pauses by explicitly saying 'not deleting.' However, it doesn't explicitly differentiate from sibling planning tools like plan_filler_word_removal or plan_silence_review_markers, which also operate on timing/transcript content, so it falls short of full sibling differentiation.

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?

The description implies the tool is for planning pause tightening before any apply step, especially since it names 'apply routes' as part of the return, suggesting a plan-then-apply workflow. However, it does not explicitly state when to prefer this over alternatives like plan_filler_word_removal or plan_silence_review_markers, and it doesn't name a sibling fallback. The 'Local-only; never changes Premiere' line adds a clear usage safety condition, which helps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_platform_delivery_matrixPlan Platform Delivery MatrixA
Read-onlyIdempotent

Plan multi-ratio delivery of one source sequence to TikTok, Reels, Shorts, YouTube, LinkedIn, X, and Facebook from a local spec table: sequence settings, reframe scale math, duration and file-size fit, caption safe zones, and ordered apply routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesSource sequence characteristics.
targetsYesUnique platform ids to plan for.
strategyNoReframe strategy when the aspect ratio changes; defaults to auto_reframe.
export_preset_hintNoOptional export preset name to echo into the export step.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by specifying 'Local-only; never changes Premiere' and detailing what the plan covers: sequence settings, reframe scale math, duration and file-size fit, caption safe zones, and ordered apply routes. This goes beyond merely restating the read-only nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. The first sentence front-loads the tool's purpose and key output areas, and the second states the critical non-mutating guarantee. Every phrase contributes to selection or invocation understanding.

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?

Given the rich input schema, output schema, and safety annotations, the description is largely complete for a planning tool. It describes scope, outputs, and the local-only/no-Premiere-mutation guarantee. It does not explicitly explain the 'local spec table' term or contrast with related plan/apply siblings, but these are minor gaps rather than core omissions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents source, targets, strategy, and export_preset_hint. The description adds high-level context about multi-ratio delivery and planning outputs but does not materially clarify individual parameter semantics beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Plan multi-ratio delivery of one source sequence to TikTok, Reels, Shorts, YouTube, LinkedIn, X, and Facebook.' It further defines the tool's scope as a local planning operation producing a spec table, and the final sentence explicitly distinguishes it from mutating Premiere operations. This separates it clearly from apply/export siblings.

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?

The description gives clear context that this is a non-destructive planning tool used before delivery, and the 'never changes Premiere' clause signals when not to use it if actual sequence mutation is needed. It does not explicitly name alternative tools or provide when-not-to-use conditions, but the planning-only framing is enough to route an agent appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_shot_matchPlan Shot MatchA

Compare two bounded local-media frame samples and return measured waveform/parade/saturation deltas plus coarse correction directions. Read-only planning only; it does not grade Premiere or claim that primaries alone can match the shots.

ParametersJSON Schema
NameRequiredDescriptionDefault
target_media_pathYesExisting local target video file
target_time_secondsNoTarget source time from 0 through 86400 seconds (default: 0)
reference_media_pathYesExisting local reference video file
reference_time_secondsNoReference source time from 0 through 86400 seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly claims 'Read-only planning only', but the annotations set readOnlyHint to false, which indicates the operation is not guaranteed to be read-only. This is a direct contradiction between the description and structured metadata. Although the description does add useful limitation context, the contradiction undermines trust and must be flagged.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: the first sentence states the operation and outputs, and the second adds essential scoping and limitation information. There is no filler, and every clause earns its place.

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?

Given that an output schema exists and the input schema fully documents all four parameters, the description provides enough context about purpose, outputs, and limitations. It is slightly incomplete because it does not name a sibling alternative, and the read-only contradiction creates a gap in behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented in the input schema. The description does not add parameter-level detail, but it does not need to; the baseline of 3 applies because the schema carries the parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Compare') and resource ('two bounded local-media frame samples'), and it states the concrete outputs: measured waveform/parade/saturation deltas and coarse correction directions. It also clarifies that the tool is planning-only and does not grade Premiere, which sets it apart from color-correction tools like color_correct or apply_lut.

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?

The description gives clear context: use this for read-only planning comparisons between two local frame samples, not for applying grades or grading in Premiere. It does not name an explicit alternative tool, but the stated limitations ('does not grade Premiere', 'does not claim primaries alone can match') give useful when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_silence_review_markersPlan Silence Review MarkersA
Read-onlyIdempotent

Create a bounded, non-mutating review plan that maps FFmpeg-detected source-media silences onto one known 1x timeline placement. It clips candidates to the supplied source in/out span, redacts the source path, and never adds markers, cuts clips, or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesAbsolute path to the local source media file to analyse.
max_candidatesNoMaximum candidate ranges to return (default: 50, maximum: 200).
source_in_secondsNoSource-media in point used by the placement (default: 0).
noise_threshold_dbNoLevel at or below which audio counts as silence, in dBFS (default: -30).
source_out_secondsNoExclusive source-media out point used by the placement. Defaults to the detected media duration when available.
min_duration_secondsNoShortest run of silence to consider (default: 1.5).
timeline_start_secondsYesTimeline time where this 1x source placement begins.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even though annotations already mark this as read-only, idempotent, and non-destructive, the description goes further by explaining concrete behaviors: candidates are clipped to the source in/out span, the source path is redacted, and no markers or clips are modified. This gives the agent a clear and accurate behavioral contract.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the main purpose, with every clause adding meaningful information. There is no repetition of schema content and no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a fully described schema, a rich output schema, and annotations covering safety, the description completes the picture by clarifying the non-mutating review-plan nature and the scoping/redaction behavior. Nothing essential for a correct call is missing.

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?

The schema covers 100% of the parameters, so the baseline is 3. The description adds useful context by explaining how source in/out parameters shape the candidate list and how timeline_start_seconds relates to the '1x timeline placement.' It also adds the non-obvious behavior that the source path is redacted from the plan.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Create'), a specific resource ('review plan'), and a precise function ('maps FFmpeg-detected source-media silences onto one known 1x timeline placement'). It also clearly differentiates itself from mutation tools by stating it 'never adds markers, cuts clips, or changes Premiere.'

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?

The description makes the core use case clear: someone wants a non-mutating review plan for silence candidates at a given timeline placement. However, it does not explicitly name alternatives like detect_silence, plan_pause_tightening, or add_marker, nor state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_speaker_checkerboardPlan Speaker CheckerboardA
Read-onlyIdempotent

Plan a speaker checkerboard (each speaker's turns on their own video/audio track) from a caller-supplied word timeline. Returns frame-snapped segments, split points, track assignments, and the add_track/razor_all_tracks/move_clip_to_track routes. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateNoSequence frame rate used to snap times to frames; defaults to 30.
handle_framesNoFrames to pad each segment outward, clamped so adjacent turns never overlap; defaults to 2.
speaker_orderNoOptional speaker labels fixing track slot order; unlisted speakers append in first-appearance order.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
min_turn_secondsNoInterior turns shorter than this are absorbed into the surrounding speaker; defaults to 0.8.
merge_gap_secondsNoSame-speaker words separated by at most this gap merge into one turn; defaults to 0.5.
track_per_speakerNotrue (default) assigns one track per speaker; false alternates consecutive segments between two tracks.
base_audio_track_indexNoAudio track holding the source clip; defaults to 0.
base_video_track_indexNoVideo track holding the source clip; defaults to 0.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly states 'Local-only; never changes Premiere', directly disclosing the read-only, non-destructive behavior and reinforcing the readOnlyHint and destructiveHint annotations. It also frames the output as a plan with routes rather than direct edits, so the agent knows no timeline mutation occurs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose and immediately followed by output and side-effect clarity. No filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high complexity (nested objects, 9 parameters, output schema present), the description sufficiently states the input source, what is produced, and the key safety property. Since an output schema exists, detailed return-value description is unnecessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 9 parameters have full schema descriptions, so the description contributes little beyond the schema. The tool description mentions 'word timeline' and output concepts but does not add meaning to individual parameters; baseline 3 applies given 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Plan' and the specific object 'speaker checkerboard', defines what that means (each speaker's turns on their own track), and names the exact return elements: frame-snapped segments, split points, track assignments. It distinguishes itself from other plan_* tools by specifying the caller-supplied word timeline and the local-only nature.

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?

Provides clear context: use when you have a caller-supplied word timeline and need to plan a speaker checkerboard without modifying Premiere. It does not explicitly name alternatives or say when not to use it, but the scope is specific enough to guide tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_word_mute_rangesPlan Word Mute RangesA
Read-onlyIdempotent

Plan mute or bleep ranges for listed words/phrases in a word timeline. Returns redacted, frame-snapped mute ranges, ready-to-apply audio keyframes and (for bleep) tone placements. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNomute ducks the dialogue only; bleep also emits tone placements. Defaults to mute.
wordsYesExact words or phrases to mute, matched as consecutive normalized tokens.
frame_rateNoTimebase used to snap ranges to whole frames; defaults to 30.
mute_level_dbNoLevel inside each range for add_audio_keyframes; defaults to -60.
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
padding_secondsNoSeconds added before and after each flagged word; defaults to 0.04.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, and the description adds meaningful behavioral context: 'Local-only; never changes Premiere' and that output is 'redacted, frame-snapped... ready-to-apply.' This goes beyond the annotations by describing what the tool computes and that it has no Premiere side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the core action and target, and the second covers output behavior and the critical safety caveat. Every clause earns its place, and the most important scoping information appears first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich annotations, full input schema, and presence of an output schema, the description covers what an agent needs to select and invoke the tool correctly: it is a planning-only operation, returns ready-to-apply ranges/keyframes/tones, and never mutates Premiere. The main prerequisite, that word_timeline must come from get_clip_transcript_uxp, is already documented in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline of 3 applies. The description references 'words/phrases,' 'word timeline,' 'frame-snapped,' and 'bleep,' but these mostly mirror what the schema already documents for words, word_timeline, frame_rate, and mode. It adds little semantic value beyond the structured parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Plan mute or bleep ranges for listed words/phrases in a word timeline.' It clearly distinguishes itself from apply-style sibling tools by saying it 'Returns... ready-to-apply audio keyframes' and 'never changes Premiere,' and from other planning tools by targeting word/phrase mute ranges rather than silence or filler-word review.

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?

The description conveys when to use it: during the planning phase, to produce mute/bleep ranges without modifying Premiere. Phrases like 'ready-to-apply audio keyframes' and 'Local-only; never changes Premiere' indicate this is a safe compute-only precursor to a later application step. It does not explicitly name alternative tools such as add_audio_keyframes or plan_filler_word_removal, so it stops short of a full exclusion-based usage guide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

play_source_monitorPlay Source MonitorA

Request playback of the clip in the Source Monitor. The legacy API does not provide a same-call position readback, so movement is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault
speedNoPlayback speed (1.0 = normal, 2.0 = 2x, -1.0 = reverse). Default: 1.0

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations by disclosing that the legacy API provides no same-call position readback and therefore movement is not reported as verified. This helps an agent interpret responses correctly. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with no wasted words: the first identifies the action and target, the second adds a relevant caveat. The important limitation is placed right after the core statement without excessive context.

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 single-parameter tool with an output schema available, the description covers the essential behavior and the key caveat about unverified movement. It does not mention prerequisites like needing a clip already open in the Source Monitor, but this is reasonably inferable from the tool name and sibling tools like open_in_source.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The parameter schema already documents the only parameter, speed, with examples and a default value, covering 100% of parameters. The description adds no extra parameter-level detail, so the schema carries the responsibility and a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Request playback') and resource ('the clip in the Source Monitor'), making the tool's purpose immediately clear. It naturally distinguishes the tool from related timeline playback tools such as play_timeline by naming the Source Monitor context.

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?

The target context (Source Monitor playback) is implied clearly, but there is no explicit guidance on when to select this tool over alternatives like play_timeline, or any prerequisite such as having a clip loaded in the Source Monitor. The usage is inferable rather than explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

play_timelinePlay TimelineA

Request playback of the active sequence timeline through QE. The legacy API does not provide a same-call playhead readback, so movement is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already flag this as non-read-only and non-idempotent, and the description adds meaningful behavioral context: the legacy API does not provide same-call playhead readback, so movement is not reported as verified. This is useful beyond the structured annotations and helps set expectations about verification.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary action is front-loaded, and the verification caveat is placed immediately after. Every sentence contributes useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With zero parameters and an output schema present, the description is sufficient for an agent to invoke the tool correctly. It also explicitly discloses the key limitation around playback verification, which is the main behavioral uncertainty. No critical context is missing.

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?

The tool has zero parameters, so there is no parameter semantics burden on the description. The schema is empty and description coverage is 100%, making additional parameter explanation unnecessary.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Request playback') and a specific resource ('the active sequence timeline through QE'), which clearly distinguishes it from sibling tools like play_source_monitor. The resource and mechanism are precise enough for an agent to identify what this tool does.

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?

The description implies when to use this tool: when playback of the active sequence timeline is needed. However, it does not explicitly contrast it with alternatives such as play_source_monitor or stop_playback, nor does it state any conditions for preferring this tool over siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_after_effects_renderPreview After Effects RenderA
Read-onlyIdempotent

Preview a bounded queue-only After Effects render request for one named composition and existing workspace output directory. It does not contact Adobe, enqueue, or render.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesNew workspace-contained output file path whose parent already exists.
composition_nameYesExact existing After Effects composition name.
output_module_templateYesExact After Effects output-module template name.
approved_workspace_pathYesAbsolute operator-approved workspace root.
render_settings_templateYesExact After Effects render-settings template name.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, idempotent, and non-destructive, so the bar for added behavioral disclosure is lower. The description adds useful beyond-annotation context by stating that it does not contact Adobe, enqueue, or render, clarifying the absence of external side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences deliver the action, scope constraints, and explicit non-behaviors with no filler. The core purpose is front-loaded, and the negative clarification is compact and valuable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a non-mutating preview tool, the annotations and output schema cover safety and return-value expectations, while the description covers scope and side-effect boundaries. Nothing an agent needs to invoke it correctly appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all five parameters are already documented in the input schema. The description adds only high-level bounding language about composition and workspace directory but no per-parameter meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation ('Preview a bounded queue-only After Effects render request') with clear scope constraints: one named composition and an existing workspace output directory. It also explicitly states non-goals ('does not contact Adobe, enqueue, or render'), which cleanly distinguishes it from actual rendering/enqueueing tools.

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?

The description clearly implies the tool is for previewing a queue request before any real enqueue or render, and the explicit negatives establish when not to use it. However, it does not name an alternative sibling like enqueue_after_effects_render, so the routing guidance is not fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_after_effects_render_handoffPreview After Effects Render HandoffA
Read-onlyIdempotent

Preview import of one completed After Effects single-file render into an existing Premiere bin. Reads both connected hosts and binds approval to file metadata and project/bin identity. Does not render, import, or edit a timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesExisting completed .mov, .mp4, .mxf, .avi or .wav render; image sequences are not supported.
target_bin_idYesExact node ID of an existing destination bin, never a name.
ae_project_pathYesExact open, saved After Effects project path.
queue_item_indexYesOne-based AE render queue item index, as returned by enqueue_after_effects_render.
premiere_project_pathYesExact open, saved Premiere project path.
approved_workspace_pathYesExisting absolute workspace containing both saved projects and the rendered media.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds meaningful context by stating it reads both connected hosts and binds approval to file metadata and project/bin identity. It also reinforces safety by listing operations it does not perform, going beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the primary purpose, and the second provides behavioral scope and exclusions. Every clause earns its place and the description is easy to parse quickly.

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?

The description is sufficient for a preview tool with strong annotations, a complete schema, and an output schema. It explains the core behavior and important exclusions, though it could be slightly more explicit about the relationship to apply_after_effects_render_handoff and the prerequisite that both hosts must be connected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all six parameters in detail. The description does not add parameter-specific meaning beyond the schema, but it does support the overall context by mentioning 'single-file render' and 'existing bin'. Baseline 3 is appropriate since the schema carries the parameter documentation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Preview import'), the resource ('one completed After Effects single-file render'), and the destination ('an existing Premiere bin'). It also explicitly lists what the tool does not do, making it easy to distinguish from apply_after_effects_render_handoff and other AE-related tools.

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?

The description gives clear context that this is a preview-only operation and explicitly excludes render, import, and timeline editing. However, it does not name the alternative apply_after_effects_render_handoff or state that this should be used before applying the handoff, leaving some inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_brand_spotPreview Brand SpotA
Read-onlyIdempotent

Preview a brand-spot assembly from existing project items with an optional workspace-contained MOGRT overlay. Preview is local-only; it does not read or import the MOGRT file.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathNoOptional absolute .mogrt path, which must be inside approved_workspace_path.
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
motion_styleNoScale-motion style for product and brand spots; defaults to alternate.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
title_track_indexNoEmpty title-overlay video track index, default 1 and distinct from video_track_index.
video_track_indexNoEmpty destination video track index, default 0.
title_start_secondsNoMOGRT start time in seconds, default 0.4.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
approved_workspace_pathNoOperator-approved root containing mogrt_path; required whenever mogrt_path is supplied.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds non-obvious behavior beyond those annotations by explicitly stating the preview is local-only and does not read or import the MOGRT file, which is especially valuable given a mogrt_path parameter exists. It is consistent with the annotations, so no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the core action and then adds the single most important behavioral caveat, leaving parameter details to the schema.

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?

The tool has 12 parameters, but the schema fully documents defaults, constraints, and prerequisites such as an active empty sequence and approved workspace path. Annotations cover safety/idempotence and an output schema exists, so the short description is sufficient for correct invocation. It could still name sibling alternatives, but that is not strictly required for calling it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all 12 parameters already documented in detail. The description's phrases like 'existing project items' and 'workspace-contained MOGRT overlay' only echo the schema's parameter descriptions and do not add meaningful parameter-level semantics beyond them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Preview' with a scoped object: 'a brand-spot assembly from existing project items' plus 'an optional workspace-contained MOGRT overlay'. The 'local-only; does not read or import the MOGRT file' clause clearly separates this from MOGRT import/apply siblings.

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?

The description implies a safe, local-only preview context and implies this is the tool to use when you do not want to import MOGRT files, but it never explicitly states when to choose this over sibling preview/apply tools. No alternatives or when-not-to-use cases are named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_editorial_planPreview Editorial PlanA
Read-onlyIdempotent

Revalidate an exact server-issued editorial plan against the saved project-context revisions and return an opaque confirmation token. This tool is read-only and cannot apply the plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesUnchanged plan returned by create_editorial_plan from this running server instance.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is well covered. The description adds meaningful behavioral context beyond annotations: revalidation checks an exact server-issued plan against saved revisions, returns an opaque token, and explicitly cannot apply changes. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two efficient sentences with no filler. The core behavior is front-loaded, and the read-only disclaimer is placed second for emphasis. Every sentence adds value.

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?

Given the single parameter, strong annotations, and existing output schema, the description is largely complete for a read-only validation tool. It clearly explains the input requirement and the non-applying nature. It could be slightly stronger by explicitly routing the user to apply_edit_plan for actual changes or mentioning the purpose of the confirmation token, but this is not a major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents the single `plan` parameter as an unchanged plan returned by create_editorial_plan from this running server instance. The description restates this requirement in different words ('exact server-issued editorial plan') but provides no additional semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: revalidating an exact server-issued editorial plan and returning a confirmation token. It clearly distinguishes this from applying the plan by explicitly saying it is read-only and cannot apply the plan. This is a clear, non-tautological definition.

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?

The description gives clear context: use this to revalidate a plan against saved project-context revisions, and it explicitly says this tool cannot apply the plan. It does not explicitly name sibling alternatives like apply_edit_plan or preview_edit_plan, so it falls just short of the strongest guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_edit_planPreview Edit PlanA

Validate and preview a compound timeline edit without changing Premiere. Returns a confirmation token required by apply_edit_plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesAn edit plan containing insert_clip and remove_clip operations (maximum 100)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations: it guarantees no Premiere mutation, performs validation, and returns a token needed downstream. It does not detail validation failure modes, side effects outside Premiere, or token expiration, but the 'without changing Premiere' statement is a valuable safety disclosure that the annotations alone do not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, both information-dense. The first front-loads the action and the non-destructive guarantee; the second connects to the required next step. No filler or redundant restatement of the tool name.

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?

The tool is moderately complex due to a nested plan object, but the output schema exists and the single parameter is fully documented. The description covers purpose, safety, and workflow linkage. A small gap is the lack of detail about validation behavior or error conditions, but this is minor given the available schema and output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%: the schema already documents the single 'plan' parameter as an object containing insert_clip and remove_clip operations with a maximum of 100. The description adds no additional parameter-level meaning, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Validate and preview') with a concrete resource ('a compound timeline edit'), and explicitly states the key non-mutation guarantee ('without changing Premiere'). It also clearly differentiates itself from apply_edit_plan by naming the confirmation token requirement, so an agent can distinguish this preview step from the actual application step.

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?

The description clearly implies the usage workflow: call this before apply_edit_plan, since it 'Returns a confirmation token required by apply_edit_plan.' It does not explicitly enumerate alternatives or when-not-to-use scenarios, but the token dependency and visible sibling apply_edit_plan provide strong contextual routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_mogrt_batchPreview Mogrt BatchA
Read-onlyIdempotent

Preview up to 20 bounded MOGRT recipe exports from a workspace-contained JSON or CSV data file. It does not contact Adobe or create any compositions or files.

ParametersJSON Schema
NameRequiredDescriptionDefault
brand_kitNoOptional validated brand-kit values applied to every batch recipe.
data_file_pathYesExisting workspace-contained .json or .csv file with recipe rows.
output_directoryYesExisting workspace-contained directory for every batch artifact.
approved_workspace_pathYesAbsolute operator-approved workspace root.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnlyHint and idempotentHint, so the description's bar is lower, but it adds concrete behavioral guarantees: no Adobe contact and no composition/file creation. It also caps the operation at 20 recipes, which is useful operational context. The only slight gap is that the required output_directory's 'artifact' wording is not reconciled with 'does not create any files.'

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences capture the operation, its input, and its side-effect profile, with the core capability front-loaded. Every clause earns its place; there is no filler or restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With annotations and a rich schema, the description is mostly sufficient: it clarifies read-only behavior, boundary, and input types. It loses a point because the description's 'does not create any files' sits uneasily with the schema's output_directory description ('directory for every batch artifact'), leaving an agent uncertain whether artifacts are produced. It also provides no explicit routing to sibling preview/create tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema description coverage is 100%, so the schema already documents data_file_path, output_directory, approved_workspace_path, and brand_kit. The description adds the 'up to 20' boundary and reaffirms the JSON/CSV source, but it doesn't clarify brand_kit or output_directory beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Preview'), a precise resource ('MOGRT recipe exports'), and a concrete scope ('up to 20 bounded' from a JSON or CSV data file). It also states what it does not do ('does not contact Adobe or create any compositions or files'), which separates it from export/creation siblings like create_mogrt_batch and preview_mogrt_recipe.

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?

The first sentence implies the intended use case: previewing multiple MOGRT recipes from a data file. However, it never explicitly says when to choose this tool over preview_mogrt_recipe or create_mogrt_batch, nor does it mention exclusions like 'use the singular preview for one recipe'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_mogrt_library_publishPreview Mogrt Library PublishA
Read-onlyIdempotent

Preview a no-overwrite publish of a validated MOGRT into a workspace-contained, versioned local library. The library root must already exist; no file or directory is created during preview.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesExisting workspace-contained MOGRT artifact.
template_nameYesSafe immutable library template name.
library_directoryYesExisting workspace-contained local library root.
approved_workspace_pathYesAbsolute operator-approved workspace root.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral detail beyond those: no-overwrite semantics, the requirement that the library root already exist, and the explicit guarantee that no file or directory is created. This is exactly the kind of contextual transparency that helps an agent avoid side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise, information-dense sentences. The primary purpose is front-loaded, and the critical constraint about not creating files is stated immediately. Every clause adds value; there is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a read-only, idempotent, non-destructive profile fully covered by annotations, all four parameters are documented with 100% schema coverage, and an output schema exists so return-value documentation is unnecessary. The description adds the essential preconditions and side-effect guarantees, making the definition complete for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already fully documented in the input schema. The description adds some contextual nuance (e.g., the library root must already exist, no overwrite) but does not significantly extend parameter-level meaning beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Preview'), a specific resource ('a no-overwrite publish of a validated MOGRT'), and the target scope ('workspace-contained, versioned local library'). It clearly distinguishes this from the sibling publish_mogrt_to_library by emphasizing that nothing is created.

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?

The description gives clear context: this is a preview operation, not an actual publish, and it requires the library root to already exist. It implies use before a real publish and when non-destructive validation is needed, though it does not explicitly name alternatives or when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_mogrt_premiere_handoffPreview Mogrt Premiere HandoffA
Read-onlyIdempotent

Preview a contained MOGRT import into one explicitly named disposable Premiere verification sequence and empty video track. It does not contact Premiere or alter a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesExisting workspace-contained MOGRT artifact.
sequence_idYesExact Premiere sequence identifier to recheck before import.
start_secondsNoInsertion start time in seconds; defaults to 0.
audio_track_indexNoAudio track index passed to Premiere; defaults to 0.
video_track_indexNoEmpty video track index for the imported MOGRT; defaults to 0.
approved_workspace_pathYesAbsolute operator-approved workspace root.
disposable_sequence_nameYesMust begin with 'MOGRT Verify - '.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/idempotent/destructive. The description adds valuable context beyond annotations: it does not contact Premiere and does not alter a sequence, clarifying what 'preview' means in this tool's workflow. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core operation, and the clarifying exclusion in the second sentence. No filler or 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?

Combined with a fully described schema and an output schema, the description gives an agent enough to decide when to use the tool. Slight ambiguity remains around the relationship between 'does not contact Premiere' and the sequence_id being rechecked, but this is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so schema carries the parameter meaning. The description adds only light context (contained, explicitly named, empty video track) that largely mirrors schema property descriptions; it does not deepen parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Preview), resource (contained MOGRT import into one disposable Premiere verification sequence and empty video track), and explicitly excludes mutation/contact. Even without naming a sibling, the 'does not contact Premiere or alter a sequence' clause separates it from apply/handoff tools.

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?

The description establishes clear context: use for a non-destructive preview of a single MOGRT into a disposable sequence. It does not explicitly name alternative tools like apply_mogrt_premiere_handoff, but the exclusions communicate when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_mogrt_recipePreview Mogrt RecipeA
Read-onlyIdempotent

Preview a bounded After Effects MOGRT recipe from the supported title, callout, quote, and social template library. It validates one existing workspace output directory but does not contact Adobe or write any files.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNoComposition width from 320 to 7680 pixels; defaults to 1920.
heightNoComposition height from 240 to 4320 pixels; defaults to 1080.
recipeNoSupported authored template recipe; defaults to lower_third.
headlineYesPrimary lower-third text, at most 160 characters.
subtitleNoOptional secondary lower-third text, at most 160 characters.
brand_kitNoOptional approved local brand kit. It can constrain naming, request an installed font, place a workspace-contained PNG/JPEG logo, and enforce a safe margin.
frame_rateNoComposition frame rate; defaults to 30.
text_colorNoOptional text color as #RRGGBB; defaults to #FFFFFF.
accent_colorNoOptional accent fill color as #RRGGBB; defaults to #2563EB.
template_nameYesSafe template file stem; the generated artifact is template_name.mogrt.
duration_secondsNoComposition duration between 2 and 30 seconds; defaults to 5.
output_directoryYesExisting absolute output directory inside approved_workspace_path; this workflow never creates directories.
approved_workspace_pathYesAbsolute operator-approved workspace root containing the saved AE project and output directory.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations already declaring readOnlyHint=true, idempotentHint=true, and destructiveHint=false, the description adds genuinely valuable behavioral context beyond them: it validates exactly one existing workspace output directory, never contacts Adobe, and writes no files. For a 'preview' tool an agent could wrongly assume an Adobe round-trip or a written preview artifact; the description explicitly disclaims both. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero filler. The first sentence front-loads action and scope; the second disclaims the two most likely behavioral misassumptions. Every phrase earns its place.

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?

Given the rich 100%-covered schema, an output schema, and safety-carrying annotations, the description needs only to capture behavioral scope and boundaries — which it does. The only minor gap is not explicitly differentiating among the large family of preview siblings (preview_mogrt_batch, preview_mogrt_library_publish, preview_mogrt_premiere_handoff), but openWorldHint=false and the scope terms provide adequate context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 — the schema fully documents all 13 parameters. The description adds marginal extra meaning by tying behavior to workspace/output-directory parameters ('validates one existing workspace output directory'), but it does not add per-parameter detail, which the schema already provides.

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 ('Preview'), a resource ('bounded After Effects MOGRT recipe'), and scope ('supported title, callout, quote, and social template library'). The qualifier 'bounded' and the disclaimer 'does not contact Adobe or write any files' implicitly separate it from sibling preview tools like preview_after_effects_render or preview_mogrt_library_publish, though it never names a sibling explicitly.

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?

The constraints ('validates one existing workspace output directory', 'does not contact Adobe or write any files') imply when this tool is appropriate — a local, sandboxed, single-workspace preview — but no explicit when-to-use/when-not-to-use guidance or named alternatives (e.g., preview_mogrt_batch, preview_mogrt_premiere_handoff) is given. The usage context is inferable, not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_motion_graphics_demoPreview Motion Graphics DemoA
Read-onlyIdempotent

Preview a contained motion-graphics demo assembly from existing project items. It never creates demo assets, imports files, creates a sequence, or changes Premiere; apply requires an exact confirmation token.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
video_track_indexNoEmpty destination video track index, default 0.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable domain-specific behavioral detail: it never creates demo assets, imports files, creates a sequence, or changes Premiere. It also discloses that applying requires an exact confirmation token, which is a meaningful guardrail, though slightly ambiguous since this tool itself is only a preview.

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?

The description is compact and front-loaded: the first sentence states the core purpose, and the second sentence clarifies side effects and the confirmation-token requirement. No filler is present, though the token mention is a bit tangential for a preview-only tool and could confuse an agent into thinking the token is required for preview.

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?

The description, combined with full schema coverage, an output schema, and safety annotations, is largely complete for selecting and invoking the tool. The main gaps are the unexplained 'exact confirmation token' and the lack of explicit guidance about what the preview output represents, but these are minor given the other structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all seven parameters thoroughly. The description adds no new parameter-level meaning beyond reinforcing that assets come from existing project items; this aligns with the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the verb 'Preview' and the specific resource: a contained motion-graphics demo assembly built from existing project items. It further distinguishes itself by explicitly stating what it never does (create assets, import files, create a sequence, or change Premiere), which separates it from many related preview/create tools.

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?

The description gives clear context that this is for previewing from existing project items and explicitly states when-not to use it for creating or importing assets. However, it does not name any alternative tool or explicitly route the agent to the appropriate apply/create counterpart, so the guidance is more implied than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_product_spotPreview Product SpotA
Read-onlyIdempotent

Preview a product-spot assembly from existing project items. The eventual apply is limited to explicit empty tracks, revalidates item IDs, and reports host readback without claiming visual delivery verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
motion_styleNoScale-motion style for product and brand spots; defaults to alternate.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
video_track_indexNoEmpty destination video track index, default 0.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, idempotent, non-destructive behavior; the description adds valuable nuance by stating that item IDs are revalidated and that the tool reports host readback without claiming visual delivery verification. This meaningfully informs an agent about the preview's guarantees and limitations beyond the structured annotations.

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?

Two sentences with the core action front-loaded and no filler. The second sentence packs important caveats compactly, though its subject shift to 'the eventual apply' makes it slightly harder to parse cleanly.

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?

With a fully described input schema, an output schema, and safety annotations, the description only needs to add workflow context and behavioral caveats, which it does. The main gap is the lack of explicit guidance for distinguishing this tool from similar preview siblings, but that does not prevent an agent from invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All eight parameters have schema descriptions, so the schema carries the semantic load and earns the baseline 3. The description's references to 'empty tracks' and 'item IDs' echo schema wording rather than adding new parameter-level meaning.

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 sentence clearly states the verb ('Preview') and the specific resource ('product-spot assembly from existing project items'), which is more specific than generic preview descriptions. It does not explicitly name or differentiate a sibling alternative, but the resource type is distinct enough to narrow the choice.

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?

The description implies the workflow context: preview a product-spot assembly before an eventual apply, with apply constrained to explicit empty tracks. However, it does not explicitly say when to prefer this over preview_brand_spot or other preview siblings, and it does not name alternatives. The 'without claiming visual delivery verification' line is a limitation rather than an explicit when-not-to-use instruction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_project_intakePreview Project IntakeA
Read-onlyIdempotent

Inspect a bounded Premiere project against an explicit facility intake template and return a path-redacted report plus a non-mutating organization proposal. It never changes Premiere or persists the template.

ParametersJSON Schema
NameRequiredDescriptionDefault
templateYesVersioned facility policy. Unknown fields and unsafe matching expressions are rejected by the intake engine.
max_itemsNoMaximum project items to inspect; defaults to 2000. Truncation returns an incomplete report.
include_pathsNoInclude observed media paths in findings. Defaults to false; hashes are returned instead.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnly, idempotent, and non-destructive, but the description adds genuine behavioral detail: it 'never changes Premiere or persists the template', returns path-redacted findings, and is bounded by max_items truncation. This is exactly the safety and side-effect context that helps an agent trust a preview call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, with the core action and return deliverables front-loaded and the safety guarantee immediately after. Every phrase earns its place.

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?

With a full output schema, detailed parameter descriptions, and safety annotations, the description covers the operation's purpose, non-mutation, path redaction, and boundedness. A slightly more explicit statement of when this preview should be preferred over mutating intake workflows would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter (template, max_items, include_paths) already has a meaningful description. The tool description adds context like 'path-redacted' but does not need to repeat parameter syntax; the schema carries the burden adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Inspect') and resource ('a bounded Premiere project ... against an explicit facility intake template'), then states the two concrete deliverables: a path-redacted report and a non-mutating organization proposal. This clearly differentiates it from generic preview_* siblings by anchoring it to facility intake templates.

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?

The context is clear: use this when inspecting a project against an intake template and wanting a preview that does not mutate. However, it never names an alternative tool or states when-not-to-use it, so the agent must infer the appropriate selection from the template-oriented wording.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_watched_media_importPreview Watched Media ImportA
Read-onlyIdempotent

Compare the active watch baseline with a fresh contained scan and return a path-redacted import proposal. It never imports or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
watch_idYesID returned when the session watch started.
include_pathsNoExplicitly disclose contained paths for selected imports; defaults to false.
known_media_path_hashesNoOptional hashes already represented in the Premiere project.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive; the description adds behavioral specifics beyond them: a 'fresh contained scan', path-redacted output, and confirmation that Premiere is never mutated. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core comparison/proposal behavior and closing with a no-side-effect guarantee. Every phrase earns its place and there is zero fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description need not detail the return shape. Combined with the parameter schema and annotations, it covers what the tool does, its side-effect profile, and its place in a watch workflow. No essential gap remains for calling it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and all three parameters (watch_id, include_paths, known_media_path_hashes) have descriptive schema text. The tool description does not elaborate on parameter details, but the schema already carries that semantic weight, so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise action ('Compare... and return...'), the resource (active watch baseline vs fresh contained scan), and an explicit exclusion ('never imports or changes Premiere'). This clearly separates it from import/mutation siblings even without naming them.

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?

The context is clear: this is a preview/proposal step tied to a watch baseline, and 'It never imports or changes Premiere' tells the agent not to use it when an actual import/change is desired. It does not name a fallback sibling, so the guidance is strong but not fully explicit about alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_workflow_recipePreview Workflow RecipeA
Read-onlyIdempotent

Validate and expand one declarative workflow recipe into guarded MCP routes. It does not invoke any route or change Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
recipe_idYesExact built-in or workspace recipe ID.
recipe_fileNoOptional contained JSON file with closed-schema custom recipes.
provided_inputsNoNames of inputs already available to the caller; values are intentionally not persisted in the recipe preview.
approved_workspace_pathNoAbsolute approved workspace containing recipe_file; required with recipe_file.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnlyHint, idempotentHint, and destructiveHint, and the description adds concrete context beyond them: that the tool expands a recipe into guarded MCP routes and specifically does not invoke routes or mutate Premiere. This clarifies what 'read-only' means in this tool's particular transformation workflow, which is useful behavioral detail beyond the bare annotation flags.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero filler: the first front-loads the primary purpose (validate and expand a recipe) and the second states the critical safety boundary (no invocation, no Premiere changes). Every clause earns its place.

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?

The description conveys the core behavioral contract — validation into guarded MCP routes with no side effects — while the output schema covers return values and the schema covers parameters. Minor gaps remain: what 'guarded' entails, how validation failures surface, and explicit routing among the many preview/plan/apply siblings, but nothing blocks a correct call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters in detail (for example, provided_inputs notes 'values are intentionally not persisted in the recipe preview'). The description adds no parameter-level information, matching the baseline 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs ('Validate and expand') with a specific resource ('one declarative workflow recipe') and a concrete output ('guarded MCP routes'). It distinguishes itself from apply/invoke siblings by explicitly stating 'It does not invoke any route or change Premiere,' making it separable from apply_edit_plan, apply_spot_workflow_plan, and similar execution tools.

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?

The description implies this tool is for validating recipes before execution through the clause 'It does not invoke any route or change Premiere,' which signals a non-execution role. However, it never names an alternative tool (e.g., an apply_* sibling) or states explicit when-to-use versus when-not-to-use conditions, leaving the routing decision partially to the agent's inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

publish_mogrt_to_libraryPublish Mogrt To LibraryA

Publish the exact previewed MOGRT as an immutable local-library version. Requires explicit confirmation and will fail instead of replacing an existing version.

ParametersJSON Schema
NameRequiredDescriptionDefault
preview_tokenYesOne-time token returned by preview_mogrt_library_publish.
confirm_publishYesMust be true to copy the immutable library version.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds significant behavioral context beyond the annotations: the result is immutable, confirmation is mandatory, and the operation fails instead of replacing an existing version. These details meaningfully inform an agent about side effects and safety, and they do not contradict the provided annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The core purpose is front-loaded, followed by the critical confirmation requirement and failure behavior, making every sentence informative and necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description, combined with a fully descriptive schema and an output schema, is complete for this tool. It communicates the essential preconditions, safety behavior, and immutable nature of the result without omitting anything an agent needs to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides full coverage with clear descriptions for both preview_token and confirm_publish. The tool description adds thematic emphasis on 'exact previewed' and 'explicit confirmation,' but does not materially enrich the parameter semantics beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Publish the exact previewed MOGRT as an immutable local-library version.' This clearly distinguishes it from related preview and import MOGRT tools by emphasizing immutability and the exact-preview relationship.

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?

Provides clear operational context: the tool requires explicit confirmation and will fail rather than overwrite an existing version. It implies the correct workflow of using a preview token first, though it does not explicitly name sibling alternatives or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rank_short_form_candidatesRank Short Form CandidatesA
Read-onlyIdempotent

Rank long-video transcript windows as short-form clip candidates using explainable local heuristics (hook, completeness, density, supplied evidence peaks, keywords, duration fit, speaker consistency) with overlap suppression. Local-only plan; not a virality prediction and never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordsNoTopic keywords or short phrases whose presence is rewarded.
frame_rateNoFrame rate used to snap start/end frames; defaults to 30.
hook_wordsNoExtra single-word hook tokens added to the built-in lexicon.
max_secondsNoLongest allowed candidate duration in seconds; defaults to 60.
min_secondsNoShortest allowed candidate duration in seconds; defaults to 15.
motion_peaksNoOptional source-time motion peaks from local analysis (for example detect_motion_peaks).
word_timelineYesCaller-supplied word-timed transcript for one Premiere source item. Words must be ordered by start time and bound to the transcript revision returned by get_clip_transcript_uxp.
marker_secondsNoOptional source-time editor-flagged moments (markers).
max_candidatesNoMaximum candidates returned after overlap suppression; defaults to 8.
laughter_secondsNoOptional source-time laughter moments supplied by the caller.
audio_energy_peaksNoOptional source-time audio energy peaks from local analysis (for example detect_audio_transients).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), lowering the bar. The description adds behavioral specifics beyond those annotations: 'Local-only plan' (no global/network computation), 'explainable' scoring, 'overlap suppression' of returned candidates, and the explicit promise that it never modifies Premiere state. Nothing contradicts the annotations; the extra context is genuinely additive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with zero filler: the first front-loads the action verb and resource, then packs the scoring method; the second delivers three scope clarifications (local-only, not virality, no Premiere mutation) in one efficient clause. Every element earns its place, and the heuristic list, though long, is informative rather than repetitive.

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?

The tool is complex — 11 parameters, a nested word_timeline object with an ordered-words constraint, and an output schema — but the supporting structures are rich: the schema documents all parameters including the prerequisite transcript revision, and the annotations cover the safety profile. The description covers purpose, method, and scope exclusions, so nothing an agent needs to invoke it correctly is missing; only deeper composition guidance (how results feed downstream tools) is absent, which is beyond the description's burden given the output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with defaults, ranges, and cross-tool references for every parameter (e.g., 'defaults to 30', 'added to the built-in lexicon', 'from local analysis'), so the schema carries the semantic burden. The description's heuristic list (hook, completeness, density, evidence peaks, keywords, duration fit, speaker consistency) maps conceptually to parameters like hook_words, keywords, min/max_seconds, and speaker_label, but it does not add per-parameter detail beyond what the schema already provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb-resource pair — 'Rank long-video transcript windows as short-form clip candidates' — and names the exact method (explainable local heuristics) with concrete scoring dimensions. It explicitly states what the tool is not ('not a virality prediction' and 'never changes Premiere'), which clearly distinguishes it from the many plan_* and detect_* siblings. An agent can tell exactly what this tool produces and how it differs from adjacent tools without opening the schema.

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?

The description provides clear context for when to use the tool: to score transcript windows as short-form candidates with local explainable signals, and it gives an explicit when-not in 'not a virality prediction'. The schema reinforces composition guidance by referencing sibling tools (detect_motion_peaks, detect_audio_transients) and the prerequisite get_clip_transcript_uxp revision, but the description itself does not name a sibling alternative to choose instead, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

razor_all_tracksRazor All TracksA

Razor (split) all clips at the playhead position across all tracks, or at a specific time.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoWhich track types to razor (default: both)
time_secondsNoTime to razor at in seconds (uses playhead position if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-readonly operation. The description adds useful behavioral scope: all tracks are affected, and the playhead position is the default split point. It doesn't discuss edge cases like locked tracks, but with annotations present the bar is lower.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with the action and scope front-loaded, followed by the optional time variant. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-optional-parameter tool with an output schema and accurate annotations, the description plus schema is sufficient for correct invocation. It covers the operation, scope, and fallback timing behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have descriptions, so the schema carries the burden. The description's mention of playhead/time aligns with the schema but adds no new parameter detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Razor (split)') and resource ('all clips ... across all tracks'), making the scope unambiguous and distinguishing it from the single-clip split_clip sibling. The optional time/playhead behavior is also named.

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?

The description gives clear context: use when you want to split every clip across all tracks at the playhead or a chosen time. It does not explicitly exclude cases such as splitting a single clip, so it stops short of full alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_sequence_captionsRead Sequence CaptionsA
Read-onlyIdempotent

Diagnose whether the active Premiere scripting host can enumerate caption tracks. It never treats an empty result as proof that the sequence has no captions, because most CEP builds expose caption creation but not caption reads.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Defaults to the active sequence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, and the description aligns with these by not implying any modification. The additional explanation about not treating empty results as proof adds transparency about potential false negatives. This goes beyond the annotations and provides useful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that deliver the essential purpose and a critical caveat without extraneous information. It is well-structured and easy to scan, making it an efficient reference for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema is indicated as present, the description is complete for the agent to decide when and how to call the tool. It covers the tool's objective, a crucial interpretation caveat, and references the active sequence default, which is sufficient context for operation. No critical information is missing.

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?

The single parameter 'sequence_id' is well-documented with a clear description of its type ('Sequence ID or name') and its default behavior ('Defaults to the active sequence'). This fully explains what the parameter does and when it can be omitted, leaving no ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's diagnostic purpose: to determine whether the active Premiere scripting host can enumerate caption tracks. It also distinguishes this tool from caption creation or editing tools by emphasizing the read-only diagnostic nature, and the sibling list includes create_caption_track and check_caption_safe_zone, making the purpose unique.

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?

The description includes a key usage caveat: an empty result should not be interpreted as the absence of captions, because many CEP builds lack read support. This guides the agent in interpreting results correctly, though it doesn't explicitly state when to prefer this tool over alternatives. Overall, the guidance is sufficient for typical use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_video_scopesRead Video ScopesB

Read waveform percentiles, RGB parade percentiles, saturation, and near-black/near-white RGB occupancy from one bounded decoded local-media frame. Read-only; this is a sampled analytical proxy, not Premiere's rendered scopes.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local video file
time_secondsNoSource-relative frame time from 0 through 86400 seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly states 'Read-only', but the annotations declare readOnlyHint=false, which directly contradicts the description. This is an annotation contradiction and forces a score of 1 regardless of the otherwise useful behavioral context about being a sampled analytical proxy.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two compact sentences with no filler. The core operation and data outputs are front-loaded, and the caveat about Premiere's rendered scopes is placed at the end without bloating the definition.

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?

The description covers the input source, frame bound, read-only claim, and analytical proxy caveat. With an output schema present and full parameter schema coverage, the description is largely complete for invoking the tool, though the annotation contradiction remains a notable gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the schema. The description does not add additional parameter-level semantics, so the baseline score of 3 applies.

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 clearly identifies the resource (waveform percentiles, RGB parade percentiles, saturation, near-black/near-white RGB occupancy) and the specific source (one bounded decoded local-media frame). It does not explicitly differentiate from a sibling tool, but the data-specific wording makes the tool's purpose unmistakable.

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?

The description implies usage context through 'from one bounded decoded local-media frame' and the caveat that this is a sampled analytical proxy, not Premiere's rendered scopes. However, it does not name alternatives or provide explicit when-to-use versus when-not-to-use guidance relative to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

redoRedoA

Unavailable: Premiere exposes no supported, observable redo-stack API, so a scripted redo cannot be performed or verified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a key behavioral trait beyond the annotations: there is no supported redo API, so a scripted redo cannot be performed or verified. This gives the agent an accurate expectation that the tool is a non-functional stub, and it does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that immediately communicates unavailability and then provides the technical reason. Every word earns its place with no repetition or filler.

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 zero-parameter tool whose only purpose is to state that redo is unsupported, the description is essentially complete. It explains the limitation and the verifiability issue; the only minor omission is a direct suggestion for an alternative operation, but that is not critical here.

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?

The tool has zero parameters, and the schema fully covers that with an empty object. Since there are no parameters to describe, the baseline of 4 applies and the description does not need to compensate for schema gaps.

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 clearly states that the redo operation is unavailable because Premiere exposes no supported, observable redo-stack API. This goes beyond a tautology and tells the agent the tool cannot actually perform or verify redo, which is important and distinct from siblings like undo.

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?

The opening 'Unavailable' strongly implies the tool should not be used for actual redo operations, and the explanation gives a clear reason. However, it does not explicitly name an alternative or state 'do not call this tool,' leaving the usage guidance somewhat implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

refresh_mediaRefresh MediaA

Refresh a project item to pick up changes to the source file

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the item to refresh

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, so this is a mutating operation and the description carries some disclosure burden. It adds that the item's in-project state is re-synced from the source file, which is useful context. But it does not disclose side effects such as whether in-app modifications are lost or what happens when the source file is missing or offline. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One 13-word sentence that front-loads the action ('Refresh a project item') and then gives the purpose. Zero filler and no redundancy with the title.

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 one-parameter tool with full schema coverage, an output schema, and safety annotations, the description covers what and why. The remaining gaps are minor: sibling-routing guidance (refresh vs. relink_media) and edge-case behavior for offline or missing source files. Nothing essential for a basic call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and item_id is already documented as 'Node ID or name of the item to refresh', so the schema carries the parameter meaning. The description adds only slight disambiguation by clarifying the target is a project item rather than a clip or sequence. Baseline 3 applies because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Uses a specific verb ('refresh') and resource ('project item') with a purpose clause ('to pick up changes to the source file') that goes beyond the title. This distinguishes it from nearby siblings: relink_media changes the source link, while check_offline_media only inspects status. An agent can tell what this tool does without opening the schema.

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?

The phrase 'to pick up changes to the source file' provides an explicit trigger condition: use when the external source file changed on disk. However, no alternatives are named and there is no when-not-to-use guidance, even though relink_media, check_offline_media, and set_offline occupy the same problem space. The boundary between refresh and relink is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_all_effectsRemove All EffectsA
Destructive

Remove ALL effects from a clip. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal destructiveness via destructiveHint=true. The description adds 'ALL' scope and an implementation note ('Uses QE DOM'), but doesn't detail side effects, undo behavior, or whether audio and video effects are both included. No contradiction with annotations.

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?

Two short sentences with the key action front-loaded. The first sentence is highly efficient; the second adds a brief implementation hint. No redundancy, though 'Uses QE DOM' is of marginal value to an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive tool with full schema coverage, a descriptive schema, an output schema, and destructive annotations, the description provides the essential scope and target. Nothing critical is missing for correct selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully describes the only parameter, node_id, as 'Node ID of the clip', and schema coverage is 100%. The description reinforces the clip target but doesn't add meaningful parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Remove'), a precise scope ('ALL effects'), and a clear target ('from a clip'). This clearly distinguishes it from siblings like remove_effect and remove_effect_by_name, which target specific or named effects.

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?

The description clearly implies the usage scenario: use this when every effect on a clip should be removed at once. It doesn't explicitly name alternatives or state when not to use it, but the capitalized 'ALL' and the contrast with sibling names provide adequate guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_effectRemove EffectA
Destructive

Remove an effect from a clip by its index or name. Returns a capability error when the host cannot remove an individual component.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameNoName of the effect to remove (alternative to effect_index)
effect_indexNoIndex of the effect to remove (0-based). Use get_clip_properties to see effects list.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds an error condition (capability error when removal is not possible) beyond the destructiveHint annotation. It does not detail modifications, but that is implied by the destructive hint, and the extra error information improves transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with the primary action front-loaded and no unnecessary details. It is concise and well-structured, making it easy for an agent to parse quickly.

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?

The description covers the action, selection method, and an error case. It does not discuss return values, but the presence of an output schema makes that unnecessary. It is sufficiently complete for the tool's complexity.

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?

The description adds a helpful pointer to get_clip_properties for retrieving the effect list, which aids users in obtaining the index/name values. Since the schema already covers each parameter, this extra context enhances usability beyond the basic definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (remove), the resource (effect on a clip), and the two selection methods (index or name). It distinguishes from sibling tools like remove_all_effects or remove_effect_by_name by specifying both options and noting the error condition.

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?

The description provides context by mentioning both index and name, and it directs users to get_clip_properties to find the effect index/name. However, it does not explicitly contrast with similar tools like remove_effect_by_name, so guidance is clear but not perfectly explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_effect_by_nameRemove Effect By NameA
Destructive

Remove all instances of a specific effect from a clip by display name. Returns a capability error when the host cannot remove individual components.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect to remove

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation risk is known. The description adds useful behavioral context: it removes all instances of a single named effect and may return a capability error when the host cannot perform component-level removal. However, it does not disclose other relevant behaviors such as not-found handling or undoability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core action is front-loaded, and the capability-error caveat earns its place as a relevant behavioral constraint.

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 simple two-parameter destructive operation with a complete input schema, output schema, and annotations, the description is sufficiently complete. It covers scope, matching key, and a key failure mode. It stops short of full completeness because it does not explicitly situate itself against the closely related remove_effect and remove_all_effects tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter meanings are already fully documented. The description's reference to 'by display name' and 'from a clip' only reiterates what the schema already states for effect_name and node_id, adding no new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the action (remove), the target resource (a clip), and the scope ('all instances of a specific effect'). The phrase 'by display name' and 'all instances' distinguishes this from sibling tools like remove_effect and remove_all_effects without needing to open those schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided, and no alternative tools are named. The description does not help an agent choose between this and siblings such as remove_effect, remove_all_effects, or list_clip_effects.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_from_timelineRemove From TimelineB
Destructive

Remove a clip from the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
rippleNoWhether to ripple delete (close the gap). Default: false
node_idYesNode ID of the clip to remove

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the destructive nature is covered. The description adds no extra behavioral context beyond the word 'remove,' such as whether the source project item is preserved or how gaps are handled. It does not contradict the annotations, so a mid-range score is appropriate.

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?

The description is a single sentence with no wasted words. It is front-loaded and easy to parse. It loses a point because it essentially restates the title rather than adding any distinguishing detail, but for a simple tool this brevity is still effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with an output schema, full parameter descriptions, and annotations covering destructiveness, the basic invocation context is present. However, the lack of differentiation from sibling removal/ripple tools leaves an agent with ambiguity about when this is the right tool, making the definition less than fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for both parameters: node_id and ripple are each clearly documented. The description itself does not add parameter-level meaning, but the schema already carries that burden, so baseline 3 is correct.

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 action and resource: 'Remove a clip from the timeline.' This is clear and unambiguous about the core operation. However, it does not differentiate from closely related siblings like ripple_delete or remove_selected_clips, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as ripple_delete, lift_selection, extract_selection, or remove_selected_clips. The only usage hint is the ripple parameter in the schema, but the description itself provides no context about when to choose this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_keyframeRemove KeyframeB
Destructive

Remove a keyframe at a specific time from an effect property

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds of the keyframe to remove
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description's 'Remove' is consistent with them (no contradiction). However, the description adds no behavioral context beyond the annotations: it does not disclose what happens if no keyframe exists at the exact time_seconds, whether matching is exact or nearest, or what the property becomes after removal (e.g., falls back to a static value).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single 12-word sentence front-loads the action verb and names the target resource with zero filler. It does not repeat schema content or annotation flags, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The schema fully documents all parameters, an output schema exists, and annotations cover the destructive safety profile, so much of the burden is already carried. What's missing is differentiation from remove_keyframe_range and disclosure of time-matching edge cases, which are meaningful gaps for a destructive pointer-based operation, though the overall coverage is adequate for a minimally viable definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (node_id, effect_name, property_name, time_seconds) are already documented in the input schema. The description's phrase 'at a specific time' merely echoes the schema's time_seconds description and adds no new parameter-level meaning, so the baseline 3 applies.

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 ('Remove') and a precise resource ('a keyframe at a specific time from an effect property'). The 'at a specific time' qualifier implicitly distinguishes this from the sibling remove_keyframe_range, which operates over a range, but it never names that sibling or the difference explicitly, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus its closest siblings remove_keyframe_range, add_keyframe, or set_keyframe_interpolation. There are no prerequisites, exclusions, or alternative routing instructions; usage context is only weakly implied by the operation name itself.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_keyframe_rangeRemove Keyframe RangeA
Destructive

Remove all keyframes in a time range from an effect property

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
end_secondsYesEnd of the range in seconds
property_nameYesDisplay name of the property
start_secondsYesStart of the range in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructiveHint=true, and the description adds the important scope of what is destroyed: all keyframes in the given time range, not the property or the clip. It does not discuss edge cases such as empty ranges or invalid properties, but given the annotations, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no filler. It front-loads the verb and resource, states the scope ('all keyframes in a time range'), and avoids repeating schema details or annotations.

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 simple, well-specified operation, the description plus schema and annotations cover the essential information: what is removed, which parameters are required, and that it is destructive. It stops short of being fully complete because it does not mention range boundary semantics (inclusive/exclusive) or navigate the agent toward the single-keyframe sibling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description adds no param-specific meaning beyond reinforcing that 'time range' maps to start_seconds/end_seconds and 'effect property' maps to effect_name/property_name, which the schema already conveys.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Remove') and states the exact target ('all keyframes in a time range from an effect property'). This clearly distinguishes it from the sibling remove_keyframe, which presumably targets a single keyframe, and from add_keyframe/get_keyframes.

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?

The intended use is implied by the time-range scope: call this when removing a span of keyframes rather than one. However, the description gives no explicit guidance about when not to use it or which sibling alternative (e.g., remove_keyframe) would be appropriate for a single keyframe.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_selected_clipsRemove Selected ClipsB
Destructive

Remove all currently selected clips from the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
rippleNoIf true, close the gap after removing (ripple delete). Default: false

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already supply destructiveHint=true and readOnlyHint=false, so the destructive nature is covered. The description adds useful context that the operation acts on the current selection and only on timeline clips, not project items, but it doesn't elaborate on ripple behavior or no-selection behavior beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence conveys the essential operation with no filler. Every word adds meaning.

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 simple one-optional-parameter destructive action with a rich schema and output schema, the description is adequately complete. It could be slightly stronger by naming the ripple-delete alternative or clarifying the no-selection behavior, but nothing essential for a successful call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the 'ripple' parameter is already documented with its boolean meaning and default. The description doesn't need to add parameter detail; it adds no extra semantics over the schema.

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 identifies a specific verb ('Remove'), a resource ('clips'), a scope ('all currently selected'), and a location ('timeline'), so an agent understands the core operation. It doesn't name a sibling for contrast, but the selection-based scope distinguishes it from generic remove/delete tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance or alternatives are given. It implicitly assumes a current selection, but doesn't say to prefer this over remove_from_timeline, ripple_delete, lift_selection, or extract_selection, which are all present in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_binRename BinA

Rename a bin (folder) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_idYesName or node ID of the bin to rename
new_nameYesNew name for the bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only and not idempotent, and the description aligns with that by describing a mutation. It adds modest context by explaining that a bin is a project-panel folder, but it does not disclose further behavioral details such as effects on references or naming constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the action and resource. Every word earns its place, with no wasted filler or redundant restatement of the tool name.

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 simple two-parameter rename operation, the description, schema, and annotations together provide adequate context. The description could have noted that it operates on the current project or distinguished it from rename_project_item more explicitly, but it is complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both bin_id and new_name already documented clearly. The description adds no additional parameter-level meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Rename'), a specific resource ('bin'), and clarifies that a bin is a folder in the project panel. This distinguishes it from sibling tools like rename_clip, rename_track, and rename_project_item without needing to inspect schemas.

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?

The description provides clear context by specifying that this operates on bins/folders in the project panel. It does not explicitly list when not to use it or name alternatives, but the resource scoping is sufficient for a simple rename operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_clipRename ClipB

Rename a clip on the timeline. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
new_nameYesNew name for the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-idempotent operation, so the description does not need to restate that. 'Uses QE DOM' adds a small implementation detail about node addressing, but there is no disclosure of side effects, reversibility, or failure conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler, front-loaded with the core operation. The 'Uses QE DOM' note earns its place as a brief implementation caveat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-parameter mutation with annotations and an output schema, the bare minimum is present. However, the absence of any usage context or sibling routing means an agent may not know the intended scope boundary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema documents both parameters with 100% coverage. The description adds only the 'QE DOM' hint as a possible clue to node_id's namespace, but no extra semantic burden is needed.

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?

States a specific action ('Rename') and scope ('a clip on the timeline'), which separates it from rename_bin, rename_project_item, and rename_track. It does not explicitly name a sibling or exclusion, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to choose this over batch_rename_clips, rename_project_item, or other rename variants. The 'on the timeline' phrase implies scope but there is no explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_project_itemRename Project ItemA

Rename a project item in the project panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
new_nameYesNew name for the item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already state readOnlyHint=false and destructiveHint=false, so the mutation is known. The description adds only the 'project panel' context and gives no further behavioral detail, but nothing contradicts annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short declarative sentence with no filler; it is concise and front-loaded with the core action.

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 simple two-required-param rename operation with full schema coverage and an output schema, the description is nearly sufficient. The main gap is lack of sibling differentiation and behavioral caveats, which a low-complexity tool can partially absorb.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers both parameters with descriptions (100% coverage). The description introduces no additional parameter-level detail beyond 'project item' in the panel.

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?

States a specific verb ('Rename') and resource ('project item in the project panel'), making the action clear. However, it does not explicitly distinguish itself from sibling rename tools like rename_bin, rename_clip, or rename_track.

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?

Provides no explicit when-to-use guidance or exclusions. The phrase 'project panel' weakly implies the target type, but an agent must infer from the name alone that this differs from the bin/clip/track rename siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_trackRename TrackA

Rename a video or audio track.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNew track name
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the mutating but non-destructive nature is covered. The description adds no additional behavioral context about side effects, persistence, or error conditions, but it does not contradict the annotations either.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the verb and resource. There is no redundant elaboration or filler, making it appropriately sized for a simple rename operation.

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 simple three-parameter tool with complete schema coverage, annotations, and an output schema, the description is mostly sufficient. It could note that the target sequence must be active or that the track must already exist, but those are minor gaps given the simplicity of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all three parameters already documented: name, track_type enum, and 0-based track_index. The description adds no new parameter-level meaning beyond mirroring the track_type enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Rename') and resource ('video or audio track'), and the video/audio qualifier directly matches the track_type enum. This clearly differentiates the tool from siblings like rename_clip, rename_bin, and rename_project_item.

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?

The phrase 'video or audio track' implies the intended use case and helps distinguish this from clip/bin renaming tools. However, it does not explicitly state prerequisites, such as needing an active sequence or resolving track_index via list_sequence_tracks, or mention when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

replace_clipReplace ClipA

Replace a clip on the timeline with a different project item, preserving position and duration

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to replace
new_item_idYesNode ID or name of the new project item to replace with

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not idempotent, and not flagged destructive. The description adds meaningful behavioral context by stating that position and duration are preserved during the replacement, which is the most important observable behavior beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the operation, the target, the replacement source, and the primary preservation guarantee. Every word earns its place, and there is no redundant filler or restating of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter mutation tool with full schema descriptions, an output schema, and annotations covering safety and idempotency, the description is complete. The operation, the object, and the key invariant are all specified; nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the input schema. The description reinforces the purpose of replacing with a different project item but adds no new parameter-level details or syntax guidance beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Replace'), identifies the resource ('clip on the timeline'), and specifies the new object ('different project item'). It also adds a key behavioral detail — preserving position and duration — which distinguishes it from related operations like replace_clip_media or overwrite_clip.

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?

The description implies when to use this tool: whenever a timeline clip should be swapped with a different project item while keeping its position and duration. However, it does not explicitly mention alternatives like replace_clip_media or overwrite_clip, nor any when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

replace_clip_mediaReplace Clip MediaB

Unavailable by design: the legacy ExtendScript overwrite route cannot prove that replacing media preserves the original clip's trim, position, linked audio, or adjacent clips, so this tool performs no mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
new_item_idYesNode ID or name of the new source project item
clip_node_idYesNode ID of the timeline clip to replace media on

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description directly contradicts the annotations: it says 'this tool performs no mutation', yet readOnlyHint is false, which signals a non-read-only, mutating operation. Even though the description adds the reasoning about ExtendScript safety, the contradiction makes the behavioral contract unclear and untrustworthy.

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?

The description is a single dense sentence that front-loads 'Unavailable by design' and uses the remaining space to justify the no-op behavior. It is somewhat verbose with the list 'trim, position, linked audio, or adjacent clips', but each detail supports why the tool is disabled.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains why the tool exists and that it does nothing, which covers the core 'do not call' intent. It omits what actually happens on invocation (error vs. silent no-op) and does not point to a working alternative, and the annotation contradiction further undermines completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both clip_node_id and new_item_id are already documented in the input schema. The description adds no parameter-level meaning, so the baseline of 3 is appropriate.

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 clearly states the tool is 'Unavailable by design' and 'performs no mutation', so an agent understands it is a deliberately disabled stub rather than a working replacement operation. It does not, however, use a positive verb-and-resource formulation or explicitly contrast itself with the sibling 'replace_clip' tool, so it stops short of full sibling differentiation.

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?

The description explicitly tells the agent not to expect a functioning mutation: 'Unavailable by design' and 'this tool performs no mutation' are strong when-not guidance. It does not name an alternative tool such as 'replace_clip' to route the agent toward, which prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reverse_clipReverse ClipA

Unavailable: Premiere does not expose a supported scripting API for reversing a timeline clip's playback direction.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoTrue to reverse, false for normal (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a key behavioral trait not carried by the annotations: even if invoked, the operation is unsupported and cannot succeed. This adds meaningful context beyond readOnlyHint/destructiveHint, although it does not specify the exact error or fallback behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the critical word 'Unavailable', and contains no filler or repetition. Every word earns its place.

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 an unsupported operation, the most important context—that no supported scripting API exists—is present. The description lacks a suggested workaround or alternative, but given the schema already documents the parameters and the primary message is unavailability, it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides full descriptions for both node_id and reverse, so the description does not need to explain parameter semantics. The phrase 'reversing a timeline clip's playback direction' loosely maps to the reverse parameter but adds no new parameter-level detail.

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 clearly identifies the intended operation—reversing a timeline clip's playback direction—and immediately marks it as unavailable. It is specific enough to distinguish this operation from other clip-editing tools, though it reads as an unavailability notice rather than a callable behavior description.

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?

The statement 'Unavailable: Premiere does not expose a supported scripting API' implicitly tells an agent not to treat this as a normal callable tool. However, it does not explicitly name an alternative or explain what to do when a user requests this operation, so the guidance is mostly implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ripple_deleteRipple DeleteA
Destructive

Ripple delete a clip (removes clip and closes the gap). Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to ripple delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare destructiveHint=true, so the destructive nature is known. The description adds value beyond that by specifying exactly what gets destroyed ('removes clip'), what secondary effect occurs ('closes the gap'), and that it operates through QE DOM. It does not discuss reversibility or prerequisites like an active sequence, but those are minor given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The action is front-loaded, the parenthetical explains the ripple behavior clearly, and the QE DOM note earns its place by clarifying the parameter context. Nothing extraneous is included.

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 single-parameter destructive tool with a documented input schema, an output schema, and destructiveHint=true, the description is largely complete. It states the action, the target (clip), the ripple behavior, and the DOM context. The main missing piece is explicit guidance on when to choose this over sibling edit operations, but that is already captured under usage guidelines.

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% for the single node_id parameter, so the schema already documents the parameter. The description adds meaningful context by saying 'Uses QE DOM,' indicating that node_id is a QE DOM node identifier rather than a generic project or timeline identifier. This helps the agent understand what kind of ID to supply.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Ripple delete a clip') and clarifies the exact behavior with 'removes clip and closes the gap.' This distinguishes it from similar edit operations such as simple removal or lift/extract, which do not ripple. The 'Uses QE DOM' note adds a concrete implementation detail without obscuring the purpose.

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?

The phrase 'closes the gap' implies the intended use: delete a clip while preserving timeline continuity. However, the description does not name alternatives like remove_from_timeline, lift_selection, or extract_selection, nor does it state when not to use this tool. Usage guidance is present only by implication.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

roll_editRoll EditA

Perform a verified roll edit at the outgoing cut of a clip using the public timeline DOM, moving both visible edges and their source in/out points and verifying all four.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = roll right, negative = roll left)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a read-write, non-idempotent, non-destructive operation. The description adds useful behavioral detail: it is a 'verified' edit that moves visible edges and source in/out points and verifies all four. It stops short of describing failure/rollback behavior, but the verification guarantee adds value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one dense sentence with no filler. It front-loads the operation ('Perform a verified roll edit'), states the location, and then describes the mechanism and verification in a compact, information-rich way.

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 two-parameter edit operation with an output schema and full parameter descriptions, the description covers the operation, target location, and verification semantics. It does not explicitly spell out prerequisites such as requiring an active sequence or sufficient trim handles, but the core invocation context is present and the output schema reduces the need to describe return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so node_id and offset_seconds are already documented with direction semantics. The description reinforces that the operation applies at the outgoing cut but adds no significant parameter-level information beyond what the schema provides, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation ('roll edit'), targets the outgoing cut of a clip, and describes the concrete effect: moving both visible edges and their source in/out points and verifying all four. This clearly distinguishes it from related tools like slip_edit, which moves source points without changing the visible cut.

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?

The description gives clear context for when to use it: a verified roll edit at a clip's outgoing cut. The mention of moving visible edges and source in/out points implies it is the right operation when a true roll is needed rather than a slip or ripple edit, though it does not explicitly name alternative tools or exclusion conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_projectSave ProjectB

Save the current Premiere Pro project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds no behavioral context beyond the basic action. It does not disclose whether saving overwrites the existing file, whether it prompts for a path, what happens with unsaved changes, or how it behaves if no project is open.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler or redundant wording. It is front-loaded and easily parsed by an agent.

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 no-argument tool with an output schema, the description is mostly adequate: it identifies the action and target resource. The main gap is that it does not clarify the relationship to save_project_as, which could lead to choosing the wrong tool in save-as scenarios.

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?

The tool has zero parameters, so the input schema is empty and there is no parameter documentation burden on the description. The baseline of 4 is appropriate because no parameter semantics are needed.

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 clearly states a specific verb ('Save') and resource ('the current Premiere Pro project'), making the core purpose understandable. However, it does not explicitly distinguish itself from the closely related sibling save_project_as, so an agent must infer the difference from the tool name alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use save_project versus save_project_as, nor are there prerequisites or caveats such as requiring an open project. The description gives no usage context or exclusions, leaving the agent to guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_project_asSave Project AsB

Save the current project to a new location

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path to save the project to (e.g., '/Users/me/projects/MyProject.prproj')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide only negative hints (not read-only, not destructive, not idempotent). The description adds minimal behavioral context: it mentions 'current project' and 'new location' but does not disclose what happens to the active project after saving (e.g., whether it switches to the new path), whether an existing file at the destination is overwritten, or how this differs from a plain save. The safety profile is mostly unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant words. It states verb, object, and target efficiently, earning its place without filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema, the description covers the basic operation. However, key context is missing: there is no disambiguation from similar sibling tools, and the behavioral side effects (whether the current project is re-pointed to the new location, overwrite semantics) are not addressed. Given the tool's simplicity, a slightly richer description would make it complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single 'path' parameter is already well-documented with an example. The description's phrase 'new location' adds no meaningful semantic detail beyond the schema, so the baseline of 3 is appropriate.

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 uses a specific verb and resource ('Save the current project') and specifies the target ('to a new location'). This distinguishes it from save_project, though it does not explicitly name the alternative. Clear enough for an agent to understand the core operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool instead of save_project or export_as_project. The description does not mention any conditions, exclusions, or alternative tools, leaving the agent to infer the appropriate context from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scene_edit_detectionScene Edit DetectionB

Perform scene edit detection on the selected clips in the active sequence. Defaults to creating markers rather than cutting.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoCreate markers (default) or apply cuts to the selected clips
sensitivityNoScene-detection sensitivity (default: MediumSensitivity)
apply_cuts_to_linked_audioNoWhen applying cuts, also cut linked audio (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful default behavior: 'Defaults to creating markers rather than cutting.' This goes slightly beyond the annotations, which only indicate readOnlyHint=false and destructiveHint=false. However, it does not disclose what happens when ApplyCuts is used, such as clip modification or linked-audio behavior, beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core action and then clarifies the default behavior. Every word earns its place, and there is no redundancy with the schema.

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?

Given the high schema coverage, optional parameters with defaults, and the presence of an output schema, the description is mostly adequate. The main gap is the lack of differentiation from the similarly named sibling tools such as 'detect_scene_edits' and 'detect_source_scene_changes'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description restates the default action in plain language but does not add new semantic detail beyond the schema. This matches the baseline for high schema coverage.

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 uses a specific verb and resource: 'Perform scene edit detection on the selected clips in the active sequence.' It is clear about scope and even notes the default behavior. However, it does not distinguish this tool from the similar sibling 'detect_scene_edits' or 'detect_source_scene_changes', so differentiation is incomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool operates on selected clips in the active sequence, but gives no explicit guidance about when to choose this tool over alternatives. No exclusions, prerequisites, or sibling comparisons are mentioned, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_project_contextSearch Project ContextA
Read-onlyIdempotent

Search a durable Premiere project-context index for relevant sources, timeline placements, transcript passages, shots, audio observations, and notes. Returns bounded evidence with stable IDs and revisions; it never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNoOptional context-kind filter
queryYesNatural-language or keyword query matched against indexed evidence
project_idYesProject context ID returned by manage_project_context capture
max_resultsNoMaximum 50; default 12
sequence_idNoOptional exact sequence ID filter

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds valuable behavior details: it returns bounded evidence with stable IDs and revisions, and explicitly states it never changes Premiere. This goes beyond just echoing the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: two sentences that immediately state the action, the target index, and the key behavior (read-only, bounded results). No unnecessary words or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for its complexity. It explains what is searched, what is returned (bounded evidence with stable IDs), and that it is non-destructive. With an output schema present, there is no need to detail return structure in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with each parameter having a clear description (e.g., query matched against indexed evidence, max_results default 12, sequence_id filter). The description text does not add much beyond the schema, so it meets the baseline for high coverage without adding extra meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches a durable Premiere project-context index for a specific set of content types (sources, timeline placements, transcripts, shots, audio observations, notes). It distinguishes itself from other search tools like search_project_items by focusing on the context index and explicitly stating it never changes Premiere.

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?

The description provides clear context for when to use the tool: when searching a durable, indexed project context with natural language or keywords. It implies the tool is for read-only queries against persistent context, but it does not explicitly compare to alternatives or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_project_itemsSearch Project ItemsA
Read-onlyIdempotent

Search for project items by name, media file extension, offline status, or color label. Returns matching items with full details.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSearch query (matched against item name, case-insensitive substring match)
extensionNoFilter by file extension (e.g., 'mp4', 'wav', 'png'). Without dot.
item_typeNoFilter by item type (default: all)
color_labelNoFilter by color label index (0-15)
max_resultsNoMaximum results to return (default: 100)
offline_onlyNoIf true, only return offline/missing items

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds that matching items are returned 'with full details,' but does not disclose behavior like result ordering, pagination, or how multiple filters combine. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler. The main action and filter criteria are front-loaded, and the return behavior is stated in a single clause.

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?

With a full input schema, an output schema, and strong read-only/idempotent annotations, the description is nearly complete. The only meaningful gap is that filter combination semantics and differentiation from similarly named search/find siblings are left implicit, but the core invocation details are all covered elsewhere.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and all six parameters have inline descriptions, so the baseline is 3. The description loosely echoes query, extension, offline_only, and color_label, but adds no extra meaning for item_type or max_results beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Search for project items') and lists the concrete filter dimensions: name, media file extension, offline status, and color label. This makes the tool's purpose clear and distinguishes it from siblings like list_project_items, find_project_item_by_name, and get_offline_media.

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?

Usage is implied: use this tool when you need to search project items by one or more of the listed criteria. However, it never names alternatives or exclusion conditions, so an agent gets no explicit guidance on when to prefer this over find_project_item_by_name or list_project_items.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_workflow_recipesSearch Workflow RecipesA
Read-onlyIdempotent

Search audited built-in and explicitly supplied workspace-local workflow recipes. Recipes are declarative previews and cannot execute arbitrary tools or scripts.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoOptional case-insensitive title, description, tag, or ID query.
recipe_fileNoOptional contained JSON file with closed-schema custom recipes.
approved_workspace_pathNoAbsolute approved workspace containing recipe_file; required with recipe_file.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, but the description adds meaningful non-obvious context: recipes are 'declarative previews' and 'cannot execute arbitrary tools or scripts.' This is a valuable safety and capability disclosure beyond the annotation structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, with the primary purpose front-loaded and a single important behavioral caveat following immediately. Every word contributes to clarifying scope or safety.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-required-parameter read-only search tool with a full output schema, the description covers the essential scope, provenance of recipes, and a key behavioral limitation. Nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents query, recipe_file, and approved_workspace_path. The description adds no independent parameter-level meaning beyond the schema, matching the baseline for fully covered parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Search') with a clear resource ('workflow recipes') and defines the exact scope ('audited built-in and explicitly supplied workspace-local'). It also distinguishes recipes as declarative previews, making the tool's purpose unmistakable relative to sibling preview and planning tools.

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?

The verb 'Search' implies when to use it, and the scope helps the agent know what it operates on, but the description does not explicitly contrast it with alternatives such as preview_workflow_recipe or state when one should prefer this tool over another. Usage context is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_all_clipsSelect All ClipsA

Select all clips in the active sequence, or all clips on a specific track.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: both)
track_indexNoSpecific track index (optional, selects all tracks if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate non-read-only and non-destructive behavior, so the description does not need to re-state safety. It adds useful scoping context but does not disclose whether the selection replaces or extends the current selection, which is a meaningful behavioral gap for a selection tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no filler. The primary action and both scoping modes are front-loaded, making the tool easy to parse quickly.

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 low-complexity selection tool, the description plus schema and annotations cover the essentials: what is selected, where it happens, and the optional track scoping. The only notable omission is replace-versus-extend selection behavior, which is minor here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents track_type and track_index well. The description reinforces the all-clips versus specific-track distinction but adds no new parameter-level detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Select all clips in the active sequence, or all clips on a specific track.' This clearly distinguishes the tool from selection-related siblings like select_clips_by_name, select_clips_in_range, and set_clip_selection by emphasizing blanket selection scope.

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?

Clearly describes the two invocation modes: all clips in the active sequence, or all clips on a specific track. It does not explicitly name alternatives or when-not-to-use scenarios, but the scope is obvious enough to guide an agent away from more targeted selection tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_by_colorSelect Clips By ColorB

Select all clips whose source project item has a specific color label.

ParametersJSON Schema
NameRequiredDescriptionDefault
color_indexYesLabel color index (0=Violet, 1=Iris, 2=Caribbean, 3=Lavender, 4=Cerulean, 5=Forest, 6=Rose, 7=Mango, 8=Purple, 9=Blue, 10=Teal, 11=Magenta, 12=Tan, 13=Green, 14=Brown, 15=Yellow)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that selection mutates UI state (readOnlyHint=false) without destroying data (destructiveHint=false), and the description does not contradict this. The description adds the useful nuance that the color is read from the source project item rather than the clip instance, but it does not disclose whether the selection replaces or augments the current selection — a meaningful behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the verb and packs the scope, criterion, and source-object nuance into one clause. No filler, redundancy, or wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with a fully documented schema and an output schema present, the description is mostly sufficient. The clear remaining gap is the replace-vs-extend selection behavior, and the total absence of orientation among the dense sibling selection-tool set makes it adequate but incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameter documentation, with the color_index description enumerating all 16 color values. The tool description's 'specific color label' aligns with the parameter but adds no detail beyond the schema, so the baseline 3 applies.

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 uses a specific verb ('Select'), a clear object ('all clips'), and a precise filter criterion ('whose source project item has a specific color label'). The color-label criterion implicitly distinguishes it from siblings like select_clips_by_name and select_all_clips, though it does not name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus the many sibling selection tools (select_clips_by_name, select_clips_in_range, select_disabled_clips, set_clip_selection, etc.). No exclusions, prerequisites, or alternative conditions are mentioned, leaving the agent to guess which selection tool fits.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_by_nameSelect Clips By NameA

Select all clips in the active sequence that match a name (substring match). Optionally filter by track type and index.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesClip name to search for (case-insensitive substring match)
track_typeNoTrack type to search (default: both)
track_indexNoSpecific track index to search (optional, searches all if omitted)
add_to_selectionNoIf true, add to existing selection instead of replacing it (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not idempotent, and not destructive. The description adds useful scoping context (active sequence, substring matching) but does not explicitly disclose that the selection replaces the current selection by default, which is only visible in the add_to_selection parameter description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence that front-loads the main behavior and then mentions optional filtering. Every word adds value and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a straightforward selection tool with fully documented parameters and an output schema, the description provides the essential scope (active sequence, substring match, optional filters). Nothing critical is missing for an agent to understand how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters are already documented with meaningful descriptions. The tool description summarizes but does not add significant semantic detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Select all clips in the active sequence that match a name.' It also specifies substring matching and optional filters, clearly distinguishing it from sibling selection tools like select_clips_by_color or select_clips_in_range.

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?

The description implies when to use the tool: when you need to select clips by name in the active sequence. However, it does not explicitly mention alternative selection tools or provide when-not-to-use guidance, leaving the comparison to siblings unstated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_in_rangeSelect Clips In RangeA

Select all clips that overlap a time range in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: both)
end_secondsYesEnd of selection range in seconds
track_indexNoSpecific track index (optional)
start_secondsYesStart of selection range in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the description only needs to add context beyond those. It clarifies that selection is scoped to the active sequence and uses overlap semantics, but it does not state whether the current selection is replaced or extended, which is an important behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the action, object, and condition without waste. Every word contributes to understanding what the tool does.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and four adequately documented parameters, the description is sufficient for basic invocation. However, it omits usage guidance and does not explain how selection interacts with the existing selection state, nor does it mention the active-sequence prerequisite explicitly beyond the phrase 'active sequence.'

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds the useful 'overlap' concept, which clarifies that clips need not have their in-points inside the range, but it does not add syntax, inclusivity details, or interaction between track_type/track_index beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Select') with a clear resource ('clips') and a precise criterion ('overlap a time range in the active sequence'). This distinguishes it from sibling selection tools like select_clips_by_name or select_all_clips by the time-range condition, and it is not a tautology of the title.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context (active sequence, time range) but provides no guidance on when to use this tool versus alternatives such as select_clips_by_name, select_all_clips, or get_selected_clips. It also does not mention exclusions or prerequisites like requiring an active sequence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_disabled_clipsSelect Disabled ClipsA

Select all disabled clips in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not destructive, and not idempotent. The description adds the scope of the selection action but does not clarify whether the current selection is replaced, extended, or otherwise affected. For a selection mutation, this is a notable but minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word earns its place, and the core action and scope are immediately visible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, this description is sufficiently complete. It names the action, the target clip type, and the sequence scope. Return values are presumably covered by the output schema, so no additional explanation is needed.

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?

The tool has zero parameters, so there is no parameter semantics to explain. The description correctly implies no additional input is needed, and the empty schema confirms this.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Select'), a specific resource ('disabled clips'), and a clear scope ('in the active sequence'). This makes it immediately distinguishable from sibling selection tools like select_all_clips or select_clips_by_name.

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?

The context is implicitly clear: use this when you need to select all disabled clips in the active sequence. However, it does not explicitly mention alternatives or state when not to use it, which would be valuable given the large number of selection-related sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_itemSelect ItemB

Select a project item in the Project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to select

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=false, idempotentHint=false, and destructiveHint=false, but the description does not add behavioral context beyond these. It does not state that selecting an item replaces the current selection, how invalid item_id values are handled, or any side effects of the selection action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, front-loading the action and object. It is appropriately sized for a simple one-parameter tool.

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 low-complexity selection tool with one fully documented parameter and an output schema, the description conveys the essential purpose. The main missing piece is usage guidance or clarification of selection behavior, but the tool remains understandable enough to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the item_id property is documented as 'Node ID or name of the project item to select.' The description itself adds no parameter-level detail, but with full schema coverage the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Select a project item in the Project panel.' It clearly identifies both the object type (project item) and the location (Project panel), making it distinguishable from sibling tools like select_clips_by_name or select_all_clips that operate on timeline clips.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as find_project_item_by_name, list_project_items, or set_clip_selection. There is no mention of prerequisites, exclusions, or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_active_sequenceSet Active SequenceC

Set the active sequence by name or ID

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to make active

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered, but the description adds no behavioral context beyond that. It does not explain what 'active' affects (e.g., downstream sequence operations), whether the change is undoable, or how name vs ID resolution behaves. No contradiction with annotations, but the description carries almost no behavioral weight.

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?

A single eight-word sentence with zero filler and the core action front-loaded. It is efficient, though slightly under-specified; it could have earned a 5 by pairing the concision with a usage note.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one required parameter) and has an output schema, so the description need not explain return values. However, it lacks any context about the operational impact of setting the active sequence or how it interacts with get_active_sequence, making it merely minimally adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the schema already documents sequence_id as 'Sequence name or ID to make active'. The description's 'by name or ID' merely echoes the schema, adding no new meaning. Baseline 3 is appropriate since the schema does the heavy lifting.

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 uses a specific verb ('Set'), names the resource ('the active sequence'), and states the lookup mechanism ('by name or ID'). It is distinguishable from sibling tools like get_active_sequence (read vs write) and set_sequence_settings (active state vs settings). It is clear but does not explicitly differentiate itself from closely related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives. An agent gets no help understanding whether this must precede timeline operations, or how it relates to get_active_sequence or list_sequences, despite those siblings being present in the tool list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_all_tracks_targetedSet All Tracks TargetedA

Set all tracks targeted or untargeted. Useful before insert/overwrite edits.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetedYesWhether to target (true) or untarget (false) all tracks
track_typeNoWhich track type(s) to affect (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clarifies that this is a mutating operation setting a boolean state across tracks, and annotations confirm it is not read-only or destructive. It adds context about use before edits but does not disclose details like how the 'targeted' state affects subsequent operations beyond the stated insert/overwrite workflow.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, no filler, with the core action first and the practical use case second. Every word earns its place.

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 simple setter with fully documented parameters and an output schema, the description is nearly complete. It could optionally explain the role of 'targeted' in insert/overwrite edits more deeply, but an agent can correctly invoke the tool with the current information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both 'targeted' and 'track_type' documented in the input schema. The description adds no parameter-specific meaning beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('set') and resource ('all tracks') with the exact state change ('targeted or untargeted'), making the operation unambiguous. It also distinguishes itself from single-track targeting tools like set_target_track by emphasizing 'all tracks.'

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?

The description explicitly says this is 'useful before insert/overwrite edits,' giving a clear workflow context. It does not name alternatives or explicitly say when not to use it, but the intended timing is evident.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_anti_alias_qualitySet Anti Alias QualityA

Set the anti-alias quality on a clip's Motion effect (useful for scaled/rotated clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesEnable (true) or disable (false) anti-aliasing
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a write operation (readOnlyHint=false) and not destructive. The description adds context that the change applies to the Motion effect, but it does not disclose side effects, prerequisites, or behavior when the clip lacks a Motion effect. Given the annotations, this is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that wastes no words. It states the action, the target effect, and the intended use case, with no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only two well-documented parameters, annotations covering mutation/destructiveness, and an output schema present, the description covers the essential context for correct invocation. The use case guidance further reduces ambiguity, so nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters comprehensively (node_id and enabled) with 100% coverage. The description does not add parameter-specific meaning beyond the schema, so it meets the baseline but does not improve on it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Set'), a precise target ('anti-alias quality on a clip's Motion effect'), and a practical use case ('scaled/rotated clips'). This clearly differentiates it from other effect-modification tools like set_frame_blend or set_blend_mode.

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?

The parenthetical '(useful for scaled/rotated clips)' gives a clear context for when this tool is appropriate. It does not explicitly name alternatives or exclusions, but the context is specific enough for an agent to recognize its intended scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_blend_modeSet Blend ModeA

Set the blend mode on a video clip. Uses the Opacity effect's Blend Mode property.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the video clip
blend_modeYesBlend mode name

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already show this is a non-read-only, non-idempotent setter; the description adds the useful behavioral detail that it mutates the Opacity effect's Blend Mode property. This tells the agent the underlying mechanism, though it does not disclose edge cases such as missing Opacity effects or whether a new effect is auto-created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, first states the action and target, second adds implementation detail. No filler or repetition of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-required-parameter setter with a full enum and an output schema, the description provides all necessary context: what is being changed, on what, and via which property. Nothing critical is missing for the agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and both node_id and blend_mode are described in the schema with type and enum values. The description does not add further parameter-level meaning beyond restating that the target is a video clip and that blend mode is being set.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and target: 'Set the blend mode on a video clip.' It further pins down the implementation to the 'Opacity effect's Blend Mode property,' which differentiates it from siblings like set_clip_opacity or generic set_effect_property.

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?

The description makes it clear this is the tool for changing a clip's blend mode, and the Opacity-effect detail implies an alternative path (directly manipulating effect properties), but it does not explicitly state when to choose this over set_effect_property or set_clip_opacity. No exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_anchor_pointSet Clip Anchor PointA

Set the Anchor Point property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesAnchor point X in pixels
yYesAnchor point Y in pixels
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a non-read-only, non-idempotent, non-destructive mutation, and the description does not contradict them. It adds a little context by identifying the Motion effect and Anchor Point as the exact target, but it does not disclose side effects such as overwriting the existing anchor point or how it interacts with position/scale/rotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single clear sentence with no filler or repetition of the schema. The most important information, the target property and effect, is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple three-parameter setter with a full schema and output schema: the agent knows what property is changed and what values to supply. However, the lack of usage guidance and any mention of coordinate-space or prerequisite behavior leaves minor but real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with x, y, and node_id all described in the input schema. The description adds no new parameter-level detail, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific operation ('Set the Anchor Point property') on a concrete resource ('a video clip's Motion effect'), which clearly distinguishes it from sibling transform tools like set_clip_position, set_clip_scale, and set_clip_rotation without requiring schema inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, and no mention of prerequisites such as the clip having a Motion effect. The description leaves all routing decisions to inference from the tool name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_opacitySet Clip OpacityB

Set the opacity of a video clip (0-100).

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
opacityYesOpacity value (0 = transparent, 100 = fully opaque)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a mutating, non-idempotent operation, but the description adds no behavioral detail beyond the schema's 0-100 range. There is no mention of side effects, prerequisites, or how the opacity change affects the clip beyond the obvious value assignment.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler or redundant clauses. It front-loads the action and resource immediately.

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?

This is a simple two-parameter setter with full schema coverage and an output schema available. The description is adequate for invoking the tool, though it lacks usage context such as when to prefer this over set_clip_properties.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already documented. The description only restates the opacity range, which adds little beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('set'), the resource ('video clip'), and the specific property ('opacity') including the valid range. This is specific enough to distinguish it from sibling tools like set_clip_properties or get_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus related tools such as set_clip_properties, set_blend_mode, or set_clip_scale. The intended context is only implied by the verb and resource.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_panSet Clip PanA

Set and read back the pan (left/right balance) on an audio clip, including Channel Volume layouts.

ParametersJSON Schema
NameRequiredDescriptionDefault
panYesPan value (-100 = full left, 0 = center, 100 = full right)
node_idYesNode ID of the audio clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already state readOnlyHint=false, so a write operation is implied. The description adds useful behavioral detail by saying the tool not only sets the pan but also reads back the result, and it explicitly mentions support for Channel Volume layouts. This goes beyond what the annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the action, target, semantics, and an important scope condition. There is no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with complete schema coverage and an output schema, the description gives enough information to invoke it correctly: what it operates on, what the pan range means, and that it returns the value after setting. Nothing critical is missing.

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% since both 'pan' and 'node_id' have descriptions. The description enhances the schema by clarifying that the target is an audio clip and that Channel Volume layouts are included, which adds context not present in the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Set and read back'), a specific resource ('pan ... on an audio clip'), and adds a distinguishing scope ('including Channel Volume layouts'). This makes it clearly separable from sibling tools like set_clip_volume or set_clip_opacity even without naming them.

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?

The description makes the intended use obvious: this is for adjusting the left/right pan of an audio clip. It does not enumerate when not to use it or name alternative tools, but the scope is specific enough that an agent can route to it correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_positionSet Clip PositionA

Set the Position property on a video clip's Motion effect. Values are in pixels.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesX position in pixels
yYesY position in pixels
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description is consistent with readOnlyHint=false and conveys that this is an absolute set of x/y values. However, it does not add behavioral context beyond the annotations, such as whether the position is overwritten or offset, whether the operation is reversible, or what coordinate origin is used. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One focused sentence with no filler. The operation, target property, and units are presented directly and front-loaded, making the definition easy to scan.

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 simple three-parameter setter with full schema coverage and an output schema present, this description covers the essentials. The only notable gap is the coordinate space or origin semantics for x/y, which could be relevant for precise positioning but is not stated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: x and y are already described as pixel positions and node_id as the clip's node ID. The description only restates the pixel unit and adds no meaning beyond what the input schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific operation ('Set the Position property'), the target resource ('a video clip's Motion effect'), and the unit ('pixels'). This clearly distinguishes it from sibling setters like set_clip_scale, set_clip_rotation, and set_clip_anchor_point.

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?

The description implies the intended use—repositioning a clip via its Motion effect—but provides no explicit when/when-not guidance or alternatives. It does not mention prerequisites such as the clip needing to have a Motion effect, or what to do if a different transform property is the target.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_propertiesSet Clip PropertiesB

Set supported clip properties (opacity, scale, position, rotation). Clip speed is unsupported and fails before mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleNoScale percentage (100 = original size)
speedNoUnsupported by Premiere's public scripting APIs. Supplying this returns an actionable error without mutating the clip.
node_idYesNode ID of the clip
opacityNoOpacity value (0-100)
rotationNoRotation in degrees
position_xNoHorizontal position
position_yNoVertical position

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful behavioral context beyond the annotations by stating that clip speed is unsupported and fails before mutation, implying the operation is safe when an unsupported parameter is supplied. However, it does not clarify whether omitted properties are preserved or reset, nor does it describe partial-update behavior or other failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It immediately states the action and resource, enumerates the supported properties, and adds the key unsupported-speed caveat in a compact second clause.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description gives enough to identify the tool and the main unsupported property, but it does not fully cover important invocation semantics for a mutation tool: whether unspecified properties remain unchanged, whether all supported properties can be set together atomically, or how this setter relates to the dedicated single-property setters. The output schema exists, but behavioral completeness is still limited.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since the input schema already documents all seven parameters with 100% coverage, the description need not repeat definitions. The description does group parameters conceptually (opacity, scale, position, rotation) and highlights the speed caveat, but it does not add meaning beyond the schema descriptions.

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 ('Set supported clip properties') and enumerates the affected properties: opacity, scale, position, rotation. It does not explicitly distinguish itself from sibling tools like set_clip_properties_batch or individual setters such as set_clip_opacity, so it falls short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to prefer this tool over the many related siblings, such as set_clip_opacity, set_clip_scale, or set_clip_properties_batch. It does note that speed is unsupported, but it does not direct the agent to an alternative or explain when this multi-property setter is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_properties_batchSet Clip Properties BatchA

Apply Motion/Opacity values to up to 16 clips after preflighting every target property. The handler reads each requested value back and never reports a partial batch as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYesEach item changes one or more supported opacity, Motion scale, position, or rotation values.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses meaningful behavior beyond the annotations: it preflights every target property before applying changes, reads back each requested value, and never reports a partial batch as verified. This conveys all-or-nothing verification semantics that the boolean annotations alone do not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two tight sentences with the core action front-loaded and no filler. The second sentence earns its place by disclosing the preflight and verification behavior, which is essential for an agent to trust the result.

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?

Given the rich input schema and the presence of an output schema, the description covers the key behavioral contract: batch limits, preflight validation, and verification semantics. It does not explicitly mention the unsupported speed property behavior, but that is already documented in the schema, so the overall package is complete enough for a mutation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents node_id, scale, speed, opacity, rotation, position_x, and position_y. The description adds batch-scale context but no property-specific semantics beyond what the input schema already states.

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 action and resource: apply Motion/Opacity values to clips, and the 'batch' naming plus 'up to 16 clips' scope distinguishes it from single-clip property setters. However, it does not explicitly name sibling alternatives like set_clip_properties, and 'Motion/Opacity' is slightly imprecise as shorthand for opacity, scale, position, and rotation.

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?

The 'up to 16 clips' phrasing implies this is for batched property updates, and the schema's maxItems confirms the grouping intent. But the description gives no explicit when-to-use guidance, such as 'for a single clip use set_clip_properties' or 'prefer this over individual setters when multiple properties/clips change together.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_rotationSet Clip RotationA

Set the Rotation property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
degreesYesRotation in degrees (0-360, can exceed for multiple rotations)
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating operation, and the description adds the useful scoping detail that the action targets the clip's Motion effect rather than an arbitrary effect. It does not disclose overwrite or keyframe behavior, but that is less critical given the low-risk annotation profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, focused sentence with no filler. The target property and context are front-loaded, and every word contributes meaning.

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 simple two-parameter setter with complete schema coverage, annotations, and an output schema, the description is largely sufficient. The only notable gap is the absence of explicit routing to or away from more general effect/property tools, but this is a minor issue for such a narrow operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents node_id and degrees. The description adds no new parameter-level detail beyond tying the property to the Motion effect, which is enough for the baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Set'), an exact property ('Rotation'), and a precise container ('video clip's Motion effect'). This cleanly differentiates the tool from siblings like set_clip_scale, set_clip_anchor_point, and set_clip_position.

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?

There is no explicit when-to-use or when-not-to-use guidance, nor any mention of alternatives such as set_effect_property or set_clip_properties. The intended use is implied by the name and the phrase 'Motion effect,' but an agent is left to infer it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_scaleSet Clip ScaleA

Set the Scale property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleYesScale value (100 = original size, 200 = 2x, 50 = half)
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is not read-only, not idempotent, and not destructive. The description adds the context that the operation targets the Motion effect's Scale property specifically, which clarifies what is modified. It does not disclose side effects like overwriting existing scale values or behavior when no Motion effect exists, but annotations cover the major risk profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the operation and target without any filler. Every word earns its place, and it is appropriately sized for such a simple setter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a low-complexity tool with two required parameters, both fully documented in the schema, an output schema provided, and annotations covering the mutation profile. The description plus structured data is sufficient for an agent to invoke it correctly; nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with scale's meaning explicitly documented as '100 = original size, 200 = 2x, 50 = half' and node_id described as 'Node ID of the clip.' The description adds no parameter-level detail beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set the Scale property on a video clip's Motion effect.' It clearly identifies both the target property and the containing effect, which distinguishes it from sibling tools like set_uniform_scale, set_scale_width_height, and set_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance, no mention of prerequisites (e.g., the clip already having a Motion effect), and no exclusions or alternatives. Among many closely related set_* tools, the agent is left to infer when this one is preferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_selectionSet Clip SelectionB

Select or deselect a clip in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
selectedYesTrue to select, false to deselect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are sparse (all false hints), so the description carries the burden of behavioral disclosure. It only restates the core action and does not reveal important behavioral traits such as whether selecting a clip clears the existing selection, whether deselecting a non-selected clip is a no-op, or what happens if no active sequence exists. The description adds little beyond the schema and annotation hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that immediately states the action and scope. There is no filler, no repetition of the tool name, and no unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with full schema coverage and an output schema, the description is minimally adequate. However, it omits side-effect behavior (clearing prior selection) and usage context relative to sibling selection tools. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id and selected already clearly documented. The description's 'select or deselect' wording echoes the selected boolean semantics but does not add meaningful new meaning. Baseline 3 is appropriate because the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Select or deselect') applied to a clearly scoped resource ('a clip in the active sequence'). This distinguishes it from related selection tools like select_item, get_selected_clips, and select_clips_by_name, whose scopes or operations differ.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus the many sibling selection tools (e.g., select_all_clips, select_clips_in_range, deselect_all_clips, invert_selection). It does not mention prerequisites such as having an active sequence, nor does it explain when a simple single-clip select/deselect is or is not appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_speed_qeSet Clip Speed QeB

Unavailable: Premiere does not expose a supported scripting API for changing a timeline clip's speed.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoReverse playback direction (default: false)
speed_percentYesSpeed as percentage (100 = normal, 200 = 2x, 50 = half speed)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the key behavioral context that Premiere does not expose a supported API for this operation, which goes beyond the annotations. Still, it doesn't say whether calling the tool returns an error, is a no-op, or otherwise behaves, which is a meaningful gap given the annotations provide almost no behavioral detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with the most important information, 'Unavailable', front-loaded. Every word contributes, and it avoids repeating schema or name information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stub that reports an unsupported operation, the description conveys the essential limitation, and an output schema exists so return-value documentation isn't required. However, it stops short of telling the agent what to do instead, which would make the tool definition fully actionable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters and their meaning, with 100% coverage. The description adds no parameter-level detail, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the domain operation ('changing a timeline clip's speed') and immediately states that it is unavailable in Premiere's scripting API. However, it doesn't describe what the tool actually does when invoked or whether it returns an error, so the purpose is expressed more as a limitation than as a usable tool behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should probably not be used, but it gives no explicit when-to-use guidance and no alternative. A natural pointer to `speed_change` among the siblings would have made the fallback clear, but none is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_start_timeSet Clip Start TimeA

Set the start time (timecode offset) of a project item. This shifts where timecode begins for the source media.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
start_secondsYesNew start time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as a write operation, and the description adds the meaningful behavioral detail that the start time is a timecode offset that shifts where timecode begins for the source media. This goes beyond the schema and annotations, clarifying what actually changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the action, and the clarifying effect is given immediately. No filler or repetition of schema content.

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 simple two-parameter setter with an output schema and annotations, the description is largely complete: it identifies the target, the value, and the effect. The only real gap is alternative routing to sibling tools, which is already penalized under usage guidelines.

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%, so the baseline is 3, but the description adds semantic value by framing start_seconds as a timecode offset rather than just a numeric value. It does not add detail about item_id, but the schema already describes that parameter well.

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 specific operation (set start time/timecode offset) and the target resource (project item), and explains the effect on source-media timecode. It is clear, but it does not distinguish itself from the sibling set_start_time, so an agent cannot tell whether this is the same operation on a different scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided. With siblings such as set_start_time, set_clip_properties, and set_clip_position, the description gives no basis for choosing this tool over an alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clips_volumeSet Clips VolumeA

Set the volume (in dB) on every audio clip of a track, or on a list of clip indices. One round trip instead of one call per clip - essential for sequences with dozens of clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
volume_dbYesVolume in dB applied to every selected clip (0 = unity, max +15)
track_indexYesAudio track index (0-based)
clip_indicesNoOptional clip indices on that track. Omit to apply to all clips.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate the operation is non-readonly and non-destructive. The description adds the useful batch/round-trip efficiency context, but it does not disclose potential side effects like overwriting existing volume settings or behavior on invalid clip indices. It is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core operation and target, followed by the most important usage rationale. No filler or redundancy; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a batch setter with fully documented parameters, an output schema, and a clear use case, the description provides enough context for an agent to invoke it correctly. No critical behavioral or scoping information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and each parameter already has a meaningful description. The tool description reinforces the track/clip-index semantics but adds no new format, constraints, or edge-case information beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the exact operation ('Set the volume in dB'), the target resource ('every audio clip of a track'), and the optional scoping ('or on a list of clip indices'). This clearly differentiates it from the singular sibling set_clip_volume by emphasizing the bulk/multi-clip behavior.

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?

Explicitly gives the key use case: 'One round trip instead of one call per clip - essential for sequences with dozens of clips.' This tells the agent when the bulk behavior is valuable, though it does not explicitly name the alternative for a single-clip operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_volumeSet Clip VolumeA

Set an audio clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the audio clip
volume_dbYesVolume in dB (0 = unity, negative = quieter, positive = louder)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a non-read-only, non-destructive operation. The description adds a useful behavioral boundary by guaranteeing it does not touch Essential Sound Amplify automation, helping agents avoid conflating it with a related parameter. It does not discuss keyframes or automation beyond that, but annotations lower the burden here.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, with the core operation front-loaded and the essential caveat following immediately. Every word earns its place; there is no redundant filler or schema repetition.

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 simple two-parameter setter with a fully documented schema, an output schema, and annotations, the description is largely complete. A minor gap is that it does not explicitly distinguish itself from the sibling set_clips_volume for batch or set_audio_keyframes, but the singular phrasing and parameter count make the tool usable without that clarification.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters are fully described in the input schema: node_id identifies the clip and volume_db includes units and value semantics. The description repeats the dB mention but does not add meaningful parameter information beyond what the schema already provides, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action (Set), a specific resource (an audio clip), and a specific property (Volume > Level in dB). It also distinguishes itself from read and Essential Sound operations by stating it does not read or change Essential Sound Amplify automation, which separates it from tools like get_clip_volume.

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?

The description clearly implies this is for setting a singular clip's direct volume level and explicitly says it is not for reading or changing Essential Sound Amplify automation. However, it does not name sibling alternatives like set_clips_volume for batch operations, so the when-to-use guidance is good but not exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_color_labelSet Color LabelC

Set the color label on a project item or clip

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
color_indexYesLabel color index (0=Violet, 1=Iris, 2=Caribbean, 3=Lavender, 4=Cerulean, 5=Forest, 6=Rose, 7=Mango, 8=Purple, 9=Blue, 10=Teal, 11=Magenta, 12=Tan, 13=Green, 14=Brown, 15=Yellow)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description conveys only the operation and target scope, not the behavioral effects: it does not state whether an existing label is overwritten, what happens for invalid item IDs, or whether the action is reversible. With readOnlyHint=false and no positive idempotent or destructive hints, the description carries the disclosure burden and does not fully meet it.

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?

The description is a single, direct sentence with no filler and places the target scope immediately. It is efficient, though it achieves brevity by leaving usage and behavioral details out.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter write tool with fully documented input schema and an output schema present, the essential invocation details are available. However, the description does not help an agent decide between this and closely related color tools, so context is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters completely, including the full 0-15 color mapping for color_index and the Node ID/name semantics for item_id. The description adds no parameter-level information beyond the general 'project item or clip' scope, so this is baseline schema-driven coverage.

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 clearly states the action ('Set') and the affected resource ('the color label' on 'a project item or clip'). It is specific enough to distinguish from the read counterpart get_color_label, though it does not explicitly differentiate from label-related siblings like set_color_value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus related alternatives such as get_color_label or set_color_value. There are no conditions, prerequisites, or exclusions, so an agent must infer the use case solely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_color_valueSet Color ValueB

Set a color value on an effect property (e.g., tint color, fill color)

ParametersJSON Schema
NameRequiredDescriptionDefault
redYesRed (0-255)
blueYesBlue (0-255)
alphaYesAlpha (0-255)
greenYesGreen (0-255)
node_idYesNode ID of the clip
property_nameYesName of the color property
component_nameYesName of the component/effect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint=false) already mark this as a write operation, and the description is consistent with that, disclosing a mutating set of RGB+alpha values. It adds modest context via the effect-property examples but does not disclose preconditions such as whether the effect must already exist on the node or whether the prior color is fully replaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with the verb first, the target object, and parenthetical examples inine — zero wasted words. Every element earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 100% schema coverage, an existing output schema, and an accurate operation statement, an ageent can call this tool correctly. The gap is tool-routing context: with the near-identical sibling set_effect_property present, the description should clarify when the color-specific variant is appropriate rather than the general one.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 required parameters including the 0-255 ranges for red/green/blue/alpha. The description's tint/fill examples add minor context, but per the baseline rule for >80% coverage, the description does not need to compensate further.

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 uses a specific verb-resource pair ('Set a color value on an effect property') and grounds it with concrete examples ('tint color, fill color'). It is clearly about color-specific effect properties, which implicitly distinguishes it from the broader sibling set_effect_property, though it never explicitly names that alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to choose this tool over related siblings such as set_effect_property, color_correct, apply_lut, or set_color_label. No exclusions, prerequisites, or context-of-use are provided, so an agent must infer selection solely from the tool name and examples.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_effect_propertySet Effect PropertyA

Set the value of a specific effect property on a clip. Accepts scalar, boolean, string, and array-shaped vector values (for example Motion > Position as [x, y]) and verifies the readback component by component.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesValue to set. Use a number for scalar properties, an array of numbers for vector properties such as Motion > Position or Anchor Point ([x, y]), a boolean for checkbox properties, or the exact JSON string reported for a MOGRT text or graphic parameter.
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect (e.g., 'Motion', 'Opacity')
property_nameYesDisplay name of the property (e.g., 'Scale', 'Position', 'Opacity')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a write operation (readOnlyHint=false), and the description adds a valuable behavioral detail: it 'verifies the readback component by component.' This goes beyond the schema and annotations by telling the agent that the tool actively confirms the value was applied, which matters for error handling and trust in the result.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core action, and every clause adds useful information about accepted values and verification behavior. There is no fluff or repetition of schema details, making it efficient and easy to parse.

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?

Given the schema's full parameter coverage and the presence of an output schema, the description is nearly complete. It covers value shape flexibility and verification behavior. A minor gap is that it does not mention prerequisites such as the effect already existing on the clip or how failures are surfaced, but this does not seriously hinder correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline applies. The description reinforces acceptable value types and gives an example, but the schema already documents the same semantics thoroughly, including the array shape and MOGRT string behavior. The description adds essentially no new parameter-level meaning beyond what the schema provides.

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 clearly states the operation: 'Set the value of a specific effect property on a clip,' which combines a specific verb and resource. It distinguishes well enough from get_effect_properties and apply_effect by focusing on setting an existing property, though it does not explicitly name a sibling or contrast itself with specialized setters.

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?

The description provides clear context: use this when you need to set an effect property value on a clip, with support for multiple value shapes. It does not explicitly mention alternatives or when not to use it, but the intended use is unambiguous and no exclusions are needed for basic usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_footage_interpretationSet Footage InterpretationC

Set footage interpretation settings for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
frame_rateNoOverride frame rate
pixel_aspect_ratioNoPixel aspect ratio (1.0 = square pixels)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a non-read-only mutation with no destructive or idempotent guarantees, but the description adds no behavioral context beyond the schema. It does not explain whether existing interpretation settings are replaced, whether the source file is affected, or what side effects may occur.

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?

The description is a single sentence with no filler and front-loads the action and target. It is appropriately concise, though it sacrifices useful context.

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?

Despite schema and annotation coverage, the description is incomplete given the large sibling set. It lacks any mention of how this tool relates to the more specific override tools and whether it is meant as a combined or bulk alternative, leaving an agent to guess when to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameters are already well documented in the schema. The description adds no additional meaning about item_id identification, frame_rate units, or pixel_aspect_ratio semantics, so it neither compensates nor detracts.

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 uses a specific verb ('Set') and identifies the resource ('footage interpretation settings') and target ('project item'), so an agent can tell what the tool does. However, it does not differentiate this from siblings like set_override_frame_rate or set_override_pixel_aspect_ratio, which operate on the same underlying concept.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives such as set_override_frame_rate, set_override_pixel_aspect_ratio, or get_footage_interpretation. The description provides no exclusions or context that would help an agent choose among these overlapping siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_frame_blendSet Frame BlendB

Enable or disable frame blending on a clip. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesTrue to enable frame blending, false to disable
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not a read-only or destructive operation. The description adds that the operation toggles frame blending and is performed 'Uses QE DOM,' which is a minimal extra context. It does not disclose side effects, prerequisites, or failure modes, but for a simple boolean setter the existing annotations lower the bar.

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?

The description is short and front-loaded, stating the core action in the first sentence. The second sentence, 'Uses QE DOM,' is a compact implementation hint, though its value is limited without further explanation. Overall, it is concise and free of filler.

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 two-parameter boolean setter with a complete schema, annotations, and an output schema, the description is largely sufficient. It names the target resource and the operation. It could be more complete by mentioning clip compatibility or what 'QE DOM' implies, but those are not essential for basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage: 'enabled' is described as 'True to enable frame blending, false to disable' and 'node_id' as 'Node ID of the clip.' The description adds no additional parameter-level meaning beyond what the schema already includes.

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 clearly states the operation: 'Enable or disable frame blending on a clip.' This is a specific verb and resource, and 'frame blending' distinguishes it from sibling tools like set_blend_mode or set_time_interpolation. However, it does not explicitly differentiate itself from related clip-property setters beyond the resource name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as set_time_interpolation or set_clip_properties. It only states what the tool does, with no context about prerequisites, exclusions, or which scenario should route to this tool over another.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_graphics_white_luminanceSet Graphics White LuminanceA

Set the graphics white luminance value (HDR setting) for the project

ParametersJSON Schema
NameRequiredDescriptionDefault
luminanceYesWhite luminance value in nits

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint=false) but not destructive (destructiveHint=false). The description adds the useful context that it is an HDR project-level setting, but it does not disclose side effects, persistence, or any effect on currently rendered graphics. This is adequate for a simple setter but not richly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no redundant phrases or filler. It states the core action, the target resource, and the domain context efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter setter with complete schema coverage and annotations. The description and schema together provide enough information for an agent to invoke it correctly. An output schema is also indicated, so return-value documentation is not the description's burden.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the parameter is already documented as 'White luminance value in nits'. The description's mention of 'HDR setting' adds a small amount of context, but it does not meaningfully go beyond the schema's parameter description. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set the graphics white luminance value' for the project. It clearly identifies this as a setter for an HDR project setting, and the 'set' verb distinguishes it from the sibling getter get_graphics_white_luminance.

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?

The description implies usage: use this tool when you need to set the graphics white luminance. However, it does not explicitly state when not to use it, nor does it mention the obvious alternative get_graphics_white_luminance for reading the current value. The intended context is clear but not fully spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_item_in_outSet Item In OutA

Set in and/or out points on a project item in the project panel (marks source range for editing).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
in_secondsNoIn point in seconds
media_typeNoMedia type: 1=video, 2=audio, 4=all (default: 4)
out_secondsNoOut point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating, non-idempotent, non-destructive operation. The description adds that it marks a source range on a project item rather than modifying media, and 'and/or' implies partial updates, but it does not disclose whether existing points are overwritten or what happens when only one point is supplied. Acceptable, but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with a useful parenthetical purpose clause; no wasted words and no repetition of the tool or title. It earns its place efficiently.

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?

With all parameters documented in the schema and an output schema present, the description covers the core purpose and scope well. The main gaps are the lack of explicit alternative routing and detailed side-effect behavior, but these are partially mitigated by the annotations and are not critical for this low-stakes setter.

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%, so the baseline is 3. The description's 'in and/or out' adds meaningful partial-set semantics beyond the schema: it explicitly signals that in_seconds and out_seconds can be set independently, which the parameter descriptions alone do not fully convey.

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?

States a specific action ('Set') and a clear resource ('in/and/or out points on a project item in the project panel'), with the intent explained by 'marks source range for editing.' The 'project panel' scope distinguishes it from sequence or source-monitor in/out tools, but it never names a sibling alternative explicitly.

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?

The phrase 'in the project panel' and the parenthetical 'marks source range for editing' imply when this tool should be used, but there is no explicit when-not-to-use guidance or pointer to alternatives like set_source_in_out, set_sequence_in_out_points, or clear_item_in_out. An agent must infer the boundary from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_keyframe_interpolationSet Keyframe InterpolationC

Set the interpolation type of a keyframe (Linear, Hold, or Bezier)

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds of the keyframe
interpolationYesInterpolation type
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, providing only a minimal safety profile (a mutating operation that is not classified as read-only or destructive). The description conveys the mutation nature but does not disclose key behavioral traits: what happens if no keyframe exists at the given time, whether the prior interpolation is overwritten, or whether the operation can fail or have side effects. It also capitalizes the enum values (Linear, Hold, Bezier) differently from the schema's lowercase enum, which could mislead an agent.

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?

The description is a single efficient sentence with no filler, and the allowed values are front-loaded in the parenthetical. It earns its place, though the slight capitalization mismatch with the schema enum is a minor structural blemish.

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?

For a mutating tool with 5 required parameters and no useful safety profile from annotations, this description is too thin. It does not mention the dependency on an existing keyframe, does not clarify the relationship to add_keyframe or set_time_interpolation, and provides no context on failure modes. The output schema covers return values, but the operational context is still incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents all five parameters. The description adds essentially no parameter meaning beyond the schema; the parenthetical repeats the interpolation values already captured by the enum. Baseline 3 is appropriate since the schema carries the heavy lifting.

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 uses a specific verb ('set') and a specific resource ('interpolation type of a keyframe'), with the parenthetical enumerating the three allowed values. It is fully clear what the tool does, and the mention of 'keyframe' implicitly distinguishes it from the sibling set_time_interpolation, but it does not explicitly draw that contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as add_keyframe or set_time_interpolation. No prerequisites are stated (e.g., that a keyframe must already exist at time_seconds), no exclusions, and no alternative routing. The intended use is only weakly implied by the verb 'set'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_metadataSet MetadataA

Replace project metadata XML on a project item and verify the exact readback. Partial field/value writes are intentionally rejected because Premiere requires a complete Project Metadata XML payload.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueNoLegacy partial-write argument. It is no longer executed; read projectMetadata first, update the complete XML, then supply metadata_xml and updated_fields.
item_idYesNode ID or name of the project item
field_nameNoLegacy partial-write argument. It is no longer executed because it cannot form a valid Project Metadata XML payload; use metadata_xml and updated_fields instead.
metadata_xmlNoComplete Project Metadata XML previously read from get_metadata, with the intended field values applied.
updated_fieldsNoExact Project Metadata field paths changed in metadata_xml (for example, Column.Intrinsic.Description).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only indicate that the tool is not read-only, not idempotent, and not destructive-flagged; the description adds that partial writes are intentionally rejected, that a complete payload is mandatory, and that readback is verified. This is useful behavioral context beyond the annotations, though it doesn't cover failure handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. The essential operation and the key constraint (complete XML payload, no partial writes) are stated immediately and efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Between the description and the fully described input schema, the agent has the operation, the required workflow shape, the legacy arguments to avoid, and the updated_fields semantics. An output schema is present, so return-value details are not the description's burden.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100 percent, so the schema already documents every parameter, including the legacy no-execute behavior of value and field_name. The main description reinforces the complete-XML requirement but adds little parameter meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: replace project metadata XML on a project item. It also states the verification behavior and explicitly rejects partial writes, which differentiates it from read tools like get_metadata and other metadata setters like set_xmp_metadata.

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?

The description gives clear context that complete XML payloads are required and partial field/value writes are rejected. It stops short of naming sibling alternatives or an explicit read-modify-write workflow, though the schema fills in the read-projectMetadata-first step.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_offlineSet OfflineA

Set a project item offline, or ask Premiere to refresh it back online when offline is false.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
offlineNotrue to take media offline (default); false to refresh an existing offline item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as non-read-only and non-destructive, so the description correctly describes a state-changing operation. It adds useful behavioral context by explaining that offline=false triggers a refresh-to-online workflow, which is more than the annotations alone provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence covers both operational modes and the conditional behavior. It is front-loaded with the primary action and wastes no words.

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 simple two-parameter tool with an output schema, the description is sufficiently complete to invoke correctly. The only slight gap is not addressing how it relates to adjacent commands like relink_media or check_offline_media, but this does not block correct use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both item_id and offline already documented. The description essentially restates the schema's offline semantics ('refresh it back online when offline is false') without adding new parameter-level detail, so it earns the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: 'Set a project item offline', and also covers the inverse behavior for offline=false. It distinguishes this tool from refresh/relink siblings by focusing on the offline state toggle rather than media relinking.

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?

The description gives clear conditional guidance: use it to take an item offline, or pass offline=false to ask Premiere to refresh it back online. It does not explicitly name alternative tools such as refresh_media or relink_media, so it falls just short of full sibling differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_override_frame_rateSet Override Frame RateA

Override the frame rate of a project item (useful for image sequences or misinterpreted media)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
frame_rateYesFrame rate to set (e.g., 23.976, 24, 29.97, 30, 60)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal mutation (readOnlyHint=false), and the description's 'Override' verb is consistent with that, so there is no contradiction. The description adds minor behavioral context — the override applies at the project-item level and addresses mis-interpreted media. However, it doesn't disclose whether calling it again replaces the existing override, whether the override can be reset to the native rate, or what side effects occur on sequences referencing the item.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the action front-loaded and a compact parenthetical use case. Every word earns its place; there is no filler or 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 simple 2-parameter setter with fully documented schema and an output schema present, the description is largely complete. The only meaningful gap is the absence of guidance on how to revert an override back to the native frame rate, which an agent might need when correcting a mistake. This is minor given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: item_id is documented as 'Node ID or name of the project item' and frame_rate includes example values (23.976, 24, 29.97, 30, 60). The description adds the purpose context but no additional parameter-level meaning beyond the schema, so the baseline of 3 is appropriate.

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 ('Override the frame rate of a project item') and adds a concrete use case ('useful for image sequences or misinterpreted media'). The 'project item' scope implicitly distinguishes it from set_sequence_frame_rate, which targets sequences. However, it doesn't explicitly differentiate itself from closely related setters like set_override_pixel_aspect_ratio or set_footage_interpretation, leaving some differentiation to inference.

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?

The parenthetical 'useful for image sequences or misinterpreted media' implies the intended scenario: correcting items whose detected frame rate is wrong. But it doesn't name alternatives (e.g., set_footage_interpretation, set_sequence_frame_rate) or state when NOT to use this tool, so an agent must infer the boundary from the sibling list rather than from explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_override_pixel_aspect_ratioSet Override Pixel Aspect RatioA

Override the pixel aspect ratio of a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
numeratorYesPAR numerator (e.g., 1 for square pixels)
denominatorYesPAR denominator (e.g., 1 for square pixels)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, covering the mutation and non-destructive safety profile. The description adds little beyond the word 'override', which implies replacing the current PAR, but it does not disclose side effects, requirements, or reversibility. This is adequate with annotations, not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence states the action and the resource with no filler or repetition. Every word contributes to the purpose.

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 simple three-parameter setter with fully described schema parameters and an output schema, the one-sentence description is sufficient for correct invocation. Explicit guidance about alternatives is absent but is not required for the basic call; it is adequately complete given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter has a meaningful description: item_id identifies the target, numerator and denominator define the ratio. The tool description does not add parameter-level semantics beyond what the schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Override') and names the exact resource ('pixel aspect ratio of a project item'). It clearly distinguishes from siblings like set_sequence_pixel_aspect_ratio by targeting project items rather than sequences, and from set_override_frame_rate by naming a different property.

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?

The description gives clear scope by specifying 'project item', so an agent can infer this is for item-level PAR rather than sequence-level PAR. It does not explicitly name alternatives or provide when-not-to-use conditions, but the resource target is clear enough for basic routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_playhead_positionSet Playhead PositionA

Set the playhead (CTI) position in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
time_secondsYesTime position in seconds to move the playhead to

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that this is not read-only and not destructive, so the description does not need to repeat that. The description adds the active-sequence scoping, but does not disclose additional behavioral details such as what happens when no sequence is active, whether the operation is undoable, or any side effects beyond moving the playhead. With annotation coverage present, this is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately names the action, target, and scope. It includes the useful CTI clarification without unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, low-complexity tool with an output schema and relevant annotations, the description is complete enough. The active-sequence scope and the schema's parameter documentation give an agent everything needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, time_seconds, has a complete schema description ('Time position in seconds to move the playhead to') with 100% coverage. The main description adds no additional parameter insight, so the schema carries the semantic weight, which matches the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set') with a clear resource ('playhead (CTI) position') and scope ('active sequence'). It is immediately distinguishable from sibling tools like get_playhead_position and move_playhead_to_edit, since it targets arbitrary time positioning rather than reading or moving to edit points.

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?

The description implies the tool operates on the currently active sequence, which gives some usage context, but it does not explicitly state when to use this tool over siblings such as move_playhead_to_edit or get_playhead_position, nor does it mention prerequisites like having a sequence open and active.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_poster_frameSet Poster FrameA

Set the poster frame (thumbnail) for a project item at a specific time.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
time_secondsYesTime in seconds for the poster frame

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish this is a write operation (readOnlyHint=false, destructiveHint=false). The description adds 'thumbnail' context and the time qualifier, but does not disclose overwrite behavior, persistence, or failure semantics. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the verb and object, with no filler or redundant explanation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter mutation with full schema coverage, annotations, and an output schema, the description is sufficient to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already fully documented. The description does not add meaningful format or constraint details beyond restating that the frame is set at a specific time.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description names the exact operation ('Set'), the resource ('poster frame (thumbnail) for a project item'), and a qualifier ('at a specific time'), making it distinct from frame export/capture siblings.

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 clearly states the context for use: a project item and a specific time. It does not explicitly name alternatives or exclusions, but the intended use is clear enough for an agent to select it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_item_audio_channel_mappingSet Project Item Audio Channel MappingC

Map one output audio channel of a project item to a source channel using Premiere's documented AudioChannelMapping API.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesProject item node ID or exact name
channel_indexYesZero-based output channel index to configure
source_channel_indexYesZero-based source channel index to map

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are all false hints, so they do not establish a meaningful safety profile, and the description must carry the burden. It does not disclose whether repeated calls replace or append mappings, whether invalid channel indices error, whether the change affects all instances of the item, or whether the operation is reversible. 'Map' implies a configuration mutation but nothing about consequences.

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?

The description is a single sentence with the action verb and resource up front, making it easy to scan. The reference to 'Premiere's documented AudioChannelMapping API' adds a little specificity but is not redundant enough to hurt clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter tool with fully described schema fields, the essential call shape is understandable. However, an agent still lacks guidance on when to use this versus other audio tools and what side effects to expect, so the description is minimally viable but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters clearly, including 'Zero-based output channel index to configure' and 'Zero-based source channel index to map,' so schema description coverage is 100%. The description adds conceptual direction but no additional parameter-level detail, matching the baseline for fully schema-documented parameters.

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 specific operation ('Map one output audio channel... to a source channel') and a specific resource ('a project item' via the AudioChannelMapping API), so an agent can tell it performs channel mapping. It does not explicitly contrast itself with sibling tools, but the resource and verb are distinctive enough among the audio-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool instead of related audio tools like adjust_audio_levels, apply_audio_effect, or set_sequence_audio_settings. No prerequisites, preconditions, or exclusions are given; the only contextual hint is the tool name and the generic 'map' operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_panel_metadataSet Project Panel MetadataA

Set the project panel metadata/column configuration from XML and verify that Premiere reads back the exact XML

ParametersJSON Schema
NameRequiredDescriptionDefault
metadata_xmlYesXML string containing the project panel metadata configuration

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-idempotent operation, and the description adds the notable behavior that it verifies the XML round-trip by having Premiere read back the exact XML. It could disclose more about overwriting existing configuration or failure behavior, but the verification detail goes beyond both the schema and annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the action front-loaded and no filler. Every clause ('from XML' and 'verify that Premiere reads back the exact XML') adds necessary behavioral information.

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 one-parameter tool with an output schema and annotations, the description covers purpose, input form, and verification behavior. It does not specify the expected XML schema or mismatch consequences, but those are not essential for selecting the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter is fully documented in the schema with 100% coverage, and the description merely restates the XML aspect without adding format, escaping, or example details. The schema carries the load here; the description adds no new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set') and resource ('project panel metadata/column configuration'), and it adds a distinguishing verification behavior ('verify that Premiere reads back the exact XML'). This clearly separates it from sibling tools like get_project_panel_metadata.

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?

The operation is clear enough that an agent can infer when to use it, but it does not explicitly state when to prefer it over alternatives such as get_project_panel_metadata or set_metadata. It provides implied usage rather than explicit routing or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_scratch_diskSet Project Scratch DiskB

Set the project's scratch disk paths for captured video, audio, and previews.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_previewsNoPath for audio previews
captured_audioNoPath for captured audio
captured_videoNoPath for captured video
video_previewsNoPath for video previews

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description conveys only the basic mutation intent. It does not add behavioral context beyond what the verb 'set' already implies, such as whether unspecified paths are left unchanged, whether paths must already exist, or whether this overwrites existing project settings. Annotations provide no positive safety information, so the description carries the burden and does not meet it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every phrase maps to the tool's actual purpose, and it is appropriately sized for the simplicity of the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter with fully documented parameters, the description is nearly sufficient. However, it leaves out important behavioral details such as the effect of omitting parameters, whether existing scratch disk paths are replaced, and how this differs from set_scratch_disk_path. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all four parameters with clear path descriptions, so schema coverage is 100%. The description adds only a high-level grouping of paths into captured video/audio and previews, which does not materially improve on the schema's per-parameter descriptions.

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 clear verb and resource: it sets the project's scratch disk paths for captured video, audio, and previews. It is unambiguous about what the tool operates on, though it does not explicitly distinguish itself from the similarly named sibling set_scratch_disk_path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided for when to use this tool instead of related alternatives, especially set_scratch_disk_path or get_project_scratch_disks. It also does not clarify whether it partially updates or fully replaces scratch disk settings, which is essential for safe usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scale_to_frame_sizeSet Scale To Frame SizeA

Enable 'Scale to Frame Size' on a project item so it fills the sequence frame

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating non-destructive operation, and the description adds that it enables a specific property with a fill-frame effect. However, it does not disclose side effects, reversibility, or what happens to existing scale values, which is relevant given idempotentHint is false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence that front-loads the verb and setting. Every phrase contributes meaning and there is no redundant or boilerplate text.

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 single-parameter, non-destructive toggle operation with an output schema and annotations, the description is nearly complete: it identifies the target and the result. It would be stronger with a brief note on how it differs from manual scale adjustment siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the only parameter item_id is already documented as 'Node ID or name of the project item'. The description adds no additional parameter-level detail beyond what the schema provides.

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 operation ('Enable Scale to Frame Size'), a specific resource ('a project item'), and the intended outcome ('fills the sequence frame'). It is not a tautology of the title, but it does not explicitly contrast itself with similar scale-related siblings such as set_clip_scale or set_scale_width_height.

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?

The purpose clause implies the tool should be used when a project item needs to fill the sequence frame, but there is no explicit when-to-use or when-not-to-use guidance. It does not mention alternatives among the scale-related sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scale_width_heightSet Scale Width HeightA

Set independent Scale Width and Scale Height on a clip (requires Uniform Scale to be OFF).

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
scale_widthYesScale width percentage
scale_heightYesScale height percentage

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that this is not read-only, so the mutation aspect is covered. The description adds the important Uniform Scale precondition, but does not disclose what happens if the precondition is unmet or other side effects of the operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that gets straight to the point. It includes the essential precondition without any filler, making it highly efficient for an agent to parse.

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?

All required parameters are documented, the key precondition is stated, and an output schema exists. The only notable omission is guidance on what occurs when Uniform Scale is enabled or how this differs behaviorally from set_clip_scale, but this is a minor gap for a simple setter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes all three parameters with 100% coverage, so the schema does the heavy lifting. The description adds no additional meaning about ranges, constraints, or interpretation beyond what the schema already provides.

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 clearly states the operation: set independent Scale Width and Scale Height on a clip. The qualifier 'independent' and the Uniform Scale requirement help distinguish it from related operations like set_uniform_scale or set_clip_scale, though it does not explicitly name those alternatives.

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?

The description gives a clear prerequisite: 'requires Uniform Scale to be OFF'. However, it does not explicitly explain when to choose this tool over related siblings such as set_clip_scale or set_uniform_scale, leaving usage conditions largely implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scratch_disk_pathSet Scratch Disk PathA

Set the scratch disk path for a specific media type

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull directory path for the scratch disk
scratch_disk_typeYesType: 'capturedVideo', 'capturedAudio', 'videoPreview', 'audioPreview', 'autoSave', 'ccLibraries'

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate this is a mutation (readOnlyHint false) but not destructive or idempotent. The description adds no behavioral context such as whether the path must already exist, whether the change persists, whether a restart/reload is required, or how it interacts with existing scratch disk settings.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, focused sentence that states the operation and its scope with no filler. It is front-loaded and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter setter with a complete schema and output schema, the core invoke details are covered. However, the description does not clarify the relationship with set_project_scratch_disk or disclose side effects, leaving the agent to infer routing and behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both `path` and `scratch_disk_type` already documented. The description does not add extra meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Set the scratch disk path for a specific media type'. It clearly identifies the tool's scope and distinguishes it from the sibling set_project_scratch_disk by emphasizing per-media-type targeting.

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?

The phrase 'for a specific media type' implies the intended use and contrasts with set_project_scratch_disk, but the description does not explicitly say when to choose this tool over that alternative or what the setting affects project-level versus application-level.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_audio_settingsSet Sequence Audio SettingsA

Change audio settings of the active sequence (sample rate, channel type).

ParametersJSON Schema
NameRequiredDescriptionDefault
sample_rateNoAudio sample rate (e.g., 44100, 48000, 96000)
channel_typeNoChannel type: 0=Mono, 1=Stereo, 2=5.1, 3=Multichannel

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-idempotent operation. The description adds the useful scope 'active sequence' but does not disclose whether omitted parameters are left unchanged or whether changing these settings has side effects. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with the verb and object first, followed by a compact parenthetical of affected parameters. It contains no redundant words and is easy to parse quickly.

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 simple two-property setter, the description, full parameter schema, and output schema provide enough information to make a correct call. It could be stronger by explicitly noting that parameters are optional and independent, but there is no major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both sample_rate and channel_type are already documented with examples and value mappings. The description merely restates the parameter names and adds no new semantic detail, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Change') and a specific resource ('audio settings of the active sequence'). It clearly distinguishes this from sibling set_sequence_settings by narrowing scope to audio parameters, and the parenthetical lists the affected fields.

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?

The phrase 'audio settings of the active sequence' establishes a clear condition for use: this tool applies when modifying the active sequence's audio settings. It does not explicitly mention alternatives or exclusions, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_display_formatSet Sequence Display FormatA

Set the timecode display format for the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_display_formatNoAudio: 0=Audio Samples, 1=Milliseconds
video_display_formatNoVideo: 0=24 Timecode, 1=25 Timecode, 2=29.97 Drop-frame, 3=29.97 Non-drop-frame, 4=30 Timecode, 5=50 Timecode, 6=59.94 Drop-frame, 7=59.94 Non-drop-frame, 8=60 Timecode, 9=Frames, 10=Feet+Frames 16mm, 11=Feet+Frames 35mm

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a non-destructive mutation (readOnlyHint=false, destructiveHint=false). The description adds that it applies to the active sequence, which is useful. However, it doesn't disclose whether both parameters are independent, if changes are immediate, or if there are any side effects. With annotations covering safety, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One precise sentence with no filler. The action and target are front-loaded, making it immediately understandable.

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 simple setter with two clearly documented parameters, the description suffices. Output schema exists, so return values don't need explanation. The main gap is not mentioning that both parameters are optional or the exact effect on the active sequence, but overall it's complete for agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% – each parameter has detailed enumerations (e.g., video_display_format lists 12 values). The description adds no extra meaning beyond pointing to the active sequence, so it doesn't compensate beyond the schema baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: set the display format for the active sequence. It's clearly distinct from siblings like set_sequence_settings or set_sequence_frame_rate. The mention of 'timecode display format' is slightly narrow but the parameter descriptions clarify audio/video formats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like set_sequence_settings or set_sequence_frame_rate. Doesn't mention that it only affects the active sequence or that it's a display-only setting, leaving the agent to infer context from the description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_field_typeSet Sequence Field TypeA

Set the field order of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
field_typeYes0=No Fields (Progressive), 1=Upper Field First, 2=Lower Field First

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that the operation modifies the active sequence, which is useful scope beyond the annotations. However, it does not mention behavior such as requiring an open sequence, how the change is applied, or whether any existing sequence properties are affected besides field order. With annotations present but not covering these details, the description adds modest context only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no filler or redundant phrasing. It front-loads the action and target, making it easy for an agent to parse quickly.

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 simple one-parameter setter with complete schema coverage and an output schema, this description is largely sufficient: it identifies the target and the operation. The main missing piece is usage guidance relative to sibling setting tools, but this does not prevent correct invocation when the schema is available.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the field_type parameter is already well-described with explicit values for 0, 1, and 2. The description adds no parameter-level meaning beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: set the field order of the active sequence. This uniquely identifies the operation among siblings like set_sequence_frame_rate and set_sequence_resolution, so an agent can distinguish it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives like set_sequence_settings, nor are prerequisites mentioned, such as needing an active sequence. The 'active sequence' wording implies context, but it does not explicitly route the agent toward or away from any sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_frame_rateSet Sequence Frame RateB

Change the frame rate of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateYesNew frame rate (e.g., 23.976, 24, 25, 29.97, 30, 50, 59.94, 60)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey readOnlyHint=false and destructiveHint=false, so the mutation profile is covered; the description is consistent with these and adds the 'active sequence' scoping. However, it does not disclose potential side effects, such as how a frame-rate change may affect existing clips' duration or audio/video sync. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single 9-word sentence that is front-loaded and contains zero filler. Every word earns its place, and the description is appropriately sized for a simple one-parameter setter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 1-param tool with full schema coverage and an output schema, the core calling contract is conveyed. However, it lacks guidance about the active-sequence prerequisite and does not warn about the conceptual overlap with set_override_frame_rate, which could lead to mis-selection in a large sibling toolset.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the frame_rate parameter fully documented including min/max and example values. The description adds no parameter-level meaning beyond what the schema provides, so the baseline of 3 applies.

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 ('change') and a specific resource ('the frame rate of the active sequence'), which is clear and unambiguous. However, it does not explicitly differentiate itself from close siblings like set_override_frame_rate, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. This is a notable gap because the sibling list contains set_override_frame_rate (clip-level interpretation override) and set_sequence_settings (batch settings), which an agent could easily confuse with this tool. No exclusions or conditions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_in_out_pointsSet Sequence In Out PointsA

Set the sequence in and out points (for export range, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsYesIn-point in seconds
out_secondsYesOut-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint false), so the description does not need to establish that. It adds minor context by explaining the purpose of setting in/out points, but does not describe side effects such as overwriting existing points or whether the change is undoable. This is adequate but not detailed.

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?

The description is a single, efficient sentence that states what the tool does and includes a useful parenthetical purpose. It avoids redundancy with the schema, though the main clause closely mirrors the tool name.

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 simple two-parameter setter with clear annotations and full schema coverage, the description is reasonably complete. It gives the core purpose and relies on the schema for parameter details. It could be improved by mentioning the relationship to get/clear in/out points or describing validation rules, but nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover both parameters ('In-point in seconds', 'Out-point in seconds') at 100%, so the description does not need to add much. The tool description adds no extra constraint information, such as in_seconds needing to be earlier than out_seconds, which the schema also omits.

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 clearly states a specific action ('Set') on a specific resource ('sequence in and out points') and adds context about the use case ('for export range, etc.'). It is clear enough to distinguish from get/clear variants, though it does not explicitly differentiate from related range tools like set_work_area.

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?

The parenthetical hints that this tool is used for defining an export range, which implies one common scenario. However, it provides no explicit guidance about when to prefer this over alternatives such as set_work_area or clear_sequence_in_out, and does not mention any prerequisites or constraints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_pixel_aspect_ratioSet Sequence Pixel Aspect RatioA

Change the pixel aspect ratio of the active sequence, or return a capability error when the legacy host does not expose a writable setting.

ParametersJSON Schema
NameRequiredDescriptionDefault
ratioYesPixel aspect ratio string (for example '1.0' for square pixels or '1.4222' for 16:9 DV).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-destructive operation. The description adds value by disclosing the 'capability error' behavior when the legacy host does not expose a writable setting, which helps the agent treat that failure as expected rather than as a bug. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the action and target, then appends the important capability caveat. Every word contributes meaningful guidance with no 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 one-parameter mutation with an output schema, the description is nearly complete: it names the target, the operation, and a key environment-dependent failure mode. It could be slightly stronger by pointing to sibling tools for comparison, but nothing essential to calling it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully documents the sole 'ratio' parameter with examples, so schema coverage is 100%. The description does not add parameter-level detail, but it does not need to because the schema already carries that burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/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: 'Change the pixel aspect ratio of the active sequence.' It clearly distinguishes this from sibling tools like set_override_pixel_aspect_ratio by scoping the operation to the active sequence, so an agent can infer the intended target without opening schemas.

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?

The description implies the tool is for changing the active sequence's pixel aspect ratio, and it mentions a host-capability edge case. However, it does not explicitly state when to prefer this over related tools such as set_override_pixel_aspect_ratio or set_sequence_settings, nor does it provide exclusion conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_resolutionSet Sequence ResolutionA

Change the resolution (frame size) of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthYesWidth in pixels
heightYesHeight in pixels

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag this as a non-read-only, non-destructive, non-idempotent mutation; the description adds the scope context that the active sequence is the target. It does not disclose potential side effects such as whether existing clip frame sizes are altered or whether the change is reversible, but the annotation profile lowers the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. It communicates the operation, target, and attribute without redundant phrasing.

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?

The tool is simple, both parameters are required and fully described, annotations cover the mutation/safety profile, and an output schema is present. The description is concise enough that nothing essential is missing for invoking it, though it could benefit from notes about limitations or side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: width and height are each documented as pixel dimensions. The description adds 'frame size' as a synonym for resolution but provides no additional parameter semantics beyond the schema, so it stays at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Change'), a specific target ('the active sequence'), and a precise resource ('resolution (frame size)'). This distinguishes it from sibling tools that set frame rate, pixel aspect ratio, display format, or broader sequence settings.

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?

The verb 'Change' plus 'of the active sequence' makes the primary use case clear, so usage is implied rather than explicit. However, it provides no guidance to choose this over set_sequence_settings or set_sequence_pixel_aspect_ratio, nor any exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_settingsSet Sequence SettingsA

Modify and read back sequence frame-size settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNoFrame width in pixels
heightNoFrame height in pixels
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the useful 'read back' behavior, which is not captured by the annotations and tells the agent that the tool returns the updated settings rather than just mutating them. It does not fully explain what happens when width or height is omitted, but the core write-and-return behavior is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the verb, target, and return behavior with no wasted words. Every word contributes meaning.

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 simple tool with three fully described optional parameters and an output schema, the description is largely sufficient. The main gap is the lack of explicit differentiation from 'set_sequence_resolution', but invocation details are otherwise well covered by the schema and the read-back note.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters with 100% coverage, so the description does not need to repeat them. It adds no deeper semantics, such as what happens if only one dimension is provided, so the baseline score of 3 is appropriate.

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 clearly identifies the operation ('Modify and read back') and the target resource ('sequence frame-size settings'), so an agent knows what the tool acts on. It is not a 5 because it does not distinguish itself from the closely related sibling 'set_sequence_resolution', which may overlap in purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to prefer this tool over alternatives such as 'get_sequence_settings' for read-only access or 'set_sequence_resolution' for changing resolution. The agent must infer usage context from the name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_source_in_outSet Source In OutA

Set in and/or out points on the clip currently open in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsNoIn point in seconds (optional)
out_secondsNoOut point in seconds (optional)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false hints and provide no behavioral detail, so the description carries the burden of indicating mutation. It does clarify that this is a state-changing operation on the Source Monitor clip and that one or both points may be set via 'and/or'. It does not disclose behavior when no clip is open or whether unspecified points are preserved, but for a simple setter this is a moderate gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the action and target, with no filler or redundant restating of the title. Every word contributes to the meaning.

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 simple two-parameter setter with fully documented inputs and an output schema, the description is largely sufficient. The only meaningful omission is edge-case behavior such as what happens when no clip is open in the Source Monitor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both in_seconds and out_seconds having descriptions and optionality already specified. The description adds minimal semantic value with 'and/or', but the schema already handles the parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete action ('set') and a specific resource ('in/out points on the clip currently open in the Source Monitor'). It clearly distinguishes this from sequence-level in/out tools like set_sequence_in_out_points and project-item in/out tools like set_item_in_out.

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?

The description provides a clear context and prerequisite: the target is the clip open in the Source Monitor, not the timeline or a project item. It does not explicitly name alternatives or exclusions, but the intended use case is unambiguous given the Source Monitor qualifier.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_start_timeSet Start TimeB

Set the start time (timecode offset) for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
start_secondsYesStart time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the bar for added behavioral context is lower. The description adds some useful context by specifying 'timecode offset' and restricting the target to 'project item', but it does not mention overwrite behavior, side effects, or preconditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with the verb and object front-loaded, and the clarifying 'timecode offset' phrase is included without redundancy. It contains no unnecessary words or repeated schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with full schema coverage, annotations, and an output schema, the description is nearly adequate. However, it lacks sibling guidance, especially versus set_clip_start_time, and gives no indication of valid ranges or overwrite semantics, so an agent might select it incorrectly or call it with invalid values.

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 description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by clarifying that start time means 'timecode offset', a nuance not present in the schema's 'Start time in seconds' description. No other parameter-level detail is added, hence not a 5.

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 clearly states a concrete action ('Set') and a specific resource ('start time (timecode offset)' for a 'project item'). However, it does not explicitly distinguish itself from similarly named siblings like set_clip_start_time, so it stops short of the differentiating clarity needed for a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus set_clip_start_time, set_playhead_position, or other timing-related siblings. The description only restates the core function and gives no prerequisites, exclusions, or alternative selection hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_target_trackSet Target TrackA

Set a track as targeted (active for insert/overwrite edits). Only one video and one audio track can be targeted at a time.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetedYesWhether to target (true) or untarget (false) the track
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the description carries the burden of behavioral context. It adds two genuinely useful traits: the functional consequence (active for insert/overwrite edits) and the exclusivity constraint (one video + one audio maximum). This goes beyond what any annotation or schema field states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero filler. The first sentence front-loads the operation and defines its meaning; the second adds the binding constraint. Every word earns its place.

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 simple 3-param setter with an output schema and annotations intact, the description is nearly complete. The return value is covered by the output schema, and the key runtime constraint is disclosed. The only minor gap is that it doesn't explicitly state that targeting a new video track implicitly untargets the previously targeted one, though the stated constraint makes this inferable.

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 description coverage is 100%, so the baseline is 3. The description adds value by enriching the meaning of the 'targeted' parameter — clarifying that setting it true makes the track active for insert/overwrite edits — and by giving the two targeted parameters operational context through the one-per-type rule. This exceeds the schema's terse 'Whether to target (true) or untarget (false) the track'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Set) and resource (track) with a precise semantic state: 'targeted (active for insert/overwrite edits)'. The parenthetical defines what 'targeted' means, and the singular 'a track' plus the one-per-type constraint implicitly distinguish it from siblings like set_all_tracks_targeted.

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?

The description provides clear operational context — 'Only one video and one audio track can be targeted at a time' — which implies when to use targeted=false (before targeting a new track of the same type). However, it never explicitly names alternatives or states when-not-to-use it versus set_all_tracks_targeted, so usage guidance remains implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_time_interpolationSet Time InterpolationB

Set time interpolation type for a clip (Frame Sampling, Frame Blending, Optical Flow). Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
interpolation_typeYes0 = Frame Sampling, 1 = Frame Blending, 2 = Optical Flow

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate that this is a mutating, non-idempotent operation, so the description is not solely responsible for that disclosure. It adds the 'Uses QE DOM' implementation detail, which provides some context beyond annotations, but it does not describe side effects, prerequisites, or consequences of changing the interpolation type.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that leads with the action and resource, then lists the valid values and the QE DOM context. Every word earns its place with no redundancy or filler.

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?

Given the tool's simplicity, the required parameters, full schema coverage, output schema, and annotations, the description provides enough for a correct call in most cases. The main gap is that 'QE DOM' is left unexplained and no guidance is given for ambiguous sibling tools, but this does not block basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description mostly repeats the enum values already documented in the schema and adds no additional format, syntax, or usage nuance for node_id or interpolation_type.

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 clearly states a specific verb ('Set') and resource ('time interpolation type for a clip'), and it enumerates the three accepted modes. However, it does not explicitly distinguish this from the sibling tool 'set_frame_blend', which overlaps conceptually with the 'Frame Blending' option.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided. The mention of 'Uses QE DOM' hints at a technical constraint, but there is no direction about preferring this tool over set_frame_blend or any other interpolation-related sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_transcode_on_ingestSet Transcode On IngestB

Enable or disable transcoding on ingest for the project

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesTrue to enable transcode on ingest, false to disable

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint=false), so the description adds little behavioral context. It does not disclose whether the setting affects only future ingests, whether existing media is retranscoded, or any other side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler or redundancy. The verb, resource, and scope are front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-boolean project setting, the description, schema, and annotations together are nearly sufficient. However, it omits useful context about the effect scope (e.g., whether it applies only to future ingests) and when to turn the setting on or off.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes the single 'enabled' parameter with 100% coverage ('True to enable transcode on ingest, false to disable'). The description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate.

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 clearly states the action ('Enable or disable'), the resource ('transcoding on ingest'), and the scope ('for the project'). It does not explicitly differentiate from related sibling tools like manage_proxies, but the 'on ingest' qualifier makes the intent unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. An agent must infer usage entirely from the tool name and one-line description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_uniform_scaleSet Uniform ScaleA

Toggle uniform scale on a clip's Motion effect. When enabled, Scale Width and Scale Height are linked.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
uniformYestrue for uniform (linked), false for non-uniform (independent width/height)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clarifies that the operation targets the Motion effect and that enabling uniform mode links width and height, which goes beyond the readOnly/destructive hints. It does not discuss side effects on existing scale values or keyframes, but for a simple boolean setter the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, no filler, with the core action front-loaded. Every word contributes to the tool's purpose or effect.

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 simple two-parameter setter with an output schema and clear annotations, the description and schema together provide enough information to invoke the tool correctly. It does not explicitly disambiguate from set_scale_width_height, but this is not essential to making the call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameters are already documented: node_id identifies the clip and uniform expresses linked versus independent scale. The description echoes the linked/independent concept but adds little semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: toggling uniform scale on a clip's Motion effect. It also explains the observable behavior — Scale Width and Scale Height become linked — which distinguishes it from value-setting siblings like set_scale_width_height.

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?

The intended use is implied by the description: use this when you want to link or unlink a clip's scale dimensions. However, it gives no explicit when-to-use guidance and does not mention alternatives such as set_scale_width_height or set_clip_scale.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setup_duckingSetup DuckingA

Build a verified Volume > Level keyframe curve for one audio clip. Ducking-window times are relative to that clip's start; overlapping or out-of-range windows are rejected before any keyframe write.

ParametersJSON Schema
NameRequiredDescriptionDefault
base_dbNoNormal clip level in dB (defaults to 0).
node_idYesTimeline audio-clip node ID.
fade_secondsNoFade length on each side of a window in seconds (defaults to 0.2).
ducking_windowsYesNon-overlapping windows during which this clip should be quieter.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations: it states that ducking-window times are relative to the clip start and that overlapping or out-of-range windows are rejected before any keyframe write. This communicates validation and atomicity, which is valuable for an agent deciding whether the call is safe and how it will behave. It does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the core purpose and then supplies the most important constraint and validation detail. Every sentence earns its place.

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 tool with full parameter documentation, annotations, and an output schema, the description is largely complete. It covers what is built, scope, time semantics, and rejection behavior. A minor gap is that it does not clarify what happens to existing Volume > Level keyframes when building the curve, but this is not a blocker given the available structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains each parameter. The description adds a little extra meaning by emphasizing window validation and the relative-time convention, but it does not materially explain base_db or fade_seconds beyond what the schema already provides. Baseline 3 is appropriate.

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: it builds a Volume > Level keyframe curve for one audio clip. It is clearly about ducking, but it does not explicitly differentiate itself from sibling tools like add_audio_keyframes or set_clip_volume, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives such as add_audio_keyframes or adjust_audio_levels. It implies ducking usage through the name and window semantics, but it never states exclusions or conditions that would route an agent to a different sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_work_areaSet Work AreaB

Set the work area (bar) in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsYesWork area in-point in seconds
out_secondsYesWork area out-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, leaving the description to carry the behavioral burden. It states that it modifies the work area bar but does not disclose side effects, prerequisites (e.g., requires an active sequence), validation rules (e.g., in_seconds < out_seconds), or whether the work area becomes enabled. With minimal annotations, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, direct sentence with no filler. The action and object are front-loaded, and every word contributes to the meaning. This is an appropriately minimal description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with an output schema, the description is functional but incomplete. It doesn't mention whether the target is the active sequence, whether the work area must be enabled first, or what the return value represents. Since related tools exist (e.g., is_work_area_enabled), these omissions could lead to misuse.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for both parameters ('Work area in-point in seconds', 'Work area out-point in seconds'). The description merely repeats the parameter names and adds no extra constraints, units, or ordering information. Baseline 3 applies because the schema already fully documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('set'), resource ('work area (bar)'), and the exact attributes (in and out points). It clearly distinguishes this from related tools like set_sequence_in_out_points or set_source_in_out by naming the work area specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided for when to use this tool versus alternatives such as get_work_area, set_sequence_in_out_points, set_item_in_out, or clear_sequence_in_out. There are no exclusions, alternatives, or context cues to help an agent choose this tool correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_workspaceSet WorkspaceA

Switch to a specific workspace layout (e.g., 'Editing', 'Color', 'Audio', 'Effects', 'Graphics')

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the workspace to activate (use get_workspaces to see available options)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a write operation (readOnlyHint=false), so the description's 'Switch' is consistent but not a major new disclosure. It adds useful framing that this changes a UI workspace layout rather than project media, but it does not describe side effects, persistence, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence, front-loaded with the action, with examples in a parenthetical. No filler or redundancy; every part of the description earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, low-complexity tool with an output schema, the description plus schema is sufficient for correct invocation. The get_workspaces pointer covers value discovery, and the examples further reduce ambiguity.

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% and the schema already tells the caller to use get_workspaces to see available names. The description adds value by listing concrete example values, which partially compensates for the lack of an enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Switch') and a clear resource ('workspace layout'), then gives concrete examples ('Editing', 'Color', 'Audio', 'Effects', 'Graphics'). This clearly distinguishes it from siblings like get_workspaces (reading vs changing state) and from the many unrelated set_* tools.

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?

The intended use is implied by the verb 'Switch', and the schema's parameter description points to get_workspaces for valid options. However, the description itself does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_xmp_metadataSet Xmp MetadataA

Merge a raw XMP XML patch into a project item's existing XMP metadata without removing unrelated fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
xmp_xmlYesWell-formed XMP XML containing only the fields to add or replace

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context by explaining that unrelated fields are preserved, which is important for a write operation. However, it does not disclose what happens on invalid XML, whether the operation is atomic, or how conflicting fields are resolved. Annotations are minimal, so the description carries much of the burden and only partially covers it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, tightly worded sentence that front-loads the core action and the most important behavioral guarantee. No filler, repetition, or unnecessary detail.

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?

Given the tool's moderate complexity, the description covers the essential semantics well, and the presence of an output schema reduces the need to explain return values. It could be slightly more complete by naming related tools or clarifying expected input format, but nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both item_id and xmp_xml already described in the input schema. The description reinforces that xmp_xml is a patch containing only fields to add or replace, but it adds little beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Merge') and resource ('a project item's existing XMP metadata'), and clarifies the key scoping constraint: it applies a raw XMP XML patch without removing unrelated fields. This clearly distinguishes it from similar metadata tools like get_xmp_metadata or set_metadata.

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?

The description makes the use case clear: update a subset of XMP fields while preserving existing metadata. It does not explicitly name alternative tools or state when not to use it, but the merge semantics provide enough context to infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_zero_pointSet Zero PointA

Set the starting timecode (zero point) of a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.
start_secondsYesStart time in seconds for the timecode origin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-idempotent operation, and the description adds semantic context by explaining 'zero point' as the starting timecode. It does not disclose additional side effects such as how existing markers, clips, or sequence timecode display might be affected, but the core behavioral meaning is clear and does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

single, tightly-worded sentence that front-loads the action and object. There is no filler or 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 simple one-required-parameter tool with full schema coverage and an output schema, the description is mostly complete. The main gap is lack of differentiation from set_start_time, but an agent can still correctly invoke the tool based on the provided information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents start_seconds and sequence_id well. The description does not add significant meaning beyond the schema, though it reinforces that start_seconds defines the timecode origin.

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 uses a specific verb and resource: 'Set the starting timecode (zero point) of a sequence.' It clearly defines the concept of zero point, making the tool's purpose understandable. However, it does not explicitly distinguish itself from the sibling set_start_time, leaving some ambiguity.

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?

The description gives clear context: this tool sets the sequence's timecode origin. It does not state when to use it instead of set_start_time or set_sequence_in_out_points, and provides no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

slide_editSlide EditC

Perform a verified slide edit on a clip using adjacent clips from the public timeline DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = slide right, negative = slide left)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating, non-idempotent operation, but the description adds little beyond that. It does not clarify what 'verified' means, whether adjacent clips are modified, whether the change is destructive to source clips, or whether the operation relies on any hidden state in the 'public timeline DOM.' These are meaningful behavioral gaps for a tool that edits the timeline.

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?

The description is a single, compact sentence with the main action front-loaded. However, the phrases 'verified slide edit' and 'public timeline DOM' introduce jargon that is not explained, slightly reducing clarity despite the concise structure.

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?

Although the tool has an output schema and only two parameters, the description is not fully complete for reliable invocation. It leaves key terms ('verified', 'public timeline DOM') undefined, does not explain what happens to adjacent clips, and offers no route to alternative tools when this operation is not appropriate. An agent would need external domain knowledge to use it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the two parameters are already documented in the input schema. The description adds no extra parameter meaning, but since the schema already explains node_id and offset_seconds with positive/negative direction semantics, a baseline score of 3 is appropriate.

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 ('Perform') and a specific editing operation ('verified slide edit') on a clip. It also hints at the mechanism ('using adjacent clips'), which helps distinguish slide editing from related trim operations like roll or slip edits, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this tool over sibling tools such as slip_edit, roll_edit, or move_clip. The phrase 'slide edit' implies a known editing concept, but the description does not explain the conditions or context in which this tool is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

slip_editSlip EditB

Perform a verified slip edit on a clip using public source in/out properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = slip forward in source, negative = slip backward)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide no meaningful behavior coverage (readOnlyHint=false is the only signal), so the description carries the burden. It does not disclose what 'verified' means, what side effects occur, what happens to the clip's source in/out and timeline position, or how failures are surfaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler. Every phrase ('verified slip edit', 'public source in/out properties') contributes to identifying the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema and fully documented parameters, the core invocation is covered. However, for a mutating operation with empty behavioral annotations, the description should explain what verification happens, what prerequisites apply, and how the edit affects the clip; these gaps leave the context only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%: node_id and offset_seconds are each documented, with offset_seconds already explaining positive/negative direction. The description adds only the general slip-edit framing, so it meets the baseline without significantly enhancing parameter understanding.

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 action ('Perform a verified slip edit on a clip') and names the operand (a clip) plus the mechanism ('using public source in/out properties'). It clearly identifies the tool's function, though it does not explicitly contrast it with sibling edit operations like roll_edit or slide_edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use slip_edit instead of the many related edit tools, nor are any conditions or exclusions stated. The phrase 'using public source in/out properties' hints at an eligibility constraint but never explains what makes a clip eligible.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

speed_changeSpeed ChangeA

Unavailable: Premiere does not expose a supported scripting API for changing a timeline clip's speed.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoReverse playback direction (default: false)
speed_percentYesSpeed as percentage (100 = normal, 200 = double, 50 = half)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the single most important behavioral fact — the operation is not supported — which the annotations cannot express (they only signal readOnly=false, destructive=false, idempotent=false). This honestly prevents an agent from attempting a futile call, though it stops short of stating what happens on invocation (error vs. no-op).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with zero filler, front-loaded with the decisive word 'Unavailable' and the reason behind it. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stub tool, the unavailability notice is the essential content and it is present. However, it omits the runtime failure behavior and names no fallback tool, so an agent must either risk invoking it or scan the large sibling list to find the working speed-change path.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all three parameters (node_id, speed_percent, reverse), so per rubric the baseline is 3. Since the tool is unavailable, parameter details are largely moot, and the description adds no parameter-level information.

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 the intended operation precisely (changing a timeline clip's speed) and immediately declares it unsupported by Premiere's scripting API. This is specific and clearly distinguishes the tool's nature from working siblings, though it describes what the tool cannot do rather than its actual runtime behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool or what to use instead. The sibling list contains obvious working alternatives for speed manipulation (set_clip_speed_qe, reverse_clip, set_time_interpolation, get_clip_speed), but the description does not point to any of them, leaving the agent to discover the routing on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

split_clipSplit ClipA

Split every clip on one track that spans a timeline time, then verify both resulting boundaries. Requires QE DOM; effect-keyframe redistribution remains unverified.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: video)
track_indexNoTrack index (0-based, default: 0)
time_secondsYesTimeline time in seconds where clips on the selected track will split

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description adds useful behavioral caveats: QE DOM is required, and effect-keyframe redistribution remains unverified. It also mentions that both resulting boundaries are verified after the split. This gives the agent more operational honesty than the annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loads the core behavior, and includes only high-value caveats. No filler or redundant restatement of the title or schema.

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 mutation tool with a complete parameter schema and an output schema present, the description covers the core behavior, the key prerequisite, and a known behavioral gap. It could be more complete by naming alternatives or clarifying the default track behavior, but nothing critical is missing for invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description adds only light semantic context by referring to a single track and timeline time, aligning with track_type, track_index, and time_seconds, but it does not add substantial new parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: split every clip on one track that crosses a given timeline time, then verify the resulting boundaries. This clearly distinguishes it from related tools like razor_all_tracks, which would split across all tracks.

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?

The description gives clear operational context: it is for splitting clips on a single track at a specified time, and it warns that QE DOM is required. It does not explicitly name sibling alternatives or state when not to use this tool, but the track-scoped behavior makes the intended use fairly clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stabilize_clipStabilize ClipB

Apply the Warp Stabilizer effect to a clip for video stabilization. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoStabilization method (default: 'Subspace Warp')
node_idYesNode ID of the clip to stabilize
smoothnessNoStabilization smoothness percentage (default: 50). Higher = smoother but more cropping.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description only needs to add value beyond that. It adds the 'Uses QE DOM' implementation note, which hints that the effect is applied through a non-standard API path and that node_id is a QE DOM identifier. However, it does not disclose that Warp Stabilizer triggers a potentially lengthy analysis pass or that the clip's effect stack is modified, leaving notable behavioral traits unstated.

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?

Two sentences with zero filler, and the core action is front-loaded in the first sentence. The second sentence, 'Uses QE DOM.', is a terse fragment that earns its place as an implementation qualifier but is less informative than a fully formed statement would be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The burden is lowered by the presence of an output schema, full parameter documentation, and annotations, but meaningful context is still missing: no warning about Warp Stabilizer's analysis time, no prerequisite that node_id refer to a valid video clip, and no pointer to the sibling get_qe_clip_info as a source for the QE DOM node id. The tool is minimally invocable with one required parameter, but the operative context is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents method (enum plus default 'Subspace Warp'), node_id, and smoothness (default 50 with the cropping trade-off). The description itself adds no parameter-level detail; the 'Uses QE DOM' statement only weakly disambiguates node_id as a QE DOM-specific identifier. With full schema coverage, the baseline of 3 applies.

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 specific verb ('Apply'), a specific resource ('the Warp Stabilizer effect'), a target ('a clip'), and the purpose ('video stabilization'), which makes the tool's function clear and distinguishes it from the generic sibling apply_effect. However, it does not explicitly name overlapping siblings or state scope boundaries, so it stops just short of full 5-level differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as apply_effect, color_correct, set_time_interpolation, or reverse_clip, all of which also operate on clips. There are also no stated prerequisites (e.g., the clip must be a video clip with motion) or exclusions, so the agent must infer selection logic from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_batch_encodeStart Batch EncodeA

Request Adobe Media Encoder to start the render queue; reports only accepted handoff, not queue progress or output-file creation.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false/neutral, so the description carries the burden of behavioral disclosure. It usefully reveals the asynchronous handoff nature and explicitly states what the tool does NOT report, adding meaningful context beyond the structured metadata.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence. It front-loads the core action and then adds the key limitation, with no redundant words or restatement of the tool name.

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 zero-parameter handoff tool with an output schema, the description is largely complete. It could optionally mention prerequisites like having items already in the render queue, but the current wording is sufficient for an agent to understand the tool's scope.

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?

The input schema has zero parameters, so there is nothing to document. The description correctly focuses on behavior rather than inventing parameter detail; baseline 4 applies for a parameter-free tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Request Adobe Media Encoder to start the render queue.' It also clarifies the tool's narrow scope by stating it reports only accepted handoff, not progress or file creation, which helps distinguish it from related encode/status tools.

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?

The description provides clear context: this tool only confirms handoff to Adobe Media Encoder, not queue progress or output-file creation. This implicitly tells the agent not to use it for monitoring or verification, though it does not name specific sibling alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stop_playbackStop PlaybackA

Request that active-sequence timeline playback stop through QE. The legacy API does not provide a same-call playhead readback, so stopped state is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond the annotations: it explains that this is a 'request' rather than a guaranteed state change, and that stopped state is not verified due to a legacy API limitation. This informs the agent that it cannot rely on the result to confirm playback is fully stopped.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no redundancy. The core action is front-loaded, and the second sentence adds a meaningful limitation without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema and clear sibling context, the description is complete. It identifies the target resource, the execution path, and the important caveat about lack of verification, which is all an agent needs to decide to call it.

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?

The tool has zero parameters, so the schema already fully covers parameter semantics. The description does not need to add parameter meaning, and the baseline of 4 applies because there is nothing ambiguous to document.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('stop'), a specific resource ('active-sequence timeline playback'), and the mechanism ('through QE'). It clearly distinguishes itself from siblings like play_timeline and get_playhead_position by focusing on stopping playback.

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?

The description implies when to use the tool—when the user wants to stop active-sequence playback—but it does not explicitly state alternatives or when not to use it. The counterpart play_timeline is present in the sibling list, but no direct routing guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

toggle_track_visibilityToggle Track VisibilityC

Toggle a video track's visibility (eye icon)

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleYesTrue to show, false to hide
track_indexYesVideo track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the bar is lower. The description adds only the '(eye icon)' UI mapping and discloses nothing about consequences: no behavior for an invalid or audio track_index, no note that visibility is explicitly set rather than flipped, and no mention of interaction with locked tracks. No contradiction with annotations, but minimal added behavioral context.

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?

A single verb-first sentence with zero filler, which is appropriately brief for a simple 2-parameter tool. It is slightly over-terse: a few extra words clarifying that the boolean sets state explicitly rather than toggling would have resolved the central ambiguity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple tool whose schema fully documents both required parameters and whose output schema exists, so return-value explanation is not needed. The notable gaps are the unaddressed toggle-versus-set semantics and undefined behavior for non-video track indices, but nothing critical is missing for basic correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: 'visible' is documented as 'True to show, false to hide' and 'track_index' as 'Video track index (0-based)'. The description itself contributes no parameter detail, so the baseline 3 applies; the schema does the necessary work.

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 specific verb ('Toggle') and resource ('video track's visibility') and anchors it to the UI eye icon, which helps distinguish it from siblings like mute_track (audio) and lock_track (lock state). However, the verb 'toggle' slightly misrepresents actual behavior: the required 'visible' boolean sets an explicit target state ('True to show, false to hide') rather than flipping the current state, so the semantics are a set operation, not a toggle.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. With closely related siblings such as mute_track, lock_track, enable_disable_clip, and batch_enable_disable, an agent gets no criteria for choosing track-level visibility over those options. The use case is only implied by the subject matter, with no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trim_clipTrim ClipA

Trim exactly one source in/out point and verify the corresponding visible timeline edge. Refuses retimed clips and, by default, trims that would leave effect keyframes outside the visible clip.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to trim
new_in_secondsNoNew source in-point in seconds (relative to the clip's source media). Specify exactly one edit point.
keyframe_policyNoHow to handle effect keyframes beyond the trimmed visible range: reject (default) leaves the timeline unchanged; preserve explicitly keeps them and reports their count.
new_out_secondsNoNew source out-point in seconds (relative to the clip's source media). Specify exactly one edit point.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations provide only basic safety hints, so the description carries the behavioral burden. It discloses two meaningful refusal conditions: retimed clips are rejected, and trims that would push effect keyframes outside the visible clip are rejected by default. It also claims the tool verifies the visible timeline edge, adding transparency beyond the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two focused sentences with no filler. The core action is stated first, followed by the most important edge-case constraints, making it easy for an agent to parse quickly.

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?

Given the output schema exists and the input schema is fully documented, the description covers the main behavioral context: single-point trimming, retimed clip refusal, and default keyframe handling. It could go slightly further by explaining what 'verify the corresponding visible timeline edge' means in terms of return or side effects, but overall it is sufficiently complete for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the parameter descriptions already explain node_id, new_in_seconds, new_out_seconds, and keyframe_policy in detail. The description reinforces the 'exactly one edit point' rule and the default keyframe rejection behavior, but does not add significant new parameter meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: 'Trim exactly one source in/out point' on a clip, and it explicitly narrows the operation to exactly one edit point. It also distinguishes the behavior from sibling tools like slip_edit or move_clip by emphasizing the verification of the visible timeline edge.

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?

The intended use is implied clearly: trim a single clip in or out point in the timeline. However, the description does not name alternative tools or state when to prefer another operation, such as slip_edit or roll_edit. It only gives refusal conditions for retimed clips and keyframe behavior, which is context but not explicit selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

undoUndoA

Unavailable: Premiere exposes no supported, observable undo-stack API, so a scripted undo cannot be performed or verified.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of times to undo (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only provide generic false hints; the description adds the key behavioral fact that the operation is unsupported and unverifiable because Premiere has no observable undo-stack API. This goes well beyond the schema and tells the agent not to expect a real undo effect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence states unavailability, provides the reason, and states the consequence. There is no filler, repetition of the schema, or unnecessary detail.

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 one-parameter stub with an output schema and annotations, the description covers the essential facts: the operation is unsupported and unverifiable. It could be slightly more complete by pointing to an alternative or telling the agent how to respond, but it is sufficient to prevent misuse.

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?

The schema already documents the count parameter with 100% coverage, which sets the baseline at 3. The description adds meaningful global context that makes the count ineffective, since no undo operation can actually be performed.

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 immediately says the tool is unavailable and explains why, so an agent understands this is not a functioning undo operation. It is not a tautology, but it does not differentiate itself from sibling tools such as redo or multiple_undo.

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?

The opening 'Unavailable' and the statement that a scripted undo 'cannot be performed or verified' provide an explicit when-not: this tool should not be relied on for undo. It stops short of naming an alternative, so it does not reach full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unnest_sequenceUnnest SequenceA

Unnest a nested sequence on the timeline, replacing it with the contents of the nested sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the nested sequence clip on the timeline to unnest

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the key behavioral outcome: the nested sequence clip is replaced by its contents. It also scopes the operation to the timeline. While annotations are sparse, the description does not go into reversibility/undo behavior or project-level side effects, so it is strong but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence that front-loads the action and clearly states the replacement behavior. Every word earns its place, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has one fully documented parameter, and an output schema exists. The description sufficiently communicates the operation and its observable effect on the timeline; no additional context is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, node_id, is already fully described in the schema as the Node ID of the nested sequence clip to unnest. The tool description does not add extra parameter guidance, but schema coverage is 100%, so the baseline applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Unnest') and identifies the exact resource ('a nested sequence on the timeline') and the resulting behavior ('replacing it with the contents of the nested sequence'). This makes it easy to distinguish from the inverse sibling tool nest_clips and related sequence tools like duplicate_sequence or delete_sequence.

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?

The intended use is clear from the operation itself: when a nested sequence clip should be flattened into its contents on the timeline. However, the description does not explicitly say when not to use it or mention alternatives such as nest_clips for the inverse operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_markerUpdate MarkerB

Update an existing marker's properties

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name
colorNoNew color index
commentsNoNew comments
time_secondsYesTime position of the marker to update

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false. The description adds little behavioral context beyond what the title and annotations convey; it does not mention failure behavior, whether only provided properties are updated, or any side effects.

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?

The description is a single, front-loaded sentence with no filler or redundancy. It earns its place by clarifying 'existing' and 'properties,' though it could provide slightly more useful context without becoming verbose.

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 simple update operation, the input schema covers parameters and the output schema exists. The description is sufficient for basic invocation, though it could benefit from noting that only specified properties are updated and what happens if no marker is found at the given time.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents each parameter, including time_seconds as the identifying position. The description adds no additional parameter context, which is acceptable given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('update') with a clear resource ('existing marker') and scope ('properties'), making it easy to distinguish from siblings like add_marker, delete_marker, and list_markers. It accurately conveys that this tool modifies, rather than creates or removes, a marker.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives such as add_marker, delete_marker, or list_markers. It only weakly implies usage through the word 'existing' but does not state conditions, exclusions, or alternative scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_cmx3600_edlValidate Cmx3600 EdlA

Validate a local CMX 3600 EDL's supported event grammar, timecodes, durations, duplicate event IDs, record overlaps, and record gaps before user-assisted Premiere interchange.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .edl file
frame_rateNoCMX timecode rate: 24, 25, 29.97, 30, 50, 59.94, or 60 (default: 24)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the description does not need to restate safety. The description adds useful detail about what validations are performed, but it does not disclose potential side effects, whether the file is modified, or what constitutes a failed validation. Since readOnlyHint=false leaves mutation ambiguous, more explicit disclosure would strengthen this dimension.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, information-dense sentence front-loads the action and resource, then lists the validation criteria compactly. Every phrase contributes meaning with no filler or 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?

The description covers what is validated and when it should run, and an output schema exists so return-value details are unnecessary. The only minor gap is not distinguishing this tool from inspect_cmx3600_edl or compare_cmx3600_edls explicitly, but the validation-focused framing largely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters effectively. The description reinforces that the file is local and CMX 3600-specific, but it does not add new meaning about path or frame_rate beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Validate') and identifies the exact resource ('local CMX 3600 EDL'), then enumerates concrete validation targets: event grammar, timecodes, durations, duplicate event IDs, record overlaps, and record gaps. This sharply distinguishes it from sibling tools like inspect_cmx3600_edl and compare_cmx3600_edls.

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?

The phrase 'before user-assisted Premiere interchange' gives clear context for when the tool should be used. It does not name alternative/sibling tools or explicitly state when not to use it, but the usage context is unambiguous enough for an agent to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_export_presetValidate Export PresetB

Validate that an Adobe Media Encoder .epr preset exists and ask the active Premiere sequence which output extension it produces

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_pathYesFull path to an Adobe Media Encoder export preset (.epr)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The phrase 'validate ... exists and ask' suggests a non-destructive, query-like operation, and it surfaces the dependency on the active Premiere sequence. But annotations provide no readOnlyHint safety signal, and the description does not address failure cases such as a missing preset or no active sequence, leaving some behavioral ambiguity.

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?

The description is a single sentence with no filler and front-loads the primary validation action. It is slightly awkward in the 'ask the active Premiere sequence which output extension it produces' phrasing, so it is not perfectly polished, but it remains appropriately compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with an output schema, the description covers the two core behaviors and names the active-sequence dependency. Still, it does not clearly state whether the output extension belongs to the preset or the sequence, and it omits explicit preconditions like requiring an open Premiere project or active sequence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, preset_path, is already fully documented in the schema with the same '.epr' and 'Full path' details. The description restates the type of preset but adds no additional meaning beyond the schema, so it earns the baseline for high schema coverage.

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 clearly identifies the tool's action: validate that an Adobe Media Encoder .epr preset exists and determine the output extension via the active Premiere sequence. It is specific enough to be distinguished from siblings like get_export_file_extension or get_encoder_presets, though it does not explicitly name 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?

The usage context is implied rather than explicit: an agent can infer this is for checking an export preset before encoding, and that an active sequence is involved. However, there is no explicit statement of when to use this over alternatives like get_export_file_extension or get_encoder_presets, and no when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_mogrt_brand_kitValidate Mogrt Brand KitA
Read-onlyIdempotent

Validate an operator-approved local MOGRT brand kit before using it in a template or batch preview. It never reads font inventories, image pixels, or writes files.

ParametersJSON Schema
NameRequiredDescriptionDefault
brand_kitYesApproved brand-kit values to validate before recipe use.
approved_workspace_pathYesAbsolute operator-approved workspace root.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds meaningful non-obvious boundaries: 'never reads font inventories, image pixels, or writes files,' which clarifies exactly what this validation does and does not inspect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The main purpose is front-loaded, and the behavioral boundary statement earns its place without bloating the description.

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?

Together with the annotations and output schema, the description adequately covers safety, intent, and when to invoke this validation step. It does not detail what happens on failed validation, but the output schema handles return information, so this is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents both parameters including the brand_kit object's properties. The description adds only contextual framing ('operator-approved', 'recipe use') rather than parameter-specific meaning, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('validate'), resource ('operator-approved local MOGRT brand kit'), and usage context ('before using it in a template or batch preview'). This clearly distinguishes it from sibling create/preview/publish-style MOGRT tools.

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?

The description explicitly states when to use the tool: before using a brand kit in a template or batch preview. It does not name alternative tools or exclusion conditions, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_platform_publish_packageValidate Platform Publish PackageA
Read-onlyIdempotent

Validate a rendered file plus title, description, hashtags, and content flags against one platform's approximate 2026 publish limits. Returns hard violations, soft warnings, normalized hashtags, and character counts. Local-only; never uploads or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoPost or video title.
widthYesRendered frame width in pixels.
heightYesRendered frame height in pixels.
hashtagsNoHashtags to publish with the post.
platformYesTarget platform id.
containerNoContainer extension such as mp4 or mov.
frame_rateYesRendered frame rate in frames per second.
audio_codecNoAudio codec name such as AAC.
descriptionNoPost caption or description body.
video_codecNoVideo codec name such as H.264.
has_captionsNoWhether captions are burned in or attached.
content_flagsNoDisclosure flags that trigger platform label reminders.
file_size_bytesNoRendered file size in bytes.
duration_secondsYesRendered file duration in seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, and the description adds meaningful extra context: it is local-only, never uploads, never changes Premiere, and returns normalized hashtags and character counts. It also qualifies the limits as 'approximate 2026' limits, which is honest about the reference data. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences front-load the purpose and immediately follow with what is returned and the safety profile. Every clause adds information; there is no filler or repetition of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a complete input schema, an output schema, and annotations covering safety/idempotency, the description fills the remaining gap: the semantic of 'approximate 2026 publish limits' and the local-only guarantee. An agent has enough context to select and call this tool correctly without ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all 14 parameters, so the schema already carries the semantic burden. The description names some of the validated fields (title, description, hashtags, content flags) but adds no parameter-level details beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and object: validate a rendered file plus title, description, hashtags, and content flags against a platform's publish limits. It also clarifies the output (violations, warnings, normalized hashtags, character counts) and distinguishes itself from nearby validation tools by focusing on publish-limit compliance and metadata rather than export presets or media delivery.

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?

The description gives a clear context for use: checking rendered output and metadata against one platform's approximate 2026 publish limits. It also provides an explicit exclusion with 'local-only; never uploads or changes Premiere,' so the agent knows it is safe to call and not a side-effecting operation. It stops short of naming alternative validation tools, but the intended usage is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_project_for_exportValidate Project For ExportA
Read-onlyIdempotent

Run a non-mutating export readiness audit for an active or named sequence. It reports blocking offline media, empty timelines, inaccessible preset/output paths, duration, and optional timeline gaps without queuing an export.

ParametersJSON Schema
NameRequiredDescriptionDefault
check_gapsNoReport gaps on populated tracks as warnings (defaults to true).
output_pathNoOptional intended delivery path; its parent folder is checked.
preset_pathNoOptional .epr preset path to check.
sequence_idNoSequence ID or name. Defaults to the active sequence.
require_non_empty_timelineNoTreat an empty sequence as a blocking error (defaults to true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly states 'non-mutating' and 'without queuing an export,' which goes beyond the annotations by clarifying side-effect-free behavior. This is consistent with readOnlyHint and idempotentHint, and no contradictions are present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences. The first sentence front-loads the core purpose and mutability, while the second efficiently lists the report categories. No filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich parameter schema and the presence of an output schema, the description adequately covers what the tool does, what it checks, and its non-mutating nature. It does not need to describe return values or nested structures since those are already defined in the schemas.

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?

All parameters are already well-described in the schema with defaults and meanings. The description reinforces these by mapping them to audit outcomes ('blocking offline media,' 'inaccessible preset/output paths,' 'optional timeline gaps'), adding semantic context beyond the raw schema fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Run' and the resource 'export readiness audit for an active or named sequence.' It enumerates the specific checks performed (offline media, empty timelines, inaccessible paths, duration, gaps), which distinguishes this tool from simple export or media-check siblings.

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?

The description provides clear context for when to use the tool: as a pre-export audit that does not queue an export. It implies use before export operations, but it does not explicitly contrast with close siblings like check_offline_media or validate_export_preset, so it falls short of full alternative-guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_after_effects_connectionVerify After Effects ConnectionA

Read-only check that the dedicated After Effects CEP connector is running. It never reads project names, media, or paths.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description says 'Read-only check,' but readOnlyHint is false, which directly contradicts the annotation and leaves the mutation safety profile unresolved. It adds the project-names/media/paths guarantee, but the contradiction prevents the agent from trusting the behavioral disclosure. Annotation Contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two crisp sentences; the primary purpose is front-loaded and the scoping guarantee is a single additional clause. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-argument connectivity check, the description covers what the tool verifies and what it deliberately doesn't read, and an output schema exists. However, the conflict between 'Read-only' and readOnlyHint=false leaves the core behavioral contract ambiguous, and there is no guidance on prerequisite conditions or failure behavior.

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?

Tool takes zero parameters and schema coverage is 100%, so the no-param baseline applies. The description doesn't need to add parameter detail and correctly avoids inventing any.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the exact purpose: verify that the dedicated After Effects CEP connector is running, and explicitly scopes it as read-only and as not touching project names, media, or paths. This clearly differentiates it from siblings like verify_premiere_connection and After Effects render/template tools.

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?

The description makes the use case clear: call this when the agent needs to confirm the After Effects CEP connector is available. It doesn't name alternatives or exclusions explicitly, but the 'After Effects' specificity and connector-check wording implicitly distinguish it from verify_premiere_connection and other verify tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_delivery_conformanceVerify Delivery ConformanceA
Read-onlyIdempotent

Verify a local exported file against an explicit delivery contract using ffprobe and optional EBU R128 analysis. Returns pass, fail, or not_evaluated per check; it does not prove Premiere render lineage or visual approval.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNoExpected video width in pixels
heightNoExpected video height in pixels
frame_rateNoExpected frames per second; rational ffprobe rates are compared numerically
audio_codecNoExpected audio codec name, such as aac or pcm_s24le
output_pathYesExisting local delivery file
target_lufsNoOptional integrated loudness target from -100 through 0 LUFS
video_codecNoExpected video codec name, such as h264 or prores
audio_channelsNoExpected audio channel count
duration_secondsNoExpected duration in seconds
audio_sample_rate_hzNoExpected audio sample rate
frame_rate_toleranceNoAllowed absolute frame-rate difference (default: 0.001)
loudness_tolerance_luNoAllowed absolute loudness difference (default: 1 LU)
maximum_true_peak_dbfsNoOptional maximum true peak from -100 through 0 dBFS
allowed_container_namesNoAllowed ffprobe demuxer-family aliases, such as mov or mp4. This cannot distinguish exact subtypes when ffprobe reports a shared alias family.
duration_tolerance_secondsNoAllowed absolute duration difference (default: 0.05)
maximum_video_bitrate_kbpsNoOptional maximum selected-video-stream bitrate in kilobits per second
minimum_video_bitrate_kbpsNoOptional minimum selected-video-stream bitrate in kilobits per second

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear from structured data. The description goes beyond that by stating the tool uses ffprobe and optional EBU R128 analysis, and that it returns pass, fail, or not_evaluated per check. It also clearly declares a limitation: the verification has no bearing on Premiere render lineage or visual approval, which adds transparency beyond the annotations.

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?

The description is a compact three-sentence structure that front-loads the core action (verify a local exported file against an explicit delivery contract), then adds the verification method and the result states. The limitation statement is useful and not redundant. It earns a 4 rather than 5 because the phrase 'Verify a local exported file against an explicit delivery contract' partially repeats the tool name, but nearly every additional word adds value.

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?

With 17 parameters, a 100%-covered schema, an output schema present, and safety annotations set, the description only needs to add the interpretation logic and limitations. It clearly states that checks return pass, fail, or not_evaluated, which is important contextual behavior. It is slightly less complete in that it doesn't explain how to interpret aggregate results or how not_evaluated might arise (e.g., when checks aren't requested), but the output schema may cover this gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema achieves 100% coverage with detailed descriptions on all 17 parameters, so the schema already carries the semantic load. The description adds no new parameter-level information beyond its statement that it's checking against a delivery contract. Baseline 3 is appropriate because schema_description_coverage is high and the description does not need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that this tool verifies a local exported file against a delivery contract using ffprobe and optional EBU R128 analysis. It also specifies the output states (pass, fail, not_evaluated per check), which removes ambiguity about what the tool actually does. It differentiates itself from related tools like verify_delivery_file by explicitly noting it doesn't prove Premiere render lineage or visual approval.

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?

The description establishes a concrete use case: verifying an exported local file against an explicit delivery contract. It also sets expectations by saying what it does not do (prove Premiere render lineage or visual approval), which helps an agent avoid misusing it for those purposes. However, it does not explicitly name alternative tools like analyze_loudness or verify_delivery_file for related but different checks, so it misses the full when-to-use versus alternatives guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_delivery_fileVerify Delivery FileA

Verify that an exported delivery is a non-empty regular file and calculate a SHA-256 or SHA-512 checksum; optionally compare expected size and checksum

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path to the exported delivery file
expected_checksumNoOptional expected hexadecimal checksum to compare
checksum_algorithmNoChecksum algorithm (default: sha256)
minimum_size_bytesNoMinimum acceptable file size in bytes (default: 1)
expected_size_bytesNoOptional exact expected file size in bytes

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds concrete behavioral detail beyond annotations: it states the file must be non-empty and a regular file, that a checksum is calculated, and that expected size/checksum may be compared. Annotations do not claim read-only, and the description doesn't contradict them; it simply doesn't discuss side effects, but the verification semantics are clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One well-structured sentence that front-loads the core purpose and packs in the essential behaviors without redundancy. Every clause adds information needed to understand or invoke the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 100% schema parameter coverage and an output schema present, the description covers the full verification behavior: file type/size check, checksum calculation, and optional comparisons. No critical information needed for correct invocation is missing.

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 description coverage is 100%, so this dimension starts at baseline 3. The description adds extra meaning by tying parameters to the verification workflow: expected_size_bytes and expected_checksum are for optional comparison, checksum_algorithm selects SHA-256/SHA-512, and minimum_size_bytes corresponds to the non-empty file check. This goes beyond the schema's field-level descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Verify') and a specific resource ('exported delivery'), and spells out the exact checks performed: non-empty regular file, SHA-256/SHA-512 checksum, and optional size/checksum comparison. This makes it clearly distinguishable from sibling validation tools such as validate_export_preset or verify_fcpxml_media_references.

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?

The use case is clear: verify a delivery file after export, optionally checking against expected values. It doesn't explicitly name when-not-to-use or list alternatives, but the action and resource are specific enough that an agent can select it over related validation and export tools without ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_fcpxml_media_referencesVerify Fcpxml Media ReferencesA

Verify FCPXML file:// media references only inside caller-approved existing roots. References outside those roots are never statted or exposed as local paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .fcpxml or .xml file
allowed_rootsYesOne to sixteen existing absolute roots that may be inspected

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds a meaningful behavioral guarantee beyond annotations: references outside the approved roots are 'never statted or exposed as local paths.' This is a critical safety property not visible in the annotations or schema, and it directly informs an agent's trust and usage decisions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary purpose is front-loaded, and the crucial safety constraint appears in the second sentence without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema, fully described parameters, and a concise yet precise description of its scope and safety behavior, nothing essential is missing for an agent to invoke it correctly. The description plus schema and annotations form a complete contract.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters thoroughly. The description adds the notion of 'caller-approved' roots and clarifies the verification boundary, but it does not substantially extend the schema's parameter semantics.

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 clearly states the verb ('Verify'), the resource ('FCPXML file:// media references'), and the specific scope constraint ('only inside caller-approved existing roots'). It is clear but does not explicitly differentiate from nearby siblings such as inspect_fcpxml_interchange or verify_delivery_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to choose this tool over alternatives, nor does it mention exclusions or prerequisites beyond what the schema already covers. The intended use case is implied by the name and description, but not articulated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_mogrt_artifactVerify Mogrt ArtifactA
Read-onlyIdempotent

Verify that a workspace-contained .mogrt artifact exists locally and has a ZIP header. This does not prove controls, import compatibility, playback, or visual correctness.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesAbsolute .mogrt artifact path inside approved_workspace_path.
approved_workspace_pathYesAbsolute operator-approved workspace root containing mogrt_path.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent/destructive annotations, the description clarifies that the check is local, format-only, and limited to ZIP-header presence. It candidly discloses what the tool does not verify, which is useful behavioral context for an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences, with the core verification scope in the first sentence and limitations in the second. There is no filler or redundant repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity read-only check with a complete schema, rich annotations, and an output schema, the description supplies the essential behavioral scope and non-goals. Nothing critical is missing for an agent to decide and invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both absolute path parameters and their relationship. The description adds no additional parameter semantics, matching the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action (verify) applied to a concrete resource (.mogrt artifact) with exact criteria: exists locally and has ZIP header. It also scopes to workspace-contained artifacts, making it distinct from the many preview/validate/import mogrt siblings.

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?

Provides explicit exclusions by saying it does not prove controls, import compatibility, playback, or visual correctness, which prevents using it as a validation/preview tool. It does not name the specific sibling tools to use for those checks, so it stops just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_premiere_connectionVerify Premiere ConnectionA
Read-onlyIdempotent

Run a safe, read-only first-run check. It proves that this MCP server, the selected Premiere bridge, an active project, and an active sequence are connected without returning project names, paths, or media details.

ParametersJSON Schema
NameRequiredDescriptionDefault
backendNoBridge to check. Defaults to CEP. This check never falls back to a different bridge.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, but the description adds genuinely new traits: it is a safety-gated read that returns no project names, paths, or media details. That negative-output guarantee is useful context an agent cannot get from the annotations alone, though it does not cover failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, front-loaded with the safety guarantee ("safe, read-only") and then the scope. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/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 no explanation, and the description still adds the privacy-relevant return constraint. For a zero-required-param verification tool this covers everything needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single backend param is fully documented (enum, default CEP, no fallback). The description only alludes to "the selected Premiere bridge" and adds no syntax or selection detail beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (verify) and resource (Premiere connection) and enumerates exactly what connectivity it proves: MCP server, selected bridge, active project, active sequence. The name and description clearly separate it from the After Effects and generic ping siblings.

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?

"first-run check" gives a concrete trigger context for when to reach for this tool. It does not explicitly contrast with the closer alternatives (ping, get_bridge_telemetry, get_premiere_state), so the routing is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 131 tool updatesv1.14.9
    • Changedadd_audio_keyframes1 field changed
      • removedInput schema / properties / keyframes / items / additionalProperties
        Removed value: -{}
    • Changedadd_text_overlay1 field changed
      • changedInput schema / properties / caption_format / enum
        Previous value: -[
        -  "608",
        -  "708",
        -  "subtitle",
        -  "teletext"
        -]New value: +[
        +  "subtitle",
        +  "608",
        +  "708",
        +  "teletext"
        +]
    • Changedadd_to_timeline_batch11 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / clips / items / additionalProperties
        Previous value: -{}New value: +false
      • addedInput schema / properties / clips / items / properties / audio_track_index / minimum
        Added value: +0
      • addedInput schema / properties / clips / items / properties / audio_track_index / type
        Added value: +"integer"
      • addedInput schema / properties / clips / items / properties / item_id / maxLength
        Added value: +512
      • addedInput schema / properties / clips / items / properties / item_id / minLength
        Added value: +1
      • addedInput schema / properties / clips / items / properties / start_seconds / minimum
        Added value: +0
      • addedInput schema / properties / clips / items / properties / track_index / minimum
        Added value: +0
      • addedInput schema / properties / clips / items / properties / track_index / type
        Added value: +"integer"
      • addedInput schema / properties / clips / maxItems
        Added value: +32
      • addedInput schema / properties / clips / minItems
        Added value: +1
    • Addedanalyze_dialogue_edit_candidates
    • Addedapply_after_effects_render_handoff
    • Changedapply_edit_plan2 fields changed
      • removedInput schema / properties / plan / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / plan / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Addedapply_mogrt_premiere_handoff
    • Changedapply_spot_workflow_plan3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / plan / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / plan / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Addedaudit_timeline_health
    • Addedbuild_caption_artifact
    • Addedcheck_caption_safe_zone
    • Changedcheck_offline_media1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedclose_all_source_clips1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedclose_source_monitor1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedconsolidate_duplicates1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedcreate_caption_track15 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / action
        Added value: +{
        +  "default": "import",
        +  "description": "Use import (the default) to create a Premiere caption track, or plan_lecture_workflow for a read-only SRT/VTT timing and review plan.",
        +  "enum": [
        +    "import",
        +    "plan_lecture_workflow"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / allow_proportional_scaling
        Added value: +{
        +  "description": "For plan_lecture_workflow, explicitly permit a bounded timing-scale preview when the artifact end does not match target_duration_seconds. This still never rewrites a caption artifact.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / artifact_format
        Added value: +{
        +  "description": "For plan_lecture_workflow, the syntax of caption_content. VTT content must include its WEBVTT header.",
        +  "enum": [
        +    "srt",
        +    "vtt"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / caption_content
        Added value: +{
        +  "description": "For plan_lecture_workflow, the caller-owned SRT or VTT content to parse locally. The returned plan contains no caption text and does not write this artifact.",
        +  "maxLength": 750000,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / properties / caption_format / description
        Previous value: -"Caption format: 'subtitle' (default), '608', '708', 'teletext', 'ebu', 'op42', 'op47'"New value: +"For action import, Premiere caption format: subtitle (default), 608, 708, teletext, ebu, op42, or op47."
      • changedInput schema / properties / item_id / description
        Previous value: -"Node ID or name of the imported caption project item (e.g., an .srt file)"New value: +"For action import, the node ID or name of the imported caption project item (for example, an SRT file). Omit for plan_lecture_workflow."
      • addedInput schema / properties / item_id / maxLength
        Added value: +512
      • addedInput schema / properties / observed_offset_seconds
        Added value: +{
        +  "description": "For plan_lecture_workflow, an editor-observed constant offset in seconds. Positive means captions currently appear later than intended; the preview proposes the inverse shift when safe.",
        +  "maximum": 86400,
        +  "minimum": -86400,
        +  "type": "number"
        +}
      • changedInput schema / properties / start_seconds / description
        Previous value: -"Offset in seconds from the start of the sequence (default: 0)"New value: +"For action import, offset in seconds from the start of the sequence (default: 0)."
      • addedInput schema / properties / start_seconds / maximum
        Added value: +604800
      • addedInput schema / properties / start_seconds / minimum
        Added value: +0
      • addedInput schema / properties / target_duration_seconds
        Added value: +{
        +  "description": "For plan_lecture_workflow, optional intended sequence duration. A mismatch requires review unless proportional scaling is explicitly authorized.",
        +  "maximum": 604800,
        +  "minimum": 0.001,
        +  "type": "number"
        +}
      • addedInput schema / properties / timing_tolerance_seconds
        Added value: +{
        +  "description": "For plan_lecture_workflow, tolerance used to classify an offset or duration mismatch (default: 0.25 seconds).",
        +  "maximum": 10,
        +  "minimum": 0.001,
        +  "type": "number"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "item_id"
        -]
    • Addedcreate_editorial_context_pack
    • Changedcreate_editorial_plan34 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / intent / maxLength
        Added value: +1000
      • addedInput schema / properties / intent / minLength
        Added value: +1
      • addedInput schema / properties / max_candidates / maximum
        Added value: +32
      • addedInput schema / properties / max_candidates / minimum
        Added value: +1
      • addedInput schema / properties / max_candidates / type
        Added value: +"integer"
      • changedInput schema / properties / organization_rules / items / additionalProperties
        Previous value: -{}New value: +false
      • addedInput schema / properties / organization_rules / items / properties / color_index / maximum
        Added value: +14
      • addedInput schema / properties / organization_rules / items / properties / color_index / minimum
        Added value: +0
      • addedInput schema / properties / organization_rules / items / properties / color_index / type
        Added value: +"integer"
      • addedInput schema / properties / organization_rules / items / properties / keywords / items / maxLength
        Added value: +512
      • addedInput schema / properties / organization_rules / items / properties / keywords / items / minLength
        Added value: +1
      • addedInput schema / properties / organization_rules / items / properties / keywords / maxItems
        Added value: +64
      • addedInput schema / properties / organization_rules / items / properties / keywords / minItems
        Added value: +1
      • addedInput schema / properties / organization_rules / items / properties / name / maxLength
        Added value: +255
      • addedInput schema / properties / organization_rules / items / properties / name / minLength
        Added value: +1
      • addedInput schema / properties / organization_rules / maxItems
        Added value: +16
      • changedInput schema / properties / platform_targets / items / additionalProperties
        Previous value: -{}New value: +false
      • addedInput schema / properties / platform_targets / items / properties / height / maximum
        Added value: +8192
      • addedInput schema / properties / platform_targets / items / properties / height / minimum
        Added value: +16
      • addedInput schema / properties / platform_targets / items / properties / height / type
        Added value: +"integer"
      • addedInput schema / properties / platform_targets / items / properties / name / maxLength
        Added value: +64
      • addedInput schema / properties / platform_targets / items / properties / name / minLength
        Added value: +1
      • addedInput schema / properties / platform_targets / items / properties / sequence_name / maxLength
        Added value: +255
      • addedInput schema / properties / platform_targets / items / properties / sequence_name / minLength
        Added value: +1
      • addedInput schema / properties / platform_targets / items / properties / width / maximum
        Added value: +8192
      • addedInput schema / properties / platform_targets / items / properties / width / minimum
        Added value: +16
      • addedInput schema / properties / platform_targets / items / properties / width / type
        Added value: +"integer"
      • addedInput schema / properties / platform_targets / maxItems
        Added value: +8
      • addedInput schema / properties / platform_targets / minItems
        Added value: +1
      • addedInput schema / properties / project_id / maxLength
        Added value: +512
      • addedInput schema / properties / project_id / minLength
        Added value: +1
      • addedInput schema / properties / sequence_id / maxLength
        Added value: +128
      • addedInput schema / properties / sequence_id / minLength
        Added value: +1
    • Addedcreate_mogrt_batch
    • Addedcreate_mogrt_recipe
    • Changedcrop_clip13 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / bottom / maximum
        Added value: +100
      • addedInput schema / properties / bottom / minimum
        Added value: +0
      • addedInput schema / properties / edge_feather / maximum
        Added value: +100
      • addedInput schema / properties / edge_feather / minimum
        Added value: +0
      • addedInput schema / properties / left / maximum
        Added value: +100
      • addedInput schema / properties / left / minimum
        Added value: +0
      • addedInput schema / properties / node_id / maxLength
        Added value: +512
      • addedInput schema / properties / node_id / minLength
        Added value: +1
      • addedInput schema / properties / right / maximum
        Added value: +100
      • addedInput schema / properties / right / minimum
        Added value: +0
      • addedInput schema / properties / top / maximum
        Added value: +100
      • addedInput schema / properties / top / minimum
        Added value: +0
    • Changeddeselect_all_clips1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changeddetect_active_picture_bounds1 field changed
      • addedInput schema / properties / limit / type
        Added value: +"integer"
    • Changeddetect_audio_transients1 field changed
      • addedInput schema / properties / maximum_events / type
        Added value: +"integer"
    • Changeddetect_beats4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / max_beats / maximum
        Added value: +2000
      • addedInput schema / properties / max_beats / minimum
        Added value: +1
      • addedInput schema / properties / max_beats / type
        Added value: +"integer"
    • Changeddetect_motion_peaks1 field changed
      • addedInput schema / properties / maximum_events / type
        Added value: +"integer"
    • Addeddetect_repeated_takes
    • Changeddetect_scene_edits2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / operation_id / pattern
        Added value: +"^[A-Za-z0-9._:-]{1,128}$"
    • Addeddiff_sequence_snapshots
    • Addedenqueue_after_effects_render
    • Changedexport_sequence_marker_review_frames1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedextract_selection1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedgenerate_media_contact_sheet3 fields changed
      • addedInput schema / properties / columns / type
        Added value: +"integer"
      • addedInput schema / properties / rows / type
        Added value: +"integer"
      • addedInput schema / properties / thumbnail_width / type
        Added value: +"integer"
    • Changedget_active_sequence1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_all_project_paths1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_av_feature_support1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_bin_contents8 fields changed
      • addedInput schema / properties / limit / maximum
        Added value: +500
      • addedInput schema / properties / limit / minimum
        Added value: +1
      • addedInput schema / properties / limit / type
        Added value: +"integer"
      • addedInput schema / properties / max_depth / maximum
        Added value: +10
      • addedInput schema / properties / max_depth / minimum
        Added value: +0
      • addedInput schema / properties / max_depth / type
        Added value: +"integer"
      • addedInput schema / properties / offset / minimum
        Added value: +0
      • addedInput schema / properties / offset / type
        Added value: +"integer"
    • Changedget_bridge_telemetry1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_capabilities13 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / available_only
        Added value: +{
        +  "description": "Filter to tools registered under this session's authority and tool packs. Defaults to true for tool_query, false otherwise. Set false to diagnose unavailable matches; this does not enable them.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / tool_limit / maximum
        Added value: +128
      • addedInput schema / properties / tool_limit / minimum
        Added value: +1
      • addedInput schema / properties / tool_limit / type
        Added value: +"integer"
      • addedInput schema / properties / tool_names / items / maxLength
        Added value: +256
      • addedInput schema / properties / tool_names / items / minLength
        Added value: +1
      • addedInput schema / properties / tool_names / maxItems
        Added value: +128
      • addedInput schema / properties / tool_names / minItems
        Added value: +1
      • addedInput schema / properties / tool_names / uniqueItems
        Added value: +true
      • addedInput schema / properties / tool_offset / minimum
        Added value: +0
      • addedInput schema / properties / tool_offset / type
        Added value: +"integer"
      • addedInput schema / properties / tool_query
        Added value: +{
        +  "description": "Optional case-insensitive keywords matched against tool names and descriptions. Exact names rank first. Search defaults to 20 results with descriptions and session availability; page with tool_offset/tool_limit.",
        +  "maxLength": 256,
        +  "minLength": 1,
        +  "pattern": "\\S",
        +  "type": "string"
        +}
    • Changedget_duplicate_media1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_full_project_overview9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / max_bin_depth / maximum
        Added value: +10
      • addedInput schema / properties / max_bin_depth / minimum
        Added value: +0
      • addedInput schema / properties / max_bin_depth / type
        Added value: +"integer"
      • addedInput schema / properties / sequence_limit / maximum
        Added value: +500
      • addedInput schema / properties / sequence_limit / minimum
        Added value: +1
      • addedInput schema / properties / sequence_limit / type
        Added value: +"integer"
      • addedInput schema / properties / sequence_offset / minimum
        Added value: +0
      • addedInput schema / properties / sequence_offset / type
        Added value: +"integer"
    • Changedget_graphics_white_luminance1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_insertion_bin1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_offline_media1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_playhead_position1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_premiere_state1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_project_info1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_project_panel_metadata1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_project_scratch_disks1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_render_queue_status1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_selected_clips1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_sequence_count1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_sequence_in_out_points1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_source_monitor_info1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_source_monitor_position1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_target_tracks1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_total_clip_count1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_unused_media1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_version_info1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_work_area1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedget_workspaces1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedimport_fcp_xml3 fields changed
      • changedInput schema / properties / path / description
        Previous value: -"Full path to the FCP XML file"New value: +"Full path to the FCP XML file to read"
      • addedInput schema / properties / project_path
        Added value: +{
        +  "description": "Full path of the new .prproj file Premiere should create for the imported timeline. Required: app.openFCPXML takes both a source and a destination path.",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "path"
        -]New value: +[
        +  "path",
        +  "project_path"
        +]
    • Addedinspect_after_effects_render_templates
    • Addedinspect_after_effects_template_source
    • Addedinspect_film_editorial_workflow
    • Addedinspect_mogrt_library
    • Changedinspect_project_recovery1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedinspect_sequence_av_settings1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedinspect_stabilizer_status1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedinvert_selection1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlift_selection1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlink_selection1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlist_available_audio_effects1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlist_available_audio_transitions1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlist_available_effects1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlist_available_transitions1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedlist_sequences1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Addedmanage_media_watch
    • Changedmanage_project_context6 fields changed
      • changedInput schema / properties / action / description
        Previous value: -"Capture active context, enrich it, inspect status, or clear one local project index"New value: +"Capture active context, enrich it, import revision-bound editorial evidence, inspect status, or clear one local project index."
      • changedInput schema / properties / action / enum
        Previous value: -[
        -  "capture",
        -  "enrich",
        -  "status",
        -  "clear"
        -]New value: +[
        +  "capture",
        +  "enrich",
        +  "import_evidence",
        +  "status",
        +  "clear"
        +]
      • addedInput schema / properties / evidence
        Added value: +{
        +  "description": "For import_evidence, up to 512 caller-approved records with strict source/timeline revision guards. The server does not read referenced frame files, invoke analysis, or contact a provider.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "end_seconds": {
        +        "description": "Optional end in seconds at or after start_seconds.",
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "frame_reference_id": {
        +        "description": "For frame_reference, an opaque fixture or review-frame identifier, never a native file path or URL.",
        +        "maxLength": 256,
        +        "type": "string"
        +      },
        +      "id": {
        +        "description": "Optional stable evidence ID for deterministic replacement.",
        +        "maxLength": 256,
        +        "type": "string"
        +      },
        +      "keywords": {
        +        "description": "Optional local search keywords.",
        +        "items": {
        +          "description": "One local search keyword.",
        +          "maxLength": 256,
        +          "type": "string"
        +        },
        +        "maxItems": 64,
        +        "type": "array"
        +      },
        +      "metadata": {
        +        "description": "Optional small scalar metadata. Credential-like and path-like keys are discarded before local storage.",
        +        "type": "object"
        +      },
        +      "name": {
        +        "description": "Optional bounded display name for the local evidence record.",
        +        "maxLength": 512,
        +        "type": "string"
        +      },
        +      "sequence_id": {
        +        "description": "Optional captured sequence ID. Requires the exact current timeline_revision.",
        +        "maxLength": 512,
        +        "type": "string"
        +      },
        +      "source_id": {
        +        "description": "Optional captured source ID. Requires the exact current source_revision.",
        +        "maxLength": 512,
        +        "type": "string"
        +      },
        +      "source_revision": {
        +        "description": "Required exact source revision whenever source_id is supplied.",
        +        "maxLength": 256,
        +        "type": "string"
        +      },
        +      "speaker_label": {
        +        "description": "For transcript_passage or speaker_label, an editor-supplied speaker label. It is not inferred by this server.",
        +        "maxLength": 160,
        +        "type": "string"
        +      },
        +      "start_seconds": {
        +        "description": "Optional non-negative source or sequence start in seconds.",
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "text": {
        +        "description": "Caller-approved local evidence text. Required except for speaker_label and frame_reference, which can derive a bounded local note.",
        +        "maxLength": 20000,
        +        "type": "string"
        +      },
        +      "timeline_item_id": {
        +        "description": "Optional captured timeline item ID. Requires the exact current timeline_revision.",
        +        "maxLength": 512,
        +        "type": "string"
        +      },
        +      "timeline_revision": {
        +        "description": "Required exact timeline revision whenever sequence_id or timeline_item_id is supplied.",
        +        "maxLength": 256,
        +        "type": "string"
        +      },
        +      "track_index": {
        +        "description": "Optional recorded track index when the evidence is tied to a timeline item.",
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "track_type": {
        +        "description": "Optional recorded track type when the evidence is tied to a timeline item.",
        +        "enum": [
        +          "video",
        +          "audio"
        +        ],
        +        "type": "string"
        +      },
        +      "type": {
        +        "description": "Evidence shape: transcript passage, speaker label, shot log, audio observation, operator note, or an opaque frame reference.",
        +        "enum": [
        +          "transcript_passage",
        +          "speaker_label",
        +          "shot_log",
        +          "audio_observation",
        +          "operator_note",
        +          "frame_reference"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "type"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • removedInput schema / properties / records / items / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / records / items / properties / metadata / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / records / items / properties / metadata / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Changedping1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Addedplan_active_speaker_reframe
    • Addedplan_beat_montage
    • Addedplan_chapter_markers
    • Addedplan_cross_app_workflow
    • Addedplan_emphasis_zoom_keyframes
    • Addedplan_filler_word_removal
    • Addedplan_pause_tightening
    • Addedplan_platform_delivery_matrix
    • Changedplan_silence_review_markers1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedplan_speaker_checkerboard
    • Addedplan_word_mute_ranges
    • Changedplay_timeline1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Addedpreview_after_effects_render
    • Addedpreview_after_effects_render_handoff
    • Changedpreview_brand_spot1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedpreview_edit_plan2 fields changed
      • removedInput schema / properties / plan / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / plan / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Changedpreview_editorial_plan3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / plan / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / plan / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Addedpreview_mogrt_batch
    • Addedpreview_mogrt_library_publish
    • Addedpreview_mogrt_premiere_handoff
    • Addedpreview_mogrt_recipe
    • Changedpreview_motion_graphics_demo1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedpreview_product_spot1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedpreview_project_intake6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / max_items / maximum
        Added value: +2000
      • addedInput schema / properties / max_items / minimum
        Added value: +1
      • addedInput schema / properties / max_items / type
        Added value: +"integer"
      • removedInput schema / properties / template / additionalProperties
        Removed value: -{}
      • removedInput schema / properties / template / propertyNames
        Removed value: -{
        -  "type": "string"
        -}
    • Addedpreview_watched_media_import
    • Addedpreview_workflow_recipe
    • Addedpublish_mogrt_to_library
    • Addedrank_short_form_candidates
    • Changedread_sequence_captions3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / sequence_id / maxLength
        Added value: +512
      • addedInput schema / properties / sequence_id / minLength
        Added value: +1
    • Changedredo1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedremove_effect1 field changed
      • addedInput schema / properties / effect_index / minimum
        Added value: +0
    • Changedsave_project1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedsearch_project_context3 fields changed
      • addedInput schema / properties / max_results / maximum
        Added value: +50
      • addedInput schema / properties / max_results / minimum
        Added value: +1
      • changedInput schema / properties / max_results / type
        Previous value: -"number"New value: +"integer"
    • Addedsearch_workflow_recipes
    • Changedselect_disabled_clips1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedset_clip_properties_batch9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / items / items / additionalProperties
        Previous value: -{}New value: +false
      • addedInput schema / properties / items / items / properties / node_id / maxLength
        Added value: +512
      • addedInput schema / properties / items / items / properties / node_id / minLength
        Added value: +1
      • addedInput schema / properties / items / items / properties / opacity / maximum
        Added value: +100
      • addedInput schema / properties / items / items / properties / opacity / minimum
        Added value: +0
      • addedInput schema / properties / items / items / properties / scale / exclusiveMinimum
        Added value: +0
      • addedInput schema / properties / items / maxItems
        Added value: +16
      • addedInput schema / properties / items / minItems
        Added value: +1
    • Changedset_effect_property6 fields changed
      • changedInput schema / properties / value / description
        Previous value: -"Number or string value to set. Use the exact JSON string reported for a MOGRT text or graphic parameter."New value: +"Value to set. Use a number for scalar properties, an array of numbers for vector properties such as Motion > Position or Anchor Point ([x, y]), a boolean for checkbox properties, or the exact JSON string reported for a MOGRT text or graphic parameter."
      • addedInput schema / properties / value / items
        Added value: +{
        +  "type": "number"
        +}
      • addedInput schema / properties / value / maxItems
        Added value: +4
      • addedInput schema / properties / value / maxLength
        Added value: +8192
      • addedInput schema / properties / value / minItems
        Added value: +1
      • addedInput schema / properties / value / type
        Added value: +[
        +  "number",
        +  "string",
        +  "boolean",
        +  "array"
        +]
    • Changedset_metadata1 field changed
      • addedInput schema / properties / updated_fields / minItems
        Added value: +1
    • Changedset_sequence_frame_rate2 fields changed
      • addedInput schema / properties / frame_rate / maximum
        Added value: +240
      • addedInput schema / properties / frame_rate / minimum
        Added value: +1
    • Changedsetup_ducking9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / ducking_windows / items / additionalProperties
        Previous value: -{}New value: +false
      • addedInput schema / properties / ducking_windows / items / properties / end_seconds / minimum
        Added value: +0
      • addedInput schema / properties / ducking_windows / items / properties / start_seconds / minimum
        Added value: +0
      • addedInput schema / properties / ducking_windows / maxItems
        Added value: +32
      • addedInput schema / properties / ducking_windows / minItems
        Added value: +0
      • addedInput schema / properties / fade_seconds / exclusiveMinimum
        Added value: +0
      • addedInput schema / properties / node_id / maxLength
        Added value: +512
      • addedInput schema / properties / node_id / minLength
        Added value: +1
    • Changedsplit_clip2 fields changed
      • addedInput schema / properties / time_seconds / minimum
        Added value: +0
      • addedInput schema / properties / track_index / minimum
        Added value: +0
    • Changedstart_batch_encode1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedstop_playback1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Changedtrim_clip2 fields changed
      • addedInput schema / properties / new_in_seconds / minimum
        Added value: +0
      • addedInput schema / properties / new_out_seconds / minimum
        Added value: +0
    • Changedunlink_selection1 field changed
      • removedInput schema / properties
        Removed value: -{}
    • Addedvalidate_mogrt_brand_kit
    • Addedvalidate_platform_publish_package
    • Changedvalidate_project_for_export7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / output_path / maxLength
        Added value: +4096
      • addedInput schema / properties / output_path / minLength
        Added value: +1
      • addedInput schema / properties / preset_path / maxLength
        Added value: +4096
      • addedInput schema / properties / preset_path / minLength
        Added value: +1
      • addedInput schema / properties / sequence_id / maxLength
        Added value: +512
      • addedInput schema / properties / sequence_id / minLength
        Added value: +1
    • Addedverify_after_effects_connection
    • Addedverify_delivery_conformance
    • Addedverify_mogrt_artifact
  2. 5 tool updatesv1.14.5
    • Addeddetect_beats
    • Addeddetect_motion_peaks
    • Addedinspect_stabilizer_status
    • Addedplan_shot_match
    • Addedread_video_scopes
  3. 319 tool updatesv1.14.4
    • Changedadd_adjustment_layer2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_audio_keyframes2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_custom_metadata_field2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_keyframe2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_marker2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_marker_to_project_item2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_text_overlay2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_to_render_queue2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_to_timeline2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedadd_to_timeline_batch
    • Changedadd_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_tracks2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_transition2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_transition_to_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedadjust_audio_levels2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedanalyze_loudness
    • Addedanalyze_video_interlacing
    • Addedanalyze_video_qc
    • Changedapply_audio_effect2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedapply_edit_plan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedapply_effect2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedapply_lut2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedapply_spot_workflow_plan
    • Changedattach_custom_property2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedauto_reframe_sequence5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / motion_preset
        Added value: +{
        +  "description": "Premiere Auto Reframe motion preset (default: default)",
        +  "enum": [
        +    "slower",
        +    "default",
        +    "faster"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / new_name
        Added value: +{
        +  "description": "Name for the newly created auto-reframed sequence",
        +  "type": "string"
        +}
      • addedInput schema / properties / use_nested_sequences
        Added value: +{
        +  "description": "Whether Auto Reframe should honor nested sequences (default: false)",
        +  "type": "boolean"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedbatch_add_transitions2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedbatch_apply_effect2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedbatch_enable_disable2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedbatch_rename_clips3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / pattern / description
        Previous value: -"Name pattern. Use {n} for sequential number, {name} for original name (e.g., 'Scene_{n}', '{name}_v2')"New value: +"Name pattern. Use {n} for a sequential number, ## for a zero-padded two-digit sequence number, and {name} for the original name (e.g., 'Scene_##', '{name}_v2')"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcapture_frame2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcheck_offline_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclear_item_in_out2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclear_sequence_in_out2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclose_all_source_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclose_project2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclose_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedclose_source_monitor2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcolor_correct2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedcompare_cmx3600_edls
    • Changedconsolidate_and_transfer2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedconsolidate_duplicates2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcopy_effect_values2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcopy_effects_between_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_bars_and_tone5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / audio_sample_rate
        Added value: +{
        +  "description": "Audio sample rate in Hz (default: 48000)",
        +  "type": "number"
        +}
      • addedInput schema / properties / pixel_aspect_denominator
        Added value: +{
        +  "description": "Pixel aspect ratio denominator (default: 1)",
        +  "type": "number"
        +}
      • addedInput schema / properties / pixel_aspect_numerator
        Added value: +{
        +  "description": "Pixel aspect ratio numerator (default: 1)",
        +  "type": "number"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_caption_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_context_edit_plan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_editorial_plan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_project2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedcreate_project_backup
    • Changedcreate_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_sequence_from_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_sequence_from_preset2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_smart_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_subclip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedcreate_subsequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedcrop_clip
    • Changeddelete_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_marker2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_multiple_project_items2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_preview_files2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_project_item2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddelete_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddeselect_all_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changeddetach_proxy2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addeddetect_active_picture_bounds
    • Addeddetect_audio_transients
    • Addeddetect_scene_edits
    • Changeddetect_silence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addeddetect_source_scene_changes
    • Changedduplicate_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedduplicate_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedenable_disable_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedencode_file2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedencode_project_item2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_aaf2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_as_fcp_xml2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_as_project2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_frame2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_omf3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / include_pan
        Added value: +{
        +  "description": "Include pan information in the OMF (default: false)",
        +  "type": "boolean"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedexport_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedexport_sequence_clip_review_frames
    • Addedexport_sequence_marker_review_frames
    • Addedexport_sequence_review_frames
    • Changedextract_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedfind_items_by_media_path2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedfind_project_item_by_name2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedfreeze_frame2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedgenerate_media_contact_sheet
    • Changedget_active_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_advanced_feature_support2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_all_project_paths2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_av_feature_support2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_bin_contents5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Maximum direct children to return. Pair with recursive false for the smallest bounded response."
        +}
      • addedInput schema / properties / max_depth
        Added value: +{
        +  "description": "Maximum nested-bin depth when recursive is true. Defaults to the legacy unlimited recursion."
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "description": "Zero-based offset into the bin's direct children. Pair with limit for a bounded page."
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_bridge_telemetry2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_capabilities5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / tool_limit
        Added value: +{
        +  "description": "Maximum tool catalog entries to return. Omit with tool_offset to preserve the complete legacy response."
        +}
      • addedInput schema / properties / tool_names
        Added value: +{
        +  "description": "Optional exact tool-name allowlist. Returns only those catalog entries while retaining the overall capability summary.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / tool_offset
        Added value: +{
        +  "description": "Zero-based offset into the filtered tool catalog. Pair with tool_limit for an explicitly sized page."
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_adjustment_layer2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_at_playhead2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_at_position2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_links2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_markers2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_properties2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_speed2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_clip_volume2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_color_label2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_color_space2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_duplicate_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_effect_properties2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_encoder_presets2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_export_file_extension2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_footage_interpretation2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_full_clip_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_full_project_overview6 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / include_bin_tree
        Added value: +{
        +  "description": "Include the recursive bin tree (default: true). Set false to return project statistics and sequences only.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / max_bin_depth
        Added value: +{
        +  "description": "Maximum recursive bin-tree depth when include_bin_tree is true (default: 10)."
        +}
      • addedInput schema / properties / sequence_limit
        Added value: +{
        +  "description": "Maximum sequences to include. Omit to preserve the complete legacy response."
        +}
      • addedInput schema / properties / sequence_offset
        Added value: +{
        +  "description": "Zero-based offset into project sequences."
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_full_sequence_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_graphics_white_luminance2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_insertion_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_item_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_keyframes2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_linked_items2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_metadata4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / include_project_metadata
        Added value: +{
        +  "description": "Include the potentially large Project Metadata XML payload (default: true). Set false for a bounded identity/path response.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / include_xmp_metadata
        Added value: +{
        +  "description": "Include the potentially large XMP XML payload (default: true). Set false for a bounded identity/path response.",
        +  "type": "boolean"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_mogrt_component2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_next_edit_point2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_offline_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_playhead_position2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_premiere_state2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_project_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_project_item_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_project_panel_metadata2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_project_scratch_disks2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_qe_clip_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_render_queue_status2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_selected_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_sequence_count2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_sequence_in_out_points2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_sequence_markers_by_type2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_sequence_settings2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_sequence_structure2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_source_monitor_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_source_monitor_position2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_target_tracks2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_timeline_gaps2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_timeline_summary2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_total_clip_count2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_track_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_unused_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_used_media_report2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_value_at_time2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_version_info2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_work_area2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_workspaces2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedget_xmp_metadata2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedhas_proxy2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_ae_comps2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedimport_edl
    • Changedimport_fcp_xml2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_folder2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_image_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_mogrt2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_mogrt_from_library4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / library_name
        Added value: +{
        +  "description": "Name of the Adobe Creative Cloud Library that contains the MOGRT",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "mogrt_name"
        -]New value: +[
        +  "library_name",
        +  "mogrt_name"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedimport_sequences4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / sequence_ids / description
        Previous value: -"Array of sequence IDs to import from the source project. If omitted, all sequences are imported."New value: +"Non-empty array of sequence IDs to import from the source project."
      • changedInput schema / required
        Previous value: -[
        -  "project_path"
        -]New value: +[
        +  "project_path",
        +  "sequence_ids"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedinsert_from_source2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedinspect_cmx3600_edl
    • Changedinspect_dom_object2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedinspect_edit_readiness
    • Addedinspect_fcpxml_interchange
    • Addedinspect_media_streams
    • Changedinspect_project_item_av_metadata2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedinspect_project_recovery2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedinspect_sequence_av_settings2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedinspect_sequence_review_report
    • Changedinvert_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedis_work_area_enabled2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlift_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlink_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_available_audio_effects2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_available_audio_transitions2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_available_effects2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_available_transitions2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_clip_effects2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_markers2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_project_items2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_sequence_tracks2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_sequences2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedlock_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmanage_project_context2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmanage_proxies2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmatch_frame2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmove_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmove_clip_to_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmove_item_to_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmove_items_to_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmove_playhead_to_edit2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmultiple_undo2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedmute_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changednest_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addednormalize_loudness_file
    • Changedopen_in_source2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedopen_project2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedoverwrite_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedoverwrite_from_source2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedping2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedplan_silence_review_markers
    • Changedplay_source_monitor2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedplay_timeline2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedpreview_brand_spot
    • Changedpreview_edit_plan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedpreview_editorial_plan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedpreview_motion_graphics_demo
    • Addedpreview_product_spot
    • Changedpreview_project_intake2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrazor_all_tracks2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedread_sequence_captions
    • Changedredo2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrefresh_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrelink_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_all_effects2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_effect2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_effect_by_name2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_from_timeline2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_keyframe2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_keyframe_range2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedremove_selected_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrename_bin2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrename_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrename_project_item2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedrename_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedreplace_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedreplace_clip_media2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedreverse_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedripple_delete2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedroll_edit2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedsave_project2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedsave_project_as2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedscene_edit_detection5 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / action
        Added value: +{
        +  "description": "Create markers (default) or apply cuts to the selected clips",
        +  "enum": [
        +    "CreateMarkers",
        +    "ApplyCuts"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / apply_cuts_to_linked_audio
        Added value: +{
        +  "description": "When applying cuts, also cut linked audio (default: false)",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / sensitivity
        Added value: +{
        +  "description": "Scene-detection sensitivity (default: MediumSensitivity)",
        +  "enum": [
        +    "LowSensitivity",
        +    "MediumSensitivity",
        +    "HighSensitivity"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_project_context2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_project_items2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_all_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_clips_by_color2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_clips_by_name2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_clips_in_range2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_disabled_clips2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedselect_item2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_active_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_all_tracks_targeted2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_anti_alias_quality2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_blend_mode2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_anchor_point2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_opacity2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_pan2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_position2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_properties2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedset_clip_properties_batch
    • Changedset_clip_rotation2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_scale2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_speed_qe2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_start_time2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clip_volume2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_clips_volume2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_color_label2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_color_value2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_effect_property2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_footage_interpretation2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_frame_blend2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_graphics_white_luminance2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_item_in_out2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_keyframe_interpolation2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_metadata7 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / field_name / description
        Previous value: -"Metadata field name (e.g., 'Column.Intrinsic.Description')"New value: +"Legacy partial-write argument. It is no longer executed because it cannot form a valid Project Metadata XML payload; use metadata_xml and updated_fields instead."
      • addedInput schema / properties / metadata_xml
        Added value: +{
        +  "description": "Complete Project Metadata XML previously read from get_metadata, with the intended field values applied.",
        +  "type": "string"
        +}
      • addedInput schema / properties / updated_fields
        Added value: +{
        +  "description": "Exact Project Metadata field paths changed in metadata_xml (for example, Column.Intrinsic.Description).",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • changedInput schema / properties / value / description
        Previous value: -"Value to set"New value: +"Legacy partial-write argument. It is no longer executed; read projectMetadata first, update the complete XML, then supply metadata_xml and updated_fields."
      • changedInput schema / required
        Previous value: -[
        -  "item_id",
        -  "field_name",
        -  "value"
        -]New value: +[
        +  "item_id"
        +]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_offline3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / properties / offline
        Added value: +{
        +  "description": "true to take media offline (default); false to refresh an existing offline item",
        +  "type": "boolean"
        +}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_override_frame_rate2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_override_pixel_aspect_ratio2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_playhead_position2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_poster_frame2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_project_item_audio_channel_mapping2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_project_panel_metadata2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_project_scratch_disk2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_scale_to_frame_size2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_scale_width_height2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_scratch_disk_path2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_audio_settings2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_display_format2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_field_type2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_frame_rate2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_in_out_points2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_pixel_aspect_ratio4 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / ratio / description
        Previous value: -"Pixel aspect ratio (1.0 for square pixels, 1.4222 for 16:9 DV, etc.)"New value: +"Pixel aspect ratio string (for example '1.0' for square pixels or '1.4222' for 16:9 DV)."
      • changedInput schema / properties / ratio / type
        Previous value: -"number"New value: +"string"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_resolution2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_sequence_settings2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_source_in_out2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_start_time2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_target_track2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_time_interpolation2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_transcode_on_ingest2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_uniform_scale2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_work_area2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_workspace2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_xmp_metadata3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedInput schema / properties / xmp_xml / description
        Previous value: -"Complete XMP metadata XML string to set"New value: +"Well-formed XMP XML containing only the fields to add or replace"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedset_zero_point2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedsetup_ducking
    • Changedslide_edit2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedslip_edit2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedspeed_change2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedsplit_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedstabilize_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedstart_batch_encode2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedstop_playback2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedtoggle_track_visibility2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedtrim_clip2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedundo2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedunlink_selection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedunnest_sequence2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Changedupdate_marker2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedvalidate_cmx3600_edl
    • Changedvalidate_export_preset2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedvalidate_project_for_export
    • Changedverify_delivery_file2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
    • Addedverify_fcpxml_media_references
    • Changedverify_premiere_connection2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "data": {
        +      "description": "Tool-specific result data when ok is true."
        +    },
        +    "error": {
        +      "description": "Failure detail when ok is false.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "description": "Whether the tool completed successfully.",
        +      "type": "boolean"
        +    },
        +    "tool": {
        +      "description": "The registered MCP tool name.",
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "tool"
        +  ],
        +  "type": "object"
        +}
  4. 4 tool updatesv1.13.0
    • Addedcreate_editorial_plan
    • Addedpreview_editorial_plan
    • Addedpreview_project_intake
    • Changedset_effect_property2 fields changed
      • changedInput schema / properties / value / description
        Previous value: -"Value to set"New value: +"Number or string value to set. Use the exact JSON string reported for a MOGRT text or graphic parameter."
      • removedInput schema / properties / value / type
        Removed value: -"number"
  5. 1 tool updatev1.11.5
    • Changedset_clip_properties1 field changed
      • changedInput schema / properties / speed / description
        Previous value: -"Playback speed multiplier (1.0 = normal, 2.0 = double speed)"New value: +"Unsupported by Premiere's public scripting APIs. Supplying this returns an actionable error without mutating the clip."
  6. 7 tool updatesv1.11.3
    • Addedcreate_context_edit_plan
    • Addedget_clip_volume
    • Addedmanage_project_context
    • Addedsearch_project_context
    • Addedset_clips_volume
    • Changedsplit_clip2 fields changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time position in seconds where to split"New value: +"Timeline time in seconds where clips on the selected track will split"
      • changedInput schema / properties / track_index / description
        Previous value: -"Track index (0-based)"New value: +"Track index (0-based, default: 0)"
    • Changedtrim_clip3 fields changed
      • addedInput schema / properties / keyframe_policy
        Added value: +{
        +  "description": "How to handle effect keyframes beyond the trimmed visible range: reject (default) leaves the timeline unchanged; preserve explicitly keeps them and reports their count.",
        +  "enum": [
        +    "reject",
        +    "preserve"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / new_in_seconds / description
        Previous value: -"New in-point in seconds (relative to clip's source media)"New value: +"New source in-point in seconds (relative to the clip's source media). Specify exactly one edit point."
      • changedInput schema / properties / new_out_seconds / description
        Previous value: -"New out-point in seconds (relative to clip's source media)"New value: +"New source out-point in seconds (relative to the clip's source media). Specify exactly one edit point."
  7. 1 tool updatev1.9.2
    • Addedverify_premiere_connection
  8. 3 tool updatesv1.8.0
    • Addeddetect_silence
    • Removedevaluate_expression
    • Removedexecute_extendscript
  9. 236 tool updatesv1.4.0
    • Changedadd_adjustment_layer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_audio_keyframes2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / keyframes / items
        Added value: +{
        +  "additionalProperties": {},
        +  "properties": {
        +    "level_db": {
        +      "description": "Audio level in dB",
        +      "type": "number"
        +    },
        +    "time_seconds": {
        +      "description": "Time in seconds relative to clip start",
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "time_seconds",
        +    "level_db"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_custom_metadata_field1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_keyframe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_marker_to_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_text_overlay2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedInput schema / properties / caption_format / enum
        Previous value: -[
        -  "subtitle",
        -  "608",
        -  "708",
        -  "teletext"
        -]New value: +[
        +  "608",
        +  "708",
        +  "subtitle",
        +  "teletext"
        +]
    • Changedadd_to_render_queue1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_to_timeline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_tracks1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_transition1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_transition_to_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadjust_audio_levels1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedapply_audio_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedapply_edit_plan
    • Changedapply_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedapply_lut1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedattach_custom_property1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedauto_reframe_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_add_transitions1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_apply_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_enable_disable1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_rename_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcapture_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedclear_item_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedclear_sequence_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedclose_project
    • Changedclose_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcolor_correct1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedconsolidate_and_transfer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedconsolidate_duplicates
    • Changedcopy_effect_values1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcopy_effects_between_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_bars_and_tone1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_caption_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedcreate_project
    • Changedcreate_sequence2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedInput schema / properties / preset_path / description
        Previous value: -"Optional path to a sequence preset file (.sqpreset). Uses default if omitted."New value: +"Optional path to a sequence preset file (.sqpreset). If omitted, a default preset is discovered from the Premiere installation (override with PREMIERE_DEFAULT_SEQUENCE_PRESET)."
    • Changedcreate_sequence_from_clips2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedcreate_sequence_from_preset1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_smart_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_subclip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_subsequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_multiple_project_items2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changeddelete_preview_files1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddetach_proxy1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedduplicate_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedduplicate_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedenable_disable_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedencode_file1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedencode_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedevaluate_expression1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexecute_extendscript1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_aaf1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_as_fcp_xml1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_as_project1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_omf1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedfind_items_by_media_path1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedfind_project_item_by_name
    • Changedfreeze_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_active_sequence
    • Addedget_advanced_feature_support
    • Addedget_av_feature_support
    • Changedget_bin_contents1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_bridge_telemetry
    • Addedget_capabilities
    • Changedget_clip_adjustment_layer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_at_playhead1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_clip_at_position
    • Changedget_clip_links1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_markers1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_speed1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_color_label1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_color_space1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_effect_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_encoder_presets1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_export_file_extension1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_footage_interpretation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_full_clip_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_full_sequence_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_item_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_keyframes1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_linked_items1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_mogrt_component1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_next_edit_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_project_info
    • Changedget_project_item_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_qe_clip_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_selected_clips
    • Changedget_sequence_markers_by_type1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_sequence_settings
    • Changedget_sequence_structure1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_timeline_gaps1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_timeline_summary1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_track_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_used_media_report1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_value_at_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_xmp_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedhas_proxy1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedimport_ae_comps
    • Changedimport_fcp_xml1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_folder1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_image_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_media2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / file_paths / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedimport_mogrt1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_mogrt_from_library1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_sequences2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / sequence_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedinsert_from_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedinspect_dom_object1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedinspect_project_item_av_metadata
    • Addedinspect_project_recovery
    • Addedinspect_sequence_av_settings
    • Changedlist_clip_effects1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedlist_markers1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedlist_project_items
    • Addedlist_sequence_tracks
    • Addedlist_sequences
    • Changedlock_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmanage_proxies1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmatch_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_clip_to_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_item_to_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_items_to_bin2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedmove_playhead_to_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmultiple_undo1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmute_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changednest_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedopen_in_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedopen_project
    • Changedoverwrite_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedoverwrite_from_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedplay_source_monitor1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedpreview_edit_plan
    • Changedrazor_all_tracks1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedrefresh_media
    • Changedrelink_media1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_all_effects1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_effect_by_name1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_from_timeline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_keyframe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_keyframe_range1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_selected_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreplace_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreplace_clip_media1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreverse_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedripple_delete1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedroll_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedsave_project
    • Addedsave_project_as
    • Changedsearch_project_items1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_all_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_by_color1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_by_name1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_in_range1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_active_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_all_tracks_targeted1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_anti_alias_quality1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_blend_mode1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_anchor_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_opacity1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_pan1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_position1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_rotation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_scale1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_selection1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_speed_qe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_start_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_volume1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_color_label1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_color_value1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_effect_property1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_footage_interpretation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_frame_blend1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_graphics_white_luminance1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_item_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_keyframe_interpolation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_offline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_override_frame_rate1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_override_pixel_aspect_ratio1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_playhead_position1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_poster_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedset_project_item_audio_channel_mapping
    • Changedset_project_panel_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_project_scratch_disk1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scale_to_frame_size1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scale_width_height1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scratch_disk_path1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_audio_settings1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_display_format1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_field_type1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_frame_rate1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_in_out_points1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_pixel_aspect_ratio1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_resolution1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_settings1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_source_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_start_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_target_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_time_interpolation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_transcode_on_ingest1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_uniform_scale1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_work_area1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_workspace1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_xmp_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_zero_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedslide_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedslip_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedspeed_change1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedsplit_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedstabilize_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedtoggle_track_visibility1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedtrim_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedundo
    • Changedunnest_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedupdate_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedvalidate_export_preset
    • Addedverify_delivery_file
  10. 32 tool updatesv1.1.5
    • Addedadd_custom_metadata_field
    • Addedapply_effect
    • Addedcheck_offline_media
    • Addedcreate_bars_and_tone
    • Addedcreate_bin
    • Addedcreate_sequence
    • Addeddelete_bin
    • Addeddetach_proxy
    • Addedfind_items_by_media_path
    • Removedget_clip_at_position
    • Addedget_insertion_bin
    • Addedget_item_info
    • Addedget_project_panel_metadata
    • Addedhas_proxy
    • Addedimport_fcp_xml
    • Addedimport_media
    • Addedmove_item_to_bin
    • Addedrelink_media
    • Addedrename_bin
    • Addedselect_item
    • Addedset_active_sequence
    • Addedset_graphics_white_luminance
    • Addedset_override_frame_rate
    • Addedset_override_pixel_aspect_ratio
    • Addedset_project_panel_metadata
    • Addedset_scale_to_frame_size
    • Addedset_scratch_disk_path
    • Addedset_start_time
    • Addedset_transcode_on_ingest
    • Addedslide_edit
    • Addedslip_edit
    • Addedstart_batch_encode
  11. 20 tool updatesv1.1.5
    • Addedapply_audio_effect
    • Removedapply_effect
    • Removedcreate_sequence
    • Removeddelete_bin
    • Removeddetach_proxy
    • Addedget_clip_at_position
    • Addedget_clip_properties
    • Addedget_graphics_white_luminance
    • Removedget_item_info
    • Removedget_sequence_settings
    • Addedimport_folder
    • Addedimport_sequences
    • Removedrename_bin
    • Removedselect_item
    • Addedset_offline
    • Removedset_project_panel_metadata
    • Addedset_sequence_in_out_points
    • Removedset_start_time
    • Removedslide_edit
    • Removedslip_edit
  12. 47 tool updatesv1.1.5
    • Removedadd_custom_metadata_field
    • Changedadd_text_overlay3 fields changed
      • addedInput schema / properties / caption_format
        Added value: +{
        +  "description": "Caption format (default: subtitle)",
        +  "enum": [
        +    "subtitle",
        +    "608",
        +    "708",
        +    "teletext"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / properties / font_size
        Removed value: -{
        -  "description": "Font size (default: 60)",
        -  "type": "number"
        -}
      • removedInput schema / properties / track_index
        Removed value: -{
        -  "description": "Video track index to place the text on (default: topmost track)",
        -  "type": "number"
        -}
    • Removedapply_audio_effect
    • Removedcheck_offline_media
    • Removedclose_project
    • Removedconsolidate_duplicates
    • Removedcreate_bars_and_tone
    • Removedcreate_bin
    • Removedcreate_project
    • Removedfind_items_by_media_path
    • Removedfind_project_item_by_name
    • Removedget_active_sequence
    • Removedget_clip_at_position
    • Removedget_clip_properties
    • Changedget_encoder_presets1 field changed
      • changedInput schema / properties / format / description
        Previous value: -"Format name to list presets for (e.g., 'H.264', 'QuickTime', 'MPEG2'). Leave empty to list formats."New value: +"Filter to presets whose name or format bucket matches this (e.g. 'H.264', 'ProRes', 'Proxy'). Omit to list all."
    • Removedget_graphics_white_luminance
    • Removedget_insertion_bin
    • Removedget_project_info
    • Removedget_project_panel_metadata
    • Removedget_selected_clips
    • Removedhas_proxy
    • Removedimport_ae_comps
    • Removedimport_fcp_xml
    • Removedimport_folder
    • Removedimport_media
    • Removedimport_sequences
    • Removedlist_project_items
    • Removedlist_sequence_tracks
    • Removedlist_sequences
    • Changedmanage_proxies3 fields changed
      • addedInput schema / properties / output_path
        Added value: +{
        +  "description": "Full output path for the proxy to be rendered to (required for 'create')",
        +  "type": "string"
        +}
      • addedInput schema / properties / preset_path
        Added value: +{
        +  "description": "Path to a proxy ingest preset (.epr) for 'create'. If omitted, the first preset found in Premiere's IngestPresets/Proxy folder is used.",
        +  "type": "string"
        +}
      • changedInput schema / properties / proxy_path / description
        Previous value: -"Path to proxy file (required for 'attach' action)"New value: +"Path to an existing proxy file (required for 'attach')"
    • Removedmove_item_to_bin
    • Removedopen_project
    • Removedrefresh_media
    • Removedrelink_media
    • Removedsave_project
    • Removedsave_project_as
    • Removedset_active_sequence
    • Removedset_graphics_white_luminance
    • Removedset_offline
    • Removedset_override_frame_rate
    • Removedset_override_pixel_aspect_ratio
    • Removedset_scale_to_frame_size
    • Removedset_scratch_disk_path
    • Removedset_sequence_in_out_points
    • Removedset_transcode_on_ingest
    • Removedstart_batch_encode
    • Removedundo
  13. 266 tool updatesv1.1.1
    • First observedadd_adjustment_layer
    • First observedadd_audio_keyframes
    • First observedadd_custom_metadata_field
    • First observedadd_keyframe
    • First observedadd_marker
    • First observedadd_marker_to_project_item
    • First observedadd_text_overlay
    • First observedadd_to_render_queue
    • First observedadd_to_timeline
    • First observedadd_track
    • First observedadd_tracks
    • First observedadd_transition
    • First observedadd_transition_to_clip
    • First observedadjust_audio_levels
    • First observedapply_audio_effect
    • First observedapply_effect
    • First observedapply_lut
    • First observedattach_custom_property
    • First observedauto_reframe_sequence
    • First observedbatch_add_transitions
    • First observedbatch_apply_effect
    • First observedbatch_enable_disable
    • First observedbatch_rename_clips
    • First observedcapture_frame
    • First observedcheck_offline_media
    • First observedclear_item_in_out
    • First observedclear_sequence_in_out
    • First observedclose_all_source_clips
    • First observedclose_project
    • First observedclose_sequence
    • First observedclose_source_monitor
    • First observedcolor_correct
    • First observedconsolidate_and_transfer
    • First observedconsolidate_duplicates
    • First observedcopy_effect_values
    • First observedcopy_effects_between_clips
    • First observedcreate_bars_and_tone
    • First observedcreate_bin
    • First observedcreate_caption_track
    • First observedcreate_project
    • First observedcreate_sequence
    • First observedcreate_sequence_from_clips
    • First observedcreate_sequence_from_preset
    • First observedcreate_smart_bin
    • First observedcreate_subclip
    • First observedcreate_subsequence
    • First observeddelete_bin
    • First observeddelete_marker
    • First observeddelete_multiple_project_items
    • First observeddelete_preview_files
    • First observeddelete_project_item
    • First observeddelete_sequence
    • First observeddelete_track
    • First observeddeselect_all_clips
    • First observeddetach_proxy
    • First observedduplicate_clip
    • First observedduplicate_sequence
    • First observedenable_disable_clip
    • First observedencode_file
    • First observedencode_project_item
    • First observedevaluate_expression
    • First observedexecute_extendscript
    • First observedexport_aaf
    • First observedexport_as_fcp_xml
    • First observedexport_as_project
    • First observedexport_frame
    • First observedexport_omf
    • First observedexport_sequence
    • First observedextract_selection
    • First observedfind_items_by_media_path
    • First observedfind_project_item_by_name
    • First observedfreeze_frame
    • First observedget_active_sequence
    • First observedget_all_project_paths
    • First observedget_bin_contents
    • First observedget_clip_adjustment_layer
    • First observedget_clip_at_playhead
    • First observedget_clip_at_position
    • First observedget_clip_links
    • First observedget_clip_markers
    • First observedget_clip_properties
    • First observedget_clip_speed
    • First observedget_color_label
    • First observedget_color_space
    • First observedget_duplicate_media
    • First observedget_effect_properties
    • First observedget_encoder_presets
    • First observedget_export_file_extension
    • First observedget_footage_interpretation
    • First observedget_full_clip_info
    • First observedget_full_project_overview
    • First observedget_full_sequence_info
    • First observedget_graphics_white_luminance
    • First observedget_insertion_bin
    • First observedget_item_info
    • First observedget_keyframes
    • First observedget_linked_items
    • First observedget_metadata
    • First observedget_mogrt_component
    • First observedget_next_edit_point
    • First observedget_offline_media
    • First observedget_playhead_position
    • First observedget_premiere_state
    • First observedget_project_info
    • First observedget_project_item_info
    • First observedget_project_panel_metadata
    • First observedget_project_scratch_disks
    • First observedget_qe_clip_info
    • First observedget_render_queue_status
    • First observedget_selected_clips
    • First observedget_sequence_count
    • First observedget_sequence_in_out_points
    • First observedget_sequence_markers_by_type
    • First observedget_sequence_settings
    • First observedget_sequence_structure
    • First observedget_source_monitor_info
    • First observedget_source_monitor_position
    • First observedget_target_tracks
    • First observedget_timeline_gaps
    • First observedget_timeline_summary
    • First observedget_total_clip_count
    • First observedget_track_info
    • First observedget_unused_media
    • First observedget_used_media_report
    • First observedget_value_at_time
    • First observedget_version_info
    • First observedget_work_area
    • First observedget_workspaces
    • First observedget_xmp_metadata
    • First observedhas_proxy
    • First observedimport_ae_comps
    • First observedimport_fcp_xml
    • First observedimport_folder
    • First observedimport_image_sequence
    • First observedimport_media
    • First observedimport_mogrt
    • First observedimport_mogrt_from_library
    • First observedimport_sequences
    • First observedinsert_from_source
    • First observedinspect_dom_object
    • First observedinvert_selection
    • First observedis_work_area_enabled
    • First observedlift_selection
    • First observedlink_selection
    • First observedlist_available_audio_effects
    • First observedlist_available_audio_transitions
    • First observedlist_available_effects
    • First observedlist_available_transitions
    • First observedlist_clip_effects
    • First observedlist_markers
    • First observedlist_project_items
    • First observedlist_sequence_tracks
    • First observedlist_sequences
    • First observedlock_track
    • First observedmanage_proxies
    • First observedmatch_frame
    • First observedmove_clip
    • First observedmove_clip_to_track
    • First observedmove_item_to_bin
    • First observedmove_items_to_bin
    • First observedmove_playhead_to_edit
    • First observedmultiple_undo
    • First observedmute_track
    • First observednest_clips
    • First observedopen_in_source
    • First observedopen_project
    • First observedoverwrite_clip
    • First observedoverwrite_from_source
    • First observedping
    • First observedplay_source_monitor
    • First observedplay_timeline
    • First observedrazor_all_tracks
    • First observedredo
    • First observedrefresh_media
    • First observedrelink_media
    • First observedremove_all_effects
    • First observedremove_effect
    • First observedremove_effect_by_name
    • First observedremove_from_timeline
    • First observedremove_keyframe
    • First observedremove_keyframe_range
    • First observedremove_selected_clips
    • First observedrename_bin
    • First observedrename_clip
    • First observedrename_project_item
    • First observedrename_track
    • First observedreplace_clip
    • First observedreplace_clip_media
    • First observedreverse_clip
    • First observedripple_delete
    • First observedroll_edit
    • First observedsave_project
    • First observedsave_project_as
    • First observedscene_edit_detection
    • First observedsearch_project_items
    • First observedselect_all_clips
    • First observedselect_clips_by_color
    • First observedselect_clips_by_name
    • First observedselect_clips_in_range
    • First observedselect_disabled_clips
    • First observedselect_item
    • First observedset_active_sequence
    • First observedset_all_tracks_targeted
    • First observedset_anti_alias_quality
    • First observedset_blend_mode
    • First observedset_clip_anchor_point
    • First observedset_clip_opacity
    • First observedset_clip_pan
    • First observedset_clip_position
    • First observedset_clip_properties
    • First observedset_clip_rotation
    • First observedset_clip_scale
    • First observedset_clip_selection
    • First observedset_clip_speed_qe
    • First observedset_clip_start_time
    • First observedset_clip_volume
    • First observedset_color_label
    • First observedset_color_value
    • First observedset_effect_property
    • First observedset_footage_interpretation
    • First observedset_frame_blend
    • First observedset_graphics_white_luminance
    • First observedset_item_in_out
    • First observedset_keyframe_interpolation
    • First observedset_metadata
    • First observedset_offline
    • First observedset_override_frame_rate
    • First observedset_override_pixel_aspect_ratio
    • First observedset_playhead_position
    • First observedset_poster_frame
    • First observedset_project_panel_metadata
    • First observedset_project_scratch_disk
    • First observedset_scale_to_frame_size
    • First observedset_scale_width_height
    • First observedset_scratch_disk_path
    • First observedset_sequence_audio_settings
    • First observedset_sequence_display_format
    • First observedset_sequence_field_type
    • First observedset_sequence_frame_rate
    • First observedset_sequence_in_out_points
    • First observedset_sequence_pixel_aspect_ratio
    • First observedset_sequence_resolution
    • First observedset_sequence_settings
    • First observedset_source_in_out
    • First observedset_start_time
    • First observedset_target_track
    • First observedset_time_interpolation
    • First observedset_transcode_on_ingest
    • First observedset_uniform_scale
    • First observedset_work_area
    • First observedset_workspace
    • First observedset_xmp_metadata
    • First observedset_zero_point
    • First observedslide_edit
    • First observedslip_edit
    • First observedspeed_change
    • First observedsplit_clip
    • First observedstabilize_clip
    • First observedstart_batch_encode
    • First observedstop_playback
    • First observedtoggle_track_visibility
    • First observedtrim_clip
    • First observedundo
    • First observedunlink_selection
    • First observedunnest_sequence
    • First observedupdate_marker

TDQS

B3.1/5.0

Scored across 367 tools

Disambiguation1/5

With 367 tools there is massive overlap: get_active_sequence, get_sequence_structure, get_full_sequence_info, inspect_sequence_review_report, get_timeline_summary and inspect_edit_readiness all describe reading sequence state, and add_track vs add_tracks, add_transition vs add_transition_to_clip vs batch_add_transitions, remove_effect vs remove_effect_by_name vs remove_all_effects blur together. An agent cannot reliably pick the right tool among these near-duplicates, and many stubs (undo, redo, multiple_undo, speed_change, reverse_clip, nest_clips, replace_clip_media) add further confusion.

Naming Consistency4/5

The overwhelming majority of tools use a consistent snake_case verb_noun pattern (get_clip_properties, add_marker, create_sequence, export_sequence). A few outliers (speed_change, match_frame, freeze_frame, ping, undo, redo) deviate but are minor and still readable.

Tool Count1/5

367 tools is an extreme mismatch for any coherent server scope, far exceeding the 50+ threshold. The set is heavily padded with unavailable stubs, preview/apply token pairs, batch vs single variants, and numerous overlapping inspection/analysis tools that do not each earn a distinct place.

Completeness4/5

Domain coverage is genuinely broad: project/item/sequence CRUD, timeline editing, effects, keyframes, markers, audio, export, proxies, MOGRT/AE handoff, and extensive analysis/planning surfaces are all present, so few workflows dead-end. The main shortfall is that many lifecycle operations are declared unavailable (undo/redo, speed change, nest, replace media), leaving some gaps despite the volume.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to control video editing software (剪映/CapCut and Adobe Premiere Pro) through a unified interface, supporting operations like material import, clip splitting, subtitle addition, effects, transitions, audio mixing, and export.
    10
    MIT