Skip to main content
Glama
leancoderkavy

Premiere Pro MCP Server

MCP for Adobe Premiere Pro

MCP Toplist

Adobe Premiere Pro MCP server for reviewable, local-first workflows with compatible AI assistants.

Premiere Pro automation for Claude, Cursor, Codex, and other MCP clients: AI-assisted editing, project organization, and export checks through Adobe's documented UXP and CEP/ExtendScript APIs.

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

Website · Recorded demo · Compare servers · Setup guides · Search tools · Troubleshooting · Release facts

Development source: 386 core tools across 57 modules, 4 resources, and 19 guided workflows. A connected UXP host adds 96 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 Website 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 386 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 96 documented, capability-gated tools without replacing the production CEP bridge.

Latest release: 1.19.0

The published v1.19.0 npm artifact contains 386 core tools, 384 in its default profile, and 480 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. Insert edits ripple QE sync-locked tracks instead of silently desyncing neighbours.

  • 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 website gained 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.19.0 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

Install the published package (verify the name)

npm i -g premiere-pro-mcp@1.19.0

This repository publishes only premiere-pro-mcp. A differently named package (adobe-premiere-pro-mcp) may also declare a premiere-pro-mcp executable. Before configuring a client, confirm:

Check

Expected

Package name

premiere-pro-mcp (not adobe-premiere-pro-mcp)

Version

1.19.0

Homepage / repo

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

npm list -g premiere-pro-mcp
premiere-pro-mcp --version
npm view premiere-pro-mcp homepage repository.url

Then continue with --install-cep, --doctor, and the read-only verify_premiere_connection prompt.

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.

  • For trim_clip and slip_edit, install FFmpeg with ffprobe on PATH (brew install ffmpeg on macOS or winget install Gyan.FFmpeg on Windows). These source-range edits are unavailable without ffprobe and accessible media with readable timestamp clocks: they refuse before mutation when physical source bounds cannot be verified. FFmpeg also provides the optional detect_silence dependency. 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"]
    }
  }
}

After the server is enabled, select Claude Fable 5.1 in Cursor when you want a longer-horizon session. See Claude Fable 5.1 workflows.

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.19.0 --install-cep

Restart Premiere Pro and start a new Codex session after installation. The plugin launches premiere-pro-mcp@1.19.0 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.

GPT-6 Sol and GPT-6 Luna

Use the Codex plugin with codex --model gpt-6-sol for multi-step agentic edits, or codex --model gpt-6-luna for focused, high-volume inspection passes, when your account has access. Both call the same MCP tools under the same authority, preview, and readback rules. See GPT-6 Sol and Luna workflows.

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.19.0 --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.

Claude Fable 5.1

Use Cursor, Claude Desktop, or Claude Code with Claude Fable 5.1 (claude-fable-5-1) when your account has access. Model selection belongs to the client; this server does not run an Anthropic model. Fable 5.1 is optional: other Claude models can call the same MCP tools. If Cursor Privacy Mode or an Enterprise plan is enabled, an admin must approve Anthropic's Fable data-retention policy before the model is available.

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. Keep Premiere mutations serialized even in a long Fable 5.1 session. Image review of returned frames is not playback or delivery proof.

See Claude Fable 5.1 workflows for connection order, privacy boundaries, evidence retrieval, Cursor's Opus fallback, and the division between MCP and client capabilities. The public walkthrough is How to Use Claude Fable 5.1 with MCP for Adobe Premiere Pro.

Claude Opus 5.5

Use Claude Code, Claude Desktop, or Cursor with Claude Opus 5.5 (claude-opus-5-5) when your account has access. Model selection belongs to the client; this server does not run an Anthropic model. Opus 5.5 is optional. Keep Premiere mutations serialized and preview before apply. See Claude Opus 5.5 workflows.

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

Generate that secret yourself and enter the same value in the UXP panel (Window → UXP Plugins, not the CEP Connector). CEP-only setups do not use a token. 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. After a folder is granted, path-based commands resolve each native path through that folder's Entry tree and compare the host nativePath against the approved root, so symlink or junction targets outside the workspace still fail closed. If the host Entry cannot be walked and no resolver is supplied, those commands stay unsupported and the CEP fallback remains the path-based compatibility route.

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 (386 core total; 384 under the default profile; 480 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 96 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 (11 + 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's documented ExtendScript and UXP APIs have no setter for a timeline clip's speed or direction; use set_clip_duration for timeline length

split_clip / trim_clip / move_clip

Basic edits; trim verifies source points and visible timeline edges

set_clip_duration

Set a clip's timeline duration or absolute end (extends still images); refuses next-clip overlaps and restores the original end if Premiere clamps

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 (documented UXP through 26.3 has only getSpeed / isSpeedReversed). reverse_clip, speed_change, set_clip_speed_qe, and set_clip_properties with speed now stop before host mutation; use set_clip_duration to change timeline length, or the Speed/Duration UI or pre-rendered media to retime. 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.

Host limits: The capability ledger distinguishes unavailable APIs, unverified host requests, and property/structure readback. A verified parameter or component does not establish rendered appearance.

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.

set_clip_duration changes a placed clip's timeline length without touching source in/out directly: pass exactly one of duration_seconds (from the current start) or end_seconds (absolute timeline end). It writes the documented TrackItem.end as a tick-based Time, refuses an end that would overlap the next clip on the same track, applies the same keyframe_policy guard as trim_clip when shortening, and reads start/end back. If Premiere clamps the end (for example, video media with no remaining handle, or a still whose project item has in/out points), the original end is restored and the tool returns an error. Linked audio/video partners are not adjusted. This is a CEP contract check, not validation in a licensed Premiere Pro 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 (17)

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

export_sequence_edl

CMX 3600 EDL for one track, generated from timeline readback and self-validated (cuts, reels, drop/non-drop timecode, M2 lines for retimed clips)

encode_project_item / encode_file

Direct encoding

start_batch_encode

Start render queue

Premiere's documented automation surfaces do not currently expose OTIO or native EDL interchange, Render and Replace, cloud publishing, or Content Credentials export configuration. export_sequence_edl therefore builds the CMX 3600 list locally from the clips Premiere reads back and validates it with the same parser used by inspect_cmx3600_edl; it is not a Premiere-native export. get_capabilities reports the remaining 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 + 7)

Tool

Description

select_clips_by_name / select_clips_in_range

Smart selection

copy_effects_between_clips

Copy effects via QE

paste_clip_attributes

Paste Attributes: effect stack, values, and keyframes with per-property readback; masks and differing Blend Mode are reported, not copied

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

Editor Requests: markers, selection, checkpoints, navigation (5)

Tool

Description

add_markers_batch

Up to 200 sequence or clip markers in one verified request; feed it beat grids from detect_beats, chapters from plan_chapter_markers, or client notes from plan_client_notes_checklist

select_clips_by_pattern

"Select every other clip": every-Nth selection with offset, name/regex, duration, range, track, and enabled filters, read back after selecting

create_sequence_checkpoint / list_sequence_checkpoints

Named [checkpoint] sequence clone before a risky edit, plus a diff_sequence_snapshots-ready snapshot of the original

navigate_playhead

Start, end, in/out, work area, next/previous edit or marker, or frame stepping with position readback

Review and Conversation Planning (2)

Tool

Description

plan_client_notes_checklist

Pasted client or reviewer feedback → prioritized checklist (category, must/should/nice, approvals, questions, timecodes and ranges) and an add_markers_batch payload

plan_multicam_angle_switches

Active-speaker angle switching for stacked camera tracks: minimum holds, crosstalk cover shots, lead-in cuts, cutaways, razor times, per-camera enable ranges, and markers

Both planners are local and deterministic. Premiere exposes no scripting API for switching angles inside a multicam source sequence, so the multicam plan targets synced clips stacked on separate video tracks and is applied through razor_all_tracks, select_clips_in_range, batch_enable_disable, and add_markers_batch on a checkpointed sequence. See editor requests for the community and competitor evidence behind these tools and their verification boundaries.

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

Mask Fit (1)

Tool

Description

compute_mask_fit_motion

Inspect only: Motion Scale and Position that place a still's subject box (source-image fractions) inside an existing Rounded Crop, Crop, or similar mask, with the math inputs and warnings. Apply with set_clip_scale / set_clip_position, then check with capture_frame. No image analysis.

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

Reaction Shorts (3)

Tool

Description

plan_reaction_captions

Stacked speaker-colored caption plan from a word timeline and explicit palette; flash words merge, overlaps stack, unknown speakers stay uncolored

plan_short_subscribe_cta

Brief subscribe overlay placed about two-thirds through a Short, after an optional hook, with brand-safe styling notes

plan_short_export_folder

Series-named export path under an approved Shorts root; create the folder when it is missing and keep Cafe and Watch Club assets separate

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 nineteen workflow prompts:

Resource URI

Description

config://premiere-instructions

Best practices: workflow order, metadata layers, timeline rules, error handling

config://extendscript-reference

Complete ExtendScript API reference for writing custom scripts

config://premiere-workflows

Machine-readable catalog for rough cuts, metadata review, 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

Path-redacted project and active-timeline summary — not XMP or Project Metadata XML

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.

An operator-managed MCP endpoint runs at https://premiere-pro-mcp.fly.dev/mcp (health check: /health). The website is https://premiere-pro-mcp.com, served from a separate repository; other paths on the Fly host redirect there. The endpoint 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

PREMIERE_MCP_PROJECT_BACKUP_MAX_BYTES

Positive integer byte budget for one project backup

2147483648 (2 GiB)

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 386 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
├── AGENTS.md                    # IDE / coding-agent map
├── 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 HTTP transport serves no web pages. It answers only /mcp, /health, and OAuth protected-resource metadata under a deny-all Content Security Policy. Other GET/HEAD paths on premiere-pro-mcp.fly.dev or a *.premiere-pro-mcp.com host redirect (308) to https://premiere-pro-mcp.com; every other host receives a JSON 404.

  • Media scans yield between asynchronous filesystem operations and bound total traversal: 25,000 entries, 5,000 matching files, 2,000 directories, depth 32, a 1,000-directory pending queue, and a cooperative five-second budget. A stalled OS call can exceed that elapsed budget. Inspect scan_incomplete and scan_limit_reasons before treating a watch baseline as complete; import previews also report incomplete.

  • Project backups stream their copy and checksum work with a configurable byte budget. Only one backup runs per process; concurrent requests fail promptly. Failed or cancelled copies are removed without replacing an existing backup.

  • The Docker runner uses the unprivileged node user (UID 1000). Custom bridge or context volume mounts must be writable by that user and private to the operator. The default context directory is under /home/node/.local/state/premiere-pro-mcp.

  • Dependency audits run in CI for both lockfiles. Keep local .env*, .npmrc, and private key/certificate files out of commits and Docker build contexts; only placeholder .env.example and .env.template files are eligible for Git tracking.

  • Both CEP panels validate the bridge directory before writing a heartbeat or polling commands. Symlinks and directories owned by another user are refused. On POSIX, directories writable by group/other users are refused by both the server and panels; tightening permissions alone cannot make previously staged commands trustworthy. On Windows, only the current user, SYSTEM and Administrators may have write access, including inherited grants. Windows capability and app-container SIDs (S-1-15-*) are ignored: they are not logon principals and appear as inherited FullControl on stock %LOCALAPPDATA% paths. ACL inspection failures also stop startup. Ancestors must also prevent other users from replacing the bridge path; a private child inside a broadly writable parent is insufficient (POSIX sticky temp directories are supported). Choose a new directory under a private user-owned location if the connector rejects a shared temp folder, and configure the same path on the server and panel. Do not copy pending commands from the rejected folder into the new one. Windows checks invoke PowerShell synchronously before publishing commands, with a five-second timeout and 64 KiB output cap; this adds command latency rather than caching a permission decision that could become stale.

  • 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. Claude Fable 5.1 is an optional client model for Cursor, Claude Desktop, or Claude Code; see Claude Fable 5.1 workflows.

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. AI agents and IDE assistants should read AGENTS.md.

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

384 tools
add_adjustment_layerAdd Adjustment LayerA

EXPERIMENTAL (QE DOM): add an adjustment layer at the playhead on the specified track. Refuses when the host lacks the QE APIs; verifies a new public TrackItem using isAdjustmentLayer and placement readback.

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; on failure, diagnostic detail when the tool provides it.
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 only declare the safety profile (not destructive, non-idempotent); the description adds meaningful behavioral context beyond them: it is experimental, depends on the QE DOM, fails cleanly when APIs are missing, and self-verifies via isAdjustmentLayer and placement readback. This is rich disclosure for a mutation tool.

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 dense sentences with the experimental/QE caveat front-loaded and no filler. Slightly technical but every clause carries 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 values need not be described, and the description covers the failure mode, dependency, and verification behavior. Complete enough for an agent to call it and anticipate the QE-API failure 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?

With one parameter and 100% schema description coverage, the schema already documents track_index (video track, default 0). The description adds only that placement is at the playhead, which is contextual rather than parameter syntax, 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?

States a specific verb+resource ('add an adjustment layer') plus placement scope ('at the playhead on the specified track'), which cleanly distinguishes it from siblings like add_track, add_transition, and get_clip_adjustment_layer.

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 refusal condition ('Refuses when the host lacks the QE APIs') is a useful prerequisite that tells the agent when this call will not work, but there is no explicit guidance on when to prefer this over alternatives or what to do instead. Usage 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.

add_audio_keyframesAdd Audio KeyframesA

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (non-destructive, non-idempotent, closed-world), so the description need not restate it. It adds nothing behavioral, though – it does not say whether existing keyframes are merged, replaced, or appended, which is material for a mutation on a clip's audio automation.

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 no wasted words. It is efficient, though arguably terse given the operation modifies clip automation.

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 rich input schema, an output schema, and annotations covering the safety profile, the definition is largely sufficient for correct invocation. The remaining gap is what happens to pre-existing keyframes, which is minor against the structured data already 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 description coverage is 100%, so the schema fully documents node_id, time_seconds, and level_db (including the +15 dB cap). The description adds no parameter 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 specific verb (add) and resource (audio level keyframes) plus the outcome (fades or level changes). It distinguishes the audio-specific nature from the generic add_keyframe sibling, 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?

Usage is implied by the stated goal ("to create fades or level changes"), which tells the agent roughly when this applies. However, no alternatives are offered – it does not contrast with adjust_audio_levels, set_clip_volume, or the generic add_keyframe, so the agent must infer which to pick.

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 field_name/value or complete Project Metadata XML with 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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description's added value is the schema-vs-value distinction, which is genuinely useful. It stops short of stating behavior on duplicate field names, required project state, or permissions, so it's 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?

Two tightly written sentences, front-loaded with the action and its scope, followed by the corrective routing. No wasted 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?

An output schema exists so return values need no explanation, and the description resolves the main ambiguity (schema definition vs value assignment). Only minor gaps remain, e.g. uniqueness/error behavior for the new field.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 three required params are self-documented (including the field_type enum mapping in the schema). The description adds no format or constraint 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.

Purpose5/5

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

States a specific verb+resource ('Add a custom metadata field to the project's metadata schema') and immediately scopes it as a schema/column definition only, which distinguishes it from value-writing tools like 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 Guidelines5/5

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

Explicitly states when NOT to use it ('it does not set a per-item value') and names the alternatives ('set_metadata field_name/value or complete Project Metadata XML with readback') for updating a value. Routing is unambiguous.

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. The receipt warns when its time is outside the clip's visible range. 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_secondsYesSeconds from the clip's start on the timeline (0 is the clip's first frame) where to add the 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; on failure, diagnostic detail when the tool provides it.
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 declare a non-read-only, non-idempotent, non-destructive write. The description adds real value beyond them: it discloses that the receipt warns when the keyframe time falls outside the clip's visible range, and it scopes the verification to stored parameter data only.

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 tight sentences with the action front-loaded and no filler. The trailing scope caveats are brief and each carries information, though the third sentence is slightly dense.

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 values need no explanation. For a write tool with annotations already covering the safety profile, the description adds the warning behavior and the verification boundary, leaving little an agent needs 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 all five parameters are already documented in the schema. The description alludes to time semantics ('outside the clip's visible range') but adds no syntax or format 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?

States a specific verb and resource ('Add and read back a keyframe on an effect property'), which is distinct from siblings like add_audio_keyframes (audio) and get_keyframes (read-only). It is clear without explicitly naming an 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 scope note ('verifies stored parameter data only; render/playback verification remains host-dependent') implies the intended context, but it never states when to use this over set_keyframe_interpolation, get_keyframes, or add_audio_keyframes. Usage is inferable, not explicit.

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 and read its name, comments, color and duration back. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index.

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 the marker to that clip instead of the sequence. Premiere 25.2.3 timeline clips have no marker collection, so this refuses there and names the source time to use with add_marker_to_project_item.
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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare readOnly=false, idempotent=false, destructive=false, but the description adds real behavioral context beyond them: the QE DOM experimental status, that undoStackIndex movement does not prove reversibility, that each attempt protects an engine undo boundary, and what undoTracked:false means. This is valuable disclosure, though the jargon is dense.

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

Conciseness3/5

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

The purpose is front-loaded and correct, but the experimental/undo caveat is verbose and uses unexplained internal terms (QE DOM, undoStackIndex, undoTracked) that consume space without clearly helping an agent decide or act. Some of it could be tightened.

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, the return values need not be explained, and the safety profile is covered by annotations. The description fills the remaining gap by flagging the experimental nature and undo-tracking caveat, leaving only minor ambiguity about clip vs sequence routing.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 already documented with types, enum-like color values, and the node_id alternative. The description merely restates the read-back fields (name, comments, color, duration) and adds no syntax or format 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?

States a specific verb and resource ('Add a marker') plus its two targets ('active sequence or a clip'), and the read-back of name/comments/color/duration. It does not explicitly name sibling alternatives like add_marker_to_project_item or add_markers_batch, 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 body gives no explicit when-to-use guidance; the route to clips is implied through the node_id parameter rather than stated in the description. The alternative tool (add_marker_to_project_item) is named only inside the schema, not in the description itself.

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

add_markers_batchAdd Markers BatchA

Add up to 200 sequence or clip markers in one verified CEP request (beat grids, chapters, silence reviews, client notes). Every marker is validated and range-checked before the first write; the tool reads back the marker count and each created marker's time and fails closed on any mismatch. EXPERIMENTAL QE: records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal.

ParametersJSON Schema
NameRequiredDescriptionDefault
markersYesMarkers to create, in any order; they are sorted by time before writing.
node_idNoOptional timeline clip node ID; markers are then created on that clip instead of the sequence (requires the active sequence). Premiere 25.2.3 timeline clips have no marker collection, so this refuses there and names the source time to use with add_marker_to_project_item.
sequence_idNoSequence ID or name. Defaults to the active sequence.
allow_beyond_endNoAllow marker times past the sequence end instead of rejecting the whole batch (default false).
skip_existing_within_framesNoWhen above 0, skip a marker if an existing marker already sits within this many frames of it (default 0 = never skip).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Despite annotations already declaring the non-read-only, non-destructive, non-idempotent profile, the description adds substantial non-obvious behavior: pre-write validation and range-checking, read-back of marker count and times, fail-closed on mismatch, and an EXPERIMENTAL QE boundary that refuses Undo/Redo crossings by default and reports unknown protection for unreadable history. It even flags a limitation (no native marker reversal verification), which is exactly the kind of caveat annotations cannot 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?

Purpose and scale are front-loaded in the first sentence, verification semantics follow, and the experimental QE caveat is clearly separated. It is dense but each clause carries operational weight; no filler 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 mutation tool with full annotations and an output schema (so return values need not be explained), the description covers validation, failure mode, and Undo/Redo safety adequately. The remaining gap is sibling routing — it never tells the agent when the batch tool is preferable to add_marker or add_marker_to_project_item.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (including nested marker fields and the node_id/allow_beyond_end/skip_existing_within_frames semantics) are fully documented in the schema. The description restates the 200-item cap and range-checking but adds no syntax or format 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?

States a specific verb and resource with scope: 'Add up to 200 sequence or clip markers in one verified CEP request,' and parenthetically lists the workflows it serves (beat grids, chapters, silence reviews, client notes). The batch/verified framing distinguishes it from single-marker siblings, though it never names add_marker explicitly as the single-marker 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 parenthetical use cases imply when to reach for this tool, and the node_id schema note points at add_marker_to_project_item for the Premiere 25.2.3 limitation. But the description itself gives no explicit when-to-use or when-not guidance relative to add_marker, add_marker_to_project_item, or the plan_*_markers siblings, leaving selection largely to inference.

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 ItemA

Add a marker to a project item (source clip marker). EXPERIMENTAL QE: records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnly=false, idempotent=false, destructive=false), and the description adds significant context beyond them: it records an observed marker boundary for guarded Undo/Redo, that crossing it is refused by default, and that unreadable history yields unknown protection. This is useful, non-obvious behavioral disclosure, though the QE jargon is dense and its practical impact could be spelled out more plainly.

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

Conciseness4/5

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

Purpose is front-loaded in the first clause, followed by a dense but purposeful behavioral sentence. It is appropriately short, though the QE sentence leans on internal jargon that reduces immediate readability rather than wasting space.

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 values need not be described, and annotations carry the safety profile. Combined with 100% schema coverage, the description is complete enough to call the tool, with the only real gap being the missing routing guidance versus the marker 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 7 parameters (including the type enum and duration semantics) are already documented structurally. The description adds no parameter-level meaning beyond that, 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?

States a clear verb+resource ('Add a marker to a project item') and clarifies the target as a 'source clip marker' via parenthetical, which helps distinguish it from timeline/sequence marker siblings. However, it never names add_marker or add_markers_batch or explains how this differs from them, leaving sibling 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 '(source clip marker)' parenthetical implies when this tool applies (project-item/source context), but there is no explicit when-to-use, when-not-to-use, or pointer to add_marker/add_markers_batch for the alternative scope. Usage is only implied.

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. For on-screen titles from plain text use add_title; for captions import an .srt/.vtt and use create_caption_track.

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; on failure, diagnostic detail when the tool provides it.
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 discloses a critical behavioral fact beyond the annotations: the tool cannot perform its advertised action because of missing API support. This prevents an agent from attempting an unsupported operation and directs it to supported workflows. 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?

Two sentences: the unavailability and reason come first, followed by the two alternative routes. Every sentence earns its place with no wasted 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 an unavailable tool with an output schema and annotations present, the description provides everything needed: why it cannot be used and exactly where to go instead. Nothing an agent needs in order to avoid or replace this tool 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 all four parameters in detail. The description adds no parameter-specific guidance beyond the schema, 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 explicitly states that the tool is unavailable and explains why: Premiere does not expose a supported scripting API for creating caption clips from raw text. It also names the correct siblings for the two relevant use cases, so an agent can immediately tell this tool is not the right choice.

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: use add_title for on-screen titles from plain text, and import an .srt/.vtt with create_caption_track for captions. This is exactly the when-to-use information an agent needs to choose an alternative.

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

add_titleAdd TitleA

Add an on-screen title from plain text using a stock Essential Graphics template that ships with Premiere (default: Basic Title). Pass text for one line, or lines to fill the template's text fields in order (for example a lower third's name and role). Premiere-built templates (kind 'premiere') get the text baked into a verified copy of the template before import, because Premiere exposes no writable text for them (textVerification 'template_verified'; confirm the render with export_frame). After Effects-built templates (kind 'after_effects') are imported and their text fields written by position and read back from Premiere (textVerification 'verified', 'mismatch', 'missing_property', or 'committed_unverified'). The graphic is trimmed to duration_seconds and its length read back. Use list_stock_titles to see templates, their kind, and how many lines each takes.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoTitle text for the first text field. Specify exactly one of text or lines.
linesNoText for each of the template's text fields in order (see list_stock_titles). Specify exactly one of text or lines.
templateNoStock template name such as "Basic Title", "Bold Title", or "Basic Lower Third", or category/name such as "Titles/Bold Title" (default: Basic Title).
track_indexNoZero-based video track for the graphic (default: 1, the track above the main footage).
start_secondsNoTimeline start in seconds (default: 0).
duration_secondsNoHow long the title stays on screen in seconds (default: 5).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 only declare the mutation/safety profile (readOnly=false, idempotent=false, destructive=false); the description adds substantial behavior beyond that: Premiere-built templates get text baked into a verified copy because no writable text exists, After Effects templates are written by position and read back with enumerated verification outcomes (verified/mismatch/missing_property/committed_unverified), and the clip is trimmed to duration_seconds with length read back.

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?

Four sentences, front-loaded with the core action and default, then branching by template kind. Every sentence carries information, though the verification-status enumeration is dense and could be trimmed slightly without loss.

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, return-value explanation is correctly omitted, and the description covers the complex kind-dependent write/verify semantics that an agent could not infer. It is nearly complete for a 6-parameter mutation tool, missing only explicit placement interaction with existing tracks.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 every default, the text-vs-lines exclusivity, and the template/track/start/duration meaning, so the baseline is 3. The description adds only a marginal concrete example (a lower third's name and role for the ordered lines) and restates the default template, not enough to materially exceed 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+resource ('Add an on-screen title from plain text using a stock Essential Graphics template') and immediately scopes it to Premiere-shipped templates, which separates it from sibling tools like import_mogrt, add_text_overlay, and add_custom_metadata_field. An agent can pick this tool over its neighbors without opening 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?

It explicitly routes the agent to list_stock_titles to inspect templates/kind/line counts and to export_frame to confirm the render, and it distinguishes the two template kinds by behavior. It does not, however, state when to prefer this over add_text_overlay or import_mogrt, so the alternative-selection guidance is partial rather than complete.

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. Requires a saved project and an .epr preset_path. Same as Project presets are refused before Premiere is contacted because AME encodes from a scratch project copy. Optional start_batch requests processing of every ready AME queue job, including unrelated jobs.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path
preset_pathYesRequired path to an AME preset file (.epr). Omitting this raises an Illegal Parameter error on current Premiere hosts.
start_batchNoOpt in to start the entire ready Adobe Media Encoder queue after this handoff, including unrelated jobs. Default false (enqueue only). A successful call does not verify that any render started or completed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Adds real behavioral context beyond the annotations: Project presets are refused before Premiere is contacted, AME encodes from a scratch project copy, and start_batch triggers every ready AME job including unrelated ones. This is meaningful disclosure for a non-idempotent, non-destructive mutation, though it does not cover auth or rate limits.

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

Conciseness3/5

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

The purpose is front-loaded and the whole thing is short. However the sentence 'Same as Project presets are refused before Premiere is contacted' is garbled and reads like a broken copy-paste, hurting clarity despite the brevity.

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 annotations, a 100%-covered schema, and an output schema present, the description supplies the key gotchas an agent needs (saved project requirement, .epr preset prerequisite, scratch-copy behavior, batch side effect). It is nearly complete, missing only explicit sibling routing.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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, preset_path, and start_batch. The description reinforces preset_path and start_batch semantics but adds little that the schema does not already state, 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?

States a specific verb+resource: requesting an Adobe Media Encoder render-queue handoff for the active sequence. An agent understands exactly what the tool does. It does not explicitly differentiate from siblings like start_batch_encode or encode_project_item, 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 Guidelines3/5

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

Provides prerequisites (saved project, .epr preset_path) and explains the start_batch opt-in, which implies when to use the flag. However it never names an alternative tool or states when NOT to use this versus start_batch_encode or encode_project_item, 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.

add_to_timelineAdd To TimelineA

Insert a project item at a timeline position. Experimental: if a target clip spans that point, QE razors it before insertion to attempt to preserve its tail; both target and sync-locked track changes are read back. A host may still displace a tail, in which case the edit is reported as committed_unverified. Pass scope 'target_tracks' to ripple only the named pair (this will desync other tracks).

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoWhich tracks shift: 'sync_locked' (default) matches Premiere's insert; 'target_tracks' ripples only the named pair and WILL desync other tracks.
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; on failure, diagnostic detail when the tool provides it.
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?

Goes well beyond the annotations, disclosing that QE razors a spanning clip, that tail preservation is only an attempt, that the result may be reported as committed_unverified, and that scope 'target_tracks' desyncs other tracks. This is exactly the kind of side-effect/auth/verification context that annotations (readOnly=false, destructive=false, idempotent=false) cannot carry. Note mild tension: the razor/desync side effects sit close to the line of destructiveHint=false, but since no data is deleted the annotations are not formally contradicted.

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?

Front-loaded with the core action, then caveats in order of importance. Some experimental framing ("attempt to preserve its tail", committed_unverified mechanics) is dense but each clause conveys a distinct behavioral risk, so little is wasted.

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 annotations present and an output schema covering the committed_unverified return, the description supplies the missing behavioral context (razoring, tail displacement, desync tradeoff). Only a brief note on sibling routing is absent, which 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 coverage is 100% and each parameter is already documented, including the scope enum with its desync warning. The description's scope note largely restates that, so it adds little beyond the schema; a 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?

States a specific verb+resource ("Insert a project item at a timeline position"), and adds experimental QE razor/tail detail that distinguishes it from plain inserts. It does not explicitly differentiate from nearby siblings like batch_add_to_timeline or insert_from_source, but the purpose is 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?

Gives one conditional ("Pass scope 'target_tracks' to ripple only the named pair") but never states when to prefer this over batch_add_to_timeline, insert_from_source, or overwrite_from_source. Usage is implied rather than routed.

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

add_to_timeline_batchAdd To Timeline BatchA

Insert up to 32 project items with insert-edit semantics in one validated CEP request. Experimental QE sync-lock handling may ripple or split earlier placements. The tool preflights items and tracks, then verifies every placement again in the final sequence; changed placements return committed_unverified with their observed final positions.

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; on failure, diagnostic detail when the tool provides it.
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?

The description discloses substantial behavior beyond the annotations: experimental QE sync-lock handling may ripple or split earlier placements, the tool preflights items and tracks, and it verifies placements in the final sequence. It also explains that changed placements return 'committed_unverified' with observed final positions.

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 three sentences and front-loads the core purpose before caveats and verification behavior. Each sentence earns its place, though the final sentence is dense and could be slightly more scannable.

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 batch-edit tool with an output schema and annotations covering safety, the description provides the key operational caveats: experimental sync-lock ripple/split behavior, preflight validation, final verification, and the committed_unverified status. Nothing critical for correct invocation 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 description coverage is 100%, so the baseline is 3. The description reinforces 'up to 32 project items' and 'insert-edit semantics,' but adds no parameter-level detail beyond what the schema already documents for the clips array.

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 with scope: 'Insert up to 32 project items with insert-edit semantics in one validated CEP request.' It immediately distinguishes the tool as a batch operation limited to 32 items, setting it apart from single-item siblings such as 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 Guidelines3/5

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

Usage is implied by the batch scope and 'insert-edit semantics,' but the description never explicitly says when to choose this tool over add_to_timeline or other insertion tools. No when-not or alternative 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_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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the safety profile is known. The description usefully adds that the call fails if Premiere cannot add the exact requested count (an all-or-nothing semantic), which is not derivable from annotations, but it says nothing about permissions, how the new track is inserted into the stack, or effects on existing tracks.

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, front-loaded with the core action, with no filler. Slightly under-specified rather than verbose, but structurally 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?

An output schema exists, so return values need not be described, and annotations cover the safety profile. Still, for a mutation tool with a similarly-named sibling (add_tracks) and no coverage of insertion placement or prerequisites, the description leaves gaps an agent would need filled to call 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% and both parameters (track_type enum, count with default) are fully documented in the schema, so the baseline is 3. The description's 'video or audio' and 'exact requested count' merely restate schema content rather than adding format or constraint 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?

States a specific verb and resource ('Add ... tracks to the active sequence') and scopes the target sequence and track kinds (video/audio). It does not, however, distinguish itself from the closely-named sibling 'add_tracks', which leaves a real ambiguity for an agent choosing between them.

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

Usage 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 prerequisites (e.g. an active sequence must exist), and no indication of when this tool is preferred over 'add_tracks' or other track tools. Only an error condition is mentioned, which is a behavioral note rather than usage guidance.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior5/5

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

With annotations declaring a non-read-only, non-idempotent mutation, the description adds critical behavioral detail beyond the structured hints: it verifies that the active sequence gained the exact requested counts and explicitly reports when new tracks are inserted at index 0 and shift existing tracks upward. That insertion-position side effect is exactly the kind of behavioral context an agent needs before invoking the 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 built around the primary action, with each clause earning its place by adding verification and insertion-position behavior. There is no repetitive 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 that an output schema exists and the input schema is fully documented, the description supplies enough behavioral context to invoke the tool correctly, especially the index-0 insertion and shift behavior. It remains slightly incomplete because it offers no guidance on when to choose this tool over the singular add_track 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 schema already fully documents all four numeric track-count parameters, including their default values. The description only generically mentions video and/or audio tracks and does not add syntax or format meaning beyond the schema, making the baseline 3 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 and resource: add video and/or audio tracks. It distinguishes the plural track-adding action from broader timeline editing, though it does not explicitly differentiate itself from the sibling add_track or delete_track 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 explains what the tool does but never states when to use it instead of alternatives such as add_track, delete_track, or move_clip_to_track. No prerequisites, exclusions, or selection conditions are provided.

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

add_transitionAdd TransitionA

EXPERIMENTAL (undocumented QE DOM): Add a video transition between two clips at a cut point. Reads the transition back from the sequence track.

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; on failure, diagnostic detail when the tool provides it.
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 this is a non-read-only, non-destructive, non-idempotent, closed-world operation. The description adds valuable behavioral context beyond that: it flags the operation as EXPERIMENTAL/undocumented QE DOM and notes that it reads the transition back from the sequence track, implying verification behavior. It still omits failure modes and permission requirements, so not 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.

Conciseness5/5

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

Two short sentences are front-loaded with the experimental status and the core action. Every phrase carries information; 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?

With a rich input schema, annotations, and an output schema, the description covers purpose, experimental risk, and read-back behavior. It remains slightly incomplete on sibling selection among add_transition, add_transition_to_clip, and batch_add_transitions, but 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%, so the schema already documents all four parameters including defaults. The description adds no parameter-level syntax, format, or constraint detail 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.

Purpose4/5

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

States a specific verb (Add), resource (video transition), and placement (between two clips at a cut point), which is more specific than a generic 'add transition'. However, it does not name or explicitly contrast with close siblings like add_transition_to_clip or batch_add_transitions, so sibling differentiation is left 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 description implies the scenario—inserting a video transition at a cut point—but offers no explicit when-to-use guidance, prerequisites, or exclusions. It does not point to add_transition_to_clip, batch_add_transitions, or list_available_transitions as alternatives, so the agent must infer tool selection.

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 ClipA

EXPERIMENTAL (undocumented QE DOM): Add a transition to a specific video clip's start, end, or both edges, then read back the requested placement.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), and the description adds genuinely new context: the tool relies on an undocumented/experimental QE DOM surface and performs a read-back of the requested placement after writing, which hints that verification is built in. It still does not say what happens if a transition already exists on the edge or 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?

A single front-loaded sentence that leads with the experimental caveat and then states the operation and its read-back behavior. No filler, no 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?

An output schema exists so return values need not be explained, and the annotations cover the safety profile. The description supplies the experimental warning and placement scope, but omits prerequisites such as where transition_name values come from (list_available_transitions) and what the read-back returns on failure, leaving a small gap 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 node_id, position, transition_name, and duration_seconds are already documented in the schema. The description restates the start/end/both placement semantics already captured by the enum and adds no new parameter 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?

States a specific verb and resource ('Add a transition to a specific video clip') and scopes the target to the clip's start, end, or both edges. It is clear what the tool does, but it never names or contrasts with the obvious siblings add_transition or batch_add_transitions, so an agent must infer which one to pick.

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 when-to-use or when-not-to-use guidance and no mention of alternatives such as add_transition (single, non-clip-targeted) or batch_add_transitions (multiple clips). The only contextual signal is 'EXPERIMENTAL (undocumented QE DOM)', which warns about stability but does not tell the agent 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.

adjust_audio_levelsAdjust Audio LevelsB

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; on failure, diagnostic detail when the tool provides it.
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 a non-destructive, non-idempotent write operation (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds a useful behavioral boundary—it does not read or change Essential Sound Amplify automation—but says nothing about reversibility or exactly which clip properties are affected.

Agents need to know what a tool does to the world before 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 scope exclusion. Every sentence earns its place; there is 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 simple two-parameter mutation with rich annotations and an output schema, the description states the action and an important exclusion (Essential Sound Amplify automation). Its only notable gap is failing to differentiate itself from sibling volume 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%, and the schema already explains that level_db uses dB with 0 as unity and negative/positive semantics. The description repeats 'in dB' but adds no further parameter meaning, so 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?

Names a specific verb (Adjust) and resource (a clip's Volume > Level in dB), making the operation clear. However, it does not distinguish this tool from sibling set_clip_volume or set_clips_volume, which likely perform a similar level change on a clip or 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 gives no when-to-use guidance or alternatives. Its only limitation statement ('Does not read or change Essential Sound Amplify automation') is a scope exclusion, not routing advice, so an agent cannot tell when to choose adjust_audio_levels over set_clip_volume.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely useful behavior beyond that: it never calls a model (deterministic), never persists transcript text (privacy), and never modifies Premiere. That is real added context, though return-value characteristics are left to the output 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?

Two tight sentences, front-loaded with the purpose and followed by the negative guarantees. No filler; 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 annotations, a rich 100%-covered schema, and an output schema, the description supplies the remaining pieces an agent needs (determinism, no persistence, no Premiere mutation). It is complete for invocation; it stops short of describing expected output shape or pitfalls like oversized segment arrays.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 documents all four parameters, including the revision pattern and default minimum_silence_seconds. The description only echoes 'revision-bound transcript segments and optional local silence ranges' without adding syntax or format detail beyond the schema, which is the baseline-3 case.

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 (analyze) and resource (dialogue-edit candidates), and pins down the inputs as caller-supplied, revision-bound transcript segments plus optional silence ranges. It's clear what the tool does, though it does not name the adjacent siblings (plan_filler_word_removal, plan_pause_tightening, detect_silence) that an agent might confuse it with.

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 required inputs (you need transcript segments from get_clip_transcript_uxp), but there is no explicit when-to-use vs. alternatives guidance or exclusion criteria. The agent can infer the context but is not routed.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (destructiveHint=false, openWorldHint=false), and the description adds genuinely useful context beyond them: that it is analysis-only using an EBU R128 filter, does not normalize audio, and does not mutate Premiere. It still does not address readOnlyHint=false / idempotentHint=false, leaving a small residual question about whether any files are written.

Agents need to know what a tool does to the world before 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, with the measurement scope front-loaded and the analysis-only constraint appended. Every clause carries information the agent can act on.

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, return values need not be enumerated, and the description correctly focuses on scope and the non-mutating guarantee. It could go further by naming the normalization sibling it is meant to precede, 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%, so all five parameters (media_path, target_lufs, tolerance_lu, project_item_id, max_true_peak_dbfs) are already documented. The description mentions the measured metrics but adds no format or interpretation guidance for the target/tolerance/peak parameters, 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?

Names a specific verb (Measure) and concrete outputs (integrated loudness LUFS, loudness range LU, true peak dBFS) plus the source (local media file). The mention of FFmpeg's EBU R128 filter further distinguishes it from sibling tools like normalize_loudness_file or validate_delivery_conformance.

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 frames the tool as analysis-only and rules out normalization and Premiere changes, which steers the agent away from the wrong sibling. It stops short of naming the alternative (normalize_loudness_file) or the conditions under which a user would need analysis versus normalization.

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 InterlacingA

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; on failure, diagnostic detail when the tool provides it.
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 description claims 'Read-only delivery preflight' while the annotations declare readOnlyHint=false, idempotentHint=false and destructiveHint=false — a soft inconsistency worth flagging, since the server evidently considers the tool non-read-only (it likely spawns an FFmpeg decode process). Beyond that claim the description adds no behavioral context: no mention of cost/runtime, temp-file or decode side effects, or sample_seconds impact on execution 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?

Two sentences, zero filler, with the classification taxonomy up front and the usage framing trailing. Nothing to trim.

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 values need not be explained, and the enumerable result categories are given inline. The only gap is the unstated execution profile implied by sample_seconds and the unresolved read-only framing.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 media_path and sample_seconds (1-300s, default 30) are already fully documented in the schema. The description adds nothing about parameter semantics; 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?

Specific verb ('Classify') plus resource ('decoded video frames') and an enumerated set of outputs (progressive, top-field-first, bottom-field-first, mixed, undetermined), with the underlying mechanism named (FFmpeg idet). This distinguishes it clearly from siblings like set_sequence_field_type (a mutation) and analyze_video_qc (broader QC).

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?

'Read-only delivery preflight' implies the context of use, but there is no explicit when-to-use/when-not or routing to alternatives such as inspect_media_streams or analyze_video_qc, which also surface media characteristics. Usage 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_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; on failure, diagnostic detail when the tool provides it.
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 asserts 'Read-only: it does not contact Premiere or modify the file,' but the annotations declare readOnlyHint=false, directly contradicting the claim that the operation does not modify. This is a genuine inconsistency the agent cannot resolve from the definition, so it must be flagged even though the FFmpeg/no-Premiere detail is otherwise informative.

Agents need to know what a tool does to the world before 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 what is analyzed and followed by the side-effect profile; no filler or repetition of the title. 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?

An output schema exists, so return values need not be explained, and the description covers the analysis target, mechanism, and side-effect intent for a 3-parameter tool. Its completeness is undercut only by the read-only claim conflicting with the annotations, which leaves the true side-effect profile ambiguous.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 three parameters (media_path, minimum_black_seconds, minimum_freeze_seconds) are documented in-schema, including defaults. The description adds no syntax or format 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.

Purpose5/5

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

States a specific verb (Analyze), a specific resource (a local video delivery), and a specific target (sustained black and frozen sections). It differentiates itself from Premiere-bound siblings by declaring it works on a local file with FFmpeg and never contacts Premiere, so an agent can tell it apart from tools like verify_delivery_file or analyze_video_interlacing.

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 'local video delivery' and 'does not contact Premiere' imply this is for offline/standalone QC of an already-rendered file, which is useful framing. However, it names no alternative sibling (e.g., verify_delivery_conformance, verify_delivery_file) and states no explicit when-to-use or when-not-to-use condition, leaving routing to inference.

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; on failure, diagnostic detail when the tool provides it.
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 meaningful behavior beyond the annotations (readOnly=false, idempotent=false, destructive=false, openWorld=false): a confirmation is required, both hosts and file metadata are rechecked, and the token is consumed before dispatch, implying one-time non-repeatable semantics. It also enumerates what is not touched. It stops short of describing failure behavior if the token is expired or already consumed.

Agents need to know what a tool does to the world before 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 tight sentences; the operative action and its scope constraint are front-loaded, and each remaining sentence adds a distinct constraint (confirmation, token consumption, exclusions). 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?

An output schema exists, so return values need not be explained. For a two-parameter, non-destructive apply operation the description covers preconditions, side effects, and exclusions well; only edge-case failure handling is 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?

Schema description coverage is 100% and both parameters (preview_token, confirm_import) are documented in the schema, so the baseline is 3. The description reinforces 'requires confirmation' and the one-time token nature but adds no syntax, format, or constraint 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?

States a specific verb and resource: import exactly one previewed completed AE render into its approved Premiere bin. The phrase 'exactly one' plus 'previewed completed' distinguishes it from preview_after_effects_render_handoff, preview_after_effects_render, and enqueue_after_effects_render 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?

Gives clear context: the render must be 'previewed completed' and already have an 'approved' bin, and it states the negative scope ('Does not save, render, or change a timeline'). It does not explicitly name preview_after_effects_render_handoff as the mandatory prerequisite (the schema does), nor contrast with the sibling apply_mogrt_premiere_handoff.

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 EffectB

Apply an audio effect to a clip. Experimental QE catalog lookup includes an exact-name probe when enumeration is empty. A component-list readback does not verify rendered audio.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the safety profile is partly covered. The description adds a caveat that 'a component-list readback does not verify rendered audio', which is useful beyond annotations, but it is cryptic and omits permissions, reversibility, or what the effect application 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.

Conciseness4/5

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

Purpose is front-loaded in the first sentence, and the remaining two sentences are short. The second and third sentences add implementation caveats about catalog lookup and verification limits, though they are somewhat jargon-heavy; no obvious filler is present.

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?

Output schema exists, so return values need not be explained, and annotations cover basic safety. However, for a mutation tool with two required parameters, the description lacks essential context such as valid effect name sources, alternative batch tools, and what state changes after application.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 'node_id' and 'effect_name' are documented in the input schema. The description adds no extra meaning about parameter format, valid values, or how 'effect_name' relates to the catalog lookup, so 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?

States a specific verb ('Apply') and resource ('audio effect to a clip'), which distinguishes it from the generic 'apply_effect' sibling by narrowing scope to audio. However, it does not explicitly name or contrast with any sibling tool, so an agent must infer the boundary 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?

No when-to-use guidance, no prerequisites, and no mention of alternatives such as 'batch_apply_effect' or 'apply_effect'. The description also omits where to find valid effect names (e.g., 'list_available_audio_effects'), leaving the agent without routing information.

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 stable project, sequence and target identities before activation or mutation. Requires the edit capability and exact preview confirmation token; changed targets require a fresh preview.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesAn edit plan: { sequence_id?, operations: [...] } with up to 100 insert_clip and remove_clip operations. Operations run in order, and each one's times refer to the timeline as the operations before it left it.
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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, which tells the agent this mutates state but isn't destructive and isn't idempotent. The description adds that it revalidates identities before activation/mutation and requires exact confirmation token. It does not mention what happens if validation fails, nor does it detail the non-destructive nature (e.g., undoable?). With annotations covering safety profile, a 3 is appropriate as the description adds some but not rich 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 sentences, front-loaded with the core action and key requirements. No wasted words; every clause adds necessary context (revalidation, capabilities, token, fresh 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?

Given a nested-object schema with output schema present and annotations covering safety, the description provides sufficient context: it clarifies the preview requirement, the token, and the revalidation step. It could mention the capability requirement more explicitly (it says 'Requires the edit capability') and perhaps what happens on success/failure, but overall it is 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 parameters in detail. The description mentions 'exact preview confirmation token' which maps to the confirmation_token parameter but adds no new syntax or format details. Baseline 3 when 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 states a specific verb and resource: 'Apply a previously previewed compound edit'. It clearly distinguishes itself from siblings like preview_edit_plan or apply_effect by emphasizing 'compound' and 'previously previewed'. However, it could more explicitly name the sibling preview_edit_plan as the source of the plan.

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 specifies that the plan must be previously previewed and requires a 'exact preview confirmation token', implying preview_edit_plan must be called first. It also states 'changed targets require a fresh preview', giving a condition for when to re-preview. No explicit when-not-to-use guidance, but clear context.

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

apply_effectApply EffectB

Apply a video effect to a clip. Experimental QE DOM catalog lookup includes an exact-name probe when enumeration is empty. A component-list readback does not verify rendered pixels.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds a genuinely useful caveat that a component-list readback does not verify rendered pixels, warning the agent that apparent success is not visual confirmation. But the QE DOM catalog/exact-name probe sentence is implementation jargon that does not translate into agent-actionable behavior.

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

Conciseness3/5

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

The core action is correctly front-loaded in sentence one, but the two follow-up sentences are dense internal-implementation notes whose benefit to the caller is only partially clear. They are not pure filler (they hint at verification limits) but they are not well-explained either.

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 need not be described, and annotations cover the safety profile. What remains missing is routing guidance versus batch_apply_effect and any statement of failure modes (e.g. unknown effect_name), leaving the definition only minimally complete 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 coverage is 100% and both parameters are documented in the schema, including an example effect name. The description adds no additional meaning about node_id or effect_name, so the schema does the heavy lifting and 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 first sentence states a clear verb+resource ('Apply a video effect to a clip'), so the agent knows exactly what it does. However, it gives no differentiation from close siblings like batch_apply_effect, apply_lut, or apply_audio_effect, leaving the agent to infer the distinction from names 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 when-to-use guidance at all. With siblings such as batch_apply_effect, apply_audio_effect, apply_lut, and apply_after_effects_render_handoff in the same family, the description never says when this single-effect tool is preferred over those alternatives.

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

apply_lutApply LutA

Unavailable on the CEP backend: Premiere's scripting API cannot load a LUT file into Lumetri Color. Its Input LUT and Look parameters are menu indexes over a curated set of bundled looks, and writing a file path to the LUT asset parameters is accepted but not rendered (seen on Premiere Pro 25.2.3, macOS, by comparing exported frames with the same LUT applied by ffmpeg; other builds were not tested). Fails before changing the clip. Apply the LUT in Lumetri Color > Creative > Look (Browse...) instead.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes well beyond annotations: discloses that the scripting API cannot load LUT files, that writing a LUT path is accepted but not rendered, that the tool fails before changing the clip, and specifies testing context on Premiere Pro 25.2.3 macOS. This tells the agent not to expect side effects, consistent with destructiveHint=false.

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?

Front-loaded with the unavailability warning and ordered logically: limitation, evidence, consequence, then alternative. The test-methodology sentence is long, but it supports the limitation claim; overall the description is slightly verbose for a non-functional 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?

Given an output schema exists and annotations cover safety, the description supplies the critical missing context: the tool is non-functional on this backend, what happens when it is called, and the recommended manual alternative. Nothing required to decide against 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 node_id and lut_path are already documented in the schema. The description refers generally to writing a file path to LUT asset parameters but adds no parameter-level syntax or 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?

States the tool is unavailable on the CEP backend and cannot load a LUT file into Lumetri Color, which makes the actual behavior clear even though the intended action is implied by the name/title. It explains that it fails before changing the clip, but does not explicitly differentiate it from sibling color or effect 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?

Explicitly routes the agent away from this tool and names the alternative: apply the LUT in Lumetri Color > Creative > Look (Browse...). It also makes clear the tool will not work before invocation, so there is no ambiguity about when to use it.

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; on failure, diagnostic detail when the tool provides it.
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 the non-read-only, non-idempotent, non-destructive, closed-world profile. The description adds genuinely useful context beyond that: it is bounded to a disposable verification sequence, it requires explicit confirmation, and it makes 'no rendered-frame claim', clarifying that only insertion and control descriptors are verified.

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, front-loaded with the action and scope, with no wasted clauses. The jargon ('explicit disposable Premiere verification sequence') is dense but each phrase carries 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?

An output schema exists, so the read-back of insertion and control descriptors need not be detailed. For a bounded, confirmation-gated mutation the description covers scope, precondition, and limits 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 preview_token and confirm_import are already documented in the schema. The description reinforces 'exactly one' and the confirmation requirement but adds no new syntax or format detail beyond what the schema provides, making 3 the correct 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 (import), a precise resource (exactly one previewed MOGRT), and the exact destination (empty track of the disposable Premiere verification sequence). This clearly distinguishes it from the sibling preview_mogrt_premiere_handoff, which produces the preview rather than consuming it.

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 must be preceded by preview_mogrt_premiere_handoff ('previewed MOGRT') and states the confirmation requirement. It does not spell out explicit when-not conditions, but the preconditions are clear.

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; on failure, diagnostic detail when the tool provides it.
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 only carry the safety flags (readOnly=false, idempotent=false, destructive=false); the description adds real behavioral context beyond them: the authority requirements, the constraint that only empty explicitly named tracks are touched, and the caveat that host readback is not playback or render verification. That last point is a non-obvious limitation an agent would otherwise not know.

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 tight sentences, front-loaded with the action, followed by prerequisites and constraints. Nothing is redundant, though the final readback caveat is phrased cryptically enough that it costs a little readability.

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?

Output schema exists so return values needn't be explained, and annotations cover the safety profile. The description fills in authority, targeting, and verification caveats, leaving only the explicit naming of the required preview_*_spot source tools as a 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% with only two parameters, so the schema already documents both. The phrase 'one exact previewed ... plan' mildly reinforces the provenance requirement in the schema, but adds no syntax or format detail beyond it. Baseline 3 is correct when 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?

States a specific verb ('Apply') and resource ('one exact previewed motion-demo, product-spot, or brand-spot plan'), and the type list cleanly separates it from the generic apply_edit_plan and apply_mogrt_premiere_handoff siblings. An agent can tell which preview output this consumes 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?

Explicit preconditions are given (edit authority, filesystem authority for MOGRT, targets only empty explicitly named tracks) plus the implicit requirement that the plan be 'exact' and previously previewed. It stops short of naming the preview_*_spot tools as the required source, so selection guidance is clear but not fully routed.

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; on failure, diagnostic detail when the tool provides it.
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 disclose that this is a non-readOnly, non-destructive, non-idempotent write operation. The description adds valuable postcondition behavior: it confirms the property in XMP and reports failure if it never lands there. It does not cover permissions or behavior when the property already 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, front-loaded with the action and target, and contains no filler. The second sentence adds the critical verification and failure behavior.

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 do not need explanation. The description covers the action, target, verification behavior, and failure mode, which is complete enough for this two-parameter write 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 coverage is 100%, so both parameters are fully documented in the input schema. The description adds a 'key/value pair' framing but no additional format, validation, or usage details 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?

The description states a specific verb (attach), resource (custom property key/value pair), target (active sequence), and verification against the XMP packet. It distinguishes the tool from generic metadata setters by emphasizing XMP confirmation and failure reporting.

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 when-to-use, when-not-to-use, or alternative tools are mentioned. Sibling tools such as add_custom_metadata_field and set_xmp_metadata are not referenced, so the agent must infer 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.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, non-destructive and non-openWorld, so the safety profile is largely covered. The description adds genuinely new behavioral context: 'Local-only', implying no network/media fetch, and 'never changes Premiere', plus the scoring and fix-route output shape. It stops short of noting runtime or input-size limits for large snapshots.

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?

Front-loaded with the verb 'Audit' and the target, then the defect enumeration, then outputs, then the safety note. The eleven-item check list is long but each entry is a concrete, non-redundant check that helps an agent predict coverage. Slight verbosity in the enumeration keeps it from a 5.

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 deeply nested snapshot schema at 100% coverage and an existing output schema, the description supplies the remaining context an agent needs: scope (single snapshot), the breadth of detection, the output shape in prose, and the local read-only guarantee. Missing only comparison with adjacent audit tools, but that is a usage-guideline gap rather than a completeness 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 every one of the seven parameters (frame_rate, gap_min_frames, max_speed_percent, expected_frame_rate, flash_frame_max_frames, expected_duration_seconds, snapshot) is documented with defaults and ranges in the schema. The description adds no semantics 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?

States a specific verb (audit) and resource (one sequence snapshot), then enumerates the eleven defect classes it detects (flash frames, gaps, overlaps, disabled clips, repeated shots, video without audio, extreme speed, invalid times, empty tracks, leading black, trailing gaps) and the outputs (0..100 score, findings with timecodes, fix routes). This is far more specific than the name alone and distinguishes it from read-only inspectors like inspect_sequence_review_report or diff_sequence_snapshots.

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 specifying that it audits 'one sequence snapshot', which signals the input precondition, but it names no alternatives and gives no explicit when-to-use or when-not-to-use guidance versus closely related siblings such as inspect_sequence_review_report, analyze_video_qc, or diff_sequence_snapshots. Usage is inferable but not spelled out.

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 SequenceA

Auto-reframe a sequence into a new sequence of target_width x target_height. Premiere derives the new sequence from the source height (a 1080p source at 9:16 comes out 607x1080), so the tool then sets the requested frame size and verifies it; the Auto Reframe effect refits to the new size.

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; on failure, diagnostic detail when the tool provides it.
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 declare non-read-only, non-destructive, non-idempotent, but the description adds real behavior the annotations cannot: it creates a NEW sequence, Premiere derives dimensions from source height, the tool then forces the requested frame size and verifies it, and the Auto Reframe effect refits afterward. This is useful operational context beyond the flags.

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, front-loaded with the action and its output shape, with no filler. The second sentence is dense but every clause carries information about the tool's internal behavior.

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, return values need no explanation, and the description covers the creation semantics, the dimension quirk, and verification. It omits any mention of when to prefer this over simpler resize tools, which would round it out.

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 genuine semantics for target_width/target_height by explaining Premiere's derived-sizing behavior (1080p at 9:16 yields 607x1080) before the requested size is applied.

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 ('Auto-reframe a sequence into a new sequence of target_width x target_height'), and the phrase 'into a new sequence' distinguishes it from resolution-mutating siblings like set_sequence_resolution or set_scale_to_frame_size.

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 only implied: no explicit when-to-use, when-not, or named alternative is given. An agent can infer this is for reframing (e.g., to vertical) but must decide on its own versus set_sequence_resolution or set_scale_to_frame_size.

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

EXPERIMENTAL (undocumented QE DOM): Add the same video transition at each eligible cut point on a track and report per-cut readback.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the safety profile is covered. The description adds valuable context beyond annotations by labeling the tool EXPERIMENTAL and noting it relies on undocumented QE DOM, plus it reports per-cut readback. It does not describe failure modes or reversibility, but it meaningfully enriches the behavioral picture.

Agents need to know what a tool does to the world before 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 covers the experimental caveat, the action, the scope, and the readback behavior. Every clause earns its place, with 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?

An output schema exists, so return values do not need explanation, and annotations cover safety hints. The description supplies the experimental QE DOM warning and the batch scope. It is nearly complete, though it could clarify what makes a cut point eligible or note failure handling 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 all three parameters. The description adds no parameter-level meaning beyond what the schema provides. Baseline 3 is appropriate when 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 gives a specific verb and resource: adding the same video transition at each eligible cut point on a track. It distinguishes this batch operation from single-transition siblings like add_transition and add_transition_to_clip. The scope is clear enough for an agent to identify the tool's function 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 description implies usage through scope: batch-adding the same transition across eligible cuts on one track. However, it does not explicitly state when to choose this tool over alternatives such as add_transition, add_transition_to_clip, or batch_apply_effect. No exclusions or prerequisites are provided, so the guidance remains minimum viable.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false. The description adds valuable behavioral detail beyond annotations: every target is preflighted and then verified by component-count readback. It does not clarify idempotency behavior or partial-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?

Two sentences, front-loaded with the core purpose followed by a concise behavioral note about preflight and readback. No redundancy or wasted 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 batch mutation tool with rich annotations and an output schema, the description is largely complete: it names the effect types, target scopes, and verification behavior. It lacks explicit usage exclusions and idempotency notes, but the structured fields cover the remaining safety and return-value 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 all four parameters are fully documented in the schema. The description restates the target modes and clarifies that a single effect is applied in batch, but adds no syntax, format, or constraint details 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 verb (Apply) and resource (one audio or video effect) with clear batch scope (selected clips, a track, or all compatible clips). It implicitly distinguishes from single-clip apply_effect and apply_audio_effect siblings through the batch/target framing, but never names them 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 description establishes the operation and its target modes, giving implied usage context. However, it offers no explicit when-to-use or when-not-to-use guidance relative to alternatives like apply_effect, apply_audio_effect, or remove_effect.

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; on failure, diagnostic detail when the tool provides it.
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, openWorldHint=false, and idempotentHint=false. The description adds no behavioral context beyond what annotations and schema already provide—no auth needs, side effects, rate limits, or clarification of the questionable 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?

A single front-loaded sentence with zero waste. It states the operation, batch nature, and scope compactly.

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 scope, and the rich schema plus output schema reduce the burden. However, it omits usage guidance, sibling differentiation, and the conditional dependency that track_type and track_index are required when target='track'.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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, including enums and conditional requirements. The description mentions target options but adds no syntax or format detail beyond the schema; 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?

States a specific verb (enable/disable), resource (multiple clips), and scope (selected, track, all). It implicitly distinguishes itself from the sibling single-clip tool 'enable_disable_clip' through 'multiple clips at once,' but does not explicitly name 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?

No when-to-use or when-not-to-use guidance, and no alternatives are named. The scope options hint at batch scenarios, but there is no explicit context or prerequisite information for choosing this tool over siblings like enable_disable_clip or set_clip_properties_batch.

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 ClipsB

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds no behavioral context beyond what the annotations and schema give – it does not explain that renaming is not idempotent, whether existing names are overwritten, or how linked/associated clips are affected.

Agents need to know what a tool does to the world before 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, zero filler, with the core action front-loaded and the notable feature (sequential numbering) appended. Appropriately sized for this 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?

With 100% schema coverage, a full set of annotations, and an output schema, the description is largely sufficient for correct invocation. The only meaningful gap is the absence of usage/routing context for when batch rename is preferable to single-clip rename.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 five parameters are already fully documented in the schema, including the {n}/##/{name} pattern syntax. The description's 'supports sequential numbering' merely echoes the schema's pattern placeholder docs, adding no 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?

States a specific verb (rename), resource (clips), scope (multiple, on the timeline) and mechanism (using a pattern). This implicitly but clearly distinguishes it from the single-clip 'rename_clip' sibling and from 'rename_track'/'rename_bin'.

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, no alternatives named (e.g., rename_clip, set_clip_properties_batch, select_clips_by_pattern), and no prerequisites such as needing clips selected on the target track. 'Supports sequential numbering' is a capability, not routing guidance.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the sparse annotations, the description discloses that the tool is local-only, never touches Premiere, returns inline (up to 512 KiB) or writes into an approved workspace, and errors on karaoke+SRT. These are exactly the behavioral facts an agent needs and none are contradicted by the readOnlyHint=false / destructiveHint=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?

Roughly two dense sentences for a 16-parameter tool, with the core purpose front-loaded and the safety/output clause second. Efficient, though the first sentence packs a long clause list that is more enumeration than prose.

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 an output schema present, the description correctly does not explain return values, and it covers the write path, workspace constraint, format semantics and non-interference with Premiere. 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.

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 carries per-parameter detail and the baseline is 3. The description nonetheless summarizes the parameter set coherently ('balanced word groups, sentence-aware breaks, min/max cue durations, optional karaoke word timestamps, emphasis and speaker markup'), giving an agent a mental model of the knobs before opening 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 ('Build a CapCut/Submagic-style SRT or VTT caption artifact') and scopes it to a caller-supplied word timeline. The 'Local-only ... never changes Premiere' clause implicitly distinguishes it from the sibling create_caption_track, which mutates the 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?

Usage is clear from context: build a standalone caption file rather than apply captions to the timeline, and 'karaoke ... Errors for SRT' tells the agent a format/option constraint up front. It never names create_caption_track or another sibling explicitly, so the alternative routing 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.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (destructiveHint=false, openWorldHint=false), and the description adds useful return-format context ('inline image data'), which an agent needs to know. It does not disclose resolution, size limits, or cost/latency implications of returning image 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.

Conciseness4/5

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

Two short sentences with the action front-loaded and no filler. The second sentence is somewhat redundant with the first's 'for the LLM to see', slightly diminishing the economy.

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, no-output-schema-needed (output schema present) capture tool, this covers what the agent needs to call it and understand the response form. Minor gaps: no mention of alternatives or capture-at-time 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?

Only one optional parameter, and schema description coverage is 100%, so the schema fully documents time_seconds. The description adds nothing about the parameter — it says 'current frame', which glosses over the ability to capture at an arbitrary time_seconds. 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?

States a specific verb (capture) and resource (current frame) plus the return form (inline image data). It is clear in isolation, but it does not distinguish itself from adjacent tools like export_frame, match_frame, or export_sequence_review_frames that also produce frame imagery.

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 second sentence implies the use case (letting the AI visually inspect the timeline state), which is genuine implied guidance. However, there is no explicit when-to-use/when-not rule and no pointer to alternatives such as export_frame for on-disk output.

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; on failure, diagnostic detail when the tool provides it.
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 cover read-only, idempotent, non-destructive, and closed-world safety. The description adds valuable context: it operates local-only on caller-supplied normalized rects, uses approximate overlay zones, and never reads or changes Premiere. This goes beyond the annotations but stops short of describing output format or edge cases.

Agents need to know what a tool does to the world before 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 the core action and result, the second clarifies local-only scope and Premiere isolation. 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.

Completeness5/5

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

Given the existing output schema and rich annotations, the description provides everything needed: purpose, scope, platform list, local-only behavior, and explicit non-interaction with Premiere. No significant gaps remain 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 all three parameters. The description mentions 'caller-supplied normalized rects' and lists platform names, but adds little 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?

States a specific action: check caption, title, logo, and graphic rectangles against platform UI overlay zones and suggest the nearest clear position. It names the resource (rectangles, overlay zones) and lists target platforms, making it immediately distinguishable from 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 Guidelines3/5

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

Usage is implied for checking safe zones, but the description does not explicitly say when to use this tool versus alternatives like validate_platform_publish_package or get_caption_style_guidance. No exclusions or prerequisites are stated.

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; on failure, diagnostic detail when the tool provides it.
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 covered without the description. The description's only added value is glossing 'offline' as 'missing', but it omits scope (project-wide vs. active sequence) and what a positive result means.

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 no filler. It is efficient, though at this length it leaves useful routing detail on the table.

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 need not be explained, and zero params plus annotations cover much of the burden. The real gap is that with get_offline_media in the sibling set, the definition never explains how this tool differs or when to prefer 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 takes zero parameters, so there is nothing for the description to disambiguate. The baseline of 4 applies; no parameter-level gaps exist.

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 ('Check') and resource ('offline media'), and clarifies 'offline' as '(missing)'. However, it does nothing to distinguish itself from the near-identical sibling get_offline_media, leaving the agent unable to tell them apart without inspecting both 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?

There is no when-to-use guidance, no prerequisites, and critically no mention of the sibling get_offline_media (or get_used_media_report), which appears to serve an overlapping purpose. The agent is given no routing information at all.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly=false, destructive=false, and idempotent=false. The description adds a useful behavioral outcome beyond those annotations: clearing the points resets the item to full duration. It does not cover permissions or undo semantics, but for a non-destructive mutation this is solid added 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 sentence, front-loaded with the action and target, with no redundant or filler content. Every phrase contributes to identifying the tool and its 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 three-parameter mutation tool with full schema coverage, annotations, and an output schema, the description is nearly complete. It states what the tool does and the key outcome. The main gap is lack of explicit usage alternatives among many siblings, which is minor given the clear naming.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 item_id, clear_in, and clear_out are already documented with types, defaults, and meanings. The description mentions in/out points but adds no syntax or format detail beyond the schema, 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?

States a specific verb (clear), resource (in and/or out points), and target (project item), and adds the effect (reset to full duration). This distinguishes it from the sibling clear_sequence_in_out by scoping to a project item rather than 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 when to use it: when you need to remove in/out points from a project item and restore full duration. However, it gives no explicit when-not guidance or directs the agent to alternatives like set_item_in_out or clear_sequence_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 OutC

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and idempotentHint=false, so the agent knows it mutates state non-destructively. The description adds nothing beyond that — no note on whether the clearing is undoable, whether it affects only the active sequence, or what happens when the specified point is already unset. 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.

Conciseness4/5

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

A single short sentence with the resource and scope front-loaded; nothing is padded or redundant. It is close to minimal without being under-specified for a tool this simple.

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 need no explanation, and the two parameters are fully documented in the schema. Still, for a state-mutating tool with four annotations dialed in, the absence of any sibling differentiation or edge-case note leaves a modest 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% with both booleans documented including their defaults, so the baseline is 3. The phrase 'in and/or out' loosely signals that either flag can be used independently, but adds no real semantics 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 states a specific verb ('Clear') and resource ('in and/or out points on the active sequence'), making the operation immediately legible. It does not, however, distinguish itself from close siblings like clear_item_in_out or set_sequence_in_out_points, so it lands at a solid 4 rather than 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 when-to-use guidance, no named alternative, and no note about when clearing one point vs both is appropriate. The agent has to infer that this applies to a sequence rather than a clip, even though clear_item_in_out exists as a sibling.

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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true, idempotentHint=false, and readOnlyHint=false, so the safety profile is covered. The description adds the useful scope detail that all clips (not one) are discarded, but says nothing about whether unsaved source in/out points are lost or whether the operation is reversible.

Agents need to know what a tool does to the world before 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. Nothing to trim.

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 and annotations carrying the destructiveness signal, the description is essentially complete. The only shortfall is the absence of any usage context relative to close_source_monitor.

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 the baseline is 4. There are no parameter semantics to explain or omit.

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 ('Close') and resource ('all clips in the Source Monitor'), and the word 'all' distinguishes it from the sibling close_source_monitor, which closes the monitor itself rather than its clips. Clear, 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?

No when-to-use or when-not-to-use guidance is given. The agent must infer from the name that this is the bulk-clear operation, and there is no mention of the related monitor-closing or per-clip close operations that might be preferred.

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 an open Premiere Pro project: the active one, or the open project at project_path. Verifies it is no longer open and reports which project is active afterwards.

ParametersJSON Schema
NameRequiredDescriptionDefault
save_firstNoWhether to save before closing (default: true)
project_pathNoPath of the open project to close (default: the active project)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is covered. The description adds genuinely new post-condition context: it verifies the project is no longer open and reports which project becomes active, which the annotations 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?

A single tight sentence that front-loads the verb and resource and then qualifies scope and post-conditions. Every clause carries information; 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?

The tool's complexity is low, annotations plus an output schema carry the return-value burden, and the description covers scope and post-state behavior. It is complete enough to call correctly, though it omits any note about the save-before-close consequence of save_first.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (save_first, project_path) are already documented with defaults in the schema. The description only restates the project_path default (active project) and adds nothing about save_first's save-before-close behavior, 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 (close) on a specific resource (an open Premiere Pro project) and defines the two scopes it operates on: the active project or the one at project_path. This is easily distinguished from siblings like close_sequence, close_all_source_clips, and save_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 makes the selection condition explicit (active project vs. the project at project_path), so an agent knows which target it will act on, but it gives no guidance on when to prefer this over save_project/save_project_as or on prerequisites such as unsaved work being discarded.

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

Request closing a sequence timeline tab. Premiere exposes no open-tab enumeration, so dispatch is requested_unverified; the sequence stays in the project.

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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true and non-idempotent, so the safety profile is partly covered. The description adds genuinely non-obvious context the annotations cannot carry: there is no open-tab enumeration in Premiere, so the dispatch is "requested_unverified," and the underlying sequence survives the close. That verification limitation is exactly the kind of behavioral caveat that changes how an agent should treat success/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 sentences, zero padding, and the operation is front-loaded before the caveat. The dense phrasing ("dispatch is requested_unverified") is jargon but earns its place by conveying a real verification limit.

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 values need no explanation, and the tool is single-parameter and simple. The description covers the critical caveats (unverified dispatch, non-destructive to project data). It stops short of stating what happens when the target sequence is not open, which is the one remaining gap for an unverifiable 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 the single parameter's default ("Uses active sequence if omitted") is already documented in the schema. The description adds no additional meaning about sequence_id resolution or naming ambiguity, 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 and resource ("Request closing a sequence timeline tab") and immediately scopes it against the natural confusion case with delete_sequence by noting "the sequence stays in the project." An agent can distinguish this from deletion or from close_project 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 contrast with deletion is implied by "the sequence stays in the project," which is useful routing information. However, there is no explicit when-to-use statement, no mention of prerequisites (must the sequence be open/active?), and no named alternative among the many siblings such as delete_sequence or close_project. Usage is inferable but not stated.

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 showing in the Source Monitor. Premiere then shows the previously opened clip, if any; the result names it.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare destructiveHint=true, idempotentHint=false, and readOnlyHint=false. The description adds genuine behavioral context beyond that: it explains the post-condition (the previously opened clip reappears, if any) and that the result names it, which helps the agent predict the resulting state.

Agents need to know what a tool does to the world before 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 followed by the resulting state. Every clause earns its place 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 zero-parameter destructive close tool with an output schema present, the description covers the action and its post-condition adequately. It need not explain return values since the output schema does that.

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 the baseline is 4; there is nothing for the description to disambiguate and no schema gap to compensate for.

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 (Close) and resource (the clip currently showing in the Source Monitor). The 'currently showing' scoping implicitly distinguishes it from the close_all_source_clips sibling, though that sibling is never named explicitly.

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, no prerequisites, and no alternatives named. The agent must infer that this applies only to the single active Source Monitor clip rather than the close_all_source_clips sibling.

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 through experimental QE Lumetri insertion. Requires Lumetri component and requested property readback; rendered output is not verified.

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; on failure, diagnostic detail when the tool provides it.
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 only declare the mutation profile (readOnly=false, destructive=false, idempotent=false). The description adds genuinely useful context beyond that: the implementation is 'experimental', it depends on a Lumetri component plus property readback, and 'rendered output is not verified' — a real caveat about reliability that annotations cannot 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 tight sentences, operation stated first, caveats second. Nothing redundant and 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?

An output schema exists so return values need not be described, and the description covers prerequisites and the unverified-render caveat. It could say more about how failure manifests when the Lumetri component or readback is missing, but it is close to complete for a single-node color 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 ranges documented per parameter (blacks/whites -100..100, exposure -4..4, saturation 0-200). The description adds no further parameter 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?

States a specific verb+resource ('Apply basic color correction') plus the mechanism ('QE Lumetri insertion'), so the agent knows what operation is performed. It does not distinguish itself from color-adjacent siblings such as set_color_value, apply_lut, or set_effect_property, which is the main 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 gives a precondition ('Requires Lumetri component and requested property readback') but never says when to prefer this over apply_lut or set_effect_property, nor any when-not guidance. Usage is implied rather than routed.

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

compare_cmx3600_edlsCompare Cmx3600 EdlsB

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; on failure, diagnostic detail when the tool provides it.
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 asserts 'Read-only; it does not alter either interchange file or Premiere,' but the annotations declare readOnlyHint=false. This directly contradicts the structured safety signal, leaving an agent unable to trust which is correct and creating the exact ambiguity annotations exist to prevent.

Agents need to know what a tool does to the world before 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: what it does first, then the safety claim. No filler, no repetition of the tool name, and the operationally important scoping detail 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?

An output schema exists so return values need not be spelled out, and the description still summarizes the report shape (added/removed/changed events). The only shortfall is that the read-only/no-alteration claim conflicts with annotations rather than resolving 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 are documented in the schema (baseline/revised .edl paths). The description adds only the 'local' constraint and the comparison key ('event number'), which is marginal value over an already-complete 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?

Specific verb (compare) plus resource (two local CMX 3600 EDLs) and the matching key (event number), with the output named ('bounded added, removed, and changed editorial events'). It is instantly distinguishable from siblings like inspect_cmx3600_edl and validate_cmx3600_edl, which operate on a single EDL.

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 ('compare two local CMX 3600 EDLs') but never states when to pick this over the sibling inspect/validate/import EDL tools, nor any prerequisite such as both files existing locally. Implied context only, not explicit guidance.

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

compute_mask_fit_motionCompute Mask Fit MotionA
Read-onlyIdempotent

Inspect only. Compute the Motion Scale (%) and Position that place a still image's subject inside an existing Rounded Crop, Crop, or similar mask effect. Reads the sequence frame size, the source frame size, current Motion values, and the mask effect's parameters, then solves the geometry deterministically from a caller-supplied subject box (fractions of the source image, for example head-top to chin). No image analysis and no changes to Premiere. Apply the result with set_clip_scale and set_clip_position (or set_effect_property), then verify with capture_frame. Assumes Rotation 0 and uniform scale; mask geometry is treated as fixed in the sequence frame (mask_space 'sequence').

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the video clip that holds the still image and its Motion effect.
subjectYesSubject box in the SOURCE image as fractions of the source frame (0..1), for example top = head-top and bottom = chin or collar.
fit_axisNoFit the subject's height to placement top/bottom (default) or its width to placement left/right.
placementNoWhere the subject should sit inside the mask, as fractions of the mask's bounding box. Defaults: top 0.15, bottom 0.85, center_x 0.5 (height fit); left 0.15, right 0.85, center_y 0.5 (width fit).
mask_spaceNoWhere the mask geometry lives. 'sequence' (default): the mask stays fixed in the sequence frame while Motion moves the image (mask on an adjustment layer or nest, or an effect that renders after Motion). 'clip': the mask moves with the clip's Motion, so Motion cannot reframe the subject inside it and the tool returns an error explaining that.
mask_effectNoDisplay name or match name of the mask effect (case-insensitive). Defaults to 'Rounded Crop'. Built-in 'Crop' Left/Top/Right/Bottom percentages are supported too.
mask_node_idNoNode ID of the clip that carries the mask effect when it is not the image clip, for example an adjustment layer or nest above it. Defaults to node_id.
source_widthNoSource image width in pixels. Overrides the value read from project metadata; required with source_height when Premiere does not report it.
mask_overrideNoMask bounding box as fractions of the SEQUENCE frame. Skips reading mask parameters; use it when the effect's parameters cannot be interpreted.
source_heightNoSource image height in pixels. Overrides the value read from project metadata.
source_prescaleNoExtra scale Premiere applies before Motion, for example when Scale to Frame Size is on (sequence height / source height for a letterboxed fit). Defaults to 1.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description reinforces 'no changes to Premiere' plus discloses non-obvious limits: no image analysis, assumes Rotation 0 and uniform scale, mask geometry treated as fixed in sequence frame, and an explicit error condition for clip-space masks.

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?

Front-loads the 'Inspect only' constraint and the core purpose, then moves to assumptions. Dense but mostly earning its place; the final assumptions sentence could be trimmed slightly without loss.

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 not be explained. The description covers scope, prerequisites, apply/verify workflow, error behavior, and geometric assumptions for an 11-parameter nested-schema tool – 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%, so parameters are already well documented; the description's main additions are the subject-box example ('head-top to chin') and the mask_space semantics. It adds some framing but not enough beyond the schema to exceed 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 and resource ('Compute the Motion Scale (%) and Position that place a still image's subject inside an existing Rounded Crop, Crop, or similar mask effect') with the exact inputs read and the deterministic solution method. An agent can distinguish this from sibling geometry/motion tools immediately.

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 frames the tool as 'Inspect only', names the downstream apply tools (set_clip_scale, set_clip_position, or set_effect_property) and the verification step (capture_frame). It also defines when the tool is inapplicable via the mask_space 'clip' case that returns an error.

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 TransferA

Collect (copy) or transcode project media into a new project with Premiere's Project Manager. Premiere writes a Copied_ folder inside destination_path (created if missing); success is reported only after that folder holds the copied .prproj, with the copied files listed.

ParametersJSON Schema
NameRequiredDescriptionDefault
transcodeNoTranscode media to match the sequence instead of copying it (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_locationNoMust be true (the default): Premiere's scripted Project Manager always collects media into the destination.
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; on failure, diagnostic detail when the tool provides it.
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?

Beyond the annotations (which only declare readOnly=false, destructive=false, idempotent=false), the description discloses concrete side effects and contract details: a Copied_<project> folder is written inside destination_path, that folder is created if missing, and success is only reported once the copied .prproj is present with files listed. This is exactly the kind of behavior an agent cannot infer from 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?

Two dense sentences with zero filler, front-loading what the tool does before the side-effect contract. Nothing is repeated from 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?

An output schema exists, so return values need not be described, and the description covers the write contract and success condition well. The one remaining gap is which project/sequence is the source of 'project media' (presumably the open project and, depending on include_all_sequences, the active sequence), which an agent must infer.

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 earns above baseline by explaining the copy-vs-transcode distinction that maps to the 'transcode' flag and by clarifying destination_path semantics (target of the Copied_<project> folder, auto-created). It still does not touch the remaining boolean flags, but they are well documented 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 names a specific verb pair ('Collect (copy) or transcode') and resource ('project media into a new project') via Premiere's Project Manager, so the operation is unambiguous. It does not explicitly differentiate itself from the nearest sibling (consolidate_duplicates) or other project-level tools, keeping it 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 Guidelines3/5

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

Usage is only implied: the copy/transcode framing suggests consolidating media for transfer or archival, but the description never states when to choose this over alternatives such as export_as_project, create_project_backup, or consolidate_duplicates, and gives no prerequisites. Adequate but leaves routing to inference.

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; on failure, diagnostic detail when the tool provides it.
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 this is a non-read-only, non-idempotent, non-destructive operation, so the baseline bar is lower. The description adds one genuinely useful behavioral fact not in the annotations - success is only reported when duplicate media groups actually decrease - but it never says whether duplicates are merged, deleted or relinked, nor whether the change is reversible.

Agents need to know what a tool does to the world before 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 action is stated first and the success condition second. Nothing to trim.

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-value detail is not required. However, for a parameterless mutation the description never defines its operating scope (whole project vs. selection vs. active sequence) or whether duplicates across bins are touched, which is a meaningful gap for an agent deciding whether to invoke 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 takes zero parameters, so per the rubric the baseline is 4. The description does not need to explain any argument syntax, and it correctly does not invent parameter details that don't exist.

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+resource: consolidating duplicate project items, with the additional novel concept of 'duplicate media groups'. That distinguishes it from generic cleanup tools, but it never names its obvious sibling get_duplicate_media or consolidate_and_transfer, so an agent must infer the boundary.

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, no prerequisites, and no alternatives named. The natural workflow (run get_duplicate_media to detect, then consolidate to act) is left entirely to inference, as is whether this should be run per-item or project-wide.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations declare a non-read-only, non-destructive, non-idempotent mutation, so safety is largely covered. The description adds a genuinely non-obvious behavioral constraint: intrinsic properties such as Motion/Opacity are excluded unless specified. It stops short of saying whether existing target effects are replaced or merged, which would be the remaining high-value 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 short sentences, front-loaded with the core action and followed by the one meaningful caveat. No filler or restated title 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 an output schema present, return values need not be explained, and annotations carry the safety profile; the description covers the action and the intrinsic-property exclusion. The only real gap is the replace-vs-merge semantics on the target clip, which matters for a non-idempotent mutation.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 documented in the input schema, including the 'copies all non-intrinsic effects if omitted' behavior for effect_name. The description adds no format or syntax detail beyond that, 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?

States a specific verb and resource ('Copy all effects (or a specific effect) from one clip to another') and clarifies scope with the intrinsic-property caveat. It does not name the nearest siblings (copy_effect_values, paste_clip_attributes, batch_apply_effect), so an agent still has to infer differentiation, which keeps it below 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 implies that omitting effect_name copies everything, but it gives no when-to-use guidance against close alternatives like copy_effect_values or paste_clip_attributes, and no prerequisites (e.g. both clips must exist in the same sequence). Usage context is left entirely to inference.

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; on failure, diagnostic detail when the tool provides it.
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 declare a non-read-only, non-idempotent mutation but add nothing about constraints; the description supplies the real behavioral substance: the same-effect prerequisite on both clips and a deliberate carve-out for Blend Mode due to enum corruption on cross-clip writes. That safety caveat is valuable context beyond the structured fields, though error behavior when effects differ is not described.

Agents need to know what a tool does to the world before 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 tight sentences, each earning its place: the action, the precondition, and the exclusion with reason. Nothing is padded and the core operation 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?

An output schema exists so return values need not be explained, and the description covers the key precondition and the notable carve-out. It is close to complete for a moderate-complexity mutation tool, missing only what happens on failure (e.g., mismatched effects) to reach 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 coverage is 100% with all three parameters documented, so baseline is 3. The description implies the source/target/effect_name mapping through prose but adds no syntax, format, or edge-case detail beyond what the schema already carries.

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: copies scalar effect-property values from one effect to the matching effect on another clip. The scoping word 'scalar' plus 'matching effect' distinguishes it from broader siblings like copy_effects_between_clips and paste_clip_attributes without needing to open a 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?

States an explicit precondition ('Both clips must already have the same effect applied') and an explicit exclusion with rationale (Blend Mode is refused). It gives when-to-use context clearly but never names a sibling alternative, 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.

create_bars_and_toneCreate Bars And ToneA

Create a Bars and Tone synthetic media item in the project (useful for leader/calibration). Returns the created item's name, nodeId, and treePath, found by reading the project back.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName for the bars and tone item (default: 'Bars and Tone')
widthNoFrame width in pixels (default: 1920)
bin_idNoOptional destination bin: node ID, slash-separated bin path from the project root, or bin name. The bin is resolved before anything is created; the item is moved there and its location read back.
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; on failure, diagnostic detail when the tool provides it.
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 the write nature, non-destructive and non-idempotent hints, so the description's main addition is the read-back verification and returned fields. It adds some behavioral detail but does not cover permissions, side effects, or reversibility 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?

Two sentences, front-loaded with the purpose and then the return information. 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?

Given the rich schema (100% coverage), output schema, and annotations, the description supplies the essential purpose and return behavior. It omits only when-to-use guidance and explicit sibling alternatives, but those are not required for calling correctly given the structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 eight parameters. The description does not add any parameter-level meaning 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.

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 Bars and Tone synthetic media item') and gives a use case, making the tool's purpose clear. It does not compare itself to any sibling tools (e.g., create_bin, add_title), 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 Guidelines3/5

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

It offers an implied usage context ('useful for leader/calibration'), which hints at when to use it. However, there are no explicit when/when-not rules or named alternatives among the many sibling creation tools.

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

create_binCreate BinA

Create a new bin (folder) in the project panel, optionally nested inside an existing bin. Reads the project back: verified is true only when the new bin is a direct child of the requested parent; otherwise the result reports outcome committed_unverified.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the new bin
parent_binNoOptional parent bin node ID, slash-separated bin path, or exact bin name. Alias of parent_bin_id that also accepts a path or name.
parent_bin_idNoOptional node ID of the existing parent bin (searched recursively through nested bins). Creates in the project root if both parent_bin_id and parent_bin are omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Annotations already state readOnlyHint=false, destructiveHint=false, and idempotentHint=false. The description adds useful verification semantics: it reads the project back, verified is true only when the new bin is a direct child of the requested parent, and otherwise the result reports committed_unverified. It still does not cover permissions or rate limits, so it falls 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.

Conciseness5/5

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

Two sentences, front-loaded: the first states purpose and the second explains verification outcome. Every sentence earns its place 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?

With annotations and an output schema present, the description covers the main action and the verification/outcome behavior. It omits sibling differentiation and usage context, but those gaps are relatively minor given the structured fields cover parameters and return shape.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 name, parent_bin, and parent_bin_id in detail. The description only restates that nesting is optional, adding no alias or path/name semantics 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.

Purpose4/5

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

States a specific verb and resource: creates a new bin/folder in the project panel, optionally nested inside an existing bin. It does not distinguish itself from sibling tools such as create_smart_bin or other bin-management tools, so sibling differentiation is absent.

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, no alternatives, and no exclusions. It only implies that it is for creating bins, without mentioning when to prefer it over create_smart_bin or other project-structure tools.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, but not which action mutates. The description adds real value by disclosing that import reports structural success only when the host exposes a caption-track readback, and that plan_lecture_workflow never contacts Premiere or changes an artifact. This per-action behavioral split is not derivable from the tool-level 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 dense sentences, front-loaded with the dual purpose and followed by the behavioral caveat. Every clause carries information, though the second sentence is somewhat long and packs two distinct behavioral points.

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 values need not be explained. For a 10-parameter tool with no required params, the description covers both modes, their side-effect profiles, and the success semantics of import. It stops short of explaining how the plan output should be reviewed, but the core is 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, including the two enums, is documented in the schema itself. The description adds no syntax or format detail 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.

Purpose4/5

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

The description states two specific verbs and resources: importing a reviewed caption artifact into the active sequence, and creating a local lecture-caption timing/review plan. That is clear and far from a restatement of the name. It falls short of 5 because it never names or distinguishes against caption siblings like build_caption_artifact or read_sequence_captions.

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 'already reviewed caption artifact' implies a prerequisite for the import path, and the two actions imply their own use contexts. However, there is no explicit when-to-use versus build_caption_artifact or read_sequence_captions, and no stated exclusions, so the routing 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.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful context beyond those fields: it is evidence-backed, returns ranked source/time candidates, and includes stale-state guards that require review before 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?

Two sentences are used with no waste. The core purpose is front-loaded, and the preview-before-mutation constraint is included immediately afterward.

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 rich annotations, complete parameter descriptions, and an output schema, the description only needs to orient the agent. It adequately explains the non-mutating planning role, the review requirement, and the preview step, though it could more explicitly distinguish this tool from create_editorial_plan.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 five parameters are already documented in the schema. The description does not add parameter syntax, defaults, or filtering semantics beyond what the schema provides, making the baseline score 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: create a non-mutating edit-plan scaffold from indexed Premiere context. It also distinguishes this planning step from the later mutation path by naming preview_edit_plan, so an agent can identify its role 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?

It says the returned candidates must be reviewed and that preview_edit_plan must be used before any mutation, which gives clear sequencing guidance. It does not explicitly name when to use create_editorial_plan or other planning siblings instead, so it falls short of exhaustive when/when-not guidance.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive, and closed-world, so the safety profile is largely covered. The description still adds genuinely new context: it never calls an AI/provider or Premiere, and it returns stable evidence IDs and context revisions for downstream review — information annotations cannot 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 tight sentences, front-loaded with the primary action and scope, followed by the crucial non-invocation guarantee. 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 read-only, idempotent tool with full schema coverage and an output schema, the description supplies the missing pieces: the source prerequisite and the no-external-call guarantee. Minor omission is any pointer to alternatives, but nothing critical for correct invocation 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?

Schema description coverage is 100%, so parameter documentation is already complete; the description only echoes the kind list. Baseline 3 is appropriate since the description adds little beyond the schema for the six 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 and artifact ('Create a compact Markdown reading view') plus the exact source material (transcript, shot, audio, note, source, timeline context). An agent can distinguish this from search_project_context or create_context_edit_plan 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 phrase 'from already captured local context' implies the prerequisite that context must first be captured (via manage_project_context), which is useful. However, it never states when to prefer this over siblings like search_project_context or preview_editorial_plan, so usage is only implied.

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; on failure, diagnostic detail when the tool provides it.
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?

The description explicitly states 'It never calls an LLM, uploads media, or changes Premiere,' which adds meaningful behavioral context beyond the readOnlyHint/openWorldHint annotations. This clarifies data locality and side-effect boundaries. It could mention whether the plan is persisted or returned only, but the coverage is strong.

Agents need to know what a tool does to the world before 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 action and immediately followed by 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.

Completeness4/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 and 100% schema coverage, the description covers the essential purpose and behavioral limits. It is nearly complete, though explicit guidance on when to use it versus preview_editorial_plan would make it fully self-contained for an agent navigating a large sibling set.

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 parameter semantics are largely handled by the schema descriptions. The description adds useful framing that the plan is 'evidence-backed' and 'from captured project context', which ties the project_id and intent parameters together conceptually. It doesn't add new param-level detail beyond the schema, so it stays at 4 rather than 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?

States a specific verb and resource: 'Create a local, evidence-backed editorial workflow plan'. It adds meaningful scope qualifiers (local, evidence-backed, from captured project context). It doesn't explicitly distinguish itself from the close siblings preview_editorial_plan or create_context_edit_plan, which leaves some ambiguity about when this differs from previewing.

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 says what it does but not when to use it versus alternatives like preview_editorial_plan or create_context_edit_plan. No exclusions, prerequisites (beyond schema references to manage_project_context), or conditions are given. An agent has to infer usage from the schema.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes beyond annotations to disclose important failure semantics: it stops on the first After Effects failure and does not claim rollback, which warns the agent about partial completion. Annotations cover safety profile (readOnly=false, idempotent=false), so this is meaningful added context, though it omits specifics like rate limits or what artifacts remain after a 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 no filler; the action is front-loaded and the constraints follow.

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?

Output schema exists so return values needn't be described, and the description supplies the confirmation requirement and failure behavior. It is essentially complete for a two-param tool, though it could note what happens to already-created recipes on 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%, so both parameters (preview_token, confirm_export) are already documented in the schema; the description only alludes to them ('one-time batch preview,' 'explicit export confirmation'). Baseline 3 is appropriate since 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?

States a specific verb ('Create') and resource ('MOGRT recipes') and ties it to 'a one-time batch preview,' which distinguishes it from the sibling preview_mogrt_batch without the agent needing to open either 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?

Makes the precondition explicit ('Requires explicit export confirmation') and implies it follows preview_mogrt_batch, but never names the alternative or states when not to call it.

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; on failure, diagnostic detail when the tool provides it.
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 already declaring the write/non-idempotent/non-destructive/non-open-world profile, the description adds useful constraints beyond them: it won't create projects or output folders and it lands in a saved project inside an approved workspace. It does not restate idempotency or describe failure/side effects on the AE project, so not 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.

Conciseness5/5

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

Two tight sentences with the core operation front-loaded and the confirmation constraint plus scope limitations following. 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?

An output schema exists, so return values need no explanation, and annotations carry the safety profile. The description supplies preconditions and scope limits, making it adequate for a mutating tool; only the linkage to the preview/token-producing sibling is 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?

Schema description coverage is 100%, so both parameters (preview_token, confirm_export) are fully documented in the schema. The description only echoes the confirmation requirement, adding no syntax or format detail beyond what the schema already provides; 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 and resource ('Create exactly one previewed MOGRT recipe') plus the target environment (saved AE project in the approved workspace). The word 'exactly one' cleanly differentiates it from the sibling create_mogrt_batch, and 'recipe' from 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 Guidelines4/5

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

Gives a clear precondition ('Requires explicit export confirmation') and an explicit negative ('it never creates projects or output folders'). It implies but does not name the prerequisite sibling preview_mogrt_recipe that issues the token, so it falls short of full when/when-not/alternatives guidance.

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

create_projectCreate ProjectC

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and idempotentHint=false, giving the safety profile. The description adds nothing beyond 'at the specified path,' which is already in the schema. No details on overwrite behavior, error conditions, or whether existing files are affected.

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 efficient sentence with no wasted words. However, it is so minimal that it does not front-load any additional useful context, which keeps it from a 5.

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 create tool with an output schema and clear annotations, the description is adequate but incomplete. It omits any mention of failure modes (e.g., path already exists) or relationship to project saving/opening, which an agent might need 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 'path' is fully described in the schema as the full file path for the new .prproj file. The description merely restates this without adding format or constraint details, so 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?

States a specific verb ('Create') and resource ('a new Premiere Pro project') with the path parameter. It clearly conveys the action, though it does not explicitly differentiate itself from siblings like create_project_backup or open_project.

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 open_project or save_project_as. It only describes what the tool does, not 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_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; on failure, diagnostic detail when the tool provides it.
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 that the tool writes but is not destructive, and the description adds meaningful behavioral details: backup is 'collision-safe' and 'byte-verified,' and the source project is neither opened nor modified. These details go beyond the annotations, though no auth requirements or output naming conventions are mentioned.

Agents need to know what a tool does to the world before 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 clause (collision-safe, byte-verified, no source modification) earns its place by adding a distinct 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?

An output schema exists, so return values need not be described. For a one-parameter tool with clear annotations, the description is largely complete, though it could specify the backup file naming or exact location ('beside' is slightly vague).

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 describes project_path as a path to an existing .prproj file. The description implies the path points to a project but adds no syntax, format, or constraint details beyond what the schema provides, 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 and resource ('Create a ... backup'), and the scope is precise ('beside an existing .prproj file without opening or modifying the source project'). It distinguishes this tool from save_project/save_project_as siblings by explicitly ruling out opening or modifying 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 Guidelines3/5

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

The description gives clear context for when this tool is useful (creating a safe backup of an existing project file), but it does not explicitly name alternatives such as save_project_as or export_as_project. Usage is implied rather than contrasted against siblings.

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

create_sequenceCreate SequenceC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description need not restate it. It adds nothing beyond them: no note on whether the new sequence becomes the active sequence, where it is placed, or what happens to the default preset discovery step.

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 short sentence with no filler, appropriately front-loaded. It is efficient but borders on under-specified rather than genuinely concise.

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 a mutation that has an output schema (so return values need not be explained), but the description omits key context an agent needs: relationship to the preset-based and clip-based creation siblings, and whether the created sequence becomes active.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 name and preset_path are fully documented in the schema; baseline 3 applies. The description adds no additional 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.

Purpose3/5

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

States a clear verb+resource (create a sequence in the project), so the basic action is unambiguous. However, it does not distinguish itself from very close siblings such as create_sequence_from_preset (which this tool overlaps with via the preset_path parameter) or create_sequence_from_clips, leaving the agent to infer the boundary.

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, no prerequisites, and no mention of alternatives despite many sibling sequence-creation tools. The agent must guess whether to use this versus create_sequence_from_preset or create_sequence_from_clips.

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

create_sequence_checkpointCreate Sequence CheckpointA

Clone a sequence into a named '[checkpoint]' copy before a risky edit and return a diff_sequence_snapshots-compatible snapshot of the original. Verifies the clone exists with matching track and clip counts, re-activates the original, and never deletes or overwrites anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoShort label for the checkpoint (default 'checkpoint').
sequence_idNoSequence ID or name to checkpoint. Defaults to the active sequence.
include_snapshotNoReturn the original sequence's structural snapshot for later diff_sequence_snapshots calls (default true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 non-destructive/not-idempotent; the description adds real behavioral context beyond that — verification of the clone's track and clip counts, re-activation of the original, and an explicit 'never deletes or overwrites' guarantee. It does not, however, mention permissions or failure handling, 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?

Three tight sentences, front-loaded with the core action and followed by the guarantee and side-effect details. No filler or restatement of the 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?

With an output schema present, the description correctly focuses on behavior rather than return fields, and it explains the snapshot's downstream use. A brief note on failure modes or the meaning of a non-idempotent checkpoint would complete it, but nothing an agent needs 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 label, sequence_id, and include_snapshot are already fully documented in the schema. The description adds the '[checkpoint]' naming convention and the snapshot's purpose, but nothing about parameter syntax or defaults beyond the schema. 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+resource (clone a sequence into a checkpoint copy) and further specifies the distinctive behavior: a named '[checkpoint]' copy plus a diff_sequence_snapshots-compatible snapshot. This distinguishes it from the sibling duplicate_sequence, which clones but does not produce a checkpoint snapshot.

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 a clear when-to-use trigger ('before a risky edit') and names the downstream consumer (diff_sequence_snapshots) for the returned snapshot. It lacks an explicit contrast with duplicate_sequence or create_project_backup, so the alternative condition 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.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds the ordering behavior ('in order'), which is useful context, but says nothing about what happens to existing sequences, error conditions, or ordering semantics. With annotations carrying the safety burden, 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?

A single efficient sentence with no waste and the core action front-loaded. It is arguably too terse to earn a 5 given the competitive sibling set, but nothing is redundant.

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-value explanation is unnecessary, and both parameters are fully documented. However, for a mutation/creation tool against a large sibling set of sequence-creation tools, the description does not supply enough routing or behavioral context to be 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 are documented by the schema; the baseline is 3. The phrase 'placing project items in order' loosely conveys that item_ids order is significant, but adds no syntax or format detail beyond what the schema already says.

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') plus the mechanism ('automatically placing project items in order'), which is clearer than a bare tautology. It does not, however, distinguish itself from close siblings like create_sequence, create_sequence_from_preset, or create_subsequence, which an agent must disambiguate between.

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 when-to-use guidance and no mention of alternatives such as create_sequence or create_sequence_from_preset, leaving the agent to infer selection from the name alone. The only implicit signal is 'from clips', which is unstated as a routing condition.

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

EXPERIMENTAL (undocumented QE DOM): create a new sequence from a specific preset file (.sqpreset) using qe.project.newSequence. Reports success only after a new sequence ID appears in the project collection; a same-name sequence that was already active is not treated as created.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the bar is lower. The description goes well beyond them by disclosing that this rides on an undocumented QE DOM API and, importantly, by defining exactly what counts as success (a new sequence ID must appear; a pre-existing same-name active sequence does not count). That success-semantics detail is genuinely non-obvious 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?

Compact, front-loaded with the EXPERIMENTAL warning so an agent reads the risk first, then the success criterion. Every sentence carries information; only mild concern is that the caveat sentence is somewhat dense.

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 values needn't be explained, and the description usefully documents the experimental nature and success semantics anyway. The one real gap is the absence of routing to the plain create_sequence/create_sequence_from_clips siblings, which matters given how many sequence-creation tools exist.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 only echoes that preset_path is a .sqpreset file and adds no format, constraint, or edge-case detail beyond that, matching the baseline for high-coverage schemas.

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+resource ('create a new sequence from a specific preset file (.sqpreset)') and even names the underlying API call (qe.project.newSequence). However, it does not explicitly contrast with close siblings like create_sequence or create_sequence_from_clips, so differentiation is left 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 Guidelines2/5

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

The description flags the tool as EXPERIMENTAL and undocumented, but gives no when-to-use guidance and never names an alternative (create_sequence, create_sequence_from_clips) or the condition that would select this over them. This is a caution, not usage direction.

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 BinA

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; on failure, diagnostic detail when the tool provides it.
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-destructive, non-idempotent, closed-world operation. The description adds the useful scope detail that the bin is created in the project panel, but does not describe duplicate-name behavior, permissions, or side effects beyond the 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?

A single short sentence with no waste, front-loading the action and resource. It is appropriately sized for a simple two-parameter creation 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?

The description covers purpose and location, and the output schema handles return values, while annotations cover safety. However, it omits practical context such as when a smart bin is preferable to a regular bin and how name collisions or query behavior are handled.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 no additional parameter meaning or formatting guidance, making the schema the sole source of 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 and resource ('Create a smart bin'), clarifies the synonym ('search bin'), and states the location ('project panel'). It clearly distinguishes this from the sibling 'create_bin' by specifying a smart/search bin.

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, no conditions for choosing this over 'create_bin' or search tools, and no prerequisites. Usage is only implied by the tool name and short description.

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; on failure, diagnostic detail when the tool provides it.
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 disclose mutation safety traits: readOnlyHint=false, idempotentHint=false, destructiveHint=false, and openWorldHint=false. The description adds that the source is a project item and that in/out points are used, but does not describe side effects, permissions, or whether the source item is modified.

Agents need to know what a tool does to the world before 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 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?

With a full schema, annotations, and an output schema, the description covers the basic operation adequately. However, for a creation tool surrounded by many editing siblings, it omits usage context, prerequisites, and differentiation from related tools such as create_subsequence or split_clip.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 in the schema. The description mentions in/out points and the project item source, but adds no unit, format, or constraint details 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 verb and resource: "Create a subclip" from a project item with in/out points. This is clear enough for an agent to understand the operation, but it does not distinguish the tool from nearby siblings such as create_subsequence, split_clip, or 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 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. It merely restates the action and required inputs, leaving the agent to infer appropriate scenarios 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.

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; on failure, diagnostic detail when the tool provides it.
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=false, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by stating that the original timeline clips are not replaced with a nested-sequence reference, which clarifies the mutation's effect on the existing timeline.

Agents need to know what a tool does to the world before 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 wording. The primary purpose is front-loaded, and the second sentence reveals the key behavioral distinction immediately after.

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 creation tool with annotations and an output schema, the description is largely complete: it states what is created, from what input, and one important non-replacement behavior. It could be slightly more complete by noting prerequisites such as an active sequence or selected clips, but the missing information 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 only parameter (ignore_track_targeting) is fully documented in the schema. The description does not add any meaning about that parameter, 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 and resource ('Create a separate subsequence') and clarifies the source scope ('from selected clips or a time range'). The second sentence further distinguishes the operation from nested-sequence replacement behavior, helping separate it from siblings such as nest_clips or unnest_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 gives implied usage context by naming the possible inputs (selected clips or a time range) and contrasting the result with nested-sequence replacement. However, it does not explicitly state when to use this tool versus create_sequence, duplicate_sequence, nest_clips, or other related siblings, nor does it mention prerequisites such as needing an active sequence.

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; on failure, diagnostic detail when the tool provides it.
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 non-destructive and non-idempotent behavior. The description adds useful context beyond annotations by noting that adding Crop uses the legacy QE catalog only when the clip does not already contain the effect, and that it reads back every requested value. It does not cover permissions or rate limits, but the extra implementation detail is valuable.

Agents need to know what a tool does to the world before 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 tightly written sentences with no filler. The core purpose is front-loaded, and the second sentence adds a specific behavioral nuance 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?

With a full output schema and annotations covering safety, the description provides enough to call the tool correctly. It explains the main action and a key conditional for adding the effect, though it could add more about prerequisites or how it differs from generic effect 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 all seven parameters are already documented. The description adds no parameter-level syntax or format details beyond the schema, 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 states a specific verb (apply or update) and resource (Premiere's Crop effect) on a clearly scoped object (one video clip). It is distinguishable from generic effect siblings like apply_effect or set_clip_properties because it names the exact effect and the 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 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 by naming the Crop effect and one video clip, but it does not explicitly state when to prefer this over siblings such as apply_effect, batch_apply_effect, or set_clip_properties. No when-not conditions 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.

delete_binDelete BinB
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; on failure, diagnostic detail when the tool provides it.
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 safety profile is fully covered by structured data. The description confirms the action is scoped to project panel bins but adds nothing about what happens to the bin's contents, whether the delete is reversible, or confirmation requirements.

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 no filler, ideal for a one-parameter operation. It is on the terse side but no sentence is wasted.

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 need not be explained. However, for a destructive operation surrounded by similar deletion siblings, the description omits disambiguation and any warning about losing bin contents, leaving an agent with a minimal but functional picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 bin_id parameter is already documented as accepting a name or node ID. The description adds no additional syntax, format, or lookup guidance beyond what the schema provides, making this the baseline 3.

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 — 'Delete a bin (folder) from the project panel' — and clarifies that a bin is a folder and where it lives. It does not distinguish itself from close siblings like delete_project_item, delete_multiple_project_items, or delete_sequence, so an agent cannot route between them from the description 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 when-to-use guidance, no mention of prerequisites, and no reference to alternative deletion tools such as delete_project_item, which also removes project panel items. The agent gets the action but no selection criteria.

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

delete_markerDelete MarkerB
Destructive

Delete a marker at a specific time position. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID (deletes from sequence if omitted). Premiere 25.2.3 timeline clips have no marker collection, so this refuses there.
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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, but the description goes further by disclosing the EXPERIMENTAL QE DOM caveat, the undoStackIndex receipt semantics, the undo-boundary protection, and the meaning of undoTracked:false. This is real behavioral context beyond structured fields, though the jargon makes it harder than it should be to extract.

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

Conciseness3/5

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

The first sentence is front-loaded and efficient, but the remaining sentences are dense, jargon-laden run-ons ('undoStackIndex movement... does not prove QE can reverse the marker') that take effort to parse. The caveat is worth including, but it is not structured for quick scanning.

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, return values need not be explained, and the annotations cover the destructive safety profile. The description supplies the critical experimental/reversibility caveat, so only the absence of alternative-tool routing keeps it from being 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 schema already documents node_id and time_seconds (including the sequence-vs-clip fallback behavior). The description adds no parameter-level detail of its own, 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 opening sentence gives a specific verb and resource ('Delete a marker') plus the scope ('at a specific time position'), which cleanly separates it from add_marker, update_marker and list_markers. It stops short of naming those siblings explicitly, so it is clear but not fully differentiated in-text.

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 never mentions the sibling marker tools or the conditions that select delete over update/add. The only routing hint (sequence vs clip) lives in the schema's node_id description, not the tool description.

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 ItemsA
Destructive

Delete several project items (bins, sequences, clips or files) and read back that each is gone. Every item is checked before any is deleted. organize_project_items_uxp with action 'remove' (authenticated UXP bridge) is the preferred, documented route; this CEP fallback deletes clips and files through a temporary bin, which cannot be undone here. Items (or bins whose contents are) used on a timeline are refused unless confirm_remove_from_sequences is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsYesArray of node IDs or names of items to delete
confirm_remove_from_sequencesNoDelete even when an item (or something inside a bin) is used in a sequence, which also removes those timeline clips (default: false).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Beyond the destructiveHint annotation, it discloses that every item is validated before any deletion (atomic pre-check), that deletion goes through a temporary bin, that it cannot be undone here, and that timeline-used items are refused unless confirmed. That is exactly the operational context annotations cannot 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?

Four dense sentences with no filler: scope, atomicity, routing/fallback, and the refusal rule are each front-loaded in order of decision relevance. Nothing repeats 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 destructive batch tool with a pre-validation pass, an irreversible-in-place fallback path, and an existing output schema, the description covers everything the agent needs to call it safely and 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?

Schema coverage is 100% so both parameters are documented in the schema. The description still adds value by stating the confirm flag's real effect (overrides the timeline-usage refusal) rather than just restating the default:false note.

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 (delete) with the exact resource types (bins, sequences, clips, files) and its scope (multiple, not single). It also distinguishes itself from sibling delete_project_item and delete_bin by naming the items it covers.

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 routes the agent: organize_project_items_uxp with action 'remove' is the preferred documented route, this CEP call is the fallback. It also states the condition under which items are refused and what flag overrides that refusal.

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 FilesB
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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true, readOnlyHint=false, non-idempotent, and closed-world, so the safety profile is covered. The description adds the project-level scope and the 'Uses QE DOM' implementation note, but omits whether deletions are reversible, whether previews regenerate, or whether the project must be saved first.

Agents need to know what a tool does to the world before 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 scope, with no filler. Every clause 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?

An output schema exists, so return values need not be explained, and annotations cover the destructive profile. However, for an irreversible cache wipe the description adds no cautionary context about consequences or recovery, leaving a gap relative to the action's risk.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 media_type parameter with its video/audio/all options is fully documented in the schema. The description says 'all preview files', which does not mention the media-type filter at all, but the schema carries that meaning, so 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?

States a specific verb ('Delete') and resource ('preview/render cache files') scoped to the project, distinguishing it from siblings like delete_bin, delete_sequence, and delete_project_item. Clear, though it does not explicitly name an alternative or contrast 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 on when to use this versus other cleanup tools, no prerequisites, and no warning about consequences. The agent must infer that this is a cache-clearing maintenance operation rather than editorial content deletion.

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 (bin, sequence, clip or file) from the project panel and read back that it is gone. organize_project_items_uxp with action 'remove' (authenticated UXP bridge) is the preferred, documented route. This CEP fallback deletes a clip or file by moving it into a temporary bin and deleting that bin, which cannot be undone here. Deleting media also removes its clips from every sequence, so an item (or a bin whose contents are) used on a timeline is refused unless confirm_remove_from_sequences is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to delete
confirm_remove_from_sequencesNoDelete even when the item (or something inside the bin) is used in a sequence, which also removes those timeline clips (default: false).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the destructiveHint=true annotation by disclosing the actual mechanism (moves item into a temp bin and deletes the bin), that it is irreversible here, and the cascading side effect that deleting media removes its clips from every sequence. These are exactly the operational risks an agent must know before invoking a destructive tool.

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?

Four dense sentences, all load-bearing: scope, preferred alternative, mechanism/irreversibility, and side effects. Information is front-loaded with the primary action first, though the middle sentences are tightly packed.

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 not be explained, and the description still notes it 'read[s] back that it is gone'. For a destructive two-parameter tool, the alternative routing, irreversibility, and side-effect disclosure make it 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?

Schema coverage is already 100%, so the baseline is 3, but the description adds real semantics for confirm_remove_from_sequences by explaining the timeline-usage refusal it overrides and by noting it applies when something inside a bin is used. Slight extra value over the schema's own wording.

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 ('Delete a project item') and enumerates the item kinds (bin, sequence, clip, file) so the scope is unambiguous. It also distinguishes itself from the sibling route organize_project_items_uxp, which an agent can select without opening either schema.

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 preferred alternative (organize_project_items_uxp with action 'remove') and frames this tool as the CEP fallback, so the when-to-use-this-vs-that decision is stated rather than inferred. It also states the refusal condition tied to confirm_remove_from_sequences.

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; on failure, diagnostic detail when the tool provides it.
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 declare destructiveHint=true, idempotentHint=false, and openWorldHint=false, so the safety profile is covered. The description merely restates the operation and does not add what gets destroyed, whether deletion is permanent, or whether dependent items are affected.

Agents need to know what a tool does to the world before 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 short sentence with the action and scope front-loaded. There is no wasted text or 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?

For a simple one-parameter destructive tool with an output schema and annotations covering safety, the description is minimally adequate. However, it omits when to choose this over close_sequence or delete_project_item and does not warn about permanence.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 sole parameter is fully documented in the schema (sequence name or ID). The description adds no extra syntax or format detail beyond the schema, so the baseline of 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?

States a specific verb (delete) plus resource (sequence) and scope (from the project). This clearly distinguishes it from sibling operations such as set_sequence_settings, duplicate_sequence, or close_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 when-to-use guidance, no prerequisites, and no alternatives such as close_sequence or delete_project_item. An agent must infer usage entirely from the name and annotations.

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

EXPERIMENTAL (undocumented QE DOM: removeVideoTrack/removeAudioTrack). Delete a video or audio track from the active sequence through QE and verify that exactly that track was removed (the remaining tracks keep their clips, custom names and lock/mute state in order). Refuses a track that still holds clips unless force is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
forceNoAlso delete a track that holds clips, removing those clips (default: false)
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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true and readOnlyHint=false, but the description adds critical context beyond them: the tool is EXPERIMENTAL, relies on undocumented QE DOM calls, verifies the exact track removal, preserves remaining tracks' clips/names/lock/mute state, and refuses clip-bearing tracks unless force is true. This is unusually rich behavioral disclosure for a mutation 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 tight sentences, front-loaded with the experimental warning, then the core action and verification, then the force condition. Every phrase earns its place with 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?

An output schema exists, so return values need not be explained. The description covers the experimental nature, verification guarantee, side effects on remaining tracks, and the force option. Nothing an agent needs to call this destructive 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 description coverage is 100%, so the baseline is 3. The description restates the force behavior ('Refuses a track that still holds clips unless force is true') which is already well covered by the schema's force description ('Also delete a track that holds clips, removing those clips'). No additional meaning is added for track_type or track_index.

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 ('Delete a video or audio track from the active sequence') and adds implementation detail ('through QE'). Distinguishes itself from siblings like add_track and remove_from_timeline by targeting a whole track, not clips or sequences.

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 when-not condition: it refuses a track that still holds clips unless force is true. It does not explicitly name alternatives (e.g., remove_from_timeline for clips vs. delete_track), but the context is sufficient to route correctly for most cases.

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; on failure, diagnostic detail when the tool provides it.
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 disclose readOnlyHint=false, destructiveHint=false, openWorldHint=false, and idempotentHint=false. The description adds the 'active sequence' scope, which is useful context beyond the annotations, but it does not explain that only the selection state is affected and media is untouched. With annotations carrying the safety profile, 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.

Conciseness5/5

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

A single sentence with no wasted words, front-loading the verb and resource. It is exactly as long as the task requires.

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 and explicit annotations, so the description need not explain return values or safety. It is nearly complete for a simple state-clearing operation, though it could mention that an active sequence must exist. 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?

The tool takes zero parameters, so the baseline is 4. The description adds no parameter meaning, but none is needed because the schema is an empty object.

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 ('Deselect') and resource ('all clips in the active sequence'), clearly distinguishing this tool from siblings such as select_all_clips, select_clips_in_range, and set_clip_selection. An agent can identify the exact operation 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 Guidelines2/5

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

There is no explicit when-to-use guidance, no mention of alternatives or exclusions, and no prerequisites. The usage is implied only by the verb itself, which is not enough for a high score in a crowded sibling set of selection tools.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), and the description usefully narrows the target to 'a project item'. However, it does not say what happens to the underlying proxy media, what occurs if no proxy is attached, or whether re-attachment is possible.

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 short sentence with no filler, front-loaded with the action. It is efficient, though its brevity borders on under-specification rather than true conciseness.

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 need not be explained, and the one parameter is fully documented. Still, for a mutation of proxy state the description leaves the post-condition unexplained, which is a meaningful gap for an agent deciding whether 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?

Only one parameter, and the schema already documents it at 100% coverage ('Node ID or name of the project item'). The description adds no format, identifier, or scope detail beyond what the schema supplies, so 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?

States a specific verb pair ('Detach/remove') and a specific resource ('proxy from a project item'), so an agent knows exactly what operation is performed. It does not distinguish itself from proxy-related siblings such as manage_proxies or has_proxy, but the core purpose is 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?

No when-to-use guidance, no prerequisites, and no mention of alternatives like manage_proxies. The agent must infer that this is the inverse of attaching a proxy simply from the verb.

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; on failure, diagnostic detail when the tool provides it.
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 give a partial safety profile (destructiveHint=false, openWorldHint=false), and the description adds that decoding samples occur and that the source is left untouched. It still does not explain why readOnlyHint=false for a purely analytical probe, nor any cost/time implications of decoding.

Agents need to know what a tool does to the world before 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 operation, the artifact detected, and the non-destructive guarantee with zero 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?

With an output schema present, return values need not be described, and all three parameters are documented in the schema. Adequate for this read-oriented probe, though the absence of guidance on when to reach for it versus crop_clip or scope-reading tools leaves a small 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% (limit, media_path, sample_seconds all documented inline), so the schema carries the parameter burden. The description adds no format, default, or constraint detail beyond it — baseline 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?

Specific verb ('detect') plus a precise resource ('the most frequent active-picture crop rectangle ... probable letterbox or pillarbox bars'). This clearly separates it from mutation siblings such as crop_clip by stating it only measures, not changes, the material.

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 rather than stated: the letterbox/pillarbox framing and 'without modifying the source' hint it is a diagnostic step preceding a crop. There is no explicit when-to-use, when-not, or named alternative (e.g., read_video_scopes, crop_clip).

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; on failure, diagnostic detail when the tool provides it.
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 real context beyond the annotations: the results are approximate candidates, not authoritative beats, and the tool does not modify a timeline. Slightly weakened by the tension with readOnlyHint=false, which hints it may still write state (e.g., caches) even though the description emphasizes non-mutation — but this is not a flat 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 dense sentences, no filler, with the core action front-loaded and the caveats (probabilistic output, no timeline mutation) immediately after. Nothing is redundant 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?

An output schema exists so return values need not be explained, and the schema covers all four parameters. The description supplies scope and non-mutation guarantees, leaving only minor gaps such as whether results are deterministic or how they should be reviewed downstream.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 media_path, maximum_events, threshold_dbfs and minimum_interval_seconds are already fully documented with ranges and defaults. The description adds no parameter-level detail, 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?

Specific verb+resource ('find probable beat or edit-point transients from decoded audio peaks') with the mechanism named. It also distinguishes itself from sibling detectors like detect_beats by explicitly disclaiming musical beat-grid accuracy, so an agent can tell them apart 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 Guidelines4/5

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

It frames the output as 'candidates for editorial review' and rules out musical beat-grid use, implicitly routing that need to detect_beats. However, it never explicitly names an alternative tool or states the conditions under which this should be preferred over detect_beats or detect_silence.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes well beyond the annotations: it discloses that nothing in Premiere is modified, that decoding is capped at 30 minutes, that analysis runs on a bounded mono stream, and that results include confidence and half/double-time alternatives. Annotations only state readOnly/destructive/idempotent flags, so this added pipeline context is genuine value; the description's 'without changing Premiere' phrasing is slightly in tension with readOnlyHint=false, though it is scoped to project state rather than a claim of being globally side-effect free.

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 front-loaded sentences with no filler; the purpose comes first and the implementation detail (FFmpeg, autocorrelation) is compressed into the second. The technical density of sentence two is justified by the trust and limit information it conveys, though it is heavier than strictly necessary.

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 analysis tool with a full output schema, the description covers scope, input constraints, and output character without redundantly explaining the return shape. It could go one step further by indicating how the result feeds downstream tools, but nothing needed to invoke 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% for both parameters, so the schema already carries media_path and max_beats semantics. The description adds only the implicit 'local file' framing, which the schema already states as an absolute path; 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 and resource ('Estimate a steady beat grid from a local audio or video file') and pins the scope to an analysis-only operation. It is easily distinguished from neighbouring detection tools like detect_audio_transients and from downstream consumers such as plan_beat_montage.

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 description (run this when you need a beat grid from a local file) and the 30-minute decode cap hints at its intended scale, but there is no explicit when-to-use/when-not guidance nor any routing to alternatives such as detect_audio_transients or plan_beat_montage.

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 PeaksC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior1/5

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

Description calls the tool 'read-only' while annotations set readOnlyHint=false, a direct contradiction. This is a serious inconsistency that could mislead the agent about whether the operation mutates state; per rubric, score 1 and flag 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 purpose and followed by essential caveats. Every clause earns its place, and there is no 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?

Output schema exists, so return values need not be explained. However, the description's 'read-only' claim conflicts with annotations, and it provides no routing among many similar detection/analysis siblings; the resulting ambiguity leaves it 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 the schema fully documents all six parameters. The description adds no parameter-specific detail beyond 'bounded local video sample,' which loosely relates to sample_seconds and media_path. Baseline 3 is appropriate when structured fields carry 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?

Specific verb 'Find' and resource 'high-motion moments' with clear scope (bounded local video, decoded frame differences). It implicitly distinguishes itself from scene-edit detection by noting that flashes, cuts, and camera movement are not semantically separated, but it does not name 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 Guidelines2/5

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

No explicit when-to-use or when-not guidance, and no alternative tools are named. The limitation sentence informs behavior, not selection context, leaving the agent to infer usage from the purpose alone.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: it is local-only and 'never changes Premiere', and it discloses the return shape (take groups, removal/keep ranges, apply routes) that implies a plan-then-apply workflow.

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 tight sentences, front-loaded with the core action and mechanism, then output shape, then the safety caveat. No filler, though the return-values sentence is somewhat redundant given an output schema exists.

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 8-param tool with a nested word-timeline object, an output schema, and full annotation coverage, the description supplies enough to call correctly: what it detects, that it is a non-mutating planner, and that an apply route is produced. Missing only explicit sibling routing, which is a minor gap given the distinct 'retake' concept.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 8 well-documented parameters including ranges and defaults, so the schema carries the semantics. The description only gestures at two concepts (token similarity, time window) that map to similarity_threshold and max_gap_seconds without adding syntax or defaults. 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 specific verb (detect) and resource (repeated sentence takes/retakes) plus the mechanism (token similarity within a time window) and the planning action (removal of all but the kept take). This clearly distinguishes it from siblings like detect_silence and detect_beats without opening 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 Guidelines3/5

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

The description implies context ('in a word timeline', 'plan removal') and clarifies the tool is a dry-run planner ('Local-only; never changes Premiere'), which signals it feeds an apply step. However, it never names an alternative or states explicit when-not-to-use conditions against siblings such as plan_filler_word_removal or detect_silence.

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; on failure, diagnostic detail when the tool provides it.
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?

The description adds genuine behavioral context beyond the annotations: it discloses the transport dependency (authenticated UXP bridge), that confirmation is required, and the rationale for withholding the CEP fallback. The non-undoable mutation is only conveyed via the schema, not the description, so it stops 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?

Two tight sentences with no filler, and the core identity ('safe scene-edit facade') is front-loaded. Slightly wasteful use of space on transport justification rather than capability.

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 need no explanation, and the transport gating is covered. But for a 3-param mutating tool the description omits the precondition that a native sequence selection must exist and doesn't clarify how the three modes differ in effect.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (mode, operation_id, confirm_non_undoable) is documented in the schema itself. The description adds no syntax or semantic detail about mode choices or the idempotency key, so baseline 3 is appropriate.

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?

It identifies the tool as a 'scene-edit facade' but never states the actual operation — detecting edits in the sequence and materializing them as cuts, markers, or subclips (that only surfaces in the mode enum). 'Facade' is architecture jargon rather than a verb+resource statement, so an agent learns little about what invoking it 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?

It gives useful conditional context (used when the UXP bridge is connected and confirmed; CEP fallback intentionally withheld), which implies usage constraints. However it never names or distinguishes the closely related siblings detect_source_scene_changes or scene_edit_detection, and no explicit when-to-use/when-not guidance is offered.

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; on failure, diagnostic detail when the tool provides it.
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 description adds real context — analysis-only semantics, the ffmpeg dependency, and the rationale that Premiere's scripting API exposes no waveform data. However it asserts the tool modifies nothing, while annotations declare readOnlyHint=false and idempotentHint=false, so the agent receives conflicting signals about whether any state changes. The rationale for that mismatch (e.g. temp-file writes by ffmpeg) is not spelled out.

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, front-loaded with the outcome and scope, then the safety statement, then the dependency and its reason. Every sentence carries information, though the dependency clause is slightly dense and could be split for faster scanning.

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 values need not be explained, and the description covers scope, mutation safety, and environment prerequisites. The remaining gap is routing — it does not tell the agent which sibling to prefer for downstream silence handling — plus the unresolved tension with the readOnly 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?

Schema description coverage is 100% and each parameter is documented with type, purpose, and default (noise_threshold_db -30 dBFS, min_duration_seconds 1.5s, and the media_path/project_item_id either-or). The description adds no parameter-level detail beyond that, 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?

States a specific verb and resource ('Find silent ranges in a media file') and goes further by declaring the dual return ('both the silences and the complementary segments worth keeping'). This cleanly separates it from planning-oriented siblings such as plan_silence_review_markers and plan_pause_tightening, which act on the timeline rather than the raw media file.

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 bounds the tool as read/analysis-only ('nothing in the project or on the timeline is modified') and states an environmental prerequisite ('Requires ffmpeg on PATH'), which tells the agent when the call will even succeed. It stops short of explicitly naming which sibling to use instead when the goal is marker placement or pause tightening, so the routing guidance is implicit 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_source_scene_changesDetect Source Scene ChangesB

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior1/5

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

The description asserts 'Read-only' while the annotations declare readOnlyHint=false, a direct contradiction about whether the tool mutates state. Because the description misstates the safety profile that annotations carry, it cannot be credited with behavioral disclosure.

Agents need to know what a tool does to the world before 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 zero padding; the core action is front-loaded and the scoping clause follows immediately. Nothing needs trimming.

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 purpose, mechanism, and operating scope, and an output schema exists so return values need no explanation. However, it omits any differentiation from the several scene/edit detection siblings and makes a safety claim that conflicts with the annotations, leaving meaningful gaps for an agent deciding between 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%: threshold range/default, media_path requirement, maximum_events cap, and minimum_interval_seconds default are all documented in the schema. The description adds nothing beyond that, 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?

States a specific verb+resource (detect probable visual cuts) and the mechanism (FFmpeg scene scores) on a local source file. It is clear about what it operates on, but it does not differentiate itself from close siblings such as detect_scene_edits or 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 clause 'source-relative; it does not cut a Premiere timeline' implies the intended operating context (a source file rather than a timeline), which is useful negative guidance. However, there is no explicit when-to-use rule versus the similar scene/edit-detection siblings, leaving the choice to inference.

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; on failure, diagnostic detail when the tool provides it.
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/destructiveHint=false, so the safety profile is covered. The description adds genuine context beyond them: 'Local-only; never reads or changes Premiere' clarifies this is a pure offline computation requiring no live connection, and 'frame deltas, per-track counts, EDL-like timecode lines' describes the nature of 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?

Two compact sentences, front-loaded with the core action and input sourcing, then the behavioral constraint. The enumerated change categories are substantive rather than filler, so no sentence is wasted.

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 deep nested input schema, full schema coverage, and an output schema, the description supplies the essentials: input source, computation scope, and local-only behavior. Return-value details are rightly omitted because an output schema exists, 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%, so the schema already documents before/after/frame_rate/tolerance_frames in detail. The description confirms snapshot inputs leverage frame_rate defaults ('defaults to the snapshot frame rate or 30') but adds no syntax or semantics beyond what the schema states, which is the baseline-3 case.

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?

Specific verb (diff) plus resource (two sequence snapshots), and it names the exact source tools for the inputs (get_sequence_structure, inspect_sequence_structure_uxp). It enumerates the change categories produced (added, removed, moved, trimmed, retimed, enabled, renamed) and the output forms, so an agent can distinguish it from unrelated timeline 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 Guidelines3/5

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

It implies the workflow by stating the snapshots come from get_sequence_structure or inspect_sequence_structure_uxp, which guides input acquisition. However, it never states when to reach for this versus alternatives (e.g., compare_cmx3600_edls) or any preconditions such as snapshots having been captured first, leaving the when-to-use decision to inference.

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

duplicate_clipDuplicate ClipA

EXPERIMENTAL: Duplicate a timeline clip, with its linked audio/video partner, onto the first tracks above it that are empty for the clip's time range. The copy keeps the clip's source in point and visible duration, is placed with an overwrite edit (nothing ripples), and is read back. A post-write mismatch is committed_unverified; inspect the timeline or use Undo. Fails without changes when no free track is available; add one with add_tracks.

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; on failure, diagnostic detail when the tool provides it.
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 only flag readOnly=false, idempotent=false, destructive=false; the description goes well beyond by disclosing the overwrite-edit behavior, that nothing ripples, that the copy is read back, and that a post-write mismatch yields a committed_unverified state with Undo as the remedy. It also names the 'fails without changes' contract when no free track exists. No 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.

Conciseness4/5

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

Front-loads the EXPERIMENTAL warning and the core action, then layers in behavior and failure handling. It is dense but every sentence carries information; slightly long, keeping it from a perfect score.

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, experimental mutation tool, the description covers placement rules, ripple behavior, verification state, and the failure/remedy path. An output schema exists, so return-value explanation is unnecessary, and nothing an agent needs 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?

Only one parameter (node_id) exists and schema coverage is 100%, so the schema already fully documents it; the description implicitly conveys the target clip but adds no syntax or format detail. Baseline 3 is appropriate when 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?

States a specific verb and resource (Duplicate a timeline clip with its linked audio/video partner) and describes the placement semantics precisely. It is clearly distinguishable from siblings like duplicate_sequence, create_subclip, or copy_effects_between_clips without opening 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?

Gives the precondition for success ('fails without changes when no free track is available; add one with add_tracks'), which is actionable routing context. It does not, however, explicitly compare with or exclude alternatives (e.g. replace_clip, overwrite_clip), so it stops short of full when/when-not guidance.

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

duplicate_sequenceDuplicate SequenceC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, destructiveHint=false, and openWorldHint=false, covering the safety profile. The description adds no behavioral context beyond that — it does not say what the new sequence is named, whether the duplicate becomes active, whether it copies markers/tracks, or where it lands in the project.

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

Conciseness3/5

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

A single front-loaded phrase with no waste, but it is under-specified rather than genuinely concise — the brevity comes at the cost of all useful context for a mutating tool.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. Still, for a tool that creates a new sequence, the description never addresses the naming of the duplicate, its placement, or its active state — meaningful gaps for a one-parameter mutation whose sibling set is crowded.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 sequence_id parameter is fully documented in the schema ('Sequence name or ID to duplicate'). The description contributes nothing beyond that, which is the expected baseline when the schema does all the work.

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?

States a specific verb and resource ('Duplicate an existing sequence'), so the basic action is discernible. However, it is essentially a restatement of the title with zero differentiation from siblings such as duplicate_clip, create_subsequence, unnest_sequence, or create_sequence_from_clips — an agent gets no help distinguishing which duplication tool to pick.

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 when-to-use guidance, no prerequisite (e.g., sequence must exist, project must be open), and no mention of alternative tools like create_sequence_from_preset that might achieve a similar outcome. The agent must infer usage entirely.

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; on failure, diagnostic detail when the tool provides it.
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, openWorldHint=false, and idempotentHint=false, covering the basic safety profile. The description adds no further behavioral context, such as whether disabling hides the clip from playback/render, whether permissions are required, or how it differs from batch operations.

Agents need to know what a tool does to the world before 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 immediately, fitting the concise style expected for a simple mutation 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 an output schema present, the description need not explain return values, and the schema fully documents the two required parameters. Still, it omits when-to-use guidance and sibling differentiation, leaving enough gaps that the definition is only minimally 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 both parameters are already documented: 'enabled' explains true/false, and 'node_id' identifies the clip. The description only adds the 'on the timeline' location context and no extra syntax or format detail beyond the schema, making baseline 3 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 ('enable or disable') and resource ('a clip on the timeline'), so the agent can tell it mutates clip enabled state. However, it does not differentiate from the sibling tool batch_enable_disable, leaving the single-clip vs batch distinction implicit in the name 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 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 batch_enable_disable or select_disabled_clips. No prerequisites, exclusions, or context for selecting it are provided.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare that this is not read-only, not idempotent, not open-world, and not destructive. The description adds an important behavioral caveat beyond that: the returned job ID is an 'unverified handoff' and queue presence or the output file must be verified independently.

Agents need to know what a tool does to the world before 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 followed by the critical verification caveat. Every sentence carries useful information and there is 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?

With a full schema, annotations covering safety traits, and an output schema, the description only needs to establish purpose and any non-obvious behavior. It does that well by warning that the job ID is an unverified handoff, though it could say more about when to choose this over related encoding 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 six parameters are already documented in the input schema. The description does not add syntax, constraints, or workflow meaning for parameters like preset_path, in_seconds, or remove_on_completion, so it meets the baseline rather than exceeding 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 states a specific verb and resource: 'Request an Adobe Media Encoder encode for an external file.' The 'external file' scope helps distinguish it from sibling tools like encode_project_item, but it does not explicitly name alternatives or clarify batch-vs-single-file boundaries.

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?

It implies usage for an external file and adds a post-invocation verification step, but it gives no explicit when-to-use or when-not-to-use guidance relative to siblings such as encode_project_item or start_batch_encode. An agent must infer routing from the tool name alone.

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; on failure, diagnostic detail when the tool provides it.
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 declare this is a non-readOnly, non-idempotent write with no destructive effect. The description adds genuinely valuable context beyond that: the returned job ID is an unverified handoff and the agent must independently confirm queue presence or output. This directly warns against trusting the return value, which the annotations 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 sentences, no waste, with the action stated first and the important verification caveat second. 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?

An output schema exists so return structure need not be explained, and the description covers the key risk: the unreliable handoff. It is nearly complete, though it omits relationship to sibling encode/queue tools that an agent comparing options would want.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 four parameters documented (item_id, output_path, preset_path, remove_on_completion). The description adds no parameter-level meaning, so the baseline of 3 applies 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?

States a specific verb (encode) and resource (project item) plus the target application (Adobe Media Encoder). This distinguishes it from siblings like encode_file, start_batch_encode, and add_to_render_queue without opening 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 Guidelines3/5

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

The description implies use for a single project item but never names when to prefer this over encode_file, start_batch_encode, or add_to_render_queue. The post-call verification instruction is helpful but is not selection guidance.

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; on failure, diagnostic detail when the tool provides it.
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 it is not read-only, not idempotent, not open-world, and not destructive. The description adds valuable behavioral context beyond those hints: it saves the open project but never starts rendering or overwrites output, and it requires explicit confirmation. This gives the agent a clear picture of side effects and safety 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 tightly written sentences that front-load the core action and then immediately state the confirmation requirement and critical side effects. No filler or repetition; every phrase carries 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?

Given that annotations cover safety and the output schema exists, the description is largely complete for safe use. It could optionally mention the prerequisite of verifying an After Effects connection or explicitly name the preview tool as the source of the token, but the schema already documents the token's origin, so the 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%, so the two parameters (preview_token and confirm_enqueue) are already fully documented in the schema. The description adds 'previewed' and 'exactly one' but does not elaborate on parameter format, source, or usage beyond what is already 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?

States a precise verb (queue) and resource (exactly one previewed After Effects render with named host templates), and the word 'previewed' distinguishes it from a direct render or preview tool. An agent can tell it apart from siblings like preview_after_effects_render and apply_after_effects_render_handoff 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 clearly implies the tool is used after a preview ('previewed render') and that explicit confirmation is required, which maps to the confirm_enqueue parameter. It does not explicitly name the preview tool or state when not to use it, but the context and constraints are clear enough for correct invocation.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, but they cannot express 'this backend cannot run this at all'. The description adds that critical runtime constraint and the auth requirement of the alternative route, which is exactly the kind of context the structured fields lack.

Agents need to know what a tool does to the world before 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 waste, with the blocker stated first and the remedy second. Nothing superfluous.

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 disabled tool, the description covers everything an agent needs: it cannot be called here, and here is the supported path. It does not describe output, but an output schema exists and the tool is unreachable anyway, so this is essentially 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 all five parameters are documented in the schema (output_path, sample_rate, mix_down_video, bits_per_sample, explode_to_mono). The description adds no parameter detail, which is acceptable given the tool is unavailable and the schema carries the load.

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 discloses that the tool is not usable on the CEP backend, which is the single most decision-relevant fact about it, and points to the working alternative. It does not explicitly restate that the tool exports AAF, relying on the name/title for that, but for a disabled tool the unavailability statement is 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 Guidelines5/5

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

It gives an explicit when-not (CEP backend) plus the named replacement and its exact prerequisite (export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge). An agent needs no inference 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_as_fcp_xmlExport As Fcp XmlA

Export the active sequence as a Final Cut Pro XML file. Fails when Premiere writes no file or leaves a pre-existing output unchanged.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write nature is covered. The description adds non-obvious context by specifying the failure condition: it errors when Premiere writes no file or leaves an existing output unchanged, which tells the agent how success is detected. It could say more about overwrite behavior, but this is solid added 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 tight sentences: purpose first, then the failure semantics. No filler, nothing repeated from structured fields, well 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 one-parameter export tool with an output schema and safety annotations, the description covers what is produced, what is exported, and how failure manifests. The only material omission is guidance on when this format is preferred over sibling exporters, which overlaps the usage dimension.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 output_path parameter is fully documented in the schema (100% coverage), including an example path, so the description need not explain it. It adds no parameter detail, which is the expected baseline when the schema does the 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?

States a specific verb and resource (export the active sequence) plus the concrete output format (Final Cut Pro XML file), which implicitly separates it from export_aaf, export_sequence_edl, and export_omf. It does not, however, explicitly position itself against those siblings, so it falls short of the top bar.

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 never states when to choose this export over the many sibling exporters (export_sequence_edl, export_aaf, export_as_project) or notes its relationship to import_fcp_xml for roundtrip workflows. Usage is only inferable from the format name, matching the calibration's 'no guidance' tier.

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. Fails when Premiere writes no file or leaves a pre-existing output unchanged.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare readOnlyHint=false, idempotentHint=false and destructiveHint=false, so safety is covered. The description adds real value beyond that by disclosing failure semantics: it errors when Premiere writes no file or leaves a pre-existing output unchanged, which tells the agent that pre-existing files at output_path can cause the call to fail.

Agents need to know what a tool does to the world before 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 core purpose is front-loaded ahead of the failure caveat. 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 export with an output schema and full annotation coverage, the definition is nearly complete: purpose, default-sequence behavior (via schema) and failure modes are all covered. The only gap is the absence of routing guidance against sibling export 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 output_path and sequence_id (including the 'uses active sequence if omitted' default) are already documented in the schema. The description adds no syntax or format details beyond that, 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?

States a specific verb and resource ('Export a sequence as a standalone Premiere Pro project file'), which clearly distinguishes it from export_sequence, export_aaf, export_as_fcp_xml, and save_project_as. It could have named the nearest sibling explicitly, but the phrasing alone is 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?

No when-to-use guidance and no alternatives named. An agent choosing among the many export tools (export_sequence, export_sequence_edl, export_as_fcp_xml, export_aaf, create_project_backup) gets no routing help beyond the differing output format implied by the title.

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

export_frameExport FrameC

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; on failure, diagnostic detail when the tool provides it.
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 write/safe profile is covered structurally. The description adds only 'as an image file', saying nothing about overwrite behavior, whether an existing file is replaced, where the frame comes from (playhead vs. current position), or that format is derived from the extension — all of which the schema, not the description, carries.

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 short, front-loaded sentence with zero filler. It is efficient, though arguably terse to the point of under-specification rather than maximally concise.

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 need not be explained, and annotations cover the safety profile. What is still missing is routing context against the many export/capture siblings and any note about file-overwrite semantics for a write 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 both output_path and time_seconds are already fully documented in the schema, including the extension-determines-format rule and the playhead fallback. The description adds no parameter meaning beyond that, which is the expected baseline when the schema does the 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?

States a specific verb and resource ('Export the current frame as an image file'), so the action is unambiguous. However it does not distinguish itself from the near-identical sibling capture_frame, nor from the export_sequence_review_frames family, leaving the agent to guess which one fits.

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 versus capture_frame or the various export_* siblings, and no mention of prerequisites such as an active sequence or a writable path. Usage must be inferred 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.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false and openWorldHint=false, so the safety profile is covered. The description adds only the format and domain context; it does not disclose what happens if output_path already exists (overwrite vs fail), whether the active sequence is a precondition, or any size/permission constraints for a not-idempotent write.

Agents need to know what a tool does to the world before 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 leads with the action and resource and ends with just enough format context. Nothing is padded and nothing essential is buried.

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 need not be described, and the 8-parameter schema is fully documented. Still, for a non-idempotent export operation the description says nothing about preconditions (an active sequence) or how an existing file at output_path is handled, leaving a behavioral gap an agent must guess at.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% for all 8 parameters, including defaults and the 0=AIFF/1=WAV encoding, so the schema already carries the parameter semantics. The description supplies no additional parameter meaning, which is consistent with the baseline 3 when 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?

Names a specific verb (export) and resource (the active sequence) plus the output format, and expands the OMF acronym with domain context ('audio post-production'). It is distinguishable from generic siblings like export_sequence, but it never contrasts itself with the closely related export_aaf or export_as_fcp_xml, so sibling differentiation is implicit 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 phrase 'for audio post-production' implies the scenario in which OMF is the right interchange format, which is useful nudging. However, there is no explicit when-to-use/when-not guidance and no pointer to export_aaf or export_as_fcp_xml as the alternative for other post workflows.

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

export_sequenceExport SequenceA

Export the active sequence directly (Premiere renders it; blocks until done) with an Adobe Media Encoder preset. The output extension must match what the preset writes (an H.264 preset in AME's QuickTime folder writes .mov); a missing extension is added. Refuses an output_path that already exists unless overwrite is true. Fails if Premiere rejects the render, and verifies a non-empty file was written (for an overwrite, that the file changed). range 'work_area' fails closed unless the work area is enabled and covers only part of the sequence — otherwise Premiere would encode the entire timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
rangeNoWhat to render: the entire sequence (default), the sequence in/out range (set_sequence_in_out_points), or the work area. work_area requires an enabled work area around part of the sequence; unset or full-sequence work areas are refused instead of encoding everything. Set and read back a valid work area where the host supports it, or use in_to_out for a ranged export.
overwriteNoReplace a file that already exists at output_path (default: false, which refuses the export). The replacement is only reported as written when the file's size or modification time changes.
output_pathYesFull output file path (e.g., '/Users/me/exports/video.mp4')
preset_pathNoPath to an AME preset file (.epr). Uses the default H.264 (MP4) Match Source preset if omitted.
work_area_onlyNoDeprecated alias for range: 'work_area'
timeout_minutesNoHow long to wait for the render (default: 15; long sequences such as full podcast episodes may need more)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

With annotations only covering the safety profile (readOnly=false, destructive=false, idempotent=false), the description carries the rest: it blocks until the render completes, refuses an existing output_path unless overwrite is true, fails on a Premiere render rejection, and verifies a non-empty (or changed, for overwrite) file was written. Those are the failure and side-effect semantics an agent needs and none are 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.

Conciseness4/5

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

Front-loaded with the core action and mechanism, then failure/verification behavior. The overwrite and work_area sentences restate the corresponding schema parameter descriptions almost verbatim, which is mild waste, but nothing else is padding.

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 and full annotations exist, so return values and safety need not be explained. Combined with the disclosed blocking, extension, overwrite, and verification behavior, the definition is complete enough for a mutation tool of this 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?

Schema coverage is 100%, so the baseline is 3, but the description adds rules the schema does not: the output extension must match what the preset writes, a missing extension is added, and range 'work_area' fails closed rather than silently encoding the whole timeline. The default preset and timeout values duplicate the schema, which caps this at 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?

States a specific verb and resource ('Export the active sequence') plus the mechanism ('Premiere renders it; blocks until done'), which cleanly separates it from queue-oriented siblings like add_to_render_queue and from the other exporters (export_aaf, export_frame, export_as_project). An agent can identify the tool 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?

Gives clear conditions for the range choice (work_area only when enabled and partial, otherwise in_to_out) and states the blocking contract, which implies when this tool is appropriate. It never names a sibling as the alternative for the queued/non-blocking path, so the routing guidance is implicit 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_clip_review_framesExport Sequence Clip Review FramesB

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior1/5

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

The description says 'Read-only in Premiere' while annotations declare readOnlyHint=false, a direct contradiction. Because the annotations already set a non-read-only profile, the description's opposite claim is misleading rather than additive.

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, front-loaded with the core operation and no obvious padding. The second clause is a defensive caveat whose contradictory read-only claim weakens it, but the structure is otherwise efficient.

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?

Though an output schema and full schema descriptions exist, the description gives a false read-only claim and lacks usage routing among many export siblings. For a tool whose annotations say it is not read-only, this is a significant completeness 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 three parameters are documented in the schema. The description only hints at track selection and per-clip sampling, adding no defaults, limits, or output naming 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 (Export), resource (one composite frame at midpoint of each clip), and scope (chosen video track, one bridge request). This distinguishes it from sibling export tools that target markers or whole sequences.

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?

Implies use for per-clip review frames by describing the midpoint sampling and chosen track, but never names alternatives such as export_sequence_review_frames or export_frame. The caveat about muting tracks and visual quality is a limitation, not when-to-use guidance.

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

export_sequence_edlExport Sequence EdlA

Generate a CMX 3600 EDL for one video or audio track of a sequence from Premiere timeline readback (cuts, reels, source/record timecode, M2 lines for retimed clips), self-validate it, and return it inline or write it inside an approved workspace. Premiere is only read; this is not a Premiere-native export.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoTITLE line (default: the sequence name).
reel_modeNoHow reel names are derived: clip_name (default), tape_name (XMP tapeName when present), or numbered.
drop_frameNoWrite drop-frame timecode (29.97/59.94 only). Defaults to the sequence display format.
frame_rateNoOverride the CMX timecode rate; defaults to the sequence rate (23.976 is written as 24).
track_typeNoTrack type to export (default video).
output_pathNoOptional absolute .edl path to write. Requires approved_workspace_path; the file must not already exist. When omitted the EDL text is returned inline.
sequence_idNoSequence ID or name. Defaults to the active sequence.
track_indexNoTrack index to export (default 0).
include_disabledNoInclude disabled clips as events (default false).
record_start_secondsNoRecord timecode origin in seconds (default: the sequence zero point).
approved_workspace_pathNoAbsolute existing directory that must contain output_path. Required with output_path.
include_clip_name_commentsNoEmit '* FROM CLIP NAME:' comments (default true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Goes beyond annotations by disclosing that Premiere is only read, that the EDL is self-validated, that writing requires an approved workspace and a non-existent target file, and that output can be inline. Annotations already cover safety profile (readOnly=false, destructive=false, idempotent=false), so this added operational context is meaningful without contradiction.

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 packs the artifact, scope, source, and constraints with no filler. It is dense (nested parentheticals) rather than wasteful, though it could be split for readability.

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, return-value detail is unnecessary, and annotations cover the safety profile. The description supplies the read-only Premiere constraint, self-validation, and output-path prerequisites, which is enough for an agent to call 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% across all 12 parameters, so the schema already documents title, reel_mode, drop_frame, frame_rate, track_type, output_path, etc. The description adds only the inline-vs-write duality and the M2/retime context, not per-parameter semantics. 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 specific verb (Generate), a specific artifact (CMX 3600 EDL), and a precise scope (one video or audio track of a sequence, from Premiere timeline readback). This clearly separates it from siblings like export_sequence, 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 Guidelines3/5

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

The description implies context ('from Premiere timeline readback', 'not a Premiere-native export') and covers the two output modes, but never explicitly says when to choose this over export_sequence, export_as_fcp_xml, or export_aaf, nor when not to use it. Usage is inferable but not stated.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), and the description adds real value on top: it writes image files only, leaves markers untouched, caps output at 24 frames, and batches via one bridge request. It omits overwrite/idempotency behavior of the written PNGs, which is the main remaining 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?

Two tight sentences, scoping detail front-loaded and the non-mutation constraint second. Every clause carries information; nothing is padding.

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 annotations covering the safety profile and an output schema handling return values, the description supplies enough to call the tool correctly. A note on whether existing files in output_dir get overwritten would close the last 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 five parameters are already documented in the schema. The description restates the 24-frame cap and the marker-position targeting, adding marginal emphasis but no new syntax or format 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?

States a specific verb (Export) and resource (composite frames at active-sequence marker positions) with the scope qualifier 'up to 24' and 'file-verified'. It implicitly distinguishes itself from the clip-based siblings via 'marker positions', but never names an alternative tool, so it falls short of the top tier.

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 marker-driven review' implies the scenario, and the second sentence usefully rules out marker mutation (no add/update/remove), but no sibling alternatives such as export_sequence_clip_review_frames or export_frame are named, and no prerequisites are stated.

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; on failure, diagnostic detail when the tool provides it.
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 declare the safety profile (not read-only, not idempotent, not destructive, closed-world), so the description only needs to add context. It does: 'one bridge round trip' discloses a performance characteristic and 'file-verified' tells the agent the frames are confirmed on disk, plus the explicit non-goal about playback/audio/editorial quality.

Agents need to know what a tool does to the world before 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. The capability and scope are front-loaded, and the limitation sentence is compact and earns its place by 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?

With annotations covering safety, a full input schema, and an output schema present, the description need not explain return values. It supplies the quality-scope caveat and round-trip behavior an agent needs to set expectations; only explicit sibling routing 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 schema already documents all four parameters including defaults, min/max, and filename output pattern. The description's '2-24 evenly spaced' restates the frame_count bounds without adding syntax or format 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?

States a specific verb (Export), resource (evenly spaced, file-verified frames), and scope (active-sequence range, 2-24 frames). The 'active-sequence range' and 'evenly spaced' framing implicitly distinguishes it from siblings like export_sequence_marker_review_frames and export_sequence_clip_review_frames, though it never names them.

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

Usage Guidelines3/5

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

It gives the intended use case ('for visual review') and a scope exclusion ('does not prove playback, audio, or editorial quality'), which help an agent decide. However, it never states when to prefer this over the marker- or clip-based review-frame siblings, so routing 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.

extract_selectionExtract SelectionA

EXPERIMENTAL (undocumented QE DOM: extract()). Extract (remove and close the gap) the content between the sequence in/out points on every targeted, unlocked track, then verify each targeted track lost exactly the range and its later clips moved up by the range. Requires sequence in/out marks that do not span the whole sequence. Premiere can also change untargeted tracks (for example the linked audio of targeted video, or sync-locked tracks); those are not verified but are listed in otherTracksChanged.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior2/5

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

The description is otherwise unusually honest: it discloses the experimental QE DOM dependency, the post-edit verification it performs, and side effects on untargeted/linked/sync-locked tracks surfaced via otherTracksChanged. However, it repeatedly says it will 'remove' content and cause tracks to 'lose' ranges, while the annotations declare destructiveHint=false and only additive semantics are implied by that flag — a direct conflict that undercuts the 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?

Front-loads the EXPERIMENTAL/undocumented-QE-DOM warning, then action, then precondition, then caveat — a natural scan order. Every sentence carries distinct information (what, prerequisite, verification, side effects); 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 zero-parameter mutation with an output schema, the description covers the prerequisites, the verification semantics, and the channels through which partial/extra changes are reported (otherTracksChanged), so the agent can call it and interpret results. Only the annotation mismatch remains.

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 (empty object schema), so there are no parameter semantics to document; baseline 4 applies. The description instead spends its words on behavior and preconditions, which is the right allocation.

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 verb (extract/remove) and resource (content between sequence in/out points on every targeted, unlocked track), and the parenthetical '(remove and close the gap)' implicitly distinguishes it from the sibling lift_selection, which leaves the gap. An agent knows exactly which edit this performs without opening 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?

Gives a hard precondition — 'Requires sequence in/out marks that do not span the whole sequence' — which is real usage guidance, and warns that untargeted tracks may also change. It does not explicitly name the alternative to use (lift_selection vs ripple_delete) for the no-gap or gap-preserving cases, so it stops short of full when/when-not routing.

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 PathB
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; on failure, diagnostic detail when the tool provides it.
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 only the substring ('contains') matching semantics, which is useful but modest; it says nothing about case sensitivity, scope of the search, or result volume limits.

Agents need to know what a tool does to the world before 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 front-loaded sentence with zero waste; the matching criterion is stated immediately after the verb and resource.

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 values need not be explained, and the single parameter is fully documented. For a simple lookup tool this is nearly complete; only the absence of routing guidance among the many sibling find/search tools 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 coverage is 100% for the single path_search parameter ('Partial file path to search for'), so baseline is 3. The description's 'contains' phrasing reinforces substring matching, but adds no syntax, casing, or format detail beyond what the schema already documents.

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 (Find) and resource (project items) plus the exact matching criterion (media path contains search string). An agent can distinguish this from the similarly named find_project_item_by_name and search_project_items by the path-based matching semantics, though the description never explicitly names 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 guidance on when to use this versus the many sibling search tools (find_project_item_by_name, search_project_items, select_clips_by_pattern). The 'contains' hints at substring behaviour but no context, prerequisites, or exclusions are stated.

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 NameB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral context with 'searches recursively through bins', but it does not disclose how multiple matches or case sensitivity are handled.

Agents need to know what a tool does to the world before 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 definition is a single, front-loaded sentence with zero wasted words. The recursive-search detail is placed parenthetically without disrupting readability.

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 lookup with rich annotations and an output schema, the description is largely complete. The main gap is lack of sibling routing, but return values are handled by the output schema and safety behavior is covered by annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% for the single 'name' parameter, so the schema already documents it fully. The description adds no syntax, matching rules, or format details 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.

Purpose4/5

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

The description gives a specific verb ('Find') and resource ('project item by name'), plus a scope detail ('searches recursively through bins'). It is clear what the tool does, but it does not distinguish itself from siblings such as search_project_items or find_items_by_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 Guidelines2/5

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

There is no explicit when-to-use guidance or routing to alternatives. The name implies a lookup use case, but the description does not say when to prefer this over search_project_items or other project-item search tools.

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

freeze_frameFreeze FrameB

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; on failure, diagnostic detail when the tool provides it.
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=false, idempotentHint=false, and destructiveHint=false, so the mutation profile is partly covered. The description usefully adds that a frame is exported and re-imported as a still image, implying project-side side effects, but it does not say which clip is used (selection? playhead clip?), where the still lands, or whether it touches 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.

Conciseness5/5

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

Two tight sentences with no filler; the core action is front-loaded and the second sentence explains the mechanism rather than restating the name. Every clause 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?

An output schema exists, so return values need not be described. However, for a non-idempotent, non-read-only tool the description leaves key operational questions open: which clip the freeze is taken from, whether the still is added to the timeline or just to the project, and whether output_path overwrites existing files.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (output_path, time_seconds, duration_seconds) are already documented with defaults and fallback behavior. The description only echoes 'at a specific time' and adds no format or unit 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?

States a specific verb and resource ('Create a freeze frame from a clip') and goes further by explaining the mechanism ('Exports the frame and imports it back as a still image'). It does not, however, distinguish itself from closely related siblings like export_frame, capture_frame, or set_poster_frame, which an agent must disambiguate 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 Guidelines2/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, and no alternatives are named. Given that export_frame, capture_frame, and export_sequence_review_frames all deal with extracting frames, the absence of routing guidance is a real gap.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnly=false, destructive=false, idempotent=false and openWorld=false. The description adds real value beyond them: the output is disk-verified, it refuses to overwrite an existing file, and it does not modify Premiere or the source media, clarifying where side effects land. It stops short of stating failure modes for unsupported inputs or runtime prerequisites.

Agents need to know what a tool does to the world before 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 artifact produced and then the key behavioral constraints. No filler, no repetition of schema or annotation 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?

An output schema exists, so return-value explanation is not needed, and the description covers the material behavior (creates new file, no overwrite, doesn't touch source/Premiere). Slightly short on edge cases like invalid ranges or media that can't be decoded, but overall adequate for a 5-param 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 rows, columns, thumbnail_width, media_path and output_path are already fully documented with ranges and defaults. The description adds only the 'evenly sampled source frames' hint about how sampling works, not per-parameter meaning, 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 (Generate) plus resource (a PNG contact sheet from evenly sampled source frames), which clearly distinguishes it from frame-oriented siblings like export_frame or export_sequence_review_frames. The scoping phrase 'disk-verified' and 'evenly sampled' pins down what artifact is produced.

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 description (create a contact sheet artifact), and the no-overwrite constraint gives a practical precondition. However it never states when to prefer this over alternatives such as export_frame or the review-frame exporters, and gives no exclusion guidance.

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 SequenceB
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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds only 'currently active' as behavioral context and says nothing further about scope or failure modes; the output schema carries the return-value burden.

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 short sentence, front-loaded with the verb and resource. It is efficient, though the phrase 'detailed information' is slightly vague filler that could be trimmed.

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 a rich output schema and full annotation coverage, the description only needs to establish purpose and context. It does that minimally, but given the large set of overlapping sequence-inspection siblings, it does not do enough to establish when this is the right entry point.

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 semantics to explain; the baseline for a parameterless tool is 4.

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 (get) and resource (active sequence) with the scoping qualifier 'currently active', which helps distinguish it from the static sequence getters. However, it does not name or contrast with close siblings such as get_full_sequence_info or get_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 Guidelines2/5

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

No when-to-use guidance, no prerequisites (e.g. that a project/sequence must be open), and no routing to alternatives. The description leaves the agent to infer that this targets whatever sequence is active.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds useful context about what the tool assesses (entitlements, prerequisites, user-assisted boundaries), but says nothing about required inputs, defaults, or how results should be interpreted beyond what the schema and output 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.

Conciseness4/5

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

A single front-loaded sentence with no filler; the list of reported dimensions is dense but each item is meaningful. Slightly compressed for the breadth it covers, but nothing is wasted.

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 need not be described, and the schema fully documents inputs. What is missing is the disambiguation from the similar support-reporting sibling, which matters for a tool whose whole job is comparing feature eligibility across 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%, including a documented enum and defaults for the backend parameter, so the schema carries the parameter semantics. The description adds no detail about any of the five inputs, 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 ('Report') and enumerates a concrete resource set: public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features. It does not, however, differentiate itself from the near-identical sibling get_av_feature_support, leaving the agent to guess which support-reporting tool applies.

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 when-to-use guidance, no exclusions, and no mention of the sibling get_av_feature_support or get_capabilities. Usage is only implied by the subject matter, so an agent has no rule for choosing this tool over its close neighbors.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds the scoping fact that results are unique paths limited to the current project, which is genuine added value, but says nothing about ordering, size, or handling of offline media.

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 core operation front-loaded. The second sentence is mildly soft ('useful for...') but does not bloat 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?

With zero parameters, a rich annotation set, and an output schema that carries the return shape, the description only needs to state scope and it does. Little is left ambiguous for an agent to call 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 takes zero parameters, so there is nothing for the description to disambiguate; baseline 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?

States a specific verb and resource ('get all unique media file paths used in the project') with the 'unique' scope qualifier, so the agent knows it deduplicates. It does not differentiate itself from close siblings like get_used_media_report, find_items_by_media_path, or get_unused_media, which prevents 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 Guidelines3/5

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

'Useful for asset management and archiving' implies a use context but names no conditions or alternatives for choosing this over the media-report siblings. Usage is 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_av_feature_supportGet Av Feature SupportB
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; on failure, diagnostic detail when the tool provides it.
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=false, covering the safety profile. The description adds that it reports 'actionable reasons for UI-only features', which gives some content context, but it does not describe return format, auth requirements, or other behavioral traits 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?

A single front-loaded sentence with no wasted words. It is appropriately sized, though the phrase 'documented automation boundary' is slightly abstract and could be clearer.

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, the description adequately states the tool's scope. It is nearly complete but could be improved by clarifying its relationship to similar feature-support 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 takes zero parameters and the input schema is empty. Per scoring rules, 0 params yields a baseline of 4; the description introduces no parameters and correctly does not need to explain any.

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 ('Report') and resource ('documented automation boundary for advanced audio and modern color management'), making the tool's purpose clear. However, it does not distinguish this tool from sibling tools like get_advanced_feature_support or get_capabilities, which likely overlap in 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?

The description provides no explicit guidance on when to use this tool versus alternatives, nor any conditions or exclusions. Usage is only implied by the tool's purpose.

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'); '/' or 'root' for the project root
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds useful content scope ('all nested items, media paths, offline status, color labels, and metadata'), but does not go beyond structured data to describe pagination behavior, recursion defaults, or response shape.

Agents need to know what a tool does to the world before 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, front-loaded with the tool action and followed by addressing syntax. Every phrase 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 rich input schema, existing output schema, and strong annotations, the description covers the essential purpose and lookup method. It leaves pagination, recursion defaults, and output details to structured fields, which is reasonable, though an explicit sibling distinction could improve 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 the input schema already documents bin_id, limit, offset, max_depth, and recursive in detail. The description's 'Searches by bin name or node ID' only partially mirrors the schema's richer bin_id description and adds no parameter meaning beyond 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 states a specific verb and resource: 'Get detailed contents of a specific bin (folder)' and lists the returned item types. This clearly identifies what the tool does, though it does not explicitly distinguish itself from adjacent siblings such as list_project_items or get_project_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 phrase 'Searches by bin name or node ID' implies when the tool is useful and how to address a bin, but there is no explicit when-to-use guidance, prerequisites, or named alternative. Usage is inferable but not spelled out.

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; on failure, diagnostic detail when the tool provides it.
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 declare read-only, idempotent, non-destructive, and non-open-world behavior. The description adds meaningful context beyond those hints by specifying that the telemetry is aggregate and privacy-preserving, and that it avoids returning project or personal data. It does not detail auth or rate limits, but the privacy scope is a strong behavioral disclosure.

Agents need to know what a tool does to the world before 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 definition is a single front-loaded sentence that states the core action and then lists the retrieved metrics. Every part 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?

Given zero parameters, full annotation coverage, and the presence of an output schema, the description supplies everything an agent needs: what the tool inspects, what categories of data it returns, and the privacy guarantee. Return-value details are appropriately left to the output 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?

The tool takes zero parameters and the schema is an empty object. Per the scoring baseline for parameterless tools, no parameter semantics are needed, and the description appropriately does not discuss arguments.

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 resource ('aggregate bridge health'), then enumerates the exact metrics returned (pending command/response counts, busy operations, queue age, CEP heartbeat state). It clearly distinguishes this diagnostic telemetry tool from editing siblings by scoping it to privacy-preserving bridge health.

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 verb 'Inspect' and the diagnostic subject matter, but it does not explicitly state when to use this tool versus alternatives or prerequisites. No when-not guidance is provided, leaving 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_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; on failure, diagnostic detail when the tool provides it.
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, non-destructive, and closed-world behavior. The description adds meaningful context beyond annotations by warning that discovery never grants authority or proves a live host is ready, which is an important behavioral limitation 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?

The description is four short sentences, front-loaded with what the tool does, followed by concrete query guidance and a key limitation. Every sentence earns its place without repetition or bloat.

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 the tool has no required parameters, complete schema coverage, annotations covering safety, and an output schema, the description provides enough context for correct invocation. It covers purpose, query modes, and the critical caveat that discovery does not grant authority or prove host readiness.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 five parameters in detail. The description repeats some query-mode usage and adds keyword examples, but it does not mention available_only and adds little parameter semantics 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 verb and resource: discover Premiere operations and report backend coverage, authority, and verification requirements. It clearly distinguishes this catalog-discovery tool from action-oriented siblings, and the opening sentence front-loads the tool's 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?

It gives clear internal usage guidance: use tool_query for ranked, bounded keyword matches, tool_names for exact lookups, and tool_offset/tool_limit for paging. It does not explicitly name when to choose this tool over similar capability/inspection siblings, so it falls short of the highest tier but is much better than mere implied usage.

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

get_caption_style_guidanceGet Caption Style GuidanceA
Read-onlyIdempotent

Returns caption style presets (clean, bold_pop, karaoke, podcast, lecture) with font, position, and styling recommendations, plus Premiere UI steps for applying styles. Read-only guidance; NEVER modifies caption tracks. Use build_caption_artifact for SRT/VTT timing, then import via create_caption_track and apply styles manually in Premiere's UI.

ParametersJSON Schema
NameRequiredDescriptionDefault
presetNoStyle preset to describe (default clean).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false. The description reinforces the safety profile with 'Read-only guidance; NEVER modifies caption tracks' and adds genuinely useful behavioral context: styles must be applied manually in Premiere's UI rather than by this tool. It does not contradict annotations, though it repeats some of their safety signal rather than adding entirely new 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 three tight sentences: output scope, safety/workflow constraint, and alternative-tool routing. It is front-loaded with the core purpose and wastes no words, and each sentence provides actionable 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 simple, has full schema coverage, complete annotations, and an output schema, so the description does not need to explain return values in depth. It nonetheless provides the workflow context an agent needs: what it returns, that it is non-destructive, and how it relates to adjacent caption tools. 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%, and the single optional enum parameter is already fully described in the schema with its default. The description names the same preset values but adds no syntax, format, or selection nuance 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.

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: returns caption style presets with font, position, styling recommendations, and Premiere UI steps. It lists the exact preset set and explicitly distinguishes the tool from build_caption_artifact and create_caption_track, so an agent can identify its unique role immediately.

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 clear when-to-use guidance by naming the alternative build_caption_artifact for SRT/VTT timing and create_caption_track for import, then clarifies that style application is manual in Premiere's UI. The workflow sequence is explicit enough that an agent knows this tool is for guidance, not for caption artifact generation or track creation.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, and destructiveHint=false, so the safety profile is covered externally. The description adds no behavioral context beyond restating the check itself (e.g., what the result implies or how it behaves on non-clip nodes).

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 short sentence with zero waste, appropriately sized for a one-parameter predicate tool. It is terse but front-loaded and does not pad.

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 the return value needn't be explained, and annotations cover the safety profile. For a simple boolean-style query tool, the description is complete enough, though a hint about its role relative to add_adjustment_layer would help.

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

Parameters3/5

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

With a single parameter at 100% schema description coverage, the schema fully documents node_id. The description adds no syntax or format 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.

Purpose4/5

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

The description states a specific verb ('Check if') and resource ('clip is an adjustment layer'), making the purpose immediately legible. It does not differentiate from related siblings such as add_adjustment_layer, but the query nature is clear.

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 when-to-use guidance, no mention of prerequisites, and no routing to alternatives. An agent is left to infer that this is a read-only predicate to call before adjustment-layer operations.

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 PlayheadB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds only the scope 'across all tracks', which is modest context; it does not disclose return format, pagination, or whether the result is live-updating.

Agents need to know what a tool does to the world before 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 wasted words. The scope and action are stated immediately, and no unnecessary elaboration is present.

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 (one optional parameter) and has an output schema, so the description need not explain return values. It covers the main behavior but does not mention the optional track_type filter, even though the schema documents it, leaving a minor gap that is acceptable given the schema 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%; the single optional track_type parameter has an enum and description ('Track type to check (default: both)'). The tool description does not add any meaning beyond the schema, which is the correct baseline when the schema fully documents 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?

States a specific verb (Get) and resource (clips) with the scoping condition 'at the current playhead position across all tracks'. It is clear what the tool returns, but it does not distinguish itself from the closely named sibling get_clip_at_position or other clip-retrieval 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 or when-not-to-use guidance is provided. The description does not mention alternatives such as get_clip_at_position or get_selected_clips, leaving the agent to infer usage purely 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.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds no further behavioral context, such as what is returned when no clip exists at that position or whether track_index must be valid for the given track_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?

A single, well-formed sentence with no filler, front-loading the verb and resource. Nothing is wasted.

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, parameters are fully documented in the schema, annotations cover the safety profile, and an output schema exists so return values need not be explained. The only minor gap is the undocumented edge case of no clip at the given position.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 documented and track_type constrained by an enum. The description adds nothing 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?

States a specific verb (Get), resource (clip), and the scoping conditions (time position, track). It implicitly distinguishes itself from get_clip_at_playhead, but it does not explicitly reference that sibling or clarify how it differs from 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 use this versus alternatives such as get_clip_at_playhead, get_clip_properties, or get_qe_clip_info. No prerequisites or exclusions stated; the agent must infer usage 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.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds the clip-vs-sequence scope clarification, but says nothing about ordering, filtering, or marker contents beyond what the output schema presumably covers.

Agents need to know what a tool does to the world before 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 tight sentence with the key disambiguation front-loaded in the parenthetical. Nothing wasted.

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 and complete annotations, the description only needs to add scope and disambiguation, which it does. A brief note on ordering or empty-result behavior 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 item_id ('Node ID or name of the project item') is already documented. The phrase 'on a specific project item' loosely reinforces the parameter's meaning but adds no syntax or format details 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?

States a clear verb+resource ('Get all markers') and adds the scoping qualifier 'on a specific project item'. It distinguishes itself from sequence-marker siblings by explicitly saying 'source clip markers, not sequence markers', though it doesn't name the sibling to redirect to.

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 'source clip markers, not sequence markers' implies when to use this versus sequence-marker tools, which is useful. But there's no explicit when-to-use statement, no mention of add_marker/update_marker/list_markers as related operations, and no prerequisites.

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 PropertiesC
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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds nothing beyond that: no note on whether the read is cheap, whether the node ID must come from a selection or a prior call, or what happens on an invalid ID.

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 tight sentence, front-loaded with the verb. Nothing is wasted, though it is arguably under-specified rather than maximally concise.

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 need no explanation, and the tool has one well-documented parameter. Still, for a read tool sitting among many near-duplicate readers, the definition does not give the agent enough to choose 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% and node_id is fully documented in the schema, so the description ('by its node ID') merely restates it. Baseline 3 is appropriate when the schema carries the 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?

Clear verb ('Get') plus resource ('properties of a specific clip'), so the operation is unambiguous. However it does not differentiate itself from sibling readers such as get_full_clip_info, get_qe_clip_info, or get_item_info, which is the exact ambiguity an agent faces in this crowded namespace.

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, when-not-to-use, or alternative named. With roughly a dozen other clip/item info getters in the sibling list, the absence of any routing guidance is a real gap.

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 SpeedA
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; on failure, diagnostic detail when the tool provides it.
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=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only the return scope (speed and reverse state) and does not disclose error behavior, auth needs, or any non-obvious read constraints; this is an adequate but minimal addition.

Agents need to know what a tool does to the world before 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 zero wasted words. It states the operation and the returned state 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 one-parameter read tool with full schema coverage, annotations, and an output schema, the description supplies enough context to call it correctly. It could be slightly more complete by noting when to prefer it over broader inspection siblings, but nothing required 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%, and the single node_id parameter is already documented in the schema. The description adds no additional parameter meaning such as node ID format or source, 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 gives a specific verb ('Get') and resource ('playback speed and reverse state of a clip'), clearly distinguishing this read operation from sibling mutation tools like set_clip_speed_qe or reverse_clip. An agent can identify the tool's purpose 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 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 such as get_clip_properties or set_clip_speed_qe. The read-only nature is implied only by the verb and annotations, not stated as usage criteria.

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; on failure, diagnostic detail when the tool provides it.
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 this a safe, idempotent read, so the bar is lower. The description adds real behavioral value beyond them: it warns that setValue() clamps silently (why the read may disagree with what was written) and discloses a scope limitation (Essential Sound Amplify automation is not reported). No permissions or rate-limit info, but strong for a read 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?

Three short sentences, zero filler, with the core read action and the dB unit front-loaded before the caveats. 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?

Output schema exists, so return values need no explanation. The description covers purpose, verification motive, and a key limitation, making it complete enough for a single-parameter read. Only minor gaps around how the returned level relates to keyframed volume.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% for the single node_id parameter, so the schema fully documents it. The description adds no format or sourcing detail about node_id, so the baseline of 3 for schema-covered parameters 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 and resource ('Read an audio clip's Volume > Level in dB'), naming the exact property path. An agent can distinguish this from broad siblings like get_clip_properties or get_clip_speed without opening 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?

Explicitly gives the trigger ('Use this to verify a level actually applied') and explains why it matters (setValue() clamps silently). It does not name set_clip_volume as the counterpart, so the routing is implied rather than explicit, but the usage context is clear.

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 LabelC
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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered by structured data. The description adds nothing beyond restating the name, not even a note on what happens for items lacking a label or what the returned label representation is.

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?

One short, front-loaded sentence with no filler. It is as terse as possible, though that terseness is also why it lacks guidance.

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 need not be explained, and the tool is a simple single-parameter read. Still, with no usage guidance and no behavioral detail, the definition is only minimally sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 item_id parameter is documented in the schema as 'Node ID or name of the project item'. The description adds no extra semantics, which is the expected baseline when the schema does the 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?

States a specific verb (Get) and resource (color label of a project item), so the agent knows exactly what it fetches. It does not reference siblings like set_color_label or get_item_info, but the resource is distinct enough that confusion is unlikely.

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 context, no prerequisites, and no mention of alternatives such as get_item_info or get_clip_properties that may also surface label data. Usage must be inferred 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_color_spaceGet Color SpaceB
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; on failure, diagnostic detail when the tool provides it.
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 annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is fully covered. The description aligns with these by using 'Get' and narrowing scope to a project item, but it adds no further behavioral context such as response format or permission requirements.

Agents need to know what a tool does to the world before 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 communicates the essential action and scope 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 read tool with one fully documented parameter, rich annotations, and an output schema, the description is largely complete. It states what is retrieved and from where; return details and parameter details are handled by structured fields, though usage alternatives remain unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 required parameter item_id is documented in the schema. The description does not add meaning beyond the schema, which is appropriate for this baseline when the schema already carries 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 states a specific verb ('Get'), resource ('color space information'), and scope ('for a project item'), making the tool's purpose clear. It does not explicitly differentiate itself from related color or metadata siblings, but the resource is specific enough for an agent to identify it.

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_clip_properties or get_color_label. The description only states what the tool does, leaving the agent to infer usage context 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.

get_duplicate_mediaGet Duplicate MediaA
Read-onlyIdempotent

Find project items that reference the same source media file. Useful for consolidation. After Effects compositions imported from the same .aep/.aepx are only grouped when their comp names also match. Groups are paged (default 100) and can be filtered by a case-insensitive item-name substring; follow nextOffset while truncated is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum duplicate media groups (a group matches contains when any item name matches) entries to return (1-500, default 100).
offsetNoZero-based index of the first duplicate media groups (a group matches contains when any item name matches) entry to return (default 0). Pass the previous response's nextOffset to read the next page.
containsNoOptional case-insensitive substring matched against project item names before paging. Omit or pass an empty string to include every entry.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely non-obvious behavior: After Effects comps are grouped only when comp names also match, and the result set is paged with a truncation signal. That is real context beyond structured data.

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?

Front-loaded with the core 'what' before the AE-specific caveat and paging mechanics. Four sentences, each carrying information, though the paging sentence partly overlaps with schema 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?

With annotations covering safety and an output schema covering the return shape, the description supplies the missing nuance an agent needs: the AE comp-name grouping rule and the truncation/nextOffset loop. Remaining gaps are minor for a read-only list 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 coverage is 100% and each parameter is already documented, including the default of 100 and the nextOffset round-trip. The description largely restates this, adding only the case-insensitivity and substring framing that the schema also carries, 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 first sentence states a precise verb+resource+scope ('project items that reference the same source media file'), which distinguishes it from near-neighbors like find_items_by_media_path (path lookup) and consolidate_duplicates (the mutating action). An agent can identify the operation 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?

It orients usage ('Useful for consolidation') and gives concrete operational instructions for filtering and paging ('follow nextOffset while truncated is true'). It stops short of explicit when-not guidance or naming the sibling that performs the actual consolidation.

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 PropertiesB
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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint, idempotentHint and non-destructive, so the safety profile is covered. The description adds only that 'current values' are included, which is minimal extra behavioral context; it does not note pagination, ordering, or how values relate to keyframes.

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 no filler. It is efficient, though arguably too terse for a tool with several near-neighbor siblings that it could have disambiguated in the same sentence.

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 and rich annotations carry most of the burden, and the schema is fully documented, so the short description is nearly sufficient. The remaining gap is routing: the crowded sibling set means the description should say when to call this versus list_clip_effects, get_clip_properties, or get_keyframes.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 documented in the schema (100% coverage), including examples for effect_name ('Motion', 'Opacity', 'Lumetri Color'). The description adds no additional semantics beyond confirming the effect lives on a clip, 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?

States a specific verb and resource ('List all properties of a specific effect on a clip'), which clearly tells an agent what this returns. It does not explicitly distinguish itself from close siblings such as list_clip_effects or get_keyframes, leaving the agent to infer that this one drills into a single named effect.

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 when-to-use or when-not-to-use guidance and no named alternative. The phrase 'a specific effect' weakly implies the required effect_name, but the agent gets no help choosing this over list_clip_effects (to discover effects) or get_keyframes (for animated values).

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 by container/format (e.g. 'H.264', 'mp4', 'QuickTime', 'WAV') or preset name (e.g. 'ProRes', 'Proxy'). Presets whose format matches come first. Omit to list all.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 read-only/idempotent/non-destructive, so the safety profile is covered. The description adds genuine behavioral context beyond the schema: presets are discovered by scanning .epr files on disk because Premiere's ExtendScript API exposes no enumeration, which explains result provenance and completeness limits.

Agents need to know what a tool does to the world before 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 waste, front-loaded with the action and return value before the implementation note. 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?

An output schema exists, so return-format explanation is unnecessary, and annotations cover the safety profile. For a simple one-optional-param discovery tool, the description supplies everything an agent needs 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.

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 'format' parameter and its match-ordering behavior are already fully documented in the schema. The description adds no extra parameter 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?

States a specific verb ('List') and resource ('Adobe Media Encoder export presets'), and adds the concrete return content (the .epr path) plus its downstream consumers. This distinguishes it from siblings like export_sequence, encode_project_item, and validate_export_preset.

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 explains the purpose in a workflow sense by naming export_sequence and encode_project_item as the tools the .epr paths feed into. It implies this is a discovery step but does not explicitly state when not to use it or name a competing discovery tool, so it falls short of the top tier.

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 export file extension from Premiere. If Premiere returns none, infer it only for an existing .epr in a recognized Adobe Media Encoder format folder; that fallback is marked unconfirmed and should be checked before delivery.

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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=false, so the safety profile is covered. The description goes beyond that by disclosing a non-obvious fallback: inference occurs only for an existing .epr in a recognized Adobe Media Encoder format folder, and the inferred result is flagged unconfirmed and must be verified before delivery. That uncertainty flagging is exactly the kind of context annotations cannot express.

Agents need to know what a tool does to the world before 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 primary action is front-loaded and the conditional fallback caveat follows, so the agent reads the main behavior first and the edge case second.

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 the return shape need not be described, and the annotations cover the read-only/idempotent profile. The description supplies the one piece not encoded in structured fields — the conditional inference and its unconfirmed status. Only the 'recognized Adobe Media Encoder format folder' set is left undefined, which is a minor gap for a single-parameter read 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 preset_path is documented as 'Full path to the export preset file (.epr)', so the baseline is 3. The description adds a mild qualifier on which paths qualify for the fallback (existing .epr in a recognized AME folder), but it does not specify path syntax, format variants, or error behavior for the 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?

States a specific verb and resource ('Get the export file extension from Premiere') with the source system named, so the action is unambiguous. It does not, however, differentiate itself from adjacent tools like validate_export_preset or get_encoder_presets, leaving the agent to infer the boundary.

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 implied rather than stated: the closing 'should be checked before delivery' hints at a delivery-verification workflow, and the fallback branch explains what happens when Premiere returns no extension. There is no explicit when-to-use versus an alternative tool such as validate_export_preset.

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 InterpretationB
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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint false, and openWorldHint false, covering the safety profile. The description adds no behavioral context beyond that—no mention of failure modes, required permissions, or what the interpretation settings govern—so it offers little 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, front-loaded sentence with no wasted words. It states the action and target 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?

Given the rich annotations, full schema coverage, and the presence of an output schema, the description provides enough for an agent to invoke the tool correctly. It does not need to explain return values or safety, and the only notable gap is usage guidance, 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% for the single item_id parameter, and the description's 'for a project item' merely mirrors the schema's own description of accepting a node ID or name. The schema already does the heavy lifting, so 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+resource: 'Get footage interpretation settings' and scopes it to 'a project item'. It is clear and distinct from the sibling set_footage_interpretation by the get/set asymmetry, though it does not explicitly name or differentiate from other getters.

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 indication of when to use this tool versus alternatives, nor any preconditions or exclusions. Usage is only implied by the purpose itself, which falls short of explicit guidance.

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; on failure, diagnostic detail when the tool provides it.
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, non-destructive, and closed-world behavior. The description adds the returned content scope, but since an output schema exists, this is partly redundant and does not disclose additional behavioral traits like cost, latency, or 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 that immediately states the purpose and then enumerates the scope. The long field list is informative, though slightly dense, and each item generally 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 rich annotations, an output schema, and 100% schema coverage for the single parameter, the description provides enough scope information for an exhaustive read-only getter. The main remaining gap is explicit usage guidance versus closely related 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?

Schema description coverage is 100% and there is only one parameter (node_id), whose schema description already documents it as the clip's node ID. The description adds no syntax, format, or source 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.

Purpose4/5

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

States a specific verb and resource (get clip info) and enumerates an exhaustive scope: effects, source media, interpretation, metadata, markers, speed, enabled state, color label, linked clips, proxy status. This differentiates it from narrower sibling getters like get_clip_properties, though no sibling is named 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 adjective 'exhaustive' implies use when all clip details are needed, which is implied usage rather than explicit guidance. It offers no when-not conditions or routing to alternatives such as get_clip_properties or get_qe_clip_info, despite many overlapping siblings.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint and non-destructive, so safety is covered; the description adds genuinely new behavioral context by warning that the default response can be large and how to bound it. It stops short of describing the response shape, but an output schema exists to carry that.

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 no filler, and the core purpose is front-loaded ahead of the mitigation advice. It is appropriately sized, though the second sentence compresses three parameters into one clause rather than fully explaining their interplay.

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-required-parameter, read-only overview tool with a full output schema and complete parameter descriptions, the description covers purpose and the main operational caveat. The only meaningful gap is lack of differentiation from adjacent project-info 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 each parameter already documents itself including defaults and ranges. The description only echoes include_bin_tree, sequence_offset and sequence_limit by name without adding format or interaction 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.

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 ('overview of the project') with a scope qualifier ('comprehensive'), so the agent knows what is returned. It does not, however, distinguish this from closely related siblings such as get_project_info or get_full_sequence_info, which the agent must resolve 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?

It gives one concrete usage rule — use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects — which is real conditional guidance. It says nothing about when to prefer this over other project-level inspection tools, so the when-to-use-vs-alternative dimension 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_full_sequence_infoGet Full Sequence InfoB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds useful scope by naming the state included (tracks with lock/mute/target, clips with effects/speed/enabled), but it adds no behavior beyond annotated traits such as permissions, performance, or pagination.

Agents need to know what a tool does to the world before 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 front-loaded sentence with a colon-delimited inventory of returned data. Every listed item earns its place by specifying output scope, and 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?

An output schema exists and annotations cover safety, so the description does not need to explain return values. It does enumerate the returned data thoroughly, but it leaves the user without sibling-routing guidance, which is the one meaningful gap for this broad reader in a crowded tool namespace.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 sequence_id parameter has a clear schema description with a fallback behavior (uses active sequence if omitted). The tool description adds no parameter semantics of its own, so the baseline 3 is appropriate when the schema already carries the parameter documentation.

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?

It states a specific verb+resource ('Get exhaustive information about a sequence') and enumerates the exact returned content (settings, tracks, clips, markers, transitions, in/out points, work area). However, it does not explicitly differentiate itself from sibling readers such as get_sequence_structure, get_timeline_summary, or get_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 Guidelines2/5

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

The description lists what will be returned but gives no when-to-use guidance, no alternatives, and no conditions for choosing this over more targeted sibling tools. An agent must infer that 'exhaustive' means use this when everything is needed, which is minimal.

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; on failure, diagnostic detail when the tool provides it.
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 safe read profile is fully covered. The description adds project-level scoping and the fact that it is an HDR setting, which is useful extra context but not rich behavioral disclosure.

Agents need to know what a tool does to the world before 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 waste. Every word (verb, resource, scope, domain) 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 simple getter nature, annotations covering safety, and an output schema that documents the return value, the description provides sufficient context (scope = project, nature = HDR setting). It could mention units or expected value range, but those are likely in the output 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?

The tool takes zero parameters, so there is no schema complexity to compensate for. Baseline 4 applies since 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?

States a specific verb ('Get') and resource ('graphics white luminance value'), with additional scope ('for the project') and domain ('HDR setting'). Clearly distinguishes from the sibling set_graphics_white_luminance by direction, though it does not explicitly name the 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?

No guidance on when to use this tool versus alternatives, no prerequisites or context. It simply states what is retrieved, leaving usage entirely 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; on failure, diagnostic detail when the tool provides it.
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=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds useful context that the value tracks the currently focused Project panel bin, but says nothing about when the value may be stale or null (e.g. no bin focused).

Agents need to know what a tool does to the world before 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 resource, with the parenthetical used efficiently to define the ambiguous term. Nothing extraneous.

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 structure need not be explained, and the tool takes no arguments — the description covers what is needed to decide to call it. The only minor gap is not stating what is returned when no bin is focused.

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?

Zero parameters, so there is nothing to document and the baseline is 4. The description still usefully clarifies the semantic of the returned value rather than leaving 'insertion bin' undefined.

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+resource ('Get the current target bin') and defines the concept behaviorally as 'the bin that is currently focused in the Project panel', which disambiguates it from bin-related siblings like get_bin_contents or list_project_items. It does not explicitly name a sibling, 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 Guidelines3/5

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

Usage is implied — an agent infers this is for resolving the destination bin for new imports — but there is no explicit when-to-use statement, no alternative named, and no condition under which another tool (e.g. get_project_panel_metadata) would be preferred.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered structurally. The description is consistent with these but adds little behavioral context beyond the classification it returns (which the output schema already covers). No contradiction, but no meaningful addition either.

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; the verb comes first and the parenthetical examples earn their place. It is efficient, though bordering on under-specified for a tool whose scope words ('detailed type info') remain slightly loose.

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 rich annotations, the description need not explain return values, and the core purpose is conveyed. However, for a tool surrounded by near-identical read siblings, the lack of routing or disambiguation leaves a real completeness 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?

Only one parameter (item_id) and schema description coverage is 100%, so the schema already documents it as 'Node ID or name of the project item'. The description adds no format or usage nuance for this identifier, 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?

States a specific verb (Get) and resource (type info about a project item) and anchors the scope with concrete return categories: sequence, multicam, merged clip. The purpose is clear, but there is no differentiation from the very similarly named sibling get_project_item_info, which an agent could easily confuse it with.

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 when-to-use guidance, no prerequisites, and never names an alternative. With siblings like get_project_item_info, get_full_clip_info, and get_clip_properties, the agent gets no help deciding which to call.

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. Each key's time is in seconds from the clip's start; mediaSeconds is Premiere's stored media time.

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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=false, so the safety profile is covered. The description adds genuine value beyond that by explaining the time semantics ('time is in seconds from the clip's start; mediaSeconds is Premiere's stored media time'), which disambiguates two timing fields that are easy to confuse.

Agents need to know what a tool does to the world before 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 scope, followed by a high-value clarification of the time fields. No wasted 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?

An output schema exists, so return values need not be described, and annotations cover safety. The description is complete enough to call the tool correctly, with the only minor gap being no explicit guidance on interacting with the related keyframe write 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 all three parameters (node_id, effect_name, property_name) are already documented in the schema. The description adds no parameter 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.

Purpose4/5

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

Specific verb+resource+scope: 'Get all keyframes for a specific effect property on a clip.' This clearly distinguishes reading keyframes from write-side siblings like add_keyframe, remove_keyframe, and set_keyframe_interpolation, though it does not name any 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?

Usage is implied by the read verb (use this to read existing keyframes), but there is no explicit when/when-not or routing to alternatives such as get_value_at_time or get_effect_properties. For a read tool in a family of keyframe tools, 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_linked_itemsGet Linked ItemsB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, covering the safety profile well. The description adds only the 'same source' linking scope; it does not disclose return format, pagination, or edge cases, so it adds some but not rich 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 definition is a single, front-loaded sentence: verb, scope, and linking condition appear 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 read-only lookup with a rich annotation set and an output schema, the description is largely complete. It identifies the linked-source scope and implies the sequence is that of the given clip, though it does not explicitly state whether the given clip itself is included or how multiple linked items are ordered.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 is documented in the schema as 'Node ID of the clip'. The description does not add format, type, or constraint 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.

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') and resource ('all clips in the sequence that are linked to the same source as a given clip'). It clearly distinguishes a linked-item retrieval from general clip listing, but does not explicitly contrast itself with sibling tools such as get_clip_links or link_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?

The description gives no when-to-use guidance, no prerequisites, and no alternatives. It relies entirely on the reader inferring usage from the tool name and one-sentence purpose, which is insufficient for routing among the many sibling 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. Use parse_fields to return named XMP/project fields instead of raw XML. Project metadata XML and file/clip XMP are separate packets; disable either when identity/path is enough. Prefer inspect_project_panel_metadata_uxp item_columns or manage_metadata_uxp inspect_fields for visible columns. This is not the premiere://project/metadata resource. GPS and serials are omitted from parse_fields unless include_sensitive is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
parse_fieldsNoParse project metadata and XMP into named fields (default false). When true, raw XML is omitted unless include_project_metadata or include_xmp_metadata is explicitly true.
include_sensitiveNoWhen parse_fields is true, include GPS, serials, and similar EXIF. Default false.
include_xmp_metadataNoInclude the potentially large XMP XML payload (default: true unless parse_fields is true).
include_project_metadataNoInclude the potentially large Project Metadata XML payload (default: true unless parse_fields is true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive behavior, so the safety profile is covered. The description adds meaningful behavioral context: parse_fields returns named fields instead of raw XML, XML packets can be disabled when identity/path is sufficient, GPS and serials are omitted by default unless include_sensitive is true, and this is not the premiere://project/metadata resource.

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 front-loaded, dense, and uses no filler sentences. It packs purpose, usage guidance, alternatives, and sensitive-field caveats efficiently, though the number of clauses in one paragraph requires careful reading.

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's moderate complexity, rich annotations, complete schema coverage, and existing output schema, the description supplies everything an agent needs beyond structured fields: when to use it, which alternatives to prefer for related tasks, how metadata packets behave, and sensitive-data defaults.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 five parameters, including defaults and inter-parameter behavior. The description reinforces some of that, but does not add substantial syntax or format 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 gives a specific verb and resource: 'Get metadata for a project item.' It also distinguishes the operation from related tools and resources by noting 'This is not the premiere://project/metadata resource' and by explaining that project metadata XML and file/clip XMP are separate packets.

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 states when to use parse_fields, when to disable either metadata packet, and which sibling tools to prefer for visible columns ('inspect_project_panel_metadata_uxp item_columns or manage_metadata_uxp inspect_fields'). It also clarifies the sensitive-data default behavior, leaving little inference for an agent.

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 ComponentA
Read-onlyIdempotent

Get MOGRT (Motion Graphics Template) component parameters from a clip. Each parameter includes textValue (visible text extracted from textEditValue when present). Pass expected_values to audit text controls such as Headline; the result flags verified, mismatch, or missing_property per field. Reads the stored property, not the Essential Graphics panel display, which Premiere can show stale (host UI behavior this tool cannot refresh).

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the MOGRT clip on the timeline
expected_valuesNoOptional read-only audit map of MOGRT text parameter display names to the text each should contain (for example { "Headline": "Chapter 3" }). Result audit.status is verified, mismatch, or missing_property.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 read-only, idempotent, non-destructive behavior, but the description adds real value beyond them: it documents the textValue extraction from textEditValue, the per-field audit outcome vocabulary (verified/mismatch/missing_property), and the important caveat that the EGP display can be stale and cannot be refreshed by this tool. That is substantive behavioral context, not a restatement of 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?

Front-loaded with the core action, then layered with the audit behavior and the staleness caveat. Dense but every sentence carries information; the nested parenthetical about textEditValue is slightly heavy but not wasteful.

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 values need not be explained, and the description still covers the key input semantics plus the staleness limitation. For a two-parameter read tool it is essentially complete, with only the when-to-use routing against sibling inspection tools left unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id and expected_values are already fully documented in the schema, including the audit status vocabulary. The description reinforces the expected_values audit purpose but adds no syntax or format detail beyond what the schema supplies, 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 and resource ('Get MOGRT component parameters from a clip') and scopes it to MOGRT component properties, which cleanly separates it from generic siblings like get_clip_properties or get_effect_properties. It also clarifies it reads the stored property rather than the Essential Graphics panel display.

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 tells the agent to pass expected_values when auditing text controls such as Headline, which implies a usage context, but it never states when to prefer this tool over adjacent ones (get_effect_properties, inspect_dom_object, get_clip_properties) or any preconditions. 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.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, so the safety profile is fully covered structurally. The description adds the playhead-relative anchoring context but says nothing about boundary behavior or edge cases, so it adds only modest 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?

A single sentence with zero waste, front-loading the verb and the key scoping constraint (playhead position) 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?

With an output schema present and full annotation and parameter coverage, the description need not explain return values. It is nearly complete, though it omits what happens at sequence boundaries when no further edit point 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 coverage is 100% and both parameters are enums with defaults documented in the schema, so the schema carries the semantics. The description echoes the direction choice ('next or previous') but adds no format or behavior detail 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.

Purpose4/5

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

The description gives a specific verb ('Find') plus resource ('next or previous edit point') and clarifies the domain concept as a clip boundary located from the playhead. It is clear on its own, but it does not differentiate itself from related siblings such as move_playhead_to_edit or navigate_playhead.

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 'from the playhead position', telling the agent this is a query anchored to the current playhead, but there is no explicit when-to-use guidance, no prerequisites, and no routing to alternatives.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds only that results include expected file paths; it says nothing about scope limits, empty-result behavior, or freshness.

Agents need to know what a tool does to the world before 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 and output front-loaded and zero filler. Every clause carries 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 zero-parameter, annotated read tool with an output schema describing the return shape, the description supplies enough to call it correctly. The only gap is the unclear distinction from the sibling check_offline_media.

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 nothing for the description to disambiguate; baseline 4 applies. The schema is trivial and fully described by having no inputs.

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 ('Find') and resource ('all offline/missing media in the project'), plus the returned payload ('expected file paths'). It is clear what the tool does, though it does not distinguish itself from the near-namesake sibling check_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?

The phrase 'Essential for diagnosing broken links' implies a diagnostic use case, but there is no explicit when-to-use/when-not guidance and no mention of alternatives like check_offline_media, relink_media, or refresh_media for acting on results.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false. The description adds useful scoping by specifying the active sequence, but does not add further behavioral context such as return format or source-monitor distinction.

Agents need to know what a tool does to the world before 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 wasted wording. It communicates the operation and scope immediately.

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 read tool with full annotation coverage and an output schema, the description is complete. It identifies the active sequence scope, which is the key contextual detail 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?

There are zero parameters, so the baseline is 4. The description does not need to explain parameter semantics, and the empty schema is fully consistent with the 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?

States a specific verb (Get) and resource (current playhead/CTI position) scoped to the active sequence. It is clearly distinct from siblings like set_playhead_position and get_source_monitor_position.

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 returns but gives no when-to-use guidance or alternatives. It does not mention when to prefer this over get_clip_at_playhead, navigate_playhead, or 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_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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is fully covered by structured data. The description's only added behavioral value is the breadth of the snapshot, which is useful but thin; pagination, freshness/latency of the state read, and error behavior when no project is open are unstated.

Agents need to know what a tool does to the world before 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 list of captured state is front-loaded and the usage hint follows immediately; 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?

An output schema exists, so return values need not be documented, and the description still previews the payload contents. It is essentially complete for a parameterless read, though it could note prerequisites (e.g., an open/running Premiere session) for full confidence.

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 the schema imposes no semantic burden and the baseline of 4 applies. Nothing in the description adds or omits 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?

States a specific verb ('Get') and resource ('Premiere Pro state'), then enumerates the exact contents of the snapshot (project info, active sequence, playhead, selected clips, available sequences). This aggregation scope distinguishes it from narrower siblings like get_active_sequence, get_project_info, or get_selected_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?

Explicitly frames itself as 'the best first call to understand the current context,' which tells the agent when to reach for it. It stops short of naming alternatives or stating when NOT to use it (e.g., when only one sub-fact is needed), so it falls 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_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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only the scoping phrase 'currently open', contributing limited 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?

A single front-loaded sentence with no filler. It states the action and its target immediately and stops.

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, the description needn't explain return values, and with no parameters and rich annotations there is little left to document. The only shortfall is that it does not help the agent choose among the multiple project-info siblings.

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 the schema baseline is 4. There is nothing for the description to disambiguate, and it correctly does not invent parameter details.

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 (get) and resource (information about the currently open Premiere Pro project), scoped clearly with 'currently open'. However, it does not distinguish itself from nearby siblings such as get_full_project_overview, get_premiere_state, or get_project_panel_metadata, so an agent cannot tell which project-level info tool to pick.

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 or when-not-to-use guidance and names no alternative. With several overlapping project-introspection tools in the sibling list, the agent must guess based on the name alone.

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 InfoB
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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered without the description. The description adds value by naming the concrete data surface (codec, offline status, proxy status, in/out points), which tells the agent what it will learn, but it does not disclose failure modes such as behavior on an invalid or offline item.

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?

One front-loaded sentence that leads with the verb and resource, then enumerates the payload. The field list is long but each item is informative, so nothing meaningfully wasteful.

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 getter with full annotation coverage and an output schema that documents return values, the description supplies what remains: the conceptual scope ('project panel media file') and the breadth of fields. Only sibling disambiguation 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?

There is a single parameter with 100% schema description coverage ('Node ID or name of the project item'), so the schema carries the semantics. The description adds nothing beyond it, which is the expected baseline when the schema is complete.

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 (Get) and resource (project item), clarifying parenthetically that this is a media file in the project panel, and enumerates the returned fields. It is clear what the tool does, but it does not differentiate itself from near-siblings like get_item_info, get_clip_properties, or inspect_project_item_av_metadata.

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 reach for this tool versus the many overlapping readers in the sibling list (get_item_info, inspect_project_item_av_metadata, get_metadata, get_qe_clip_info). The agent must infer the choice from names alone, which is exactly the situation the description should resolve.

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 column layout as XML. This is schema/layout configuration, not per-item Scene/Shot/Take values; use inspect_project_panel_metadata_uxp item_columns or get_metadata for those. Output is capped by max_chars (default 20000); when truncated is true the XML is incomplete and must not be passed to set_project_panel_metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_charsNoMaximum characters of metadata XML to return (256-200000, default 20000). Longer XML is cut at this length and reported with truncated: true and totalChars.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely non-obvious behavior: the max_chars cap, the default of 20000, and the critical rule that truncated XML is incomplete and must not be passed to the setter tool. It stops short of describing caching or refresh behavior, so 4 rather than 5.

Agents need to know what a tool does to the world before 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, zero filler, front-loaded with what the tool returns and followed immediately by the disambiguation and the truncation warning. 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?

An output schema exists, so return-shape detail is unnecessary here. The description covers the remaining agent-critical concerns: correct scope, correct alternative tools, and the truncation hazard. Nothing needed to call it safely 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% and the single parameter is fully documented there, so baseline is 3. The description still adds value by restating the default and connecting max_chars to the truncated flag's downstream consequence, which the schema does not express.

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) plus the exact resource (current Project-panel column layout) and the return format (XML). It immediately distinguishes itself from per-item metadata tools by naming get_metadata and inspect_project_panel_metadata_uxp item_columns as the wrong choices for Scene/Shot/Take values.

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 says what this tool is NOT (per-item values) and names the two alternatives to use instead. It also states a hard usage constraint: truncated output must not be fed to set_project_panel_metadata, which tells the agent when the result is unusable.

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 project's scratch disk locations (captured media, previews, auto-save, Motion Graphics template media, and more). Premiere's scripting API has no scratch-disk getter, so the settings are read from the saved .prproj file; unsaved changes are not reflected. 'SameAsProject' resolves to the project's folder.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnly, idempotent, non-destructive), yet the description adds substantial non-obvious behavior: Premiere's scripting API has no scratch-disk getter, so values come from the saved .prproj and stale-unsaved-changes are not reflected, plus 'SameAsProject' resolution semantics. This is exactly the kind of context annotations cannot carry.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with what the tool returns, followed by the provenance constraint and the enum-value resolution rule. No filler and every sentence carries information an agent needs.

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 an output schema present, the description needn't explain return structure, and it covers the two things the schema cannot: where the data actually comes from (saved .prproj, not live state) and how 'SameAsProject' is resolved. Nothing needed to call this correctly 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 takes zero parameters, so the baseline is 4. The description appropriately spends no space on parameter documentation and instead clarifies result semantics, which is the right allocation for a no-arg getter.

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 ('Get the project's scratch disk locations') and enumerates the categories covered (captured media, previews, auto-save, MOGrt template media). The get/set verb split makes it distinguishable from set_project_scratch_disk and set_scratch_disk_path, but no sibling is named 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?

Usage is implied rather than stated: an agent can infer this is the inspection counterpart to the scratch-disk setters. There is no explicit when-to-use/when-not guidance or named alternative, though the provenance caveat ('unsaved changes are not reflected') does inform when the result is trustworthy.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint, and openWorldHint, so the safety profile is covered. The description adds domain context that this accesses QE DOM data beyond the standard API, but it does not mention prerequisites, failure modes, or host availability 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 definition is a single front-loaded sentence with no filler. It communicates the core purpose and the special QE DOM scope 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?

An output schema exists, so return values need not be described, and the annotations cover safety behaviors. The description is mostly complete for a simple read tool, though it could say more about when QE DOM access is appropriate versus standard clip 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%, with all three required parameters documented in the schema itself. The description adds no parameter-specific meaning beyond what the schema already 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 states a specific verb and resource: retrieving QE DOM information about a clip. It also differentiates the result from the standard API by noting properties not otherwise available, though it does not name a specific sibling tool such as 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 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 when this tool is useful, but there is no explicit when-to-use guidance or named alternative. The agent must infer that this is for QE-specific data rather than general clip inspection.

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; on failure, diagnostic detail when the tool provides it.
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, so the safety profile is covered. The description adds meaningful behavioral context by disclosing that it fails closed with a named capability error when the queue-status method is unavailable, though it does not elaborate on rate limits or return timing.

Agents need to know what a tool does to the world before 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 puts the primary purpose first and appends the fallback behavior 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 zero-parameter, read-only status tool with an output schema and full annotation coverage, the description is complete enough. It explains the purpose, the external dependency, and the failure mode, leaving return details to the output 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?

The tool has zero parameters, which establishes a baseline of 4. The description adds no parameter information, but none is needed because the input schema is empty.

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 (Report) and resource (Adobe Media Encoder queue running state), and it clearly distinguishes this status-read tool from siblings like add_to_render_queue or start_batch_encode. The fail-closed condition is an additional distinguishing detail that an agent can use for selection.

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 tool's intended context is clear: use it to report the AME queue running state, with a named fallback if this Premiere build lacks the underlying method. However, it does not explicitly name alternatives or state when-not-to-use conditions beyond the capability fallback.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds the useful scoping fact that results are limited to the active sequence and reflect the current selection state, but does not mention behavior on an empty selection or whether the selection spans tracks.

Agents need to know what a tool does to the world before 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, front-loading the verb and the key scoping qualifier ('currently selected'). Nothing 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?

With a rich annotation set, an output schema, and no parameters, the definition covers what an agent needs to call it. The only missing nuance is empty-selection behavior or result shape expectations, a minor gap given the output schema exists.

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 per the baseline rubric a 4 applies; the description correctly implies no input is required and frames the result as the live selection state.

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 ('Get'), resource ('clips'), and scope ('currently selected in the active sequence'). This clearly differentiates it from siblings like select_all_clips, invert_selection, or get_clip_at_position, though it doesn't name any 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 Guidelines2/5

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

The description only states what the tool does. It gives no guidance on when to reach for this versus selection-manipulation siblings (set_clip_selection, select_all_clips) or position-based retrievers (get_clip_at_position, get_clip_at_playhead), and no preconditions are mentioned.

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; on failure, diagnostic detail when the tool provides it.
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 annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is clear without the description. The description adds no further behavioral context such as authentication needs, rate limits, or return-shape details beyond what the output schema provides.

Agents need to know what a tool does to the world before 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 directly states the operation and its 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?

Given the low complexity, zero parameters, rich annotations, and an existing output schema, the description is complete enough for correct tool selection and invocation. No additional explanation of return values or parameters 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?

There are zero parameters, so parameter semantics are not applicable and the baseline is 4. The empty schema leaves nothing for the description to clarify.

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: getting the total number of sequences in the project. It is clear and distinguishes the count operation from list-like siblings such as list_sequences, but it does not explicitly name or route against 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?

The description provides no when-to-use guidance, prerequisites, or comparison to alternatives. It does not tell an agent when to call get_sequence_count instead of list_sequences or another sequence-inspection tool.

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 PointsB
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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false. The description adds only the term 'current' and no additional behavioral context such as return format, permissions, or limitations.

Agents need to know what a tool does to the world before 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 is appropriately sized for a zero-parameter getter.

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 complexity, zero parameters, rich annotations, and an output schema, the description is sufficient for an agent to invoke the tool correctly. It could be improved by explicitly distinguishing it from set_sequence_in_out_points and clear_sequence_in_out.

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 the description does not need to document parameter semantics. The baseline for no parameters is 4.

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) and resource (current sequence in and out points), so the purpose is clear. It does not distinguish itself from sibling tools such as set_sequence_in_out_points or clear_sequence_in_out, which keeps it below 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 when-to-use guidance, no prerequisites, and no mention of alternative getter/setter siblings. The intended use is obvious for a getter, but the description provides no explicit routing or context.

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 TypeB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds no behavioral detail beyond the selection scope, nor return format (which the output schema covers).

Agents need to know what a tool does to the world before 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 action, filter, and source are all stated immediately. Nothing is wasted.

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, two-parameter tool with a full output schema and rich annotations, the description covers the core scope adequately. It falls short only in not distinguishing the tool from closely related marker-listing 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%, with both parameters documented and marker_type fully enumerated. The description's parenthetical examples (comment, chapter, web link) mirror the enum but add no syntax or default behavior 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?

States a specific verb ('Get'), resource ('markers'), and a filtering dimension ('of a specific type') from a sequence. The type filter helps distinguish it from an unfiltered marker list, but it does not explicitly name or contrast with sibling 'list_markers' or 'get_clip_markers'.

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 when-to-use guidance, no exclusions, and no alternatives are named. The description implies retrieval by marker type, but an agent must infer when to choose this over 'list_markers' or other marker tools.

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 SettingsB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds only that the result contains settings like resolution and frame rate, which is useful but not rich behavioral context. Since the output schema exists, return-value details need not be repeated.

Agents need to know what a tool does to the world before 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 the resource immediately and uses a parenthetical only for illustrative examples.

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 optional parameter, rich annotations, and an output schema, the description is nearly sufficient for correct invocation. Its main gap is the lack of disambiguation from sibling read tools like inspect_sequence_av_settings, which an agent might otherwise confuse with this 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?

There is a single optional parameter and schema description coverage is 100%, so the schema already explains that sequence_id accepts an ID or name and defaults to the active sequence. The description adds no parameter-level meaning beyond that, making the baseline 3 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 ('Get') and resource ('settings of a sequence') and gives examples of the returned settings (resolution, frame rate). It does not differentiate this tool from overlapping read siblings such as inspect_sequence_av_settings or get_full_sequence_info, so it falls 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 offers no explicit guidance on when to use this tool versus its many siblings, nor does it name alternatives or exclusions. The only usage hint ('Uses active sequence if omitted') is inherited from the input schema, not the description itself.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds that the result is a complete overview including gaps and metadata, but does not disclose return format, pagination, or error behavior; with an output schema present 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 sentences, no waste, front-loaded with the core action and scope. The second sentence adds usage 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?

For a simple read-only tool with full schema coverage, rich annotations, and an output schema, the description is complete enough. It tells the agent what it returns and when to use it, and the missing return-format details are covered by the 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 description coverage is 100%, and the single optional sequence_id parameter is documented in the schema as accepting a name or ID with fallback to the active sequence. The description adds no parameter details 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?

States a specific verb (Get) and resource (sequence structure), and enumerates the output scope: tracks, clips with positions, gaps, metadata. This clearly separates it from settings-oriented or summary-oriented siblings, but it does not explicitly name an alternative tool to route against.

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 a clear usage context: 'Essential for understanding timeline state before making edits.' This tells the agent when to call it, but there is no when-not guidance and no explicit alternative named.

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 InfoB
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; on failure, diagnostic detail when the tool provides it.
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 only the implicit state dependency on the source monitor's currently loaded clip; it discloses nothing further about behavior.

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 the verb and resource up front and no padding. It is appropriately sized, though it is arguably too terse to earn a 5.

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 tool with an output schema and full annotation coverage, the description supplies enough context to call it correctly. Return values need not be explained because an output schema exists.

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 the baseline is 4. There is nothing for the description to clarify about inputs, and it does not mislead in this respect.

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 clear verb ('Get') and a specific resource ('information about the clip currently loaded in the Source Monitor'). It is distinguishable from siblings like get_source_monitor_position and play_source_monitor, though the description never explicitly names what separates it from those 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?

There is no when-to-use guidance and no mention of alternatives or prerequisites. The phrase 'currently loaded' implies the source monitor must have a clip, but this is not stated as a usage condition.

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; on failure, diagnostic detail when the tool provides it.
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 fully covered structurally. The description only clarifies what 'position' means (the time indicator in the Source Monitor), adding modest context but no return format, units, or 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?

A single, front-loaded sentence with no filler; the resource and the specific value returned are stated 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?

With no parameters and an output schema present, the description need not explain return values. It is essentially complete for a simple read tool, though a note on timebase/units would have made it airtight.

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?

Zero parameters and 100% schema coverage, so the baseline of 4 applies. There is nothing parameter-related the description needs to compensate for.

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?

Clear specific verb+resource: retrieves the Source Monitor playhead/time indicator position. It is distinguishable from write-side siblings like set_playhead_position, but the description does not differentiate it from the closely related get_source_monitor_info or get_playhead_position 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?

No guidance on when to call this versus get_source_monitor_info, get_playhead_position, or get_qe_clip_info. The agent must infer the use case 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.

get_target_tracksGet Target TracksA
Read-onlyIdempotent

Get which tracks are currently targeted for editing. Premiere allows several video or audio tracks to be targeted at the same time; every targeted track is listed. Tracks whose state cannot be read are listed under unreadable.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 safety (readOnly, idempotent, non-destructive, openWorld=false). The description adds useful behavioral context beyond that: multiple tracks can be targeted simultaneously, every targeted track is returned, and unreadable states appear under 'unreadable'. This partial-result behavior is valuable and not 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?

Three efficient sentences, front-loaded with the core purpose and then adding only the key constraints (multiple tracks, unreadable fallback). 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?

With an output schema present, return format need not be described; annotations cover safety. The description adds the one behavioral nuance (unreadable tracks) an agent needs to interpret the result correctly. 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 takes zero parameters, so the baseline is 4. The description correctly does not discuss parameters and there is nothing 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?

States a specific verb ('Get') and resource ('which tracks are currently targeted for editing'), and the detailed clause about multiple targeted video/audio tracks in Premiere makes the scope unambiguous. An agent can readily distinguish this from set_target_track 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 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 (to discover current targeting state) but does not explicitly name alternatives or say when not to use it. No routing to set_target_track or set_all_tracks_targeted is provided, 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_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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds only that gaps are empty spaces between clips and their diagnostic purpose, without extra operational details such as default sequence behavior or scope limits; with annotations carrying the behavioral load, 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.

Conciseness5/5

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

Two sentences, both earning their place, with the core purpose front-loaded and 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?

An output schema exists, all parameters are fully documented, and annotations cover the safety profile. The description supplies the remaining conceptual context about what gaps are and why they matter, 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%, and all three parameters are documented in the schema. The description adds no parameter-specific 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 specific verb and resource: 'Find all gaps (empty spaces) on the timeline between clips.' It clarifies what a gap is, but does not name or distinguish itself from any sibling tool, so it falls 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 Guidelines4/5

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

It gives clear context for when the tool is useful: 'identifying where content is missing or where clips can be tightened.' It does not, however, provide explicit when-not guidance or name alternative tools, so it is not a 5.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false. The description adds that the output is a human-readable summary and lists its components, but no operational details beyond that, which is adequate 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.

Conciseness4/5

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

Two sentences, front-loaded with the resource and its contents, followed by a brief usage note. It is efficient and no sentence is clearly wasted, though the second sentence is mildly promotional.

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 low-complexity, has an output schema, and is covered by read-only annotations. The description sufficiently conveys what the summary contains; no critical agent-facing 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?

There is one parameter and schema description coverage is 100%, so the schema already fully documents sequence_id. The description adds no parameter meaning beyond the schema, matching the baseline of 3 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?

States a specific verb ('Get') and resource ('timeline summary'), then enumerates the summary contents. It is clear but does not distinguish itself from siblings such as get_full_sequence_info 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?

'Great for a quick understanding of sequence state' gives an intended usage context, but there is no explicit when-not guidance or named alternative among the many sibling inspection tools.

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; on failure, diagnostic detail when the tool provides it.
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 covered. The description adds the useful scope of 'across all tracks in the active sequence,' but does not discuss prerequisites or behavior when no sequence is active.

Agents need to know what a tool does to the world before 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 front-loaded sentence with no wasted words. It communicates the entire operation 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 zero-parameter read-only tool with rich annotations and an output schema, the description is complete. It states what is counted and where, and return details are covered by the output 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?

There are zero parameters, so the baseline is 4. The schema is empty and the description does not need to document parameter meanings.

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') and resource ('total number of clips'), and scopes it precisely to 'across all tracks in the active sequence.' This distinguishes it from sibling getters such as get_clip_at_position 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 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 exclusions, and names no alternatives among the many sibling tools. It implies the tool is for counting clips, but offers no routing context.

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 InfoB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, so the safety profile is fully covered by structured data. The description adds the field list read out of a track but says nothing about track_type constraints, error behavior for out-of-range indices, or whether targeting reflects sequence-level state.

Agents need to know what a tool does to the world before 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 verb and resource, with the return fields listed compactly. Nothing is redundant or padded.

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, the description needn't explain return shape, and annotations cover the safety profile; parameters are fully documented in the schema. It is essentially complete for a simple two-parameter read, with only the lack of disambiguation from sibling introspection tools as a 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 the video/audio enum and the 0-based index convention. The description adds no syntax or format 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.

Purpose4/5

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

States a specific verb and resource ('get detailed information about a specific track') and enumerates the returned fields, so the agent knows exactly what comes back. It does not distinguish itself from neighboring introspection tools such as list_sequence_tracks or get_clip_properties, which keeps it below 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 when-to-use guidance, no prerequisites, and no mention of alternatives. The agent must infer from the name alone that this is the per-track lookup as opposed to the whole-sequence or per-clip equivalents.

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 project items that are NOT used in any sequence. Useful for cleaning up projects. Results are paged (default 100 items) and can be filtered by a case-insensitive name substring; follow nextOffset while truncated is true.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum unused project items entries to return (1-500, default 100).
offsetNoZero-based index of the first unused project items entry to return (default 0). Pass the previous response's nextOffset to read the next page.
containsNoOptional case-insensitive substring matched against project item names before paging. Omit or pass an empty string to include every entry.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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, so the safety profile is covered. The description adds valuable behavioral context about paging defaults, case-insensitive filtering, and following nextOffset while truncated is true.

Agents need to know what a tool does to the world before 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 core purpose is front-loaded, followed by practical paging and filtering details. 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?

With an output schema present, the description need not explain return values. It covers the core purpose, the cleanup use case, and the paging/filtering mechanics that an agent needs to 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 schema documents limit, offset, and contains fully. The description repeats the default page size and filter behavior but adds little parameter syntax beyond what is already in the schema, 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?

States a specific verb ('Find') and resource ('project items that are NOT used in any sequence'), and distinguishes itself from the sibling get_used_media_report by stating the inverse scope. An agent can immediately tell what the tool returns without reading 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?

Gives a clear use case ('Useful for cleaning up projects') and describes paging/filtering behavior. It does not explicitly name when to prefer it over alternatives like list_project_items or get_used_media_report, so it falls short of full when/when-not guidance.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds the report's scope (counts, tracks, offline detection) but nothing about performance, large-sequence behavior, or return shape. Adds some value over annotations, 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 that names the resource first and then enumerates scope. Every clause earns its place with zero 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 read-only report tool with an output schema present, the description is essentially complete: the agent knows the resource, the optional scoping parameter (from schema), and the nature of the payload. Only minor gain would come from contrasting it with sibling media-audit 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% and the single parameter's schema already explains that it accepts a sequence name/ID and defaults to the active sequence. The description never mentions the parameter, so it adds nothing beyond the schema; 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 (get) and resource (used media report) and enumerates the report's contents: source files used, appearance counts, tracks, and offline status. This cleanly separates it from siblings like get_unused_media, get_duplicate_media, and check_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 by describing what the report contains (useful when auditing which source media a sequence consumes), but there is no explicit when-to-use guidance, no prerequisites, and no named alternative among the many sibling media/inspection tools. Adequate but leaves 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_value_at_timeGet Value At TimeB
Read-onlyIdempotent

Get the interpolated value of an effect property at a time, in seconds from the clip's start

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesSeconds from the clip's start on the timeline (0 is the clip's first frame) to read 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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds one genuine behavioral nuance beyond them – that the value is 'interpolated' (computed at that time) rather than a stored keyframe – but says nothing about out-of-range times or edge behavior.

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 tight sentence that front-loads the verb and resource and ends with the time base. Nothing is wasted, though there is little structure beyond that one 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?

For a low-complexity read-only getter with a full output schema and safety annotations, the description covers purpose and behavior adequately. Its main gap is that it doesn't position the tool against its closest sibling 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?

Schema description coverage is 100%, so all four parameters are already documented in the schema, including the 'seconds from the clip's start (0 is first frame)' time base. The description adds no syntax or format 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.

Purpose4/5

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

States a specific verb and resource: 'get the interpolated value of an effect property at a time.' The 'interpolated ... at a time' phrasing distinguishes it from sibling getters like get_effect_properties and get_keyframes, though it never names those siblings explicitly.

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, when-not-to-use, or alternative guidance. It leaves the agent to infer when this beats get_effect_properties or get_keyframes on its own.

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; on failure, diagnostic detail when the tool provides it.
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=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety and repeatability profile is fully covered externally. The description adds no behavioral context of its own (no auth or connection prerequisites, no note that it reflects the live host app), so it neither adds value nor contradicts anything.

Agents need to know what a tool does to the world before 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 tight sentence with no filler, and the resource being queried is 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?

An output schema exists, so return values need not be described, and this is a zero-parameter read operation with full annotation coverage, leaving very little an agent needs. The only minor omission is any hint of when to call it (e.g., verifying the host connection/app version before other operations).

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 are no parameter semantics to explain; the baseline for a parameterless tool is 4. Nothing in the description could compensate for a gap that does not exist.

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 (Get) and resource (Premiere Pro version and build information), and even narrows the payload to version+build. It is clear what the tool does, but it offers no differentiation from lookalike siblings such as get_capabilities or 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?

No explicit when-to-use or when-not-to-use guidance is given; the agent must infer that this is a diagnostic/compatibility check. The intent is obvious enough from the name and scope, but no alternative is named and no context is stated.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds only the narrow behavioral fact that it reads current in/out points, which is minimal beyond what the annotations and output 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?

It is a single short sentence with zero filler, and the verb and resource 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?

Given the tool has no parameters, an output schema, and annotations covering safety, the description is largely sufficient. A minor gap is that it does not tie 'work area' to sequence context or clarify its relationship to get_sequence_in_out_points, which matters in a large sibling toolset.

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 no parameters, so the baseline score is 4. There are no parameter semantics to clarify, and the description appropriately does not invent any.

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 read operation and its return data: the current work area's in and out points. It does not, however, distinguish this from closely related siblings such as get_sequence_in_out_points or set_work_area, leaving the agent to infer whether 'work area' is a synonym or a distinct 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?

The description provides no guidance on when to use this tool versus alternatives. It does not state whether the work area is a sequence-level, project-level, or panel-level concept, nor does it mention any prerequisite or related tool to use before or after.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint, idempotentHint, destructiveHint false), so the description carries a lower burden. It adds only the scope qualifier 'all available' and the app context 'Premiere Pro', which is modest added value, but no auth or rate-limit details are needed for a trivial getter. A 3 is appropriate 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?

Single front-loaded sentence with no filler; every word contributes to identifying the verb, resource, scope, and app 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 parameterless read tool with rich annotations and an existing output schema, the description is nearly sufficient. Return contents are not described, but the output schema covers that, so no critical gap remains.

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?

Zero parameters, so there is nothing for the description to document and the baseline is 4. Schema description coverage is 100% and the empty object schema is self-explanatory.

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 workspace layouts in Premiere Pro'), so an agent can tell it apart from set_workspace by the read-only verb even though no sibling is named. Clear but not explicitly differentiated from siblings in the text.

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 versus alternatives. The sibling set_workspace is the natural counterpart but is never mentioned, nor is any precondition (e.g., query workspaces before switching).

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 MetadataA
Read-onlyIdempotent

Get the raw file/clip XMP packet for a project item (Dublin Core, EXIF, IPTC, xmpDM, and other namespaces). Distinct from Premiere-private project metadata. Omit GPS and camera serials from user-facing reports unless requested.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint, destructiveHint false, and openWorldHint false, so the safety profile is covered. The description adds useful behavioral context by identifying the returned packet contents and advising to omit GPS and camera serial numbers from user-facing reports unless requested.

Agents need to know what a tool does to the world before 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 three sentences, front-loaded with the core purpose. Each sentence earns its place: the first defines the resource and contents, the second distinguishes it from private project metadata, and the third gives a relevant privacy-handling instruction.

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 metadata retrieval tool with rich annotations, a complete input schema, and an output schema, the description supplies the necessary context. It covers what is returned, what it is not, and an important privacy caveat, with no material gaps 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%, and the single item_id parameter is fully documented in the schema as a 'Node ID or name of the project item.' The description adds no parameter-level detail 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 and resource: 'Get the raw file/clip XMP packet for a project item.' It scopes the content with namespaces (Dublin Core, EXIF, IPTC, xmpDM) and explicitly distinguishes itself from Premiere-private project metadata, so an agent can tell it apart from related metadata 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?

It gives clear context for when this tool is appropriate by contrasting it with 'Premiere-private project metadata,' which helps the agent avoid using it for that case. However, it does not name an explicit alternative tool or state precise when-not-to-use conditions beyond that distinction.

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

has_proxyHas ProxyC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.8/5.0
Behavior1/5

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

The description frames this as a boolean query ('Check if...'), which naturally implies a read-only, repeatable operation, yet the annotations declare readOnlyHint=false and idempotentHint=false. That is a direct mismatch between the described semantics and the declared behavior, and the description adds nothing about permissions or side effects to resolve 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?

One short, front-loaded sentence with zero filler. It is efficient, though extremely terse for a tool whose safety profile is ambiguous.

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 need not be explained, and the single-parameter surface is simple. However, for a tool whose annotations suggest non-read-only, non-idempotent behavior, the description should have clarified whether the check has side effects or state requirements.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (item_id) is fully documented in the schema as a node ID or name, so the description correctly carries no additional parameter detail. Baseline 3 applies since the schema does all the 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?

States a specific verb ('Check if') and resource ('a project item has a proxy attached'), which is clearly distinct from the mutating siblings detach_proxy and manage_proxies. It does not, however, explicitly name or contrast those siblings, 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 when-to-use guidance and no routing to alternatives, even though detach_proxy and manage_proxies sit in the same proxy family. The agent must infer from the name alone that this is the read/query counterpart to those mutation tools.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare this as a non-destructive, non-idempotent write operation, but the description adds valuable fail-closed semantics: it aborts when the file is missing or when the target bin gains no items. This is meaningful behavioral context beyond what the annotations provide, and it 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, front-loaded sentence with zero wasted words. It communicates the core action and the failure behavior 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 a rich schema, full parameter descriptions, and an output schema, the description only needs to cover the core behavior and edge cases. It does so via the fail-closed clause, though it omits any prerequisite about After Effects connectivity or project state, which 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%, so the schema fully documents all three parameters. The description adds no additional parameter semantics beyond what is already in the schema, which is the expected 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 After Effects compositions from an .aep file'), clearly identifying the operation. However, it does not explicitly differentiate this tool from related import siblings such as import_mogrt or import_sequences, 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?

The description provides no explicit guidance on when to use this tool versus alternatives, nor does it state prerequisites or exclusions. Usage is only implied by the tool's purpose, matching the 'no guidance' calibration for this dimension.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior1/5

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

The description says no import is attempted, which implies a safe no-op, but annotations declare readOnlyHint=false, meaning the tool may modify state. That is a direct contradiction about whether the tool has 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 tightly written sentences, front-loaded with the unavailability reason and followed by the concrete alternative. 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?

With an output schema present, the description needn't explain return values. It gives the agent enough context to avoid the tool and use import_fcp_xml instead, which is complete for a disabled import stub.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 file_path parameter is documented in the schema. The description adds no parameter-level 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?

States a specific verb and resource (CMX 3600 EDL import) and immediately distinguishes itself from the usable path by naming import_fcp_xml. An agent can tell this is a disabled import tool 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 Guidelines5/5

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

Explicitly says the tool is unavailable by design and gives the exact alternative workflow: convert the EDL to FCP7 XML and call import_fcp_xml. This covers when not to use it and what to do instead.

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. verified is true only when that destination exists as a file and Premiere has that exact path open.

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; on failure, diagnostic detail when the tool provides it.
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 already covering safety hints, the description adds meaningful behavior: a destination project path is required, the XML is not merged, and the verified flag depends on the destination file existing and being open in Premiere. This goes 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.

Conciseness5/5

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

Three sentences, front-loaded with the core purpose, followed by the key constraint and verification semantics. No 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?

An output schema exists, so return values need not be fully explained, and the description still clarifies the verified flag. It covers the main operational constraints, though it could say more about failure modes or supported FCPXML expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 both source and destination paths are required by referencing app.openFCPXML(path, projPath), but it does not add 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?

The description states a specific verb and resource: opening a Final Cut Pro XML file as a new Premiere project. It also distinguishes the operation from merging into the current project, which helps separate it from sibling import tools like import_edl or import_sequences.

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 usage context and a when-not condition: the XML is opened as a new project and does not merge into the currently open project. It does not name explicit alternatives, but the destination-path requirement gives strong operational guidance.

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

import_folderImport FolderC

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; on failure, diagnostic detail when the tool provides it.
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 this is a non-read-only, non-destructive, non-idempotent, closed-world mutation, so the safety profile is covered. The description adds nothing behavioral beyond that: it does not say whether subfolders are recursed, whether bins are created, or what happens if the folder was already imported.

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 no padding or repetition. It is efficient, though it is arguably too terse for a mutation tool of this scope.

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 need not be explained, and one fully documented parameter is simple. Still, for a folder-level ingest operation the description omits recursion behavior, duplicate handling, and target bin destination—gaps an agent would want before 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?

Only one parameter exists and the schema documents it at 100% coverage ('Path to the folder to import'). The description provides no additional syntax, path-format, or relative-vs-absolute guidance, so it lands at the baseline for fully covered schemas.

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 clear verb and resource: importing a whole folder of media into the project. The scope word 'entire' distinguishes it from a single-file import, but the description never names or contrasts with siblings such as import_media, import_image_sequence, or import_sequences.

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 indication of when to choose this over import_media or import_image_sequence, and no preconditions (project must be open, media must be online, behavior on overlapping items) are given. The agent must infer routing from the tool name alone.

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 SequenceB

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false. The description adds that the sequence becomes 'a single video clip,' which is useful behavior beyond annotations, but it omits permissions, overwrite behavior, format support, and other operational 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 wasted words. It is appropriately sized, though it could be slightly more informative without being bloated.

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?

Output schema and annotations carry much of the burden, and the schema fully covers parameters. However, for a tool in a crowded import family, the description lacks disambiguation from siblings and operational context needed for confident selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 fully documented in the schema. The description adds no parameter detail, 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?

States a specific verb ('Import') and resource ('numbered image sequence as a single video clip'). This distinguishes it from generic media import, but it does not explicitly differentiate from sibling tools like import_sequences or 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 Guidelines2/5

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

No explicit when-to-use, when-not-to-use, or alternative tool guidance is provided. The usage context is only implied by the name and short description.

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

import_mediaImport MediaB

Import media files into the project and confirm a new project item for each file

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; on failure, diagnostic detail when the tool provides it.
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 this is a non-readOnly, non-idempotent, non-destructive, non-openWorld write. The description adds one behavioral detail (each file yields a new project item), which usefully signals creation, but it does not warn that repeated imports create duplicates or explain what suppress_ui does in practice.

Agents need to know what a tool does to the world before 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 core action is stated first and the outcome follows. Nothing is wasted.

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, return values need not be explained, and all three parameters are documented. The only real gap is the lack of sibling disambiguation among the many other import_* tools, which slightly limits 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 file_paths, target_bin, and suppress_ui are already fully documented in the schema. The description adds no extra semantics about path formats, bin resolution, or the default suppression behavior, 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 gives a specific verb and resource: 'Import media files into the project', plus an outcome ('confirm a new project item for each file'). It does not distinguish itself from close siblings like import_folder, import_image_sequence, or import_sequences, 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 when-to-use guidance, no statement of prerequisites, and no routing to alternatives such as import_folder or import_image_sequence, which an agent would plausibly confuse this with. The only hint is the 'media files' phrasing.

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

import_mogrtImport MogrtA

Import a Motion Graphics Template (.mogrt) file and add it to the timeline. Pass text_values (for example { "Headline": "..." }) to write each text control explicitly after insertion and verify it by readback, so a template default or stale value is never left in place silently.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesFull path to the .mogrt file
text_valuesNoOptional map of MOGRT text parameter display names to the exact text to write (for example { "Headline": "Chapter 3" }). Each value is written explicitly after import and read back; the result reports verified, mismatch, missing_property, or committed_unverified per field.
track_indexNoVideo track index (default: 0)
start_secondsNoStart time in seconds (default: 0)
duration_secondsNoDuration in seconds (default: 5). Applied after import by moving the graphic's end and read back; a duration that would overlap the next clip on the track is not applied.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Annotations only declare the generic non-read-only, non-destructive, non-idempotent profile. The description adds real behavioral detail beyond that: text values are written explicitly after insertion and verified by readback, and duration is applied post-import and read back with overlapping durations rejected. This is exactly the extra context annotations cannot supply.

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 purpose front-loaded before the verification rationale. The second sentence is long but every clause (explicit write, readback, avoiding stale defaults) carries information, so little is wasted.

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-value explanation is not needed, and the annotations cover the safety profile. The description covers the key side effects (post-import writes, readback, duration clipping), though it does not warn that repeated calls are non-idempotent and will duplicate the graphic on the timeline.

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 still adds value by explaining the intent behind text_values (avoiding stale/default text) and the readback verification flow, going beyond the schema's mechanical 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?

States a specific verb and resource ('Import a Motion Graphics Template (.mogrt) file and add it to the timeline'), which is concrete enough to distinguish it from set/sequence tools. However, it never contrasts itself with close siblings like import_mogrt_from_library or import_media, leaving the agent to infer which import path applies.

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 clear guidance on when to pass text_values and why (so defaults are not silently left in place), which is useful implied usage. But there is no guidance on when to choose this tool over the many other MOGRT/import siblings (import_mogrt_from_library, import_media, import_ae_comps), so the selection decision is left implicit.

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 LibraryA

Request importing a MOGRT from a named Adobe Creative Cloud Library. Library contents cannot be enumerated through CEP; host acceptance is committed_unverified, and rendered appearance must be checked in Premiere.

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; on failure, diagnostic detail when the tool provides it.
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 this is a non-idempotent, non-destructive mutation, and the description adds real behavioral context beyond them: library contents cannot be enumerated via CEP, host acceptance is 'committed_unverified' (fire-and-forget), and rendered appearance must be manually checked in Premiere. It stops short of stating permission/auth requirements or error behavior, but the unverified-commit disclosure is genuinely valuable.

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, purpose front-loaded and the caveats packed into the second. It is efficient, though the second sentence is dense with internal jargon ('committed_unverified') that is not self-explanatory.

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-value explanation is not required, and the description covers the key caveats (unverifiable host acceptance, manual visual check) for a mutation tool. It leaves out auth and failure handling, but is otherwise complete for calling 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 four parameters are already documented in the schema. The description only echoes the library_name concept and adds no syntax or format detail beyond it, 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 and resource ('Request importing a MOGRT') plus the source scope ('from a named Adobe Creative Cloud Library'), which distinguishes it from the sibling import_mogrt and the publish_mogrt_to_library family. An agent can tell what this 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?

Usage is implied by the 'from a named Library' framing, but the description never explicitly says when to pick this over import_mogrt or names any alternative or exclusion condition. An agent must infer the routing from sibling names.

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

import_sequencesImport SequencesC

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, idempotentHint=false, destructiveHint=false and openWorldHint=false, so the safety profile is covered structurally. The description adds no behavioral context: it doesn't say which project the sequences land in (presumably the currently open one), whether imports can be repeated, or whether name collisions with existing sequences are handled.

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?

One front-loaded sentence with zero filler. It is arguably under-specified rather than bloated, so conciseness itself is good but the brevity borders on insufficient for a mutation 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?

An output schema exists, so return values need not be explained, and annotations cover the mutation safety profile. However, for a write operation with no idempotency guarantee, the description omits the essential fact of which project the sequences are imported into and what happens on name conflicts.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (project_path, sequence_ids) are documented in the schema itself, so the baseline is 3. The description adds no format or constraint 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?

States a specific verb (Import) and resource (sequences), plus the source (another Premiere Pro project file), which distinguishes it from siblings like import_media, import_folder, import_fcp_xml, and import_ae_comps. No sibling is named explicitly, but the source constraint does most of the differentiating work.

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 statement of when to use this versus the many other import tools, no prerequisites (e.g., the target project must be open), and no note about whether this can be undone. Usage is only implied by the verb 'Import' and the source qualifier.

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 (insert edit). Experimental: a target clip spanning the playhead is QE-razored before insertion to attempt to preserve its split tail. By default the tool also razors and shifts every QE sync-locked track, then reads the placement and target tails back; a displaced tail is reported as committed_unverified. Pass scope 'target_tracks' to ripple only the named pair (this will desync other tracks).

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoWhich tracks shift: 'sync_locked' (default) matches Premiere's insert and keeps sync-locked tracks in sync; 'target_tracks' ripples only the named pair and WILL desync other tracks.
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; on failure, diagnostic detail when the tool provides it.
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 mark it as a non-readonly, non-idempotent write with destructiveHint false, but the description adds substantial context beyond that: experimental razoring of a spanning clip, default sync-locked track shifting, tail verification, and the committed_unverified report. It also warns that 'target_tracks' scope will desync other tracks. This is rich behavioral disclosure.

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?

Front-loaded with purpose, then experimental details, then scope guidance. Three dense sentences with no filler, though the middle sentence is slightly packed with technical nuance.

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 experimental nature, full schema coverage, and an existing output schema, the description covers prerequisites, side effects, and the committed_unverified result nuance. Nothing critical 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 audio/video track indices and the scope enum are fully documented in the schema. The description's scope note largely repeats the schema's own warning about desyncing other tracks, adding little new parameter meaning. Baseline 3 applies when 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?

States a specific verb (insert), resource (clip from the Source Monitor), and location (at the playhead), with the parenthetical 'insert edit' distinguishing it from overwrite-based siblings. An agent can tell this apart from overwrite_from_source and add_to_timeline 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?

Explains the default behavior and the effect of the 'scope' parameter, including a desync warning, but does not explicitly state when to use this tool versus alternatives like overwrite_from_source or add_to_timeline. Usage is implied by the operation name rather than spelled out.

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; on failure, diagnostic detail when the tool provides it.
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 sentence 'It never queues or renders a composition' adds a valuable negative guarantee beyond the readOnlyHint/destructiveHint annotations, clarifying side effects. Combined with idempotent and openWorld hints, the behavioral profile is well-covered, though retrieval failure modes (e.g., empty render queue) aren't mentioned.

Agents need to know what a tool does to the world before 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 resource, followed immediately by the side-effect disclaimers. 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?

Output schema exists so return values need not be explained. The description covers scope and non-destructive behavior adequately for a zero-param read tool, but could mention behavior when the render queue is empty.

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?

Zero parameters, so baseline is 4. Nothing to document and the description doesn't need 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?

States a specific verb (Read) and resource (render and output-module template names) and constrains scope to the first existing render-queue item. This is distinct from siblings like enqueue_after_effects_render or preview_after_effects_render, though it doesn't explicitly name an 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?

Implies usage by describing what it reads, but doesn't state when to use this versus preview_after_effects_render, inspect_after_effects_template_source, or the enqueue tools. No explicit when/when-not guidance.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds value beyond them by stating two hard boundaries: it will not create a composition and will not return asset paths, which prevents an agent from expecting side effects or file locations.

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, front-loaded with the verb and the inspected attributes, followed by the caveat clause. Efficient and free of filler, though the trailing negative sentence slightly dilutes the core statement.

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-value detail is unnecessary, annotations cover the safety profile, and the single parameter is fully documented. Combined with the stated API-version precondition and side-effect boundaries, this 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?

With a single parameter at 100% schema coverage, the schema already documents that composition_name is optional and that omission inspects the active composition. The description's reference to a "saved After Effects source composition" adds mild framing but no format or syntax 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.

Purpose4/5

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

States a specific verb (inspect) and resource (After Effects source composition) and enumerates exactly what it extracts: dimensions, duration, text fonts, layer-source kinds, and Essential Graphics controller names. It does not, however, contrast itself against near neighbors such as inspect_after_effects_render_templates, inspect_mogrt_library, or get_mogrt_component, so sibling differentiation is left 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?

"when the host exposes the AE 16.1+ readback API" is a genuine precondition, and "never creates a composition or returns asset paths" bounds expectations. But there is no explicit when-to-use/when-not guidance or named alternative for similar inspection tasks, so the routing signal is only implied.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds that parsing stays local and does not bring the EDL into the Premiere project, but offers no detail on error handling, size bounds, or how 'bounded' facts are scoped.

Agents need to know what a tool does to the world before 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 resource, with the differentiator placed last. 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?

With an output schema present, return-value detail is unnecessary, and annotations cover the safety profile; the description is nearly complete for a single-parameter read tool. Minor gap: no mention of what happens on malformed EDLs or remote paths.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 a single parameter with 100% schema description coverage ('Existing local .edl file'), so the schema already carries the semantics. The description's 'local' qualifier reinforces that constraint but adds nothing new 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 (Parse) plus resource (local CMX 3600 EDL) and enumerates the exact fact categories produced (event, reel, track, transition, timecode). The phrase 'without importing it into Premiere' cleanly separates it from the sibling import_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 'without importing' clause establishes clear context for when to use this instead of an import operation, but it does not name the closest alternatives (compare_cmx3600_edls, validate_cmx3600_edl) or state exclusions such as file-size or format limits.

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. object_path must be a property path starting with app or qe (identifiers and numeric indexes only). Function calls, operators, and statements are rejected; use evaluate_expression with unsafe-script for those.

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_pathYesProperty path starting with app or qe (e.g. 'app.project.activeSequence.videoTracks[0]'). Function calls and statements are rejected.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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), so the bar is met; the description adds the accepted-path grammar ('starting with app or qe (identifiers and numeric indexes only)') and the failure mode for unsupported input. It does not discuss depth cost or response size behavior beyond what the schema 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?

Front-loaded purpose in sentence one, then the constraint and the alternative, then short examples that each earn their place. 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?

With an output schema present, return values need no explanation, and the description covers scope, path grammar, rejection behavior, and the alternative tool. An agent has everything needed to call 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 restates the object_path constraints already in the schema and adds illustrative path examples, but says nothing about max_depth or the depth/verbosity tradeoff, so it adds only marginal 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?

States a specific verb and resource ('Inspect a Premiere Pro DOM object and list its properties, methods, and values') and immediately draws a boundary against the sibling evaluate_expression. Concrete path examples make it unambiguous for an agent scanning 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?

Gives use context ('exploring the API and debugging'), an explicit when-not rule (function calls, operators, and statements are rejected), and names the alternative tool (evaluate_expression with unsafe-script). It stops short of stating prerequisites like connection state, but routing guidance is clear.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive and closed-world, so the safety bar is low; the description still adds value by noting it runs as 'one read-only bridge request' (single round-trip, no mutation) and by delimiting what it structurally inspects versus judges. It stops short of describing severity thresholds or response shape.

Agents need to know what a tool does to the world before 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 the enumerated checks, followed by the scope limitation. 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?

An output schema exists so return values need not be explained, all parameters are documented and optional, and annotations carry the safety profile. 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% with three optional, well-documented parameters (track, gap tolerance, max scale). The description adds no syntax or interpretation 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?

Names a specific verb (Audit) and resource (the active sequence) and enumerates the exact checks it performs — empty timelines, primary-track gaps, disabled clips, muted tracks, excessive Motion scale. This is far more specific than a generic audit, though it never distinguishes itself from look-alike siblings such as audit_timeline_health or get_timeline_gaps.

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 scope boundaries: 'structural diagnostics only; it cannot judge story, framing, sound, or final delivery' tells the agent when this tool is not appropriate. It does not name an alternative tool for the cases it excludes, so routing 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.

inspect_fcpxml_interchangeInspect Fcpxml InterchangeA
Read-onlyIdempotent

Inspect a local FCPXML or FCP7 XML (xmeml, what Premiere's export_as_fcp_xml writes) document: format, version, sequence/clip counts, bounded media 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; on failure, diagnostic detail when the tool provides it.
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 establish read-only, idempotent, non-destructive, closed-world behavior. The description adds useful scope beyond safety: it inspects parser warnings as text only and reports bounded media declarations, though it does not discuss performance or whether it resolves media 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?

A single front-loaded sentence with a compact inventory of outputs. No filler; every clause contributes to selection or invocation.

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 annotations covering the safety profile, an output schema documenting returns, and a fully described single parameter, the description is complete enough for an agent to select and call this read-only inspection 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?

Schema coverage is 100% and only one parameter exists, so the baseline is 3. The description meaningfully extends the schema by clarifying accepted FCPXML and xmeml/FCP7 XML formats, not just .fcpxml or .xml extensions.

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: inspect a local FCPXML or FCP7 XML document. It enumerates the exact facets reported (format, version, sequence/clip counts, bounded media declarations, parser warnings), which clearly distinguishes it from adjacent inspection and 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?

Provides a clear usage context: run this before a deliberate Premiere import. It does not name an explicit alternative or state when not to use it, but the pre-import inspection purpose is unambiguous.

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; on failure, diagnostic detail when the tool provides it.
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 establish readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, and the description reinforces these without contradicting: it explicitly rules out host edits, exports and automatic creative decisions, and frames validation as revision-bound (matching the schema's 'stale requests fail'). This adds useful non-mutating context 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?

Three dense sentences that are front-loaded with the core verb and scope, then the enumerated outputs, then the safety constraints. The middle list is long but every clause maps to a real input domain; 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?

With an output schema present, rich annotations, and full schema description coverage, the description needs only to convey purpose, scope and safety posture, which it does. It is complete enough for an agent to call the tool correctly, though the usage trigger vs sibling tools remains implicit.

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 nonetheless adds semantic framing by naming the conceptual groups the many inputs map to (coverage review groups, independent picture/audio preferences, screening-note exceptions, story dependencies, VFX state, change impact, turnover manifest), helping the agent understand how the 16 parameters relate.

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 (Validate) and resource (revision-bound film editorial manifest), and enumerates the review artifacts it constructs, so an agent knows exactly what output to expect. It distinguishes itself from sibling mutation tools by scoping to inspection, though it does not name a specific sibling to prefer.

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: no host edits, exports, automatic creative decisions or verified host claims' clause implies when this validates rather than acts, but offers no explicit when-to-use trigger, prerequisites, or named alternative among siblings. Usage is only implied by the exclusions.

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; on failure, diagnostic detail when the tool provides it.
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=false, and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context by naming ffprobe as the engine and clarifying that it works independently of Premiere, which tells the agent no host connection 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?

Two sentences, no filler, with the purpose and return payload front-loaded and the operational caveat second. 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?

An output schema exists, so return values need not be explained, yet the description still enumerates the metadata categories, giving the agent a preview of usefulness. Combined with the annotation-covered safety profile, nothing needed to call this one-parameter tool 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?

With a single parameter and 100% schema description coverage, the schema already documents media_path as an 'Existing local media file'. The description's mention of 'local media file' aligns with but does not extend beyond that; 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 (inspect), resource (local media file), the underlying mechanism (ffprobe), and the exact metadata classes returned (container, stream, codec, time-base, channel, chapter). An agent can distinguish it from siblings like inspect_project_item_av_metadata or inspect_sequence_av_settings because it operates on a raw file rather than a Premiere-owned entity.

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' clearly frames when this tool applies: file-level inspection without a project or host app. It does not, however, name an explicit alternative or state when NOT to use it versus sibling inspection tools.

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; on failure, diagnostic detail when the tool provides it.
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 annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context beyond those annotations by stating that it only lists top-level names and version directories and never reads MOGRT contents.

Agents need to know what a tool does to the world before 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, front-loaded with the core action and followed by the key non-behavioral guardrail. Every sentence contributes and there is no 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?

With an output schema present and rich annotations, the description need not explain return values or safety. It adequately covers scope and read-only behavior for a simple inspection tool, though it could be slightly more explicit about how this fits among the many MOGRT 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?

Schema description coverage is 100%, so both parameters are already documented in the schema. The description does not add parameter-specific syntax or constraints beyond the schema, making the baseline score 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 gives a specific verb and resource: 'List bounded top-level template names and version directories in an existing workspace-contained local MOGRT library.' It is clear what the tool does and its read-only scope, though it does not explicitly name a sibling alternative for comparison.

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 phrase 'existing workspace-contained local MOGRT library,' and the negative scope ('never reads MOGRT contents or changes the library') helps exclude some alternatives. However, it does not explicitly say when to use this tool versus related MOGRT tools such as publish or import operations.

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 MetadataB
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, covering the safety profile. The description adds useful scope detail (documented effective vs original color space, LUT IDs, overrides, audio channel shape), but does not explain what 'documented' values mean when absent or how missing metadata is 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 dense sentence with the verb and object front-loaded and the inspected fields listed compactly. 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?

With an output schema present, the description need not explain return values, and annotations cover safety. The field enumeration plus the single documented parameter make the definition sufficient to call correctly; only the missing routing guidance against overlapping inspection tools is a 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?

Only one parameter (item_id), and schema description coverage is 100% — the schema already explains it accepts a node ID or exact name. The description adds nothing about item_id, 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?

States a specific verb ('Inspect') and resource ('a project item's ... metadata') and enumerates the exact fields surfaced: effective/original color space, LUT IDs, color-space overrides, and audio channel shape. This distinguishes it from generic readers like get_clip_properties or get_color_space, though it does not name those siblings explicitly.

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. Given overlapping siblings such as inspect_sequence_av_settings, get_color_space, get_clip_properties, and get_av_feature_support, the agent must infer on its own whether this item-level AV metadata inspection is the right call versus those alternatives.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description earns extra credit by explicitly enumerating the side effects it will NOT perform (opening, copying, restoring) and by scoping the listing to 'adjacent' Auto-Save candidates, which is real context 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?

One sentence, front-loaded with the read-only guarantee and the two concrete outputs, with zero filler. Every clause carries 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?

With no parameters and an output schema present, the description does not need to explain return values, and it supplies scope plus non-mutation boundaries. It stops slightly short of clarifying what constitutes a 'candidate' or when to prefer this over other project-inspection siblings, but the tool's low complexity makes it adequate.

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 schema is an empty object, so the baseline is 4. The description correctly adds no parameter detail, and none 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?

States specific verbs and resources: diagnose the active project path and list adjacent Auto-Save project candidates. The phrase 'without opening, copying, or restoring anything' cleanly separates it from siblings like open_project and create_project_backup, which an agent could otherwise confuse with a recovery tool.

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 negative clause ('without opening, copying, or restoring anything') tells the agent this is a diagnosis/preview step, not a recovery action, which implies the when-to-use context. However, it never names an alternative tool for actually performing the restore or creating a backup, so routing to a next step 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.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so safety and side-effect profile are covered by structured data. The description adds only the 'documented' qualifier and the category list; it does not disclose scope, whether a sequence must be active, or how partial support is reported, so it adds modest value over 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?

One front-loaded sentence with the verb and object first and the covered setting categories trailing. No filler, no repetition of the title, and the enumeration is informative rather than padding.

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 values need not be explained, and a zero-parameter read-only tool needs little more. The one real gap is differentiating from get_sequence_settings and similar inspection tools, which the description never addresses.

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 per the rubric the baseline is 4. The description correctly implies no input is required and that it targets the active sequence, so nothing is missing on the input side.

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 (Inspect) and resource (audio/video settings of the active sequence), and enumerates the setting categories it covers (audio, tone-mapping, linear compositing, bit-depth, render-quality, display). It is clearly a read operation, but it does not distinguish itself from close siblings like get_sequence_settings, set_sequence_audio_settings, or inspect_project_item_av_metadata, leaving the agent to guess which 'settings' call to pick.

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 only implied: the read-only name and annotations suggest inspection of the currently active sequence, and the word 'documented' hints at a subset of settings. There is no explicit when-to-use statement, no exclusion of returned settings, and no routing to the alternative get_sequence_settings tool that overlaps heavily.

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; on failure, diagnostic detail when the tool provides it.
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 establish read-only, idempotent, non-destructive, and closed-world behavior. The description adds meaningful context beyond annotations: media paths are never returned, marker comments require explicit opt-in, and the report does not validate rendered pixels, audio, captions, rights, or editorial approval.

Agents need to know what a tool does to the world before 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 front-loaded, using three tight sentences: what the report contains, privacy/opt-in constraints, and validation limits. Every sentence adds useful information, and there is no redundant restatement of the tool name 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 report tool with an output schema, rich annotations, and fully documented parameters, the description covers the report's components, privacy behavior, and scope limitations. It is nearly complete, though it could better connect the tool to sibling alternatives for an agent choosing among inspection 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 all four parameters are already documented in the schema. The description adds only a general privacy note that marker comments require explicit opt-in, which overlaps with the schema's explanation of include_marker_comments defaulting to false, without adding syntax or default details 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 a specific artifact, a read-only sequence handoff report, and enumerates the evidence it contains: timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. This distinguishes it from generic timeline inspectors, but it does not explicitly name or compare against sibling tools like audit_timeline_health or get_timeline_summary.

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 'handoff report' framing and reinforced by the disclaimer that it does not prove rendered pixels, audio quality, caption correctness, rights, or editorial approval. However, there is no explicit when-to-use guidance or routing to alternatives among the many sibling inspection tools.

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; on failure, diagnostic detail when the tool provides it.
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, non-destructive, and closed-world behavior, so the baseline is lower. The description still adds useful behavioral context: unknown or localized host values remain unknown rather than being reported as solved. That is a non-obvious reporting convention 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?

Two sentences, front-loaded with the core purpose and scope, followed by the read-only behavioral caveat. Every sentence earns its place with no waste 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?

With an output schema present and annotations covering safety, the description provides enough context: what is inspected, over what scope, and how unknown values are handled. It could be slightly richer by naming when to choose it over sibling tools, but it is 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%, and the single optional parameter node_id is fully documented in the schema. The description reinforces the same scope (one clip or every video clip), but adds no new syntax or format detail 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 read verb, the exact resource (Warp Stabilizer), and the exact fields inspected (presence, exposed status properties, conservative analysis state) plus scope (one clip or every video clip in the active sequence). It distinguishes itself from the sibling stabilize_clip by being explicitly read-only. An agent can tell what this tool reports 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?

It gives a clear scope for the operation, but it does not explicitly say when to use this tool instead of alternatives such as stabilize_clip or other inspection tools. The usage context is implied by 'Read' and 'inspect' but no alternatives or exclusions are named.

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; on failure, diagnostic detail when the tool provides it.
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=false, idempotentHint=false, and destructiveHint=false, so the mutation and non-idempotent nature are covered. The description adds the concrete toggle semantics (selected become deselected and vice versa), which is genuinely useful, but it does not mention prerequisites such as an open active sequence or what happens when nothing is selected.

Agents need to know what a tool does to the world before 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 key effect in a parenthetical and zero filler. Nothing could be removed without losing 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 selection toggle with an output schema and annotation coverage, the description is nearly complete. The only minor gap is the absence of prerequisites (an active sequence and an existing selection) or failure conditions.

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 semantics to document; the baseline of 4 applies. The description does not need to compensate for any schema gap.

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 (invert) and resource (current clip selection in the active sequence), and the parenthetical spells out the exact effect. It is inherently distinguishable from siblings like select_all_clips or deselect_all_clips, but it does not explicitly name or contrast with any of 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?

Usage is implied by the operation itself — you call this when you want to swap selected and unselected clips — but there is no explicit when-to-use, when-not-to-use, or reference to alternatives such as set_clip_selection or select_all_clips.

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; on failure, diagnostic detail when the tool provides it.
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 adds real context beyond the annotations by identifying the boolean nature of the read and the 'active sequence' scope. However, the annotations declare readOnlyHint=false and idempotentHint=false for what the description plainly presents as a non-mutating state query, and the description does nothing to resolve that tension or state what happens when no sequence is active.

Agents need to know what a tool does to the world before 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 resource and scope stated immediately. Zero filler, no 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?

Return values are covered by the output schema, so the description need not explain them, and no parameters need documenting. The only gap is the unspecified behavior when there is no active sequence, which is minor for a one-bit query.

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 nothing for the description to disambiguate; the baseline for a parameterless tool applies. No parameter semantics are needed or missing.

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?

Names a specific check ('whether the work area bar is enabled') against a specific resource and scopes it to the 'active sequence'. This is clearly separable from the adjacent get_work_area (returns the range) and set_work_area (mutates it) siblings without opening 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 Guidelines2/5

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

No statement of when to call this versus get_work_area or get_sequence_in_out_points, and no preconditions (does an active sequence need to exist?). Usage is only implied by the name and the boolean framing.

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

lift_selectionLift SelectionA

EXPERIMENTAL (undocumented QE DOM: the sequence lift command, exposed as left() on 25.2). Lift (remove without closing the gap) the content between the sequence in/out points on every targeted, unlocked track, then verify the range is empty on those tracks and nothing else on them moved. Requires sequence in/out marks that do not span the whole sequence. Untargeted tracks are not verified; any that changed are listed in otherTracksChanged.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Beyond the annotations, the description discloses the verification behavior ('then verify the range is empty on those tracks and nothing else on them moved') and the side-effect reporting mechanism ('Untargeted tracks are not verified; any that changed are listed in otherTracksChanged'). It also flags the EXPERIMENTAL/QE-DOM provenance. It does not mention undo/reversibility, which is the one behavioral trait an agent might still want.

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 EXPERIMENTAL caveat is front-loaded and each remaining sentence (action, precondition, verification) carries distinct information with no filler. It runs slightly long for a zero-argument operation, keeping it out of the top band.

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 destructive-ish timeline mutation, the description covers purpose, preconditions, post-conditions, and side-effect reporting, and an output schema exists so return values need not be restated. The gap is the destructiveness/undo story relative to destructiveHint=false, 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 takes zero parameters, so there is nothing for the description to disambiguate; the implicit inputs (sequence in/out points, targeted tracks) are state, not arguments. Baseline 4 applies 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 states a specific verb ('Lift (remove without closing the gap)') and a precise resource ('the content between the sequence in/out points on every targeted, unlocked track'). It also implicitly distinguishes this from the sibling ripple_delete/remove_selected_clips by defining lift as removal that does NOT 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 Guidelines4/5

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

It gives clear preconditions for use ('Requires sequence in/out marks that do not span the whole sequence') and defines the operational scope (targeted, unlocked tracks). It does not name an explicit alternative tool (e.g., ripple_delete, extract_selection) or when to prefer this over them, so it falls 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.

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; on failure, diagnostic detail when the tool provides it.
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 a small implementation note ('Uses QE DOM'), but does not explain what that implies for reliability, compatibility, or return format.

Agents need to know what a tool does to the world before 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 wasted words. The core purpose is front-loaded before the implementation 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?

An output schema exists, so return values need not be explained, and annotations cover the safety profile. For a zero-parameter listing tool, the description is nearly complete; only usage guidance relative to sibling tools 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 takes zero parameters, so the baseline is 4. The description correctly does not try to describe parameters, and schema coverage is 100% (trivially, with an empty object).

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 ('List') and resource ('audio effects in Premiere Pro'), which distinguishes it from the broader list_available_effects and the related list_available_audio_transitions. The scope is precise enough for an agent to identify it 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 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_available_effects or apply_audio_effect. The agent must infer its purpose 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.

list_available_audio_transitionsList Available Audio TransitionsA
Read-onlyIdempotent

EXPERIMENTAL (undocumented QE DOM): List audio transitions. 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; on failure, diagnostic detail when the tool provides it.
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 cover the read-only, idempotent, non-destructive profile, but the description adds real behavioral value beyond them: it flags the tool as experimental, built on undocumented QE DOM, and — importantly — that an unavailable or empty catalog surfaces as an error rather than a silently empty list. That error-vs-empty distinction changes how an agent must handle the response.

Agents need to know what a tool does to the world before 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-loaded with the EXPERIMENTAL caveat, and both earn their place — one states purpose, the other states the failure semantics an agent must anticipate.

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 tool with an output schema, the description need not explain return values, and it covers the experimental status and the critical error-on-empty behavior. Only the lack of routing guidance against sibling catalog tools keeps it from full marks.

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 per the rubric the baseline is 4. The description adds no parameter information, but none 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 verb and resource ("List audio transitions") and the name plus description distinguish it from the video sibling list_available_transitions and from list_available_audio_effects. It does not explicitly name those siblings, but the audio-scoped resource is 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 call this versus list_available_transitions or how to apply the result; it only warns that the catalog is legacy. The EXPERIMENTAL note implies caution but does not tell the agent 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.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context: it uses the full QE catalog when exposed and otherwise returns a verified, explicitly partial set resolved by exact name. That partial-result caveat is useful 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?

Two sentences, front-loaded with the action and resource, followed by the important catalog-availability caveat. No wasted 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?

Given zero parameters, rich read-only annotations, and an output schema, the description covers the essential behavior including the fallback partial-set case. It could more explicitly route the agent away from sibling listing tools, but it is otherwise 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 parameter semantics are not applicable. Baseline 4 is appropriate because there is nothing for the description to clarify beyond the empty 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: 'List available video effects in Premiere Pro.' The 'video' qualifier distinguishes it from sibling tools such as list_available_audio_effects and list_available_transitions.

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: list effects before applying or inspecting them. However, the description does not explicitly say when to use this versus list_clip_effects, list_available_audio_effects, or list_available_transitions, nor does it state any prerequisites or exclusions.

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

EXPERIMENTAL (undocumented QE DOM): List video transitions. Returns a built-in hint set on PPro 2026 where the registry list is empty even though by-name lookup works; the hint set is not exhaustive.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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, so the safety profile is covered. The description adds real behavioral context beyond that: it is experimental/undocumented, and on PPro 2026 the registry can be empty so a built-in non-exhaustive hint set is returned — an important caveat about result reliability.

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, front-loaded with the EXPERIMENTAL flag, and each clause carries information (resource, return caveat, non-exhaustiveness). Slightly dense but nothing is wasted.

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 format needn't be explained, and the description already flags the key anomaly (empty registry, non-exhaustive hint set). Enough for an agent to call and interpret it; missing only explicit usage routing.

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 nothing for the description to disambiguate; baseline 4 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?

Names a specific verb and resource ('List video transitions') and qualifies it as an experimental QE DOM path. 'Video transitions' cleanly distinguishes it from the sibling list_available_audio_transitions and list_available_effects, so an agent can route 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?

Usage is implied — you call this to discover transitions before applying one — but the description never states when to use it, when to prefer a sibling, or any prerequisite (e.g., active sequence/project). Adequate but with a clear gap.

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 effects/components exposed by the clip's standard DOM collection, with properties and current values. Some hosts omit QE-applied effects from this collection; absence here does not prove an effect is absent. get_effect_properties uses the same collection. Inspect Premiere's Effect Controls UI when complete QE effect presence must be confirmed.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnly, idempotent, non-destructive), so the description's added value is the disclosure that the underlying DOM collection is incomplete — some hosts omit QE-applied effects — which prevents an agent from treating an empty result as proof of absence. That is genuine behavioral context beyond the annotations, though it does not address output shape or host-specific variance in more depth.

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 short sentences, front-loaded with the core action before the caveats about collection incompleteness and the UI fallback. No filler, though the middle caveat sentence is somewhat dense.

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, return values need not be described, and the description covers purpose, limitation, and the fallback path. It is nearly complete for a simple read tool; only explicit guidance on when to prefer get_effect_properties over this tool 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 there is a single parameter (node_id) fully documented in the schema. The description adds no format or constraint detail for node_id, 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+resource ('List effects/components exposed by the clip's standard DOM collection') and immediately distinguishes itself from the closely-named sibling get_effect_properties by noting they draw on the same collection. An agent can tell what this returns (properties and current values) 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?

Gives a clear usage condition and an escape hatch: absence in this list does not prove an effect is absent, and the Effect Controls UI should be consulted when complete QE effect presence must be confirmed. It also flags that get_effect_properties shares the same source, hinting the two are interchangeable in coverage. It stops short of an explicit 'use this vs. that' routing rule, so a 4 rather than 5.

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 markers on the active sequence, or on a source project item that exposes a marker collection. A timeline-clip node_id returns a clean error instead of a raw TypeError.

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; on failure, diagnostic detail when the tool provides it.
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 cover read-only, idempotent, non-destructive, closed-world behavior. The description adds the valid scopes and a concrete error behavior ('timeline-clip node_id returns a clean error instead of a raw TypeError'), which is useful beyond the annotations; remaining gaps are minor because an output schema 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 sentences, front-loaded with purpose and followed by a specific edge-case note. No filler; both sentences earn their 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 simple one-parameter surface, output schema, and rich annotations, the description supplies enough to invoke the tool and understand the main scope/error case. It is less complete on sibling differentiation among marker-list tools, but that is the main remaining 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%, so the one optional node_id parameter is already documented. The description's caveat about a timeline-clip node_id is relevant but also creates some ambiguity against the schema's 'Optional clip node ID to list clip markers' wording, so it does not clearly improve parameter 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?

States a specific verb ('List') and resource ('markers'), and scopes it to the active sequence or a source project item with a marker collection. It is clear enough to act on, but it does not name or distinguish sibling tools such as get_clip_markers or get_sequence_markers_by_type.

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?

Gives implied usage: use for markers on the active sequence, or on a source project item that exposes a marker collection. It does not explicitly say when to choose it over get_clip_markers/get_sequence_markers_by_type or state exclusions, leaving alternative routing to inference.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds the scope of 'all items' and the categories returned, but does not discuss pagination, ordering, or nested bin behavior. With annotations carrying the behavioral burden, 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.

Conciseness5/5

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

A single front-loaded sentence with no wasted words. It states the core action and resource immediately, and the parenthetical list is compact and informative.

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, the output schema exists, annotations cover safety, and the schema covers the only parameter. The description states the scope clearly. It could be improved by noting whether nested bin contents are included or by naming a sibling alternative, but it is otherwise 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%, and the single optional bin_path parameter is fully documented in the schema, including root behavior when omitted. The description adds no parameter-specific 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?

States a specific verb and resource: 'List all items in the project panel', with parenthetical examples of item types. It clearly identifies what is returned, but does not distinguish itself from similar siblings such as get_bin_contents or search_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 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, prerequisites, or alternatives. The agent can infer it is a generic project panel listing tool, but there is no routing information relative to the many sibling tools that also retrieve project items.

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

list_sequence_checkpointsList Sequence CheckpointsA
Read-onlyIdempotent

List '[checkpoint]' sequences created by create_sequence_checkpoint, optionally only those cloned from one sequence, with their labels, timestamps, track and clip counts. Read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoOnly list checkpoints of this sequence (ID or name).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 trailing 'Read-only' is a restatement rather than new information. The genuinely additive content is the enumeration of returned fields, but an output schema exists and the description doesn't go beyond it (no pagination, ordering, or empty-result behavior).

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 no filler; the optional filter clause is placed after the core purpose. Slightly dense, and the bracketed '[checkpoint]' token is an odd artifact, but nothing is wasted.

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-optional-parameter read tool with an output schema and full annotation coverage, the description supplies enough to call it correctly and understand the result shape. Only minor gaps remain (ordering, pagination, behavior with no checkpoints), which the output schema likely resolves.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 is fully documented there, so the baseline is 3. The phrase 'cloned from one sequence' adds a small nuance to sequence_id's semantics (matching on source lineage, not just existence), but the description does not clarify ID-vs-name handling or default 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?

States a specific verb (List) and resource (sequence checkpoints), names the creating sibling (create_sequence_checkpoint) so the agent can place it in the right workflow, and enumerates what each entry contains (labels, timestamps, track and clip counts). It is clearly distinguishable from the many other list_* 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 for when this applies: after checkpoints have been made by create_sequence_checkpoint, and optionally narrowed to checkpoints cloned from a single source sequence. It does not state exclusions or name a competing listing tool, but none exists among the siblings, so inference is low-risk.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds only the project-wide scope, without details on ordering, pagination, or authentication, 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, front-loaded sentence with no filler. It says exactly what the tool does and nothing more.

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 and rich annotations, so return values and safety behavior need not be explained in the description. The description identifies the resource and scope, which is sufficient for a zero-parameter list tool, though it could route the agent more clearly among many sequence-related siblings.

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 for the description to add meaning 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?

States a specific verb (List) and resource (sequences) with scope (all sequences in the project). This distinguishes it from active-sequence tools like get_active_sequence and track-level tools like list_sequence_tracks, though it does not explicitly name 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?

The description provides no explicit when-to-use, prerequisites, or alternatives. It does not mention sibling tools such as get_sequence_count or get_active_sequence, leaving the agent to infer usage 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.

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; on failure, diagnostic detail when the tool provides it.
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 annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the useful detail that both video and audio tracks are included, but it does not add further behavioral context such as ordering or pagination, and an output schema 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 front-loaded sentence that states the action and scope with no filler. Every word earns its place, and it is appropriately sized for a simple list 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?

Given the simple read-only nature, the rich annotations, the fully documented single parameter, and the presence of an output schema, the description is nearly complete. It could be slightly stronger by clarifying the ordering or grouping of returned tracks, but no critical invocation detail 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?

There is one optional parameter, and schema description coverage is 100%. The schema already explains that sequence_id accepts an ID or name and falls back to the active sequence, so the description does not need to compensate; it adds nothing beyond the schema for this 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 states a specific verb and resource: 'List all tracks (video and audio) in a sequence.' It clearly distinguishes the result type from tools that list sequences or return broader sequence structure, but it does not explicitly name sibling tools or contrast its scope with 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?

There is no guidance on when to use this tool versus alternatives such as get_sequence_structure, get_track_info, or list_sequences. Usage is only implied by the tool name and description, with no exclusions or prerequisites.

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

list_stock_titlesList Stock TitlesA
Read-onlyIdempotent

List the Essential Graphics title templates that ship with the installed Premiere Pro (Basic Title, Lower Thirds, Credits, Social Media, and more), with each template's text fields in order and their default text. Reads the local .mogrt files only; does not contact Premiere. Use the names with add_title.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoOptional category folder filter, for example Titles, Lower Thirds, Credits, or Social Media (case-insensitive).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 safety (readOnlyHint, openWorldHint=false, idempotent, non-destructive), but the description adds genuinely useful behavior beyond them: it reads local .mogrt files only and does not contact Premiere, and it discloses the return shape (each template's text fields in order with default text). That is more than the 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?

Three front-loaded sentences with no filler: what is listed, what is returned, and the constraint/next step. Every sentence carries information an agent needs to select and use 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 single-optional-param, read-only list tool with an output schema, the description covers purpose, scope, return content, and handoff to add_title. Nothing needed to call it correctly is missing, and return-value detail is properly delegated to the 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 description coverage is 100% and the single optional 'category' parameter is fully documented in the schema, so the baseline is 3. The description's example names (Lower Thirds, Credits, Social Media) loosely echo category values but add no syntax or format detail 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 ('List the Essential Graphics title templates that ship with the installed Premiere Pro') and enumerates concrete examples (Basic Title, Lower Thirds, Credits, Social Media). It also distinguishes itself from importer siblings by noting it reads local .mogrt files only and does not contact Premiere, so an agent can tell it apart from import_mogrt or inspect_mogrt_library.

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 routes the agent to the follow-up tool ('Use the names with add_title') and clarifies the no-Premiere-connection context. It lacks an explicit when-not-to-use clause against the many mogrt-related siblings (import_mogrt, inspect_mogrt_library, preview_mogrt_recipe), but the usage path is clear.

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

lock_trackLock TrackB

Set a video track's lock state and read it back to verify the change.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, covering the safety profile. The description adds that the tool reads the state back to verify the change, which is useful behavioral context, but it does not explain what locking a track prevents or whether special permissions are needed.

Agents need to know what a tool does to the world before 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 definition is a single front-loaded sentence that states the action and the verification step without any filler. 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 two-parameter mutation tool with full schema coverage, complete annotations, and an output schema, the description supplies the core purpose and verification behavior. It is nearly complete, with the main omission being guidance on when to choose this tool over sibling track-state 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 schema already documents both parameters, including that locked is a boolean and track_index is 0-based. The description adds no syntax, format, or constraint details beyond what the schema 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.

Purpose4/5

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

The description names a specific verb ('Set') and resource ('a video track's lock state'), making the action clear. It implicitly separates lock state from sibling actions like mute_track or toggle_track_visibility, but it never explicitly names an alternative or states the distinguishing condition.

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 lock_track instead of related track tools such as mute_track, toggle_track_visibility, or rename_track. The read-back detail does not tell the agent which situations call for locking a track 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.

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; on failure, diagnostic detail when the tool provides it.
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 it is non-read-only, non-idempotent, non-destructive, and closed-world. The description adds useful behavioral context beyond those hints: the monitor is session-scoped, records bounded file-change signals, and does not automatically import media.

Agents need to know what a tool does to the world before 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 are tightly front-loaded: the first states the actions and scope, and the second adds the key behavioral limits. Every sentence earns its place 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?

Given that an output schema exists, return-value details are not needed in the description. The description covers purpose, session scope, and key non-import behavior, though it could say more about when to choose this monitor versus related import-preview workflows.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 action, paths, extensions, and target bin. The description does not add syntax, format, or dependency 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 gives specific verbs (Start, inspect, rescan, stop) and a specific resource (session-scoped local media-folder monitor). It also distinguishes the tool from import-oriented siblings by stating it never imports media automatically.

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 action list implies the main usage modes, but there is no explicit when-to-use guidance or comparison to alternatives such as preview_watched_media_import. The statement that it never imports media automatically helps distinguish scope but does not fully route the agent among alternatives.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare destructiveHint=true, readOnlyHint=false, idempotentHint=false, and openWorldHint=false, so the safety profile is largely covered. The description adds useful behavioral context beyond annotations: it is a durable local index, enrichment and import do not re-analyze media, records are caller-approved, and it warns against including secrets or unrelated customer data.

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 plus a short safety note, front-loaded with the action list and the core resource. It is dense but each sentence contributes: the first states scope, the second explains enrichment behavior and limits, and the third is a concise security caveat.

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 five actions, nested record and evidence schemas, and an output schema, the description provides a solid high-level map of what the tool does and what data it handles. It omits some operational context (e.g., whether an active Premiere project must be open), but the output schema and rich input schema fill most 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 the schema already documents all parameters in detail. The description adds only marginal semantic value by mentioning the kinds of data (transcripts, speaker labels, shots, audio observations, notes, frame references) and that imports are caller-approved, but it does not explain parameter interactions or revision guards beyond what the schema 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 verb and resource: it manages a durable local Premiere project-context index and enumerates the five actions (capture, enrich, import_evidence, status, clear). This clearly distinguishes it from most siblings, though it does not explicitly name alternative tools like search_project_context or create_context_edit_plan.

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 explains what each action does (e.g., capture stores metadata, enrich adds transcripts) but gives no explicit when-to-use guidance relative to alternative tools. There is no mention of prerequisites, ordering, or when to prefer this over sibling context tools such as search_project_context.

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 server lists Premiere's IngestPresets/Proxy presets and AME H.264 system presets, skips every preset whose output destination is Same as Project (Adobe's shipped proxy presets are), and uses the first remaining one. Fails with a clear error when none qualify.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 only say this is a non-read-only, non-idempotent, non-destructive write. The description adds the crucial trait they don't: 'create' is an asynchronous, unverified handoff to Adobe Media Encoder, requiring independent verification before proceeding. That is exactly the kind of cross-call, state-dependent behavior an agent must know and cannot get from 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?

Front-loaded with the three actions, then the two caveats that genuinely matter, in priority order. The middle sentence is long but every clause (verify AME queue, pass output_path as proxy_path) carries load. 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?

An output schema exists so return values need not be described, annotations carry the safety profile, and the schema fully documents all five parameters. The description still covers the one non-obvious thing the structured fields can't: the async handoff and required verification step. Nothing material 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 baseline is 3. The description goes further by tying the parameters together across calls: output_path passed to 'create' becomes proxy_path for the follow-up 'attach'. That relational semantics is not obvious from the schema descriptions alone.

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 specific verbs (create, attach, toggle) and the resource (proxies for a project item), so the agent knows exactly what operation space this covers. It implicitly excludes the sibling tools has_proxy and detach_proxy, but never names them, so sibling differentiation is inferred 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 Guidelines4/5

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

Gives clear, actionable operational guidance: 'create' only kicks off an AME encode, you must verify the queue or output file, then call again with 'attach' and proxy_path. It also rules out the tempting alternative ('no single-call create-and-attach'). It stops short of explicit when-not guidance versus has_proxy/detach_proxy.

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

match_frameMatch FrameC

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; on failure, diagnostic detail when the tool provides it.
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 frames the tool as a pure getter ('Get source media info'), while annotations declare readOnlyHint=false and idempotentHint=false, so an agent could wrongly assume it has no side effects and can be repeated freely. No state-changing behavior (e.g., what it does to the source monitor), permission needs, or repeat-call semantics are disclosed to resolve that tension.

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 operation and its scope front-loaded; nothing is padded. The second sentence is nearly content-free, but the definition is still tight overall.

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 need not be described, and both parameters are fully covered by the schema. What is missing for a tool with conflicting annotations is any disclosure of side effects or when to prefer it over source-monitor/clip-at-playhead siblings, leaving the definition 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%: both track_type (enum video/audio, default video) and track_index (default 0) are fully documented in the schema. The description only echoes 'on a specific track' and adds no syntax or semantics 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 gives a specific verb and resource ('Get source media info') plus a clear scope ('for the frame at the current playhead on a specific track'), so the operation is identifiable. However, it never distinguishes itself from near-neighbors such as get_clip_at_playhead, get_source_monitor_info, or open_in_source, and the trailing sentence 'Useful for match frame operations' merely restates the tool 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?

'Useful for match frame operations' is tautological and gives no condition for selecting this tool over the many playhead/source-monitor siblings. There is no statement of prerequisites (e.g., an active sequence and playhead position) 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 ClipA

EXPERIMENTAL (undocumented QE DOM for track changes): Move a clip to a new position on the timeline; optional track moves use Premiere's QE API and may not work on every version.

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; on failure, diagnostic detail when the tool provides it.
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 a non-read-only, non-idempotent, non-destructive mutation, so the safety profile is covered. The description adds genuinely new behavioral context beyond that: it is built on undocumented QE DOM and may fail depending on the Premiere version. It stops short of saying whether the move preserves clip links 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.

Conciseness4/5

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

A single sentence with the most important caveat ('EXPERIMENTAL') front-loaded before the functional statement. No padding, though the parenthetical could be tightened slightly.

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 values need no explanation, and annotations cover the mutation/safety profile. The description supplies the experimental caveat that an agent needs before invoking it; only secondary details (link/ripple behavior on move) are absent and are not blocking.

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 node_id, new_start_seconds and new_track_index are already documented, setting the baseline at 3. The description earns an extra point by clarifying that the track-change path (new_track_index) is the fragile QE-API part, which is meaningful risk information not present 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?

States a specific verb+resource ('Move a clip to a new position on the timeline') and singles out the track-move variant as an optional, separate path. It does not explicitly contrast itself with the near-identical sibling move_clip_to_track, so an agent still has to infer which one to pick for track changes.

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 real usage signal by labeling the tool EXPERIMENTAL and warning it may not work on every version, which tells an agent to prefer it cautiously. However, it never names an alternative (e.g., move_clip_to_track for pure track changes) or states when this tool should be chosen over set_clip_position/trim_clip, so the selection 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.

move_clip_to_trackMove Clip To TrackA

Move a clip to a different track of the same type, keeping its start, duration, and source in/out. EXPERIMENTAL: uses the undocumented QE DOM moveToTrack. Refuses without changing anything when the origin or destination track is locked or the destination range is occupied. Reads the timeline back: verified only when the clip is on the destination track with the same span and source range and is gone from the origin track; committed_unverified when the source range cannot be read; otherwise failure with Undo guidance.

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; on failure, diagnostic detail when the tool provides it.
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?

Exceptional disclosure beyond the annotations: flags the tool as EXPERIMENTAL built on the undocumented QE DOM moveToTrack, guarantees atomic refusal ('without changing anything'), and details the three post-move read-back outcomes (verified, committed_unverified, failure with Undo guidance). This is consistent with destructiveHint=false and far exceeds what the 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.

Conciseness4/5

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

Front-loaded with the core purpose, then constraints, then failure/verification semantics. The sentences are dense but each carries distinct information; the only mild drag is the packed final sentence covering three outcomes at once.

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-idempotent mutation tool with an output schema, this covers what an agent needs: experimental status, atomicity, refusal conditions, and the verification states that map to the result. Nothing critical is missing, and return-value details are legitimately left to the 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 description coverage is 100% for both parameters (node_id, target_track_index), so the schema already carries parameter meaning. The description adds only the implicit 'same type' constraint on the target track; it does not explain indexing, valid ranges, or the clip-identity assumption. 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?

Specific verb (Move) plus resource (clip) with an explicit scope constraint: 'to a different track of the same type, keeping its start, duration, and source in/out.' That constraint plus the track-to-track framing distinguishes it from the family of positional edits like move_clip, set_clip_position, 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 Guidelines4/5

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

States operational preconditions clearly: it refuses when origin/destination track is locked or the destination range is occupied. That tells the agent when the call will not succeed, which is strong context, but it never names an alternative tool (e.g. move_clip, ripple_delete) or when to prefer this over them.

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 BinC

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and idempotentHint=false, so safety is largely covered. The description adds nothing beyond that: it does not say whether items are removed from their original location, what happens if the bin doesn't exist, or what a partial failure means.

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 tight sentence with the subject and scope front-loaded and no filler. It is efficient, though the extreme brevity borders on under-specification rather than pure conciseness.

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, return values need not be explained, and the two params are covered by the schema. However, for a mutation tool the description is thin on behavioral context — bin semantics, existence requirements, and error handling are all unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 item_ids and target_bin are fully documented in the schema. The description adds no format, ordering, or capacity 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.

Purpose4/5

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

States a clear verb (Move) and resource (project items) with a destination (target bin) and adds batch scope ('multiple...at once'). This implicitly separates it from the singular sibling move_item_to_bin, though it never names that 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 Guidelines2/5

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

The description says what the tool does but gives no when-to-use guidance, no prerequisites (e.g. whether the target bin must already exist), and no alternative routing such as move_item_to_bin for a single item.

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 and confirm where it landed

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the safety profile is covered structurally. The description adds the useful detail that the result confirms the destination ('confirm where it landed'), but says nothing about failure behavior for a missing bin or what a re-move does given non-idempotency.

Agents need to know what a tool does to the world before 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 waste; the action and its outcome confirmation are stated 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?

An output schema exists, so return values need not be spelled out, and annotations cover the safety profile. Still missing is any mention of the plural sibling, precondition on the target bin, or behavior on invalid item IDs, which leaves the definition minimally viable 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 coverage is 100% with only two parameters, both fully described in the schema, so the baseline is 3. The description adds no syntax, format, or naming-convention detail beyond what item_id and target_bin already document.

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 ('Move a project item') plus the destination ('to a different bin'), which is clear on its own. However, it does not distinguish itself from the sibling move_items_to_bin, leaving the singular-vs-batch distinction 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 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 context, no prerequisites (e.g., the target bin must already exist), and never names the batch alternative move_items_to_bin. An agent must guess at the routing between the two near-identical tools.

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 EditC

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; on failure, diagnostic detail when the tool provides it.
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, and the description adds nothing beyond them — no mention that this mutates the playhead position without editing content, nor any indication of what happens if no edit point exists in the requested direction.

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 tight sentence with the action front-loaded and zero filler. It's appropriately sized for a one-parameter navigation tool, though it could carry a bit more routing information at the same length.

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-param navigation tool with an output schema and full schema coverage, the description is minimally adequate. It doesn't address behavior at sequence boundaries or clarify positioning relative to siblings, which would be useful given how many playhead/edit-point tools exist.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 'direction' parameter is a documented enum with a stated default, so the schema fully carries parameter meaning. The description echoes 'next or previous' but adds no semantics 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?

States a specific verb ('move') and resource ('the playhead') with scope ('to the next or previous edit point'). This is clear enough to distinguish it from siblings like set_playhead_position or navigate_playhead, though it doesn't 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 guidance on when to use this versus adjacent sibling tools such as get_next_edit_point, navigate_playhead, or set_playhead_position. The agent must infer the appropriate context 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.

multiple_undoMultiple UndoA

EXPERIMENTAL (undocumented QE DOM: qe.project.undo / undoStackIndex). Undo several Premiere project actions through QE, checking each step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back) and reporting how many were undone. Only actions Premiere records are undoable: QE edits such as razor, insert, lift and extract report undoSteps (and undoStackIndex) in their results; pass that undoSteps as count to reverse exactly that call. A marker receipt with undoTracked:false recorded no undo step: calling Undo for it would reverse an earlier action. Only CEP tool results carry undoSteps; UXP tools and workflows that send several commands are not counted. Always pass expected_undo_stack_index to check the stack position, but matching position alone does not prove which action is on top. Observed marker boundaries refuse the entire request before any step unless acknowledge_untracked_markers:true explicitly permits prior non-marker actions. The barrier persists through server/helper reloads while the CEP engine remains alive; it cannot account for marker writes before observation, after an engine reset, or through UXP, the manual UI, or other clients. Matching the QE index verifies stack position only.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of undo steps (default: 1)
expected_undo_stack_indexYesRequired safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top.
acknowledge_untracked_markersNoExplicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Goes well beyond the annotations by disclosing that this is EXPERIMENTAL on an undocumented QE DOM, that the timeline is not read back (only stack position is verified), that the marker barrier persists through server/helper reloads, that acknowledge_untracked_markers is required to permit non-marker actions, and enumerates the conditions it cannot account for.

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

Conciseness3/5

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

It is front-loaded with the EXPERIMENTAL warning, which is good, but it is a single dense paragraph that repeats the stack-position caveat (the header and the closing sentence both state that matching position verifies position only). The density is somewhat justified by the complexity, but the redundancy and lack of structuring cost it.

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 destructive-capable, QE-dependent mutation tool, the description covers preconditions, safety guards, failure/refusal behavior, and explicit limitations. With an output schema present, return values need not be explained, so nothing an agent needs 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 baseline is 3, but the description adds real meaning the schema lacks: it explains where 'count' comes from (the undoSteps reported by a prior QE tool result) and emphasizes that expected_undo_stack_index must always be passed. It adds interpretation beyond the raw field 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 verb+resource (undo several Premiere project actions) and the mechanism used (QE DOM qe.project.undo / undoStackIndex), which distinguishes it from the single-step 'undo' sibling. An agent immediately knows this is a plural, QE-backed undo operation.

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 says what is undoable (only actions Premiere records: QE edits such as razor, insert, lift, extract that report undoSteps) and what is not (UXP tools, multi-command workflows, marker receipts with undoTracked:false). It also gives the exact usage contract: pass undoSteps as count and always pass expected_undo_stack_index.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (destructiveHint=false, openWorldHint=false, readOnlyHint=false), and the description adds nothing beyond them — no note on whether the change is reversible, which sequence it applies to, or whether an undo step is created. For a state-mutating tool the description carries no 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.

Conciseness4/5

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

A single six-word sentence with zero waste and the action front-loaded. It is appropriately sized for a trivial toggle 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 an output schema present, return values need not be described, and the annotations plus full parameter coverage supply the rest. For a simple two-parameter toggle, the description is complete enough to invoke correctly, though a note on required context (active sequence) would close the last 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 both parameters are fully documented in the schema (muted as a boolean toggle, track_index as 0-based). The description's 'mute or unmute' merely echoes the boolean and says nothing about track_index, so 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?

States a specific verb pair (mute/unmute) and resource (audio track), which is enough to distinguish it from sibling track tools like lock_track, rename_track, and toggle_track_visibility. It stops short of naming those siblings or stating the scope of the track being acted on.

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 context for when to use this versus other track-state tools, nor any prerequisites (e.g., needing an active sequence or a valid track index). The two-mode behavior is expressed only via the parameter, not in prose.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds one genuinely new behavioral fact – a backend availability constraint – but says nothing about what happens on a supported backend, whether the operation is reversible, or what state it mutates. A mostly-negative availability note is thin behavioral coverage 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.

Conciseness3/5

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

It is a single efficient sentence with no filler, but it is not front-loaded for selection purposes – the leading clause is an availability disclaimer rather than the tool's function, which is the information an agent needs first.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. However, for a timeline-mutating tool with three siblings in the nesting/subsequence family, the description omits the core operation, target of mutation, and supported-backend behavior, leaving the definition incomplete 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?

There is a single parameter ('name') with 100% schema description coverage, so the schema already carries the semantics; baseline is 3. The description adds no meaning about the name value beyond confirming naming is part of creating a nested sequence.

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 what nest_clips does; it only declares the tool 'Unavailable on the legacy CEP backend.' An agent can infer a fragment of intent from 'replace the selected timeline clips with a nested-sequence reference,' but the sentence is framed as an unavailability notice rather than a purpose statement, and it does not clearly distinguish this tool from siblings such as create_subsequence or unnest_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?

It gives one environmental exclusion (legacy CEP backend) but no positive guidance on when to use this tool, no prerequisites, and no alternative to reach for when the backend is unavailable. The sibling set contains obvious alternatives (create_subsequence, unnest_sequence), none of which are named.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, so the safety profile is partly given. The description adds real context beyond that: the input and any existing output are never overwritten, and it performs post-render remeasurement of the exact output. It does not state processing time, disk cost, or whether a failed measurement leaves the file behind.

Agents need to know what a tool does to the world before 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 action and followed by the non-destructive guarantee. No filler, every clause carries 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 an output schema present to cover return values and 100% schema coverage of all five parameters, the description supplies exactly the missing behavioral context: what it produces, how it verifies, and its non-overwrite guarantee. Nothing needed to call it correctly 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?

Schema description coverage is 100%, so the schema already documents input_path, output_path, target_lufs, tolerance_lu, and max_true_peak_dbfs with ranges and defaults. The description adds no parameter-level meaning on top of that, 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 (Create) and a precise resource (loudness-normalized media derivative), names the engine (FFmpeg) and the standard (EBU R128), and adds the remeasurement step. An agent can distinguish this from analyze_loudness (measurement only) without opening a 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?

Usage is implied by the description: call this when you need an actual normalized output file produced and verified. However, it never states when to prefer this over siblings like analyze_loudness or adjust_audio_levels, nor names any alternative or exclusion condition.

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, and confirm it is the clip now showing.

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; on failure, diagnostic detail when the tool provides it.
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 disclose that this is a non-read-only, non-destructive, non-idempotent, non-open-world operation. The description adds some behavioral context by noting that it confirms the item is showing after opening, but it omits side effects such as whether it replaces the current Source Monitor clip or any permission requirements.

Agents need to know what a tool does to the world before 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, destination, and outcome without filler. 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?

For a one-parameter tool with an output schema and annotations covering safety and mutation semantics, the description conveys purpose and post-condition adequately. It could mention whether an existing Source Monitor clip is replaced, but the core information needed to invoke it is 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 description coverage is 100%, so the input schema already documents item_id as a node ID or name. The description restates 'project item' but adds no syntax, format, or alternate identifier 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 (Open) and resource (project item), plus the destination (Source Monitor) and purpose (preview and trimming). This clearly distinguishes it from siblings like open_project, get_clip_at_position, and other source-monitor 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?

Gives clear context for use: previewing and trimming a project item in the Source Monitor. It does not name alternatives or when-not-to-use conditions, such as routing to insert_from_source for timeline placement, 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.

open_projectOpen ProjectA

Open a Premiere Pro project file and make it the active project, verifying it is open. Other open projects stay open.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnly=false, destructive=false, idempotent=false), so the description's job is lighter. It usefully adds two behavioral facts beyond annotations: the operation verifies the project is open, and other open projects are left open (i.e., it is additive, not exclusive). It does not explain failure behavior when the path is invalid.

Agents need to know what a tool does to the world before 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 delivering action, target, resulting state, and side-effect scope with zero 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 one-parameter mutation tool with full annotations and an output schema (so return values need not be described), the description covers action, result state, and side-effect scope. It stops short of addressing error/edge cases such as a missing or locked project file.

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

Parameters3/5

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

Only one parameter with 100% schema description coverage ('Full file path to the .prproj file'), so the schema already carries the semantics. The description reinforces the .prproj file type but adds no new meaning such as path format or relative-path support.

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 (Open) and resource (Premiere Pro project file), plus the resulting state change (becomes the active project). It is easily distinguished from siblings like close_project, create_project, and open_in_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 implies when to use it (loading a .prproj as the active project) but never explicitly names alternatives such as open_in_source or close_project, nor states prerequisites or when-not-to-use conditions. Usage is inferable but not spelled out.

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

overwrite_clipOverwrite ClipB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false. The description adds that tracks are 'validated' and that a 'new source placement' is verified, which is useful but does not explain what gets overwritten, permission requirements, or the effect on existing timeline content.

Agents need to know what a tool does to the world before 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 wasted words. It communicates the core operation and an additional verification step 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?

The description covers the basic mutation and schema/output details are otherwise available. However, for a timeline-overwrite tool with many similar siblings, it lacks guidance on when to use it and what side effects to expect on existing clips.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 details are already documented. The description only vaguely maps to the schema via 'validated timeline tracks' and 'requested time', without adding syntax or default behavior 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?

States a specific verb and resource: 'Overwrite a project item onto validated timeline tracks' clarifies the operation and target. However, it does not distinguish this from siblings like overwrite_from_source, insert_from_source, 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 Guidelines2/5

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

No explicit when-to-use guidance or comparison to alternatives is given. The verb 'Overwrite' implies a timeline-editing action, but the description does not explain when to choose this tool over add_to_timeline, replace_clip, or overwrite_from_source.

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) and verify a new placement on the requested tracks.

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the safety profile is largely covered. The description adds useful beyond-schema context (existing clips get replaced, and a placement verification occurs), but it omits undoability, required permissions, and does not resolve the tension between 'replaces existing clips' and destructiveHint=false.

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 whose parenthetical is the highest-value clause. Nothing is wasted, though the trailing 'and verify a new placement' clause is slightly buried.

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/verification details need not be spelled out, and annotations carry the read/write profile. The definition is complete enough to invoke correctly, with only the alternative-selection guidance and destructiveness clarification 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 only two optional parameters, both documented in the schema itself (audio/video track index with defaults). The description's phrase 'requested tracks' loosely maps to those parameters but adds no format or default details, so it sits 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 states a specific verb+resource+location: 'Overwrite the clip from the Source Monitor at the playhead position,' plus the parenthetical clarifies the edit semantics ('replaces existing clips'). An agent can tell this is an overwrite-style timeline edit. However, it never differentiates from close siblings like overwrite_clip or insert_from_source, so it stops short of full sibling disambiguation.

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 choose this tool versus insert_from_source (which would ripple rather than replace) or overwrite_clip. The parenthetical describes the mechanism, not the selection criteria, so the agent must infer the when-to-use case 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.

paste_clip_attributesPaste Clip AttributesA

Paste Attributes for one timeline clip: copy the source clip's effect stack (Motion, Opacity, other intrinsic components, and every applied effect) onto a target clip of the same track type, including keyframes. Components are matched by match name and occurrence; a missing non-intrinsic effect is applied through the experimental legacy QE DOM (disable with apply_missing_effects=false). Every written parameter and keyframe value is read back and reported per property as verified, committed_unverified, or failed, with an overall status. Not copied, and listed in notCopied with a reason: parameters whose values ExtendScript cannot read as numbers, booleans, strings, or numeric arrays; Opacity > Blend Mode when it differs (legacy cross-clip enum writes can corrupt it; use set_blend_mode and verify); and keyframe interpolation (no getter exists, so pasted keys use Premiere's default interpolation). MASKS ARE NOT COPIED: neither ExtendScript, QE, nor documented Premiere UXP exposes mask shapes, paths, feather, expansion, or mask keyframes, and masks are invisible to this bridge, so recreate or paste masks manually in Effect Controls. Time Remapping is excluded unless named in components.

ParametersJSON Schema
NameRequiredDescriptionDefault
componentsNoOptional component display names or match names to copy (for example ['Motion', 'Opacity', 'Gaussian Blur']). Omit to copy every source component except Time Remapping.
copy_keyframesNoCopy keyframes of animated source properties (default true). Key times keep their offset from each clip's in point. When false, animated source properties are reported in notCopied and left unchanged on the target.
source_node_idYesNode ID of the source timeline clip in the active sequence whose attributes are copied
target_node_idYesNode ID of the target timeline clip in the active sequence that receives the attributes; must be on the same track type (video or audio) as the source
apply_missing_effectsNoApply source effects that the target lacks through the experimental legacy QE DOM before copying values (default true). When false, missing effects are reported in notCopied.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnly=false, idempotent=false, destructive=false) by disclosing what is silently omitted (masks, keyframe interpolation, unreadable parameter types), the experimental QE DOM write path, and a per-property verification/committed_unverified/failed reporting model. This is exactly the destructive/mutation context an agent needs.

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?

Front-loaded with the core action and the most important constraints (same track type, keyframes, verification), but it is one very dense block sentence-chain that is hard to scan. Every clause carries information, so it earns its length, though structure could be improved with breaks.

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 mutation complexity, a 5-parameter schema, an output schema, and the risky QE DOM fallback, the description covers the critical gaps: what is copied, what is not, why, and how results are verified. An agent can call this correctly without further probing.

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 real semantics: components defaults to 'every source component except Time Remapping,' copy_keyframes changes reporting behavior, and apply_missing_effects controls the QE DOM path. It clarifies defaults and cross-parameter interaction beyond the schema wording.

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+scope: copying a source clip's effect stack onto a target clip of the same track type, including keyframes. It clearly distinguishes itself from siblings like copy_effects_between_clips and copy_effect_values by describing whole-stack paste semantics and matching rules.

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 covers when-not behavior (masks cannot be copied, Time Remapping excluded unless named, blend mode should be handled via set_blend_mode) and how to disable the QE DOM path with apply_missing_effects=false. It does not explicitly compare itself against the closest sibling copy tools, but the exclusions and alternatives are clear.

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; on failure, diagnostic detail when the tool provides it.
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?

A connectivity probe is inherently read-only and idempotent, yet the annotations declare readOnlyHint=false and idempotentHint=false; the description does not reconcile this tension. It does usefully tell the agent to run it as a gating step, but adds little else beyond 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?

Two short sentences, with the purpose front-loaded and the usage instruction immediately after. No filler and nothing to trim.

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-argument probe with an output schema and annotations, the description covers what an agent needs to call it correctly. The only gap is that it does not clarify how it relates to the sibling connection-verification 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 takes zero parameters, so the baseline is 4; there is nothing for the description to disambiguate. It correctly avoids inventing parameter detail that does not exist.

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 object: a health check that verifies the CEP plugin is running and connected to Premiere Pro. It is clear what the tool does, but it never distinguishes itself from the closely related sibling verify_premiere_connection, which an agent could reasonably pick instead.

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 explicit sequencing guidance: 'Call this before other tools to confirm connectivity.' That is a clear when-to-use statement, but it names no alternative or precondition, so the overlap with verify_premiere_connection is left unresolved.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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/idempotent/destructiveHint=false, so 'Local-only; never changes Premiere' reinforces rather than establishes safety. The genuinely additive disclosure is that it 'Returns framings, switches, keyframes, and apply routes' — telling the agent this planner hands off to a separate apply step, which is non-obvious workflow context 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?

Two sentences, no filler: the first front-loads the purpose and both output modes, the second covers the return and the local-only constraint. 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?

For an 11-parameter, nested-object planning tool with an output schema, the description covers the essential framing: inputs (word timeline, speaker regions), outputs (framings, switches, keyframes, apply routes), and safety. Nothing critical is missing, though it could have noted that a word timeline bound to a transcript revision is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% across all 11 parameters, including the layout enum semantics, defaults, and bounds, so the schema already carries the parameter burden. The description only gestures at the layout alternatives ('active-speaker ... or a static stacked/split') without adding syntax, constraints, or default behavior beyond what the schema documents. 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 gives a specific verb+resource ('Plan an active-speaker vertical reframe') and clarifies the mechanism (Motion Scale/Position keyframes that follow whoever is talking), distinguishing it from the plain 'auto_reframe_sequence' sibling. It also names the alternate output mode (static stacked/split layout) up front, so an agent can tell immediately what family of tool this is.

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 states the required source material ('from a word timeline and static speaker regions') and the non-destructive posture, which implies a plan-then-apply workflow. However it never explicitly says when to pick this over siblings like auto_reframe_sequence or plan_speaker_checkerboard, and the active_speaker vs stacked/split choice is left to the layout enum rather than routing guidance.

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; on failure, diagnostic detail when the tool provides it.
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 safety is covered. The description still adds value by declaring 'Local-only and deterministic' and describing the shape of what it produces (chunks, trim ranges, cut markers), which the annotations do not convey. It stops short of noting any limits on the beat grid or reuse 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?

Two clauses, no filler, with the core operation front-loaded before the emission and safety 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?

With 12 parameters, full schema coverage, an output schema, and annotations all present, the description gives an agent enough to call it correctly: inputs come from detect_beats, output feeds add_to_timeline_batch, nothing is mutated. It could be stronger by noting determinism guarantees or ordering defaults, but no critical 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 per-field defaults, so the schema carries the parameter burden. The description maps behavior to parameters at a high level ('every N beats', 'merging short and splitting long spans', 'assign clips in order'), which helps conceptually but adds no syntax or format detail 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 ('Plan') and resource ('beat-synced montage'), then enumerates the exact operations: carving a detect_beats grid, assigning clips, and emitting add_to_timeline_batch chunks, trim ranges, and cut markers. It names the sibling tools it consumes and feeds, so an agent can distinguish it from detect_beats or add_to_timeline_batch without opening 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?

Implicitly routes the agent: it consumes 'a detect_beats grid' and emits 'add_to_timeline_batch chunks', telling the caller where this sits in the pipeline. It lacks an explicit when-not or a stated prerequisite on when to prefer this over manual timeline assembly, but the workflow context is clear.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description's 'Local-only plan; never changes Premiere' largely restates readOnlyHint, though it usefully confirms the call has no Premiere side effects. It does not disclose failure modes (e.g., transcript revision mismatch, word-ordering violations) that the schema hints at but does not fully explain behaviorally.

Agents need to know what a tool does to the world before 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 action and output, ending with the key non-mutation guarantee. No filler; every clause carries information an agent 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?

With an output schema present, the description need not enumerate return values, yet it still names the three outputs (chapters, youtube_timestamps, add_marker-ready markers), which is helpful. Given 7 params (1 required), nested objects, and full schema coverage, the definition is adequate; the only real gap is behavioral detail on input validation failures.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 gestures at titling via 'distinctive tokens' (mapping loosely to stop_words/title_words) and at transcript input via 'word-timed transcript', but adds no syntax, format, or default-value guidance beyond what the schema already documents for all 7 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 (Plan), resource (YouTube-style chapters), the input required (word-timed transcript), and the method (local TextTiling-lite topic-shift detection). It also names the downstream artifact ('add_marker-ready Chapter markers'), which separates it from siblings like add_markers_batch that actually write markers. An agent can pick this over the many other plan_* tools without opening a 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 trigger condition clear (you must have a word-timed transcript), and 'Local-only plan; never changes Premiere' tells the agent this is a dry-run/preview step whose output feeds add_marker or add_markers_batch. It does not explicitly state exclusions (e.g., when to prefer plan_beat_montage or a different chaptering approach), 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.

plan_client_notes_checklistPlan Client Notes ChecklistA
Read-onlyIdempotent

Turn pasted client or reviewer feedback into a prioritized checklist: finds timecodes and ranges, classifies each note (audio, color, graphics, text, timing, cut, legal, delivery), infers must/should/nice priority, separates approvals and questions, and emits an add_markers_batch payload. Local-only and deterministic; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
notesYesFree-text feedback (email, chat, review-tool export). One note per line works best; bullets, 'Name:' prefixes, mm:ss, hh:mm:ss, hh:mm:ss:ff, 1m23s, and ranges like 1:23-1:30 are understood.
max_itemsNoMaximum checklist items to produce (default 200).
frame_rateNoSequence frame rate used to snap marker times and read ff fields; defaults to 30.
timecode_styleNoHow a three-part a:b:c value is read: auto (default), clock (hh:mm:ss), or frames (mm:ss:ff).
marker_color_modeNoMarker color by priority (default: must=red, should=orange, nice=green), by category, or one fixed color.
fixed_marker_colorNoColor index used when marker_color_mode is fixed (default 3 = orange).
marker_name_prefixNoOptional prefix for every marker name, such as a round label like 'R2'.
sequence_duration_secondsNoOptional sequence duration; notes past it are kept in the checklist but get no marker.
include_approvals_as_markersNoAlso create markers for approval notes (default false).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful traits beyond that: it is 'local-only and deterministic' and 'never changes Premiere', confirming no side effects on the project. It omits any note on failure modes for unparseable notes, keeping it at 4.

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 core purpose is front-loaded in the first clause, followed by a dense but information-bearing enumeration of classifications and the output contract. Every element maps to real behavior with no filler, though the long single sentence is heavy 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?

An output schema exists, so return values need not be described; the description still names the produced artifact (add_markers_batch payload) to link it to the sibling that applies it. Combined with the classification taxonomy, priority model, and side-effect guarantees, an agent has everything needed to call this 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?

Schema coverage is 100%, so the baseline is 3. The description nevertheless adds meaning above the schema by hinting at behaviors tied to parameters: timecode and range extraction (timecode_style/frame_rate), priority inference (marker_color_mode priority), and separating approvals (include_approvals_as_markers). It never names the parameters directly, so it stays below 5.

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 precise verb and resource transformation ('turn pasted client or reviewer feedback into a prioritized checklist') and enumerates the sub-operations (timecode extraction, classification, priority inference, approvals/questions separation, payload emission). This clearly distinguishes it from sibling planning tools like plan_chapter_markers or plan_beat_montage.

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 establishes the input context ('pasted client or reviewer feedback') and the downstream handoff ('emits an add_markers_batch payload'), which implies when to reach for it and what consumes its output. It does not explicitly name an alternative tool or state when not to use it, so it stops short of the top score.

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; on failure, diagnostic detail when the tool provides it.
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, so the safety profile is covered. The description adds genuinely non-obvious context beyond that: the output is non-executing, issues no approval tokens, and makes no host-readiness claims — key boundaries for a planning tool in a pipeline of apply/preview siblings.

Agents need to know what a tool does to the world before 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, both front-loaded: the first states the action and return shape, the second states the hard limits. No filler, no restatement of the tool 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?

With an output schema present, return values need no explanation, yet the description still usefully summarizes them (ordered dependencies, separate approvals, required evidence, manual render stops). Combined with the explicit non-execution boundaries, an agent has everything needed to call 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?

A single required enum parameter with 100% schema description coverage, so the schema fully documents the input. The description's phrase 'MOGRT or rendered-file handoff' loosely mirrors the two enum values but adds no format or selection guidance. Baseline 3 for a fully documented 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?

States a specific verb (plan) and a precisely scoped resource (After Effects MOGRT or rendered-file handoff to Premiere), and the schema enumerates the two supported handoffs. An agent can distinguish it from sibling apply/preview handoff tools without opening 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?

Explicitly bounds usage: 'Local-only planning; never executes steps, issues approval tokens, or claims host readiness,' which tells the agent clearly when not to rely on it for execution. It notes it uses existing tools but never names a specific alternative like apply_mogrt_premiere_handoff, 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.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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, so safety is covered. The description adds that the tool is local-only and deterministic and that it never changes Premiere, which reinforces the read-only behavior. It stops short of describing rate limits, auth needs, or output structure, but the output schema handles the latter.

Agents need to know what a tool does to the world before 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 tightly written sentences that front-load the core purpose and then add the key behavioral constraint. Every clause contributes useful information—effect style, input sources, controls, output destination, and side-effect guarantee—with no filler. It is appropriately sized for a 17-parameter planning 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?

Given the rich input schema (100% coverage, nested objects) and the existence of an output schema, the description only needs to orient the agent, which it does completely. It covers purpose, input modes, output destination, and the no-side-effect guarantee. Annotations carry the safety profile, so no critical information 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 already documents all 17 parameters in detail; per the rubric, that establishes a baseline of 3. The description mentions cooldown, easing, hold controls, and subject-anchored Position, but these map directly to already-described schema fields rather than adding new semantic guidance. It does not provide syntax or interaction rules beyond what the schema supplies.

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 planning verb and resource: 'Plan CapCut-style punch-in zoom keyframes (Motion Scale + subject-anchored Position).' It distinguishes the tool from mutators like add_keyframe by clarifying that it only produces a plan and never changes Premiere. The input modes (word timeline or supplied trigger times) and downstream consumers (automate_effect_parameters_uxp or add_keyframe) make the role 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?

It specifies the two input contexts—a word timeline or supplied trigger times—and names the downstream tools that consume the plan, giving clear usage context. However, it does not explicitly say when to prefer this planner over calling add_keyframe directly or over other planning siblings. The guidance is clear enough for selection but lacks explicit exclusion criteria.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the bar is lower. The description still adds real value: it clarifies that the tool only plans and is 'local-only; never changes Premiere', and that output is 'frame-snapped removal and keep ranges plus apply routes' — concrete behavioral context beyond the hints.

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 tight, front-loaded sentences with no filler; purpose, output shape, and safety each get one clause. Nothing is padded, though the output/safety sentences could be slightly tighter.

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 7-parameter tool with a nested transcript object and a declared output schema, the description covers purpose, output nature (ranges + apply routes), and the non-mutating guarantee. The main gap is the absence of sibling-oriented guidance on when to choose this planner over related planners, but the core calling context is 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%, including defaults, ranges, and the filler-word matching rules, so the schema carries the parameter burden. The description adds only the notion of frame-snapping and a few sample fillers that 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.

Purpose4/5

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

Specific verb+resource: 'Plan word-level filler removal' with parenthetical examples (um, uh, you know...), scoped to a 'revision-bound word timeline'. An agent immediately knows what is produced. It does not explicitly distinguish itself from close siblings like plan_word_mute_ranges or plan_pause_tightening, so it stays at 4 rather than 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 states what the tool does but gives no explicit when-to-use or when-not guidance, and never names the alternative tools an agent should weigh it against (e.g. plan_word_mute_ranges for muting vs this for cutting). Usage must be inferred from the name and input requirements.

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

plan_multicam_angle_switchesPlan Multicam Angle SwitchesA
Read-onlyIdempotent

Plan active-speaker camera switching for stacked, synced camera tracks: from speaker segments and a camera-to-speaker map it produces an angle cut list with minimum holds, crosstalk cover shots, optional lead-in cuts and periodic cutaways, plus razor times, per-camera enable/disable ranges, and markers. Local-only and deterministic; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
camerasYesCamera angles. A camera with one speaker is a single, two or more is a two_shot, none is a wide cover unless role says otherwise.
frame_rateNoSequence frame rate for snapping cut points; defaults to 30.
marker_colorNoMarker color index for the cut markers (default 6 = blue).
start_secondsNoPlan start in sequence seconds (default 0).
cutaway_secondsNoLength of each cutaway (default 2.5; must be at least min_hold_seconds).
cover_on_overlapNoCut to a two_shot or wide camera when speakers overlap (default true).
min_hold_secondsNoMinimum time an angle stays on air; shorter changes are absorbed (default 2).
speaker_segmentsYesWho is speaking when, in sequence seconds (from a transcript, diarization, or plan_speaker_checkerboard turns). Overlaps are allowed.
lead_switch_secondsNoCut to the incoming speaker this many seconds before they start, when the outgoing hold allows (default 0).
overlap_min_secondsNoMinimum crosstalk length before the cover shot is used (default 0.6).
cutaway_every_secondsNoInsert a cover cutaway during monologues longer than this many seconds (default: none).
total_duration_secondsNoPlan end in sequence seconds (default: last segment end).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, and destructiveHint=false. The description adds genuinely useful non-schema behavior: local-only execution, determinism, and that it never modifies Premiere — clarifying this is a planning artifact, not an applied edit. It stops short of timing or size-limit caveats.

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 dense sentence that front-loads the action and its inputs before listing outputs, then closes with the key safety/determinism note. Everything earns its place, though the output enumeration is long.

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, return values need not be spelled out, and the description still summarizes them plus the read-only/local-only behavior. For a 12-parameter planning tool this is close to complete; only explicit sibling routing 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 carries the parameter definitions and the baseline is 3. The description connects several parameters to their outcomes (minimum holds, crosstalk cover shots, lead-in cuts, periodic cutaways), which adds framing, but it does not define any parameter's units or defaults itself.

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?

Specific verb+resource: 'Plan active-speaker camera switching for stacked, synced camera tracks.' It enumerates exactly what is produced (angle cut list, razor times, enable/disable ranges, markers), which clearly distinguishes it from adjacent planning tools like plan_speaker_checkerboard and plan_active_speaker_reframe.

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 precondition (speaker segments plus a camera-to-speaker map) and scope, but never states when to prefer this over sibling planning tools or when it is inappropriate. Usage is inferable rather than explicit.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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=true, destructiveHint=false and idempotentHint=true, so the safety profile is largely covered. The description adds value beyond that: it says the tool is local-only, never mutates Premiere, and returns removal ranges, keep ranges, savings and apply routes, giving the agent a sense of what the plan output contains.

Agents need to know what a tool does to the world before 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 tight sentences with no padding; the core action is front-loaded and the return/safety notes follow in order of importance. 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 rich annotations and an output schema present, the description need not explain return shapes in depth. It covers the mutation scope, the local-only guarantee and the planning output, leaving only the sibling routing question open.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 already documented with defaults, bounds and constraints (e.g. target must not exceed max_pause_seconds). The description references max_pause_seconds and the target but adds no syntax or format 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.

Purpose5/5

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

States a specific verb (plan) plus a precise resource (shortening of inter-word pauses longer than max_pause_seconds down to a target), and clarifies it is not deletion. This distinguishes it from nearby siblings like plan_filler_word_removal and plan_word_mute_ranges 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 description implies the use case (planning pause tightening) but never states when to prefer this over alternatives such as detect_silence, plan_silence_review_markers, or plan_filler_word_removal. Usage is inferable but not explicit.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and closed world, so the safety profile is covered. The description adds genuine value beyond that: it explicitly reinforces local-only behavior and itemizes the computations the planner performs, giving the agent a concrete picture of scope and side-effect freedom.

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 definition is a single front-loaded sentence with no filler, and the most important constraint (local-only, no Premiere changes) is stated last but compactly. It is dense with enumerated lists, which slightly reduces scannability but wastes 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?

With an output schema present, return values need not be described, and the description covers the tool's scope, inputs and non-mutating nature adequately for a 4-parameter planner. It could be stronger by noting how the plan relates to downstream apply/export tools, 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%, so source fields, target enum, strategy enum and preset hint are all documented in the schema. The description gestures at these inputs (sequence settings, reframe scale math, fit checks) but adds no syntactic or default detail beyond what the schema already supplies, 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 (Plan), a specific resource (multi-ratio delivery of one source sequence), and enumerates the exact platforms plus the artifacts produced (reframe scale math, duration/file-size fit, caption safe zones, ordered apply routes). This clearly separates it from siblings like validate_platform_publish_package or verify_delivery_conformance, which are validation rather than 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?

'Local-only; never changes Premiere' tells the agent this is a non-mutating planning step, which is the key routing signal versus mutating tools (export_sequence, apply_edit_plan). It does not, however, explicitly name an alternative or state the precondition that a plan precedes an apply/export step, so it stops short of 5.

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

plan_reaction_captionsPlan Reaction CaptionsA
Read-onlyIdempotent

Plan stacked, speaker-colored reaction captions from a word timeline and an explicit speaker palette. Flash-length words merge, overlaps stack, and unknown speakers stay uncolored. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateNoSequence frame rate used to snap times to frames; defaults to 30.
shot_changesNoOptional labeled cut points. A matching speaker's caption will not start before they appear on screen when a readable hold remains.
max_cue_charsNoLongest caption text before a cue is split at a word boundary; defaults to 84 (two 42-character lines).
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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
max_cue_secondsNoLongest time one caption stays up before it is split; defaults to 6.
speaker_paletteYesKnown speakers and their exact #RRGGBB colors. Missing labels are returned as uncertain and never receive a guessed color.
min_hold_secondsNoMinimum duration kept after clamping a cue to a shot change; defaults to 0.35.
merge_gap_secondsNoSame-speaker words closer than this become one cue; defaults to 0.12 so a short pause can start a new line.
combine_gap_secondsNoMaximum gap when combining a flash cue with the next same-speaker cue; defaults to 0.8.
min_solo_cue_secondsNoCues shorter than this merge with the next same-speaker cue; defaults to 0.45.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds genuine behavioral detail beyond that: flash-length words merge, overlaps stack, and unknown speakers stay uncolored (no guessed colors). 'Never changes Premiere' largely restates readOnlyHint but usefully reinforces that planning is side-effect free.

Agents need to know what a tool does to the world before 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/three tight sentences: the core operation first, then the key merge/stack/coloring rules, then the safety note. Every sentence carries information and nothing is padded.

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 10-parameter planning tool with rich annotations and an output schema that covers the return value, the description supplies enough behavioral context (merge, stacking, uncolored unknown speakers) to call it correctly. It stops short of explaining the transcript-revision dependency or ties to the palette-to-word label matching rules, but these are mostly 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% across all 10 parameters, so the schema already documents frame_rate, gaps, cue limits, and hold behavior with defaults. The description names none of these parameters and adds no syntax or format meaning, 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 ('plan') and resource ('stacked, speaker-colored reaction captions') plus the two required inputs, distinguishing it from the write-oriented siblings (build_caption_artifact, create_caption_track) and from planning siblings like plan_speaker_checkerboard. An agent can identify the operation 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?

It implies usage by naming the required inputs (a word timeline and speaker palette), which suggests when the tool applies, but it never states when to prefer this over build_caption_artifact or create_caption_track, nor any prerequisite such as needing a transcript revision from get_clip_transcript_uxp. Usage context is inferable but not explicit.

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

plan_short_export_folderPlan Short Export FolderA
Read-onlyIdempotent

Plan a series-named export folder inside an approved Shorts root and remind the caller to create it when missing. Local-only; never writes files or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandNoChannel brand kit. cafe must not reuse watch_club fonts, name cards, or speaker colors.
titleYesShort title used as the file stem.
extensionNoFile extension without a dot; defaults to mp4.
export_rootYesAbsolute Shorts export root, for example the ALL Shorts or Cafe Exports folder.
series_nameYesAnime or series folder name to create under export_root when missing.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so 'Local-only; never writes files or changes Premiere' largely restates the structured safety profile. The one genuine addition is the promise to 'remind the caller to create it when missing', hinting the response reports folder absence, but no further behavior (validation of the root, error cases) 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.

Conciseness4/5

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

Two sentences, front-loaded with the core action, then the safety clause. No padding, though the second sentence is close to a restatement of the readOnly annotations and earns less of its place than the first.

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, return-format explanation is unnecessary, and all five parameters are documented in the schema. The definition is adequate for a local planning tool, though it omits what qualifies as an 'approved' root and the folder-naming convention it will generate.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 of the five parameters already carries its own description (including the brand enum constraint), so the schema does the heavy lifting. The description adds no syntax, format, or naming-convention detail beyond what the schema already states; 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?

Specific verb+resource: it names the artifact it plans (a series-named export folder) and its scope (an approved Shorts root). The 'plan' family of siblings (plan_beat_montage, plan_chapter_markers) makes the intent distinguishable, though the description doesn't explicitly contrast itself against those planners.

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?

'remind the caller to create it when missing' implies the tool is a pre-flight planning step whose output feeds a later folder creation, but no explicit when-to-use/when-not or named alternative is given. Usage must be inferred from the verb 'plan'.

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

plan_short_subscribe_ctaPlan Short Subscribe CtaA
Read-onlyIdempotent

Plan a brief subscribe overlay about two-thirds through a Short, after an optional hook, in a platform-safe lower-third. Local-only; never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
copyNoOptional overlay text. Defaults to a brand-appropriate subscribe line.
brandNoChannel brand kit. cafe must not reuse watch_club fonts, name cards, or speaker colors.
at_ratioNoPlacement as a fraction of duration; defaults to 2/3.
platformNoSafe-zone profile; defaults to youtube_shorts.
frame_rateNoSequence frame rate used to snap times to frames; defaults to 30.
hold_secondsNoHow long the prompt stays on screen; defaults to 2.
duration_secondsYesFinished Short duration in seconds.
hook_end_secondsNoIf the hook ends later than the default placement, the CTA starts after the hook.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so the safety profile is largely pre-covered. 'Local-only; never changes Premiere' usefully reinforces that this is a planning step with no side effects, but it adds little behavioral detail beyond the annotations and doesn't address return shape or whether plans can be reapplied.

Agents need to know what a tool does to the world before 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 placement, with the non-destructive constraint as a trailing qualifier. No filler, every clause carries 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?

With an output schema present and full schema description coverage, the description needn't explain return values; it correctly covers the what, the default placement, and the local-only constraint. It stops just short of routing guidance among the large plan_* family, so it is strong but not 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% across all 8 parameters, including enums for brand and platform and bounded ranges, so the schema carries the semantics. The description only echoes the default placement (two-thirds) and safety framing, adding no parameter detail the schema lacks. 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 specific verb and resource ('Plan a brief subscribe overlay ... in a platform-safe lower-third') and pins the timing ('about two-thirds through a Short, after an optional hook'), which is enough to distinguish it from the many other plan_* siblings. An agent can tell this plans a CTA placement rather than mutating the timeline.

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?

Implies usage via 'after an optional hook' and 'platform-safe lower-third', which tells the agent the intended editorial context, but it never states when to prefer this over siblings like add_text_overlay or plan_reaction_captions, nor any prerequisites. Usage is inferable rather than explicit.

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; on failure, diagnostic detail when the tool provides it.
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 says 'Read-only planning only; it does not grade Premiere or claim that primaries alone can match the shots.' This adds critical behavioral context: it's a non-destructive, advisory tool. However, annotations include readOnlyHint: false, which seems contradictory—the tool is described as read-only but annotation says not read-only. This inconsistency undermines 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 sentences, front-loaded with the core action and followed by an important scope disclaimer. Every sentence earns its place 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?

Given the tool's complexity (comparison analysis), the description covers the essential what and the read-only caveat. With an output schema present, it needn't explain return values. The only gap is that it doesn't clarify the contradiction with annotations or provide more operational context, but it's 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?

Schema description coverage is 100%, so parameters are fully documented in the schema. The description mentions 'bounded local-media frame samples' but adds no parameter-specific details beyond what the schema provides. Baseline 3 is appropriate when 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 states a specific verb and resources: 'Compare two bounded local-media frame samples and return measured waveform/parade/saturation deltas plus coarse correction directions.' This clearly distinguishes it from siblings like match_frame or color_correct by emphasizing measurement and planning rather than execution. It doesn't explicitly name sibling alternatives, so it falls short of 5.

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 shot matching analysis but doesn't specify when to use this tool instead of alternatives like match_frame or color_correct. No explicit when-not-to-use conditions or prerequisites are stated, leaving the agent to infer context.

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; on failure, diagnostic detail when the tool provides it.
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/non-destructive, but the description adds real context beyond them: candidates are clipped to the supplied source in/out span, the source path is redacted, and the plan is bounded. These are non-obvious behavioral traits (privacy handling, scoping) that an agent would not learn from 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?

Two tight sentences with no filler; the core purpose is front-loaded in the first clause, and the non-mutation guarantees are stated second where they belong. 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 an output schema present, the description need not explain return values, and all seven parameters are documented in the schema. The safety profile and scoping behavior are covered, leaving only the explicit when-to-use guidance as a gap.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3, but the description adds meaning by explaining that source_in/out are used to clip candidates and that the result is tied to a single 1x timeline placement, which clarifies the effect of those parameters beyond their schema wording.

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 ('Create a bounded, non-mutating review plan') plus the precise resource and operation: mapping FFmpeg-detected silences onto a known 1x timeline placement. An agent can distinguish this from detection siblings (detect_silence) and marker-writing siblings (add_markers_batch) without opening 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 Guidelines3/5

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

The phrase 'never adds markers, cuts clips, or changes Premiere' implicitly routes the agent away from the mutation siblings and toward a planning step, which is useful implied guidance. However, no alternative is named explicitly and there is no stated precondition or 'use this instead of X when Y' instruction, so the agent must infer when to prefer this over detect_silence, plan_pause_tightening, or add_markers_batch.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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 readOnly/idempotent/non-destructive, and the description reinforces 'never changes Premiere' while adding value beyond the annotations: it discloses the return payload (frame-snapped segments, split points, track assignments) and the downstream route names (add_track/razor_all_tracks/move_clip_to_track). It does not discuss limits or failure modes, but the annotation bar is already met.

Agents need to know what a tool does to the world before 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: purpose first, then output/routes, then the safety constraint last. 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.

Completeness4/5

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

For a complex 9-parameter, nested-object tool this is largely complete: it names the input source, the transformation, the outputs, and the safety profile. Since an output schema exists, return-value detail is redundant rather than missing, and the only small gap is explicit routing away from sibling planners.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 9 well-documented parameters including nested word_timeline entries, so the schema carries parameter meaning. The description only references the 'word timeline' input and 'frame-snapped' behavior, adding little beyond the structured fields — the baseline 3 for full coverage 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 (Plan) and resource (speaker checkerboard), then parenthetically defines the concept (each speaker's turns on their own video/audio track) so the agent need not infer it. Clearly distinguishable from siblings like plan_multicam_angle_switches and plan_active_speaker_reframe.

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?

Specifies the input precondition (a caller-supplied word timeline) and notes it is local-only, giving clear usage context. However, it never states when to prefer this over adjacent planning tools such as plan_multicam_angle_switches or plan_active_speaker_reframe, so alternative selection 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.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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 readOnly/idempotent/non-destructive, and the description meaningfully adds that it does not touch Premiere and that output is frame-snapped/redacted. It stops short of describing determinism or error behavior, but adds real context beyond 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?

Three tight sentences, front-loaded with the purpose, then output, then the safety constraint. Every sentence earns its place 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?

With a rich output schema and full annotation coverage, the description needn't explain return values, and it still outlines them briefly. It is complete enough for correct invocation, though it could tie into the apply-step sibling for a fully rounded picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 including the mode enum and nested word_timeline are already documented. The description only echoes the mute-vs-bleep distinction without adding syntax or format 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.

Purpose5/5

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

States a specific verb (plan) and resource (mute/bleep ranges for listed words in a word timeline). The 'plan' framing clearly distinguishes it from execution siblings like mute_track and add_audio_keyframes, which actually apply changes.

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?

Makes the workflow context clear: it is a planning step whose output is 'ready-to-apply' keyframes, and it is 'local-only; never changes Premiere'. However it does not explicitly name the sibling to call afterward (e.g. add_audio_keyframes) or any when-not condition.

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. Fails when no clip is loaded. 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; on failure, diagnostic detail when the tool provides it.
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 declare non-readOnly and non-idempotent but say nothing about failure modes or verification. The description adds two genuinely useful behavioral facts beyond the annotations: the no-clip-loaded failure condition and the caveat that movement is not verified because the legacy API offers no same-call position readback. It stops short of describing blocking/async behavior or how to confirm playback afterwards.

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 short sentences, front-loaded with the action, then failure condition, then the verification caveat. Each sentence carries information; the final one is dense but justifies itself by flagging an important limitation.

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, the description need not explain return values, and it correctly focuses on the action, the failure precondition, and the verification gap. It could additionally note blocking/async behavior or point to get_source_monitor_position/stop_playback, but nothing essential for calling it 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?

There is a single parameter and schema description coverage is 100%, so the schema already fully documents 'speed' including its default and reverse semantics. The description adds no parameter-level meaning beyond that, which is the expected baseline when the schema does the 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?

States a specific verb ('Request playback') and a specific resource/target ('the clip in the Source Monitor'), so it is distinguishable from the surrounding timeline/transport tools. It does not explicitly name sibling alternatives such as play_timeline or stop_playback, but the resource scope is 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?

Gives one concrete precondition - 'Fails when no clip is loaded' - which tells the agent when the call will fail. However, it never routes the agent relative to alternatives (play_timeline for the timeline, stop_playback to halt), so usage is only implied.

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; on failure, diagnostic detail when the tool provides it.
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 declare this is a non-read-only, non-idempotent, non-destructive operation. The description adds genuinely useful behavior the annotations cannot convey: that no same-call playhead readback exists, so playback movement is not confirmed. It stops short of saying whether the call blocks or returns immediately, but the verification caveat is valuable.

Agents need to know what a tool does to the world before 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 action first and the caveat second; nothing is redundant and no padding is present.

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 values need not be described, and there are no parameters to document. The description covers purpose and the key verification limitation, though it could point at the companion tool (e.g. get_playhead_position) for confirming that playback actually advanced.

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 are no argument semantics to clarify; the description correctly avoids inventing any. Baseline for a parameterless tool 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: 'Request playback of the active sequence timeline', which clearly separates it from stop_playback or get_playhead_position. It does not name a sibling explicitly, but the action is 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?

There is no statement of when to choose this tool versus alternatives such as stop_playback or navigate_playhead, nor any prerequisite or sequencing guidance. The note about verification is about expectations, not about when or when-not to invoke it.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavioral context: no Adobe contact, no queueing, no rendering, confirming this is a pure dry-run against provided paths.

Agents need to know what a tool does to the world before 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 positive scope statement comes first and the negative capability statement second, which is exactly the right front-loading for a preview 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?

With an output schema present, the description need not describe return values, and the 100% schema coverage handles parameters. What remains is sufficient for a read-only preview, though it does not explain why a preview would fail or what it validates against.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 five required parameters are fully documented in the schema, making 3 the baseline. The description reinforces the composition and workspace-directory constraints but adds no format, syntax, or validation 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?

States a specific verb (Preview) and resource (a bounded queue-only After Effects render request) with scope narrowed to one named composition and an existing workspace output directory. It is clearly distinguishable from enqueue_after_effects_render, though it never names that 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 negation 'does not contact Adobe, enqueue, or render' implicitly tells the agent this is a validation-only step before a real enqueue, which is useful directional guidance. However, no alternative tool is named and no explicit when-to-use condition or precondition is stated.

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. It may be outside approved_workspace_path: it is only compared with the project Premiere has open.
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; on failure, diagnostic detail when the tool provides it.
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 readOnly/idempotent/non-destructive, so the safety profile is covered; the description adds substantive context beyond that – it reads both connected hosts, binds approval to file metadata plus project/bin identity, and enumerates the operations it does NOT perform. It stops short of explaining what an approval result or invalidation looks like.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with the operation and scope, followed by the binding behavior and then the explicit non-goals. Nothing is padding and each sentence adds a distinct fact.

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 values need no explanation, and annotations cover the safety profile. The description supplies scope, host-read requirement, and negative constraints, giving an agent enough to invoke it correctly; only the meaning of 'binds approval' and the relationship to the apply tool remain 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?

Schema coverage is 100% with all six parameters documented in their own descriptions, including the constraints that matter (one-based queue index, exact bin node ID, existing open projects). The description adds only the general 'single-file render' framing and does not supplement parameter semantics 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?

States a specific verb (preview import) plus resource scope (one completed single-file After Effects render into an existing Premiere bin), which concretely distinguishes it from the sibling apply_after_effects_render_handoff and from preview_mogrt_premiere_handoff. The file-type and single-item scope further sharpen what is being previewed.

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 is the dry-run step preceding an apply/handoff, and it explicitly excludes rendering, importing, and timeline editing. But it never names the alternative tool or states the condition that selects preview over apply, so the agent must infer the workflow position.

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; on failure, diagnostic detail when the tool provides it.
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 cover safety (readOnlyHint=true, idempotentHint=true, destructiveHint=false), but the description adds a genuinely non-obvious trait: the supplied mogrt_path is not read or imported during preview, which matters because that parameter otherwise looks like a real file dependency. It stops short of describing what the preview returns.

Agents need to know what a tool does to the world before 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 with zero filler. The core action leads and the surprising caveat (local-only, MOGRT not read) follows 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?

With an output schema, full schema coverage, and complete annotations, the description only needs to supply the behavioral surprise, which it does. Slightly incomplete on routing among the many preview_* siblings, but nothing needed to invoke 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 description coverage is 100% with all 12 parameters documented in the schema, so the baseline is 3. The description only echoes the workspace-containment constraint on mogrt_path and adds no new syntax, defaults, or ordering semantics 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?

States a specific verb (preview) and resource (brand-spot assembly) plus its input basis (existing project items) and the optional MOGRT overlay. It is clearly distinct from most siblings, though it never names the closest ones (preview_product_spot, preview_motion_graphics_demo) to explain which preview variant applies.

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 (dry-run an assembly before applying) and gives one important boundary: preview is local-only and does not read or import the MOGRT file. However, it never states when to choose this over preview_product_spot, preview_motion_graphics_demo, or apply_spot_workflow_plan.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral context beyond annotations: the plan must be an exact server-issued artifact, validation is against saved project-context revisions, and the result is an opaque confirmation token.

Agents need to know what a tool does to the world before 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 front-load the core action and then state the read-only limitation. There is no filler, and the constraint that matters most, 'cannot apply the plan,' appears early.

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 preview/validation tool with a complete input schema, rich annotations, and an output schema, the description supplies enough context to call it correctly and understand that it cannot apply changes. The main remaining gap is explicit routing guidance relative to sibling preview/apply 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%, and the sole parameter is documented in the schema as the unchanged plan returned by create_editorial_plan from this running server instance. The description adds 'exact server-issued' emphasis but largely reinforces rather than extends the schema 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, 'Revalidate,' and a specific resource, 'exact server-issued editorial plan,' and states the output artifact, an 'opaque confirmation token.' It also distinguishes itself from apply/create siblings by emphasizing 'cannot apply the plan' and by requiring a plan already issued by create_editorial_plan.

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 as a validation/preview step by saying it revalidates a server-issued plan and cannot apply it, but it never states when this tool should be used instead of preview_edit_plan, apply_edit_plan, or create_editorial_plan. The 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.

preview_edit_planPreview Edit PlanA

Inspect sequence, project item, clip and requested track targets before previewing a compound timeline edit without changing Premiere. Returns a single-use confirmation token bound to stable project, sequence and target identities; it expires after 30 minutes and is required by apply_edit_plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesAn edit plan: { sequence_id?, operations: [...] } with up to 100 insert_clip and remove_clip operations. Operations run in order, and each one's times refer to the timeline as the operations before it left it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the safety profile is partly covered. The description adds important behavioral context beyond that: the token is single-use, bound to stable project/sequence/target identities, expires in 30 minutes, and is required by apply_edit_plan. It does not describe validation failure modes, but the output schema can cover return details.

Agents need to know what a tool does to the world before 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 tool's scope and non-destructive constraint, followed by the token lifecycle and dependency on apply_edit_plan. 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 a nested 100-operation plan and an output schema, the description covers purpose, preconditions, and token lifecycle sufficiently. It could mention whether operation ordering or validation errors are surfaced, but given the rich schema and annotations, the definition 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?

Schema description coverage is 100%, including detailed nested descriptions for operations, fields, and defaults. The description only summarizes the affected entities (sequence, project item, clip, track targets) and adds no syntax, constraints, or examples beyond what the schema already provides. Baseline 3 applies when 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 (Inspect), the resources (sequence, project item, clip, requested track targets), and the scope (previewing a compound timeline edit without changing Premiere). It also explicitly distinguishes itself from apply_edit_plan by noting the returned token is required by that tool.

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 establishes when to use the tool: before applying a compound edit and specifically because apply_edit_plan requires the returned token. It does not name any alternative or explicitly state when not to use it, but the sequencing constraint is unambiguous.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description still adds real context the annotations do not: no Adobe contact occurs, no compositions or files are created, and the batch is capped at 20 rows.

Agents need to know what a tool does to the world before 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. The capability and its scope come first, followed by the non-effects clause, which is exactly the ordering an agent 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?

With an output schema present, return values need no explanation, and annotations cover the safety profile. The remaining gap is the absence of any pointer to preview_mogrt_recipe or create_mogrt_batch, which matters given how crowded the MOGRT sibling set is.

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 goes slightly beyond the schema by disclosing the 20-item bound and reinforcing that both the data file and workspace are workspace-contained, which constrains how the three required path parameters should be supplied.

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 (preview), resource (MOGRT recipe exports), and scope (batch, up to 20, from a JSON/CSV data file). It is clearly distinguishable from create_mogrt_batch, though it never names preview_mogrt_recipe to clarify the single-vs-batch boundary.

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 'from a workspace-contained JSON or CSV data file' — an agent can infer this is for reviewing a multi-row batch before exporting. However there is no explicit when-to-use / when-not, and no routing against the closely related preview_mogrt_recipe or create_mogrt_batch siblings.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description usefully adds that no file or directory is created during preview and that the publish is no-overwrite, which is real behavioral context 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?

Two sentences, zero filler, with the dry-run nature and the no-side-effect guarantee front-loaded. 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?

Output schema exists so return values need not be described, and annotations cover the safety profile; the description covers scope, preconditions, and side-effect behavior. Slightly thin on explicit routing to the non-preview publish tool, which is the only real 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 schema already documents all four parameters (mogrt_path, template_name, library_directory, approved_workspace_path). The description reinforces that the library root must exist but adds no parameter-level syntax or format 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.

Purpose5/5

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

States a specific verb plus resource ('Preview a no-overwrite publish of a validated MOGRT into a ... library') and clearly frames it as the dry-run counterpart to publish_mogrt_to_library. An agent can distinguish it from the sibling publish tool without opening either 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?

Gives clear preconditions ('validated MOGRT', 'library root must already exist') but never explicitly names the alternative (publish_mogrt_to_library) or states when-not to use it. Usage is strongly implied rather than spelled out.

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; on failure, diagnostic detail when the tool provides it.
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 still adds real behavioral context the annotations do not: that the operation never contacts Premiere and never mutates a sequence, which is exactly the distinction an agent needs when choosing between preview and apply.

Agents need to know what a tool does to the world before 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 positive action is front-loaded and the non-mutation guarantee is placed second, which is the right ordering for an agent scanning for safety constraints.

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 preview tool with full schema coverage and an output schema, the description supplies everything needed to select and invoke it correctly, including the non-contact guarantee. It could be marginally stronger by naming the apply counterpart, 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 description coverage is 100% and an output schema exists, so the schema already documents all seven parameters, including the 'MOGRT Verify - ' naming rule and the empty-track index. The description echoes the disposable-sequence and empty-track intent but adds no format or syntax 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.

Purpose5/5

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

States a specific verb (Preview) plus the exact resource and target (a contained MOGRT import into a named disposable Premiere verification sequence and empty video track). The word 'preview' plus the 'does not contact Premiere' clause cleanly separates it from the sibling 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?

Clearly signals when this is the right choice: a dry-run verification that neither contacts Premiere nor alters a sequence, implying the apply tool is used after verification passes. It stops short of naming the alternative tool explicitly, so it falls just short of 5.

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, social, and media-placeholder 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 headline text, at most 160 characters. Required for text recipes; optional caption for media_placeholder.
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.
text_controlsNofull (default) also exposes per-text-layer Font Size, Fill Color, Stroke Color, Stroke Width, Position, Scale, Rotation, Anchor Point, and Opacity controls; text_only exposes only the text strings.
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.
placeholder_media_pathNoRequired for media_placeholder: absolute workspace-contained PNG, JPEG, MOV, or MP4 placed as the swappable Essential Graphics media slot.
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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive, closed-world, so the bar is low; the description still adds real value by stating it does not contact Adobe and does not write files, and that it validates exactly one existing workspace output directory.

Agents need to know what a tool does to the world before 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 what is previewed and immediately followed by the key constraint (no Adobe contact, no writes). No padding or repetition of structured fields.

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 15-parameter, nested, enum-heavy tool with an output schema, the description covers the core intent and the safety-relevant behavior. It stops short of clarifying the preview-versus-commit boundary relative to create_mogrt_recipe, but the return format is handled by the 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 description coverage is 100% across 15 parameters with enums and a nested brand_kit object, so the schema already carries the semantic load. The description only adds the general template-library framing and no per-parameter detail beyond the schema, making the baseline 3 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?

States a specific verb (Preview), resource (After Effects MOGRT recipe), and scope (bounded, drawn from the supported template library), which distinguishes it from create_mogrt_recipe and verify_mogrt_artifact. It does not name those siblings directly, so the differentiation is inferential rather than explicit.

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 establishes the preview context and notes it validates one existing output directory rather than writing files, implying a dry-run check. However it never states when to choose this over sibling preview/create/verify MOGRT tools, leaving usage to inference.

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; on failure, diagnostic detail when the tool provides it.
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=true, idempotentHint=true, destructiveHint=false and closed-world scope. The description adds value beyond them by enumerating what is NOT done (no asset creation, no import, no sequence creation, no Premiere mutation) and by noting the separate confirmation-token requirement at apply 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?

Two sentences, no filler. The purpose comes first, the negative scope and the apply-gate warning follow, in that priority order.

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 7 well-documented params, an output schema and rich annotations, the description needs only to frame intent and constraints, which it does. A little more on the preview→apply handoff would make it 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 coverage is 100% with per-parameter descriptions covering the destination sequence, playback-order item IDs, transition defaults, track indices and durations. The description adds no parameter 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?

States a specific verb+resource: previewing a contained motion-graphics demo assembly built from existing project items. It also clarifies scope by negation ('never creates demo assets, imports files, creates a sequence'), which separates it from build/apply siblings. It stops short of naming the specific apply counterpart it precedes.

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 closing clause 'apply requires an exact confirmation token' implies this is the dry-run step of a preview→apply workflow, letting an agent infer when to use it. However, no sibling is named and there is no explicit 'use before X / not for Y' routing guidance.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavioral context: the eventual apply only touches explicit empty tracks, revalidates item IDs, and that this preview reports host readback without asserting visual delivery verification — a meaningful honesty caveat about what the preview does and does not prove.

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 compact sentences with the core purpose front-loaded and no filler. The second sentence packs several distinct caveats efficiently, though it mixes apply-stage behavior into a preview tool, slightly diluting focus.

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 100% covered schema, full annotations, and an output schema that removes any need to describe return values, the description only needs to supply the preview/apply relationship and its verification caveats — both of which it delivers. Only the sibling differentiation against preview_brand_spot 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 every parameter (including the enum motion_style and defaulted track indices) is documented in the schema itself. The description's phrase 'from existing project items' loosely reinforces the asset_item_ids semantics but adds no syntax or format 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?

States a specific verb ('Preview') and resource ('a product-spot assembly from existing project items'), so the agent knows this is a read-only preview of a spot build. It does not explicitly differentiate itself from the near-identical sibling preview_brand_spot or from preview_motion_graphics_demo, which is the only real 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?

By referencing 'the eventual apply' the description implies this is the preview step preceding an apply stage, which gives implicit usage context. However, it never names the apply sibling (e.g. apply_spot_workflow_plan) or states when to prefer this over preview_brand_spot, so the routing guidance 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.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered structurally. The description adds genuinely new behavioral context beyond those flags: output is path-redacted (hashes instead of paths by default), the proposal is non-mutating, and the template is never persisted.

Agents need to know what a tool does to the world before 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 inspection action and its outputs front-loaded and the non-mutation guarantee placed last. 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?

An output schema exists so return structure need not be explained, and annotations cover the safety profile. For this bounded, read-only inspection tool the description supplies the remaining essentials (redaction, non-persistence, bounded scope).

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 template, max_items (including truncation behavior) and include_paths (default false, hashes returned). The description adds no parameter-level detail beyond that, 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+resource ('Inspect a bounded Premiere project against an explicit facility intake template') and states the two outputs (a path-redacted report and a non-mutating organization proposal). This is clearly distinguishable from validation/preview siblings such as validate_project_for_export or preview_edit_plan, though it does not name any 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?

Usage is only implied: calling this 'non-mutating' and saying it 'never changes Premiere' suggests it is the read-only preview step before an intake/organization action, but no when-to-use condition, prerequisite, or sibling alternative is stated. Adequate but with a clear gap.

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; on failure, diagnostic detail when the tool provides it.
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 bar is low; the description still adds meaningful context by disclosing the baseline-vs-fresh-scan comparison and the path-redaction behavior, which is not captured by 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 tight sentences, front-loading the comparison action and immediately following with the safety guarantee. 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?

An output schema exists, so return shape need not be described. Purpose, safety posture, and redaction are all covered; only the relationship to the subsequent actual-import step is 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?

Schema description coverage is 100%, so the schema already documents watch_id, include_paths, and known_media_path_hashes. The description's mention of a 'path-redacted' proposal adds light motivation for include_paths but no new syntax or semantics beyond the schema, so it sits 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?

Specific verb+resource ('Compare the active watch baseline with a fresh contained scan') plus an explicit statement of the non-effect ('It never imports or changes Premiere'), which cleanly separates it from the sibling manage_media_watch and any real import tool.

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 its place in the workflow (preview before committing) and states what it will not do, so an agent knows when to reach for it. It does not, however, explicitly name the follow-up import/apply tool an agent should call afterwards.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, closed-world, and non-destructive behavior. The description usefully reinforces this by stating it does not invoke any route or change Premiere, though it does not add deeper operational details like auth or persistence 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?

Two sentences, front-loaded with the core action and immediately followed by the key non-effect guarantee. No wasted 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?

With a rich output schema, full input schema coverage, and strong annotations, the description is complete enough for an agent to invoke it correctly. It covers purpose and side-effect boundaries; return values are covered by the 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 description coverage is 100%, and all four parameters are documented in the schema. The description adds no parameter-level semantics, so the baseline 3 applies when schema 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?

States a specific verb and resource: validate and expand one declarative workflow recipe into guarded MCP routes. It also clarifies what it does not do, which distinguishes it from apply/invoke-style siblings, even without naming a specific 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?

Usage is implied by 'preview' and the no-side-effect note, but the description does not explicitly say when to use this versus search_workflow_recipes or apply_edit_plan. It provides minimum viable context, not routing guidance.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, and the description adds valuable behavioral detail beyond them: it requires explicit confirmation and will fail rather than replace an existing version. This clarifies the non-destructive but irreversible publish behavior, though it does not cover permissions or response details.

Agents need to know what a tool does to the world before 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 action and immediately followed by the most important behavioral constraints. Every clause earns its place with 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 two-parameter mutation with full schema coverage, an output schema, and clear annotations, the description provides everything an agent needs: the source token requirement, explicit confirmation requirement, immutability, and failure mode. No critical invocation or safety context 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 schema. The description reinforces that the preview_token corresponds to the exact previewed MOGRT and that confirmation is mandatory, but it does not add syntax or format detail 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.

Purpose5/5

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

The description states a specific verb (publish) and resource (exact previewed MOGRT as an immutable local-library version), making the operation and scope immediately clear. It distinguishes this from sibling tools like preview_mogrt_library_publish and import_mogrt_from_library by emphasizing the immutable local-library publish action.

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 prerequisites: the MOGRT must be exactly previewed, and explicit confirmation is required. It also states an important usage boundary — the tool will fail instead of replacing an existing version — though it does not explicitly name alternative tools for that case.

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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them.
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; on failure, diagnostic detail when the tool provides it.
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=true, destructiveHint=false, idempotentHint=true, and openWorldHint=false. The description adds valuable context beyond that: it explains the ranking criteria, states it is a local-only plan, explicitly says it is not a virality prediction, and confirms it never changes Premiere. It does not cover error behavior or rate limits, but the safety profile is well reinforced.

Agents need to know what a tool does to the world before 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 that front-load the core action and follow with scope clarifications. The parenthetical heuristic list is dense but useful, and the second sentence removes ambiguity without redundancy. No wasted 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 an 11-parameter tool with nested objects and an output schema, the description is fairly complete: it states the operation, local-only nature, non-destructive behavior, and that it is not a virality prediction. Return values are left to the output schema, which is acceptable. It does not mention key prerequisites like attaching the transcript revision, but the schema 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 all 11 parameters with types, ranges, and defaults. The description mentions concepts like evidence peaks, keywords, duration fit, and speaker consistency but adds no syntax, format, or usage directives 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.

Purpose4/5

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

States a specific verb ('Rank') and resource ('long-video transcript windows as short-form clip candidates'), and clarifies it uses local heuristics. It does not distinguish this tool from sibling planning tools like analyze_dialogue_edit_candidates or plan_beat_montage, so no sibling differentiation is provided.

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 ('Local-only plan; not a virality prediction and never changes Premiere'), which implies when to use it but offers no explicit alternatives or when-not-to-use conditions. Usage is left to inference rather than stated against sibling tools.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds the default-targeting behavior (playhead if no time given, all tracks by default), which is useful, but says nothing about undo, resulting edit points, or any permission/state requirements for a 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 tight sentence with the core operation front-loaded and the optional time argument trailing as a clause. 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 two-parameter tool with a full schema and an output schema, the description covers what the tool does and how targeting defaults work. The main omission is guidance on how this interacts with the many adjacent edit operations (e.g., split_clip), which 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 both parameters (track_type, time_seconds) are already fully documented, including the playhead default and enum values. The description restates the same default semantics without adding format or edge-case detail, so 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?

States a specific verb ('Razor (split)'), the resource ('all clips'), and the scope ('across all tracks'), making the operation clear. It implicitly distinguishes itself from the single-clip sibling split_clip via the 'all tracks' scope, but never names that 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?

Gives one concrete usage condition ('at the playhead position ... or at a specific time'), which tells the agent the two ways to invoke it, but provides no when-not guidance, prerequisites, or explicit routing away from similar tools such as split_clip or ripple_delete.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare read-only, idempotent, non-destructive, and closed-world behavior. The description adds a non-obvious behavioral caveat: empty results are not proof that the sequence has no captions because most CEP builds expose caption creation but not caption reads. This is valuable diagnostic context 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 two sentences with zero filler. The first sentence front-loads the diagnostic purpose, and the second sentence adds a critical caveat about interpreting empty results, which 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 available, return values need not be explained, and annotations cover safety traits. The description sufficiently covers the diagnostic intent and the key behavioral caveat, though it stops short of explicit usage routing among 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?

Schema description coverage is 100%, and the single sequence_id parameter is fully documented in the schema as an ID or name defaulting to the active sequence. The description adds no parameter semantics 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.

Purpose4/5

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

The description states a specific diagnostic verb and target: checking whether the active Premiere scripting host can enumerate caption tracks. It implicitly distinguishes from caption creation by noting most CEP builds expose creation but not reads. However, the stated purpose is more diagnostic than the tool name 'read_sequence_captions' might imply.

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 or when-not-to-use guidance and names no alternatives among the many caption-related siblings. It implies the tool is for diagnosing caption enumeration capability, but does not tell the agent when to choose it over create_caption_track or other caption tools.

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; on failure, diagnostic detail when the tool provides it.
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 asserts 'Read-only', but the annotations set readOnlyHint=false, a direct conflict between the two channels, so this is scored 1 per the contradiction rule. Non-contradictory context (bounded single frame, sampled proxy vs rendered scopes, no mutating side effects implied) is genuinely useful but is undercut by the mismatch.

Agents need to know what a tool does to the world before 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 packed sentences with zero filler; the returned metrics lead and the caveat about not being rendered scopes follows. 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, return-value shape need not be described, and the description covers the analytical scope and its fidelity caveat well. The missing piece is any usage boundary or note that the sampled proxy may diverge from Premiere's rendered scopes in specific cases, plus the unresolved read-only conflict.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 ('Existing local video file') and time_seconds ('Source-relative frame time from 0 through 86400 seconds') fully documented in the schema. The description adds only the notion of sampling a single bounded frame, which implies single-frame semantics but gives no additional formatting or range detail. Baseline 3 applies when the schema carries the load.

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 (Read) and a precise set of resources it returns: waveform percentiles, RGB parade percentiles, saturation, and near-black/near-white occupancy from one decoded frame. It also explicitly distinguishes itself from 'Premiere's rendered scopes,' so an agent knows this is a sampled proxy rather than a native scopes read, though no sibling tool is named 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?

Usage is implied rather than stated: the phrase 'one bounded decoded local-media frame' plus 'sampled analytical proxy' tells the agent this is for quick per-frame analysis, not frame-accurate scope rendering. There is no explicit when-to-use/when-not, no prerequisites, and no alternative tool named (e.g., analyze_video_qc, get_graphics_white_luminance).

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

redoRedoA

EXPERIMENTAL (undocumented QE DOM: qe.project.redo / undoStackIndex). Redo the most recently undone Premiere project action(s) through QE, checked step by step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back). To restore a tool call undone with undo, pass the same count. Observed marker boundaries refuse before any step; acknowledge_untracked_markers:true permits prior non-marker actions, without proving marker reversal.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of redo steps (default: 1)
expected_undo_stack_indexYesRequired safety guard: the undoStackIndexAfter reported by the undo you want to redo. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top.
acknowledge_untracked_markersNoExplicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Goes well past the annotations by disclosing EXPERIMENTAL status, undocumented QE DOM reliance, step-by-step undo-stack verification, and the crucial limitation that the timeline itself is not read back and a matching stack position 'cannot prove which action is on top.' This is rich behavioral context an agent cannot get from 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?

Front-loads the EXPERIMENTAL caveat and packs a lot of precise meaning into a small space. The heavy parentheticals and semicolon clauses make it dense, but every sentence carries operational 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?

For a high-risk experimental mutation tool, the description covers the QE dependency, the verification model, the guard semantics, and the marker-reversal caveat, and an output schema exists so return values need not be explained. Nothing essential is missing 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?

Schema coverage is already 100%, so the baseline is 3, but the description adds semantic meaning: 'count' should match the count used in the paired undo call, and 'expected_undo_stack_index' is a safety guard that refuses without change. This adds context beyond the field-level schema text.

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 ('Redo') and resource (most recently undone Premiere project action(s)), and explicitly grounds it in the QE DOM (qe.project.redo / undoStackIndex). It visibly distinguishes itself from the sibling 'undo' by describing the restore-the-undone-action 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?

Gives a clear usage condition and names the alternative: 'To restore a tool call undone with undo, pass the same count.' It also states when the operation refuses (marker boundaries) and how acknowledge_untracked_markers changes behavior, though it does not spell out explicit when-not scenarios beyond those refusals.

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. The interpreted frame rate is read before and after; if the refresh leaves an implausible rate (seen on stills, e.g. 29.97 becoming 2.75e-8), the previous rate is restored and read back. Reports frameRateBefore, frameRateAfter and repaired.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), but the description goes well beyond them: it explains that the interpreted frame rate is sampled before and after, that an implausible result (with a concrete example, 29.97 -> 2.75e-8) triggers restoration of the previous rate, and what is reported back. This is exactly the kind of side-effect disclosure the annotations cannot carry.

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?

Front-loaded with the primary action, then the behavioral detail, then the return fields. Three sentences with no filler, though the technical frame-rate explanation is dense and only relevant to a subset of calls.

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 mutation whose annotations cover safety and whose output schema covers the return shape, the description supplies everything else an agent needs: the trigger condition, the repair logic, and the observed edge case. 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?

With a single parameter at 100% schema description coverage, the schema already documents item_id fully. The description adds no syntax, format, or constraint detail about the identifier, 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 and resource ('Refresh a project item') and immediately scopes it ('to pick up changes to the source file'), so the agent knows exactly what the tool does. It does not, however, name or distinguish itself from closely related siblings like relink_media or check_offline_media, 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 Guidelines3/5

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

Usage is implied by the phrase 'pick up changes to the source file', which tells the agent the situation that warrants a refresh. There is no explicit when-not guidance and no named alternative (e.g. relink_media for moving media), so it is adequate but incomplete.

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 every effect from a clip, keeping its built-in components (Opacity, Motion, Volume, Channel Volume, Panner), and verify the result. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.

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; on failure, diagnostic detail when the tool provides it.
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 flag destructiveHint=true and idempotentHint=false, but the description goes far beyond them: it discloses exactly which components survive, that removal paths are validated before any mutation occurs (atomicity), and that a capability error leaves state unchanged when neither removal path exists. Those are precisely the behavioral traits an agent cannot infer from 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?

Front-loaded with the core action and scope, followed by failure semantics. The parenthetical QE DOM implementation detail (qeClip.getComponentAt(i).remove()) is borderline noise, but it directly explains the capability-error behavior, so it mostly 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?

An output schema exists, so return values need not be explained, and the description covers mutation semantics, preservation rules, and failure mode for this destructive operation. The one gap is routing guidance versus sibling removal 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?

Only one parameter (node_id) and schema description coverage is 100%, so the schema already carries the semantics. The description adds no node_id-specific detail, but the baseline for a fully documented single-parameter schema 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?

States a precise verb+resource+scope: 'Remove every effect from a clip, keeping its built-in components (Opacity, Motion, Volume, Channel Volume, Panner)'. The scope clause ('every' vs. a single effect) lets an agent distinguish it from remove_effect and remove_effect_by_name 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 Guidelines3/5

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

It describes the internal fallback path (Component.remove() vs. QE DOM) and the capability-error condition, which is useful context for when the call will succeed. But it never states when to prefer this tool over remove_effect, remove_effect_by_name, or copy_effects_between_clips, which are the obvious alternatives 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.

remove_effectRemove EffectA
Destructive

Remove one effect from a clip by its index or name (the last instance when names repeat) and verify the clip's components afterwards. Built-in components (Opacity, Motion, Volume, Channel Volume, Panner) cannot be removed. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the destructiveHint/idempotentHint annotations: it discloses the experimental QE DOM fallback path used on Premiere 25.2, the pre-flight check of every matching component's removal path, and the all-or-nothing failure mode (capability error with nothing changed). This is exactly the transactional context an agent needs before mutating a 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?

Front-loaded with the core action, then the constraints, then the fallback mechanics. Three sentences are dense but each earns its place; the QE DOM sentence is long but carries the rollback guarantee.

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 destructive tool with annotations and an output schema already present, the description covers everything the agent must know: addressing, built-in exclusions, post-verification, and the no-op-on-failure contract. Nothing material 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 baseline is 3, but the description adds genuine semantics by clarifying that a name match resolves to the last instance when names repeat, which the schema does not state. It adds nothing further for node_id or effect_index.

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 (remove) plus resource (one effect from a clip) and the two addressing modes (index or name). It also disambiguates from siblings like remove_all_effects and remove_effect_by_name by scoping itself to a single effect.

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 a clear exclusion rule (built-in components such as Opacity, Motion, Volume cannot be removed) and notes that removal is verified afterwards, which tells the agent when the call will fail. It stops short of naming the alternative sibling tools for bulk or name-based removal.

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 and verify the clip's components afterwards. EXPERIMENTAL: when Premiere has no Component.remove() (25.2), it removes through the undocumented QE DOM's targeted qeClip.getComponentAt(i).remove(). Every matching component's removal path is checked before any is removed; it returns a capability error, with nothing changed, when neither path is available.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations only say destructive/not idempotent; the description adds substantial behavior: every matching component's removal path is validated before any removal occurs, the operation is effectively all-or-nothing, and it returns a capability error with nothing changed when neither path exists. This is exactly the kind of beyond-annotation context that matters for an experimental mutation tool.

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?

Front-loaded with the core action in the first clause; the parenthetical version number (25.2) and QE DOM internals are dense but do carry real routing/behavioral weight. Slightly verbose, but no sentence is pure 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?

With an output schema present and annotations covering the destructive profile, the description is nearly complete for correct invocation. The one open gap is what happens when no component matches the name (silent no-op vs error), which an agent would want to know.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 fully documented, so the schema already carries the load. The description reinforces that effect_name is a display name but adds no format, matching, or case-sensitivity detail beyond that.

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 (remove), resource (all instances of a specific effect), and scope qualifier (from a clip, by display name), which separates it from the broader remove_effect/remove_all_effects siblings by its name-targeted, all-instances semantics.

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 explains the internal condition that switches between the Component.remove() path and the QE DOM fallback, but it gives no explicit when-to-use guidance versus remove_effect, remove_all_effects, or copy_effects_between_clips. Usage context is implied by the experimental note rather than stated as routing advice.

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 TimelineA
Destructive

Remove a clip from the timeline. By default its linked audio/video partners go with it, as with Premiere's Clear on a linked clip. With ripple: true the gap is closed through the same explicit, verified ripple delete as ripple_delete (Premiere's own ripple flag does nothing on current builds), shifting sync-locked tracks so audio stays in sync.

ParametersJSON Schema
NameRequiredDescriptionDefault
rippleNoWhether to ripple delete (close the gap). Default: false
node_idYesNode ID of the clip to remove
include_linkedNoAlso remove the clip's linked audio/video partners (default: true). A ripple removal always includes them, since closing the gap on one side only would desync the timeline.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 flag destructiveHint=true, but the description adds real behavioral detail beyond them: linked audio/video partners are removed by default, ripple shifts sync-locked tracks to preserve sync, and the crucial caveat that Premiere's native ripple flag is non-functional on current builds is disclosed. This is exactly the extra context annotations cannot carry.

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 dense sentences with the core action front-loaded and the ripple caveat following. No waste, though the parenthetical about Premiere's builds is slightly verbose and could be compressed.

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 annotations covering the destructive profile and an output schema covering return values, the description need only carry behavior, which it does well. One minor gap is that it doesn't explicitly contrast with remove_selected_clips for the single-vs-multi selection case, but that is a small omission.

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 3-param baseline is 3, but the description goes further by explaining the interaction between ripple and include_linked (ripple always includes partners or the timeline would desync) and by characterizing what ripple: true actually does. That is meaningful semantics beyond the schema's terse field 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 verb and resource ('Remove a clip from the timeline') and immediately differentiates itself from the sibling ripple_delete and by extension from bulk tools like remove_selected_clips by describing the linked-partner default. An agent can identify both the operation and its scope 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?

Explains the two modes clearly: default removes linked partners like Premiere's Clear, and ripple: true closes the gap via the same verified path as ripple_delete. It gives the condition that selects each behavior, though it does not explicitly say when to prefer ripple_delete itself over this tool for a standalone ripple.

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

remove_keyframeRemove KeyframeA
Destructive

Remove the keyframe at a time from an effect property and read the remaining keys back. Refuses, changing nothing, when no key is within 0.01s of that time.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesSeconds from the clip's start on the timeline (0 is the clip's first frame) 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; on failure, diagnostic detail when the tool provides it.
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 flag this as a destructive, non-idempotent mutation, so the bar is lower. The description adds genuinely useful behavior beyond them: the read-back of remaining keys and the precise refusal rule ('changing nothing' when no key is within 0.01s), which tells the agent the call can silently 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?

Two tight sentences, front-loading the action and then the failure/refusal condition. Every clause carries information; nothing is padded or 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?

With an output schema present, the description need not explain return values, and it still notes the read-back behavior. It covers the mutation, its side effect, and the tolerance edge case; only the relationship to remove_keyframe_range is left unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id, effect_name, property_name, and time_seconds. The description's phrase 'at a time from an effect property' loosely echoes those params but adds no format or semantics beyond what the schema already supplies; 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), resource (keyframe), and locus (an effect property at a given time), which is concrete enough for an agent to understand the operation. It does not, however, distinguish itself from the sibling remove_keyframe_range, which an agent must infer from the singular 'the keyframe at a time'.

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 operation itself, and the no-op tolerance is stated, but no alternatives are named. There is no guidance on choosing this tool over remove_keyframe_range for a span of keys, which is the most likely sibling confusion given the sibling list.

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 every keyframe in a time range (inclusive) from an effect property and read the remaining keys back. Refuses, changing nothing, when the range holds no key.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
end_secondsYesEnd of the range, in seconds from the clip's start; must not be before start_seconds
property_nameYesDisplay name of the property
start_secondsYesStart of the range: seconds from the clip's start on the timeline (0 is the clip's first frame)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 idempotentHint=false, so the mutation risk is covered. The description adds genuinely useful behavior beyond that: the range is inclusive, the call reads remaining keys back, and an empty range is a no-op refusal that changes nothing — an important atomicity guarantee for an agent reasoning about partial 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 tightly written sentences with zero filler: the action and scope come first, the failure/no-op condition second. Nothing can be cut without losing 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?

With annotations covering the safety profile and an output schema covering the returned keys, the description only needs to explain the mutation semantics — which it does, including the empty-range case. It could mention that other keyframes outside the range are untouched, but that is a minor omission for a 5-parameter, fully-documented 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 all five parameters are already documented in the schema. The description contributes only the word 'inclusive' for the boundary semantics, which is a real but small addition over start_seconds/end_seconds definitions. 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 specific verb (remove), a precisely scoped resource (every keyframe in an inclusive time range on an effect property), and distinguishes itself from the single-key siblings remove_keyframe and add_keyframe. No ambiguity about what gets affected.

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 inclusive range and the empty-range refusal imply when the tool is appropriate, but it never names remove_keyframe (single key) or get_keyframes as the alternatives, nor states the conditions that select this bulk variant over them. Usage is inferable but not spelled out.

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; on failure, diagnostic detail when the tool provides it.
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 destructiveHint=true, readOnlyHint=false, and idempotentHint=false. The description adds that removal applies to all currently selected clips on the timeline, which clarifies the scope of destruction, but it does not discuss undo, permanence, or linked-clip behavior beyond what annotations and 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?

The description is a single, front-loaded sentence with no wasted words. It states the action and scope 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 one-parameter tool with full schema coverage, rich annotations, and an output schema, the description is nearly complete. It covers the action and scope, though it leaves the selection precondition and sibling-route distinctions implicit rather than 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%, and the single ripple parameter is fully documented in the schema. The description adds no parameter-level meaning, so the baseline of 3 applies when 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 states a specific verb (Remove), resource (clips), and scope (currently selected, from the timeline). It is clear what the tool does, but it does not differentiate itself from sibling tools like ripple_delete, lift_selection, or extract_selection that also operate on selections.

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, no when-not-to-use guidance, and no alternatives. The only implied context is that clips must be selected, which is not a substitute for real usage guidance.

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

rename_binRename BinB

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds only that the change happens in the project panel; it says nothing about permissions, name-collision behavior, or what happens to existing bin references. Some added context, but thin against annotated fields.

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 tight sentence with the object clarified early. No wasted words, though it is arguably too terse to be maximally useful.

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 need not be explained, and the tool is a simple 2-parameter mutation. Still, the description leaves the agent without sibling routing or mutation side-effect context, which is a noticeable gap for a write 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 both bin_id and new_name are already documented in the schema, and the description adds no syntax, format, or uniqueness constraints. Baseline 3 is appropriate when the schema carries the parameter 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?

States a specific verb (rename) and resource (bin), and helpfully glosses 'bin' as '(folder) in the project panel' so the agent knows the domain object. It does not, however, distinguish itself from siblings like rename_project_item, rename_clip, rename_track, or batch_rename_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?

There is no indication of when to use this instead of rename_project_item or the other rename tools, no prerequisites, and no note on whether the bin must be selected or open. Usage must be fully inferred from the name.

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

rename_clipRename ClipA

Rename a clip on the timeline and verify the new name.

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; on failure, diagnostic detail when the tool provides it.
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 that this is a non-readonly, non-destructive, non-idempotent operation. The description adds a useful behavioral detail beyond the annotations: it verifies the new name after renaming, giving the agent a post-condition to rely on.

Agents need to know what a tool does to the world before 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 conveys the action, target, and verification behavior 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?

Given the simple two-parameter schema, full schema coverage, existing output schema, and annotations covering safety and idempotency, the description provides what an agent needs for correct selection and invocation. Return values are covered by the output schema and need not be repeated.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 both parameters, so the baseline is 3. The description does not add any syntax, format, or constraint details 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 verb and resource: 'Rename a clip on the timeline.' It distinguishes the target from siblings like rename_bin, rename_track, and rename_project_item by explicitly scoping the operation to a timeline 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 usage by saying 'a clip on the timeline,' which suggests a single-clip operation rather than batch processing. However, it does not explicitly compare against alternatives such as batch_rename_clips or state when this tool is preferred.

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 ItemC

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; on failure, diagnostic detail when the tool provides it.
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 declare that this is a non-read-only, non-destructive, non-idempotent operation. The description adds no behavioral context beyond the bare action, such as whether renaming can fail on name conflicts, whether it is undoable, or what side effects it has.

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 wasted words. It is appropriately concise, though brevity here contributes to the missing routing and behavioral context noted elsewhere.

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 rename operation with full schema coverage and an output schema, the description covers the core purpose. It is incomplete for an environment with many similar rename tools because it provides no alternative disambiguation or usage 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 item_id and new_name clearly. 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.

Purpose4/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 resource (project item in the project panel), so the core action is clear. However, it does not distinguish this tool from close siblings like rename_bin, rename_clip, or rename_track, so an agent must infer the correct target type.

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 prerequisites, and no alternatives. With numerous rename-related siblings, it provides no routing signal beyond the tool name itself.

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

rename_trackRename TrackB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the safety profile is covered. The description adds no behavioral context beyond the action itself, such as whether renaming affects linked items or what happens on invalid track indices.

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

Conciseness5/5

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

It is a single front-loaded sentence with no wasted words. The verb and resource are immediately clear.

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, the schema is fully documented, annotations cover the safety profile, and an output schema exists. The description is therefore largely complete, though it still lacks any routing guidance relative to sibling rename 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%, and the schema documents all three parameters including the video/audio enum and 0-based index. The description adds no parameter syntax or 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.

Purpose4/5

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

The description gives a specific verb (Rename) and resource (track) and scopes it to video or audio tracks. It does not explicitly distinguish this tool from siblings like rename_clip, rename_bin, or rename_project_item, but the track focus is reasonably clear.

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 rename_clip or batch_rename_clips. The description also omits any prerequisites, such as needing a valid track index and track type.

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 one timeline clip with a different project item on the same track, keeping the exact timeline start and end. The replacement plays from its own In mark for the original clip's duration; neighbouring clips do not ripple, and a linked partner clip on another track is left in place. Refuses without changing anything when the track is locked. Reads the track back: verified when the new clip covers the same span, committed_unverified when the span holds but the source In point cannot be confirmed, otherwise failure with Undo guidance.

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; on failure, diagnostic detail when the tool provides it.
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 only declaring mutation/safety flags, the description carries the behavioral burden well: it explains the replacement plays from its own In mark for the original duration, that neighbouring clips do not ripple, that a linked partner on another track is left in place, and that a locked track causes a no-op refusal. It also discloses the three readback outcomes (verified, committed_unverified, failure with Undo guidance), which is exactly the kind of post-condition detail annotations cannot 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?

The core action is front-loaded in sentence one, and the following sentences each add distinct information (ripple/link behaviour, locked-track refusal, verification states). The third sentence is dense with implementation vocabulary, but nothing is redundant.

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 an output schema plus annotations, and the description still covers the mutation semantics, side-effect boundaries, failure mode, and verification outcomes an agent needs to call and interpret it correctly. Nothing material is left unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% for both parameters, so node_id and new_item_id are already documented in the schema. The description adds useful semantics about what the new item's In point means during playback, but it does not clarify formats or how 'name' lookup works for new_item_id. 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 gives a precise verb+resource ('Replace one timeline clip with a different project item on the same track') and immediately scopes it with the constraint that exact timeline start and end are preserved. It is clearly distinguished from generic overwrite/split tools, but it never mentions the sibling 'replace_clip_media', which is the most likely confusion candidate.

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 through stated preconditions — it refuses when the track is locked, and it preserves neighbours and linked partner clips — so the agent can infer when it is appropriate. However, there is no explicit 'use this instead of X' guidance, and the distinction from replace_clip_media 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.

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; on failure, diagnostic detail when the tool provides it.
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 says the tool 'performs no mutation', which contradicts the annotation readOnlyHint=false. The annotation indicates the tool is not read-only, while the description claims it cannot mutate state at all. Although the description adds useful rationale about trim, position, linked audio, and adjacent clips, the contradiction with structured annotations is serious.

Agents need to know what a tool does to the world before 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 single sentence is front-loaded with the key status 'Unavailable by design' and follows immediately with the reason. There is no wasted text, and the most important information comes first.

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 disabled no-op tool with a simple two-parameter schema and an output schema, the description gives enough context to know not to call it and why. It does not specify what actually happens on invocation (error vs. empty response), which is a minor remaining 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 both clip_node_id and new_item_id. The description adds no parameter-level meaning beyond the schema, which is the baseline when schema coverage is high.

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 this as the media-replacement route and states that it is unavailable by design, with a specific reason. However, it does not differentiate this tool from siblings such as replace_clip or overwrite_clip, nor does it explicitly restate the intended operation beyond 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 Guidelines4/5

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

The phrase 'Unavailable by design' gives a clear, absolute when-not-to-use signal, which is strong guidance. It stops short of naming an alternative replacement tool or workflow, so it is not fully complete on the alternatives axis.

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; on failure, diagnostic detail when the tool provides it.
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 not read-only, not idempotent, and not destructive. The description adds useful context that the operation is unsupported by Premiere's scripting API, but it does not state what actually happens if the tool is called, such as whether it errors, no-ops, or returns an error payload.

Agents need to know what a tool does to the world before 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 begins with the most important information: "Unavailable." Every part of the sentence earns its place, and there is no 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?

Given that an output schema exists and annotations cover the safety profile, the description need not explain return values. It adequately communicates the tool's unavailability, but it omits what an agent should do instead and what invocation failure behavior to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id and reverse are fully documented in the schema. The description adds no parameter-level meaning beyond that, which makes the baseline score of 3 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 the specific intended action, reversing a timeline clip's playback direction, and immediately qualifies it as unavailable because Premiere lacks a supported scripting API. This is clear and distinguishable from siblings, though it does not point to any alternative tool or workflow.

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 "Unavailable" gives the agent a strong signal not to invoke this tool for reversal. However, it does not name an alternative such as speed_change or set_clip_speed_qe, so the agent is left without a routing option when reverse capability is needed.

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

Remove a clip and close the gap it leaves, shifting later clips earlier on the clip's own track and on every sync-locked track so audio stays in sync. With the default scope the clip's linked audio/video partners are removed with it and their tracks close up too, even when not sync-locked; with scope 'own_track' the partners stay in place (reported as linkedPartnersKept). Premiere's QE rippleDelete() and the DOM's rippleEdit flag are both non-functional on 26.x, so this is done explicitly and verified. Refuses without changing anything if a clip on a participating track straddles the ripple point or sits inside the range being closed.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoWhich tracks shift: 'sync_locked' (default) shifts the clip's track plus every sync-locked track, matching Premiere's ripple behaviour; 'own_track' shifts only the clip's own track and WILL desync other tracks.
dry_runNoValidate and report the shift plan without changing the timeline (default: false)
node_idYesNode ID of the clip to ripple delete
range_contentNoWhat to do about other clips on participating tracks that sit entirely inside the time range being closed (the usual case in a multicam-style sequence with aligned clips). With scope 'sync_locked' the clip's own linked audio/video partners are always removed with it, as in Premiere; with 'own_track' they are kept. 'refuse' (default) changes nothing and reports them; 'delete' also removes them, i.e. lifts that whole time segment out of every participating track and closes up. 'delete' is destructive across tracks -- the removed clips are listed in the result.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Goes far beyond annotations: explains the default partner-removal behavior, the own_track exception (reported as linkedPartnersKept), the non-functional Premiere QE/DOM APIs on 26.x and that this is done explicitly and verified, and the refusal condition for straddling/inside-range clips. This is rich behavioral disclosure for a destructive hint.

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?

Front-loads the core action and then layers scope, partner behavior, and refusal conditions in dense but purposeful sentences. Most sentences earn their place, though the version-specific API note and the range_content detail push toward the verbose side.

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?

Covers action, scope semantics, partner handling, refusal preconditions, and known API limitations. Output schema exists, so return-value explanation is not needed. Complete for a destructive timeline mutation with an output 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?

Schema coverage is 100%, so the schema already documents parameters. The description adds meaningful context on default scope behavior, linked-partner handling, and the refusal precondition that ties parameters to outcomes. Slightly redundant with the schema but adds value.

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 (remove a clip and close the gap) with the exact scope of behavior (later clips shift earlier on own track and sync-locked tracks). Distinguishes itself from siblings like remove_selected_clips, lift_selection, and extract_selection by naming the ripple semantics explicitly.

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 explains the sync_locked vs own_track scope choice and the partner-handling behavior, which implicitly tells the agent which mode to pick. Does not explicitly name alternative tools (lift_selection, extract_selection, remove_selected_clips) as alternatives, which slightly limits routing guidance.

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. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed. Requires readable finite media and ffprobe duration evidence for every edited source; refuses unknown duration, stills, and nonunit/reversed speed before mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
include_linkedNoAlso apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).
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; on failure, diagnostic detail when the tool provides it.
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?

Annotations only supply the generic hint set; the description goes well beyond them with atomicity semantics ('every clip is checked before any is changed'), the verification contract ('verifying all four'), and the media preconditions and refusal cases. 'Before mutation' is consistent with readOnlyHint=false and destructiveHint=false, and the offset application is consistent with 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.

Conciseness4/5

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

Three sentences, front-loaded with the operation and then the linked-partner and precondition clauses; each sentence carries distinct information. It is jargon-dense (public timeline DOM, nonunit speed) but not padded.

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 not be explained. Given the high-complexity, mutation-capable nature of the tool, the description covers the essential gaps: atomicity, linked-clip behavior, precondition evidence requirements, and refusal 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%, including a clear sign convention for offset_seconds and the default for include_linked, so the schema already carries the parameter burden. The description restates the include_linked default behavior but adds no format or range detail beyond it. Baseline 3 applies when 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?

States a specific verb and resource: a roll edit performed at the outgoing cut of a clip, with both visible edges and source in/out points moved and verified. That level of detail is materially distinguishable from a generic trim. However, it never names or contrasts with the nearby siblings slide_edit and slip_edit, leaving the agent to rely on prior editorial knowledge to disambiguate.

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 preconditions and refusals: requires readable finite media plus ffprobe duration evidence for every edited source, and refuses unknown duration, stills, and nonunit/reversed speed before mutating. That is strong when-to-use context, but it never names an alternative tool (slide_edit, slip_edit, trim_clip) or the condition that would select one over the other.

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

save_projectSave ProjectA

Save the current Premiere Pro project to its existing path. Fails when the project has never been saved (use save_project_as) or when Premiere writes no non-empty file. Fresh disk metadata verifies a save; unchanged or unreadable metadata reports committed_unverified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare the non-read-only, non-idempotent, non-destructive profile, and the description adds failure modes and verification semantics beyond that: fresh disk metadata confirms a save while unchanged/unreadable metadata yields committed_unverified. This is substantive behavioral context an agent cannot get from 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?

Three sentences, front-loaded with the action, followed by failure conditions and then verification semantics. Every sentence carries distinct information with no redundancy or padding.

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 an output schema present, return values need not be enumerated, and the description still surfaces the key failure paths and the committed_unverified status. Nothing needed to invoke this zero-param tool correctly 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 takes zero parameters, so there is nothing for the description to explain and the baseline for a parameterless tool applies. No competing syntax or format details 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?

States a specific verb (Save) and resource (current Premiere Pro project) scoped to its existing path, and explicitly names the sibling save_project_as as the alternative for the unsaved case. An agent can distinguish it from session peers without opening 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 Guidelines5/5

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

Gives the explicit condition under which it applies (existing path) and the conditions under which it fails (never-saved project → use save_project_as; no non-empty file written). This is a clear when/when-not with a named alternative.

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 AsA

Save the current project to a new .prproj path. Premiere then has the NEW copy open and closes the original, so later edits go to the copy; the result reports both paths. Fails when Premiere writes no file or leaves a pre-existing path unchanged. Use open_project to return to the original.

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; on failure, diagnostic detail when the tool provides it.
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 well beyond the annotations: it discloses the critical side effect that the new copy becomes the active project and the original is closed, that the result reports both paths, and two explicit failure conditions (no file written, pre-existing path left unchanged).

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

Conciseness5/5

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

Four tight sentences, purpose front-loaded, with every clause carrying either a side effect, a failure mode, or a routing hint. No padding 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?

With annotations covering safety and an output schema covering returns, the description still adds the non-obvious active-project switch and error conditions an agent needs before invoking it. 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 coverage is 100%, so the single path parameter is already fully documented. The description adds no format or syntax detail beyond the schema, matching the baseline-3 case where the schema does the work.

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 (Save) and resource (the current project) with a clear destination (.prproj path), and the side-effect explanation (new copy opens, original closes) distinguishes it from the plain save_project 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?

It gives clear context for the operation and names open_project as the way to return to the original, but it never contrasts save_project_as with the sibling save_project, leaving the when-to-use-which decision partly to inference.

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 DetectionA

Perform Premiere's scene edit detection on the selected clips in the active sequence (it analyses the footage and can take minutes on long clips). CreateMarkers (default) puts Segmentation markers on the selected clips' source project items (shared by every sequence that uses them), removes duplicates this run created (markers that were already there are never deleted), and reports each detected cut in source and timeline seconds; it is verified only when at least one new marker was added. ApplyCuts razors the selected clips and verifies the clip count grew. EXPERIMENTAL QE: CreateMarkers records an observed marker boundary for guarded Undo/Redo; crossing it is refused by default, and unreadable history records unknown protection. This boundary does not verify native marker reversal.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes far beyond the annotations: warns the analysis can take minutes on long clips, explains that markers land on source project items shared by every sequence using them, that duplicates from this run are removed while pre-existing markers are never deleted, gives explicit verification criteria, and documents the EXPERIMENTAL QE undo/redo boundary behavior including the 'unreadable history records unknown protection' edge case.

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?

Front-loads the core purpose and the timing caveat before mode details, and each sentence carries distinct information (defaults, dedupe rules, verification, QE caveats). It is dense and slightly long, but very little is 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 an output schema present it correctly avoids describing return values, and it still covers the mutation semantics, verification conditions, side effects on shared project items, and the experimental undo-protection behavior. Nothing an agent needs to invoke this safely on a sequence 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 schema already documents action, sensitivity, and apply_cuts_to_linked_audio. The description restates the default for action (CreateMarkers) and the semantics of that mode but adds no format or syntax detail for sensitivity or apply_cuts_to_linked_audio, 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 concrete verb and resource ('Perform Premiere's scene edit detection on the selected clips in the active sequence') and enumerates both modes (CreateMarkers, ApplyCuts) with their distinct effects. An agent can distinguish this from generic marker or edit 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 Guidelines3/5

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

It clearly explains what each action does and when verification succeeds, which implies the two use cases, but it never names or contrasts the close siblings detect_scene_edits or detect_source_scene_changes, nor does it state when NOT to use this tool. Usage is implied rather than explicitly guided.

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; on failure, diagnostic detail when the tool provides it.
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 'never changes Premiere' largely restates structured data. The description does add genuine behavioral context beyond the annotations: results are 'bounded evidence with stable IDs and revisions', which tells the agent the output is size-limited and referenceable. That is useful 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?

Two sentences, zero filler, and the primary action is front-loaded. The 'never changes Premiere' clause is somewhat redundant with the annotations, keeping it just short of a 5.

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 the description need not explain return values, and annotations cover the safety profile, so the remaining burden is small. It adequately covers what is searched and the bounded/ID-bearing nature of results, though it omits the prerequisite relationship with the context-capture 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 the schema documents all five parameters (kinds, query, project_id, max_results, sequence_id) including defaults and bounds, so the description adds no parameter-level meaning beyond it. Baseline 3 applies when 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?

States a specific verb (Search) and resource (durable Premiere project-context index) and enumerates the indexed evidence types, so the agent knows exactly what is being searched. It does not explicitly distinguish itself from the sibling manage_project_context (the capture side), 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 Guidelines3/5

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

Usage is implied by 'durable ... index' and the query parameter, but there is no explicit when-to-use statement, no exclusion, and no pointer to the capture tool that produces the project_id this tool requires. The agent must infer that it should call manage_project_context first.

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 ItemsB
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; on failure, diagnostic detail when the tool provides it.
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, openWorldHint=false, and destructiveHint=false, so safety behavior is covered structurally. The description adds only that matching items are returned 'with full details,' which is thin; it says nothing about the default 100-result cap, truncation behavior, or result ordering.

Agents need to know what a tool does to the world before 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, with the tool's purpose and return behavior front-loaded. Every clause carries 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 the description need not explain return values, and all parameters are optional and fully documented in the schema. The only shortfall is the unmentioned default capability/limit of max_results, which an agent might want to know before calling.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 defaults and the enum for item_type. The description restates the filter dimensions but adds no syntax or interpretation 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?

States a specific verb ('search') and resource ('project items') and enumerates the filterable dimensions (name, extension, offline status, color label). It is clear what the tool does, but it does not differentiate itself from nearby siblings such as find_project_item_by_name, list_project_items, or select_clips_by_pattern, so an agent could still hesitate between them.

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

Usage 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 and never names an alternative. With many overlapping sibling tools (find_project_item_by_name, list_project_items, search_project_context, select_clips_by_name), the absence of routing guidance is a real gap.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is partly covered. The description nonetheless adds meaningful context beyond them: recipes are 'audited' and are 'declarative previews' that 'cannot execute arbitrary tools or scripts' – worth stating explicitly for an agent deciding whether a recipe is safe to invoke.

Agents need to know what a tool does to the world before 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 waste, and the what-it-searches scope is front-loaded before the safety caveat. 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 a rich annotation set, 100% schema coverage, and an output schema present, the description only needs to add safety/scope context, which it does. The one gap is not clarifying how the built-in vs. recipe_file search paths behave, though the schema largely 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?

Schema description coverage is 100%, so query, recipe_file, and approved_workspace_path are already documented in the schema. The description adds only a weak hint that recipes may be 'explicitly supplied' locally, which loosely maps to recipe_file, but supplies no format or relationship 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.

Purpose4/5

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

States a specific verb ('search') and resource ('workflow recipes'), and scopes it to 'audited built-in and explicitly supplied workspace-local' sources, which tells the agent what corpus is searched. It does not, however, distinguish itself from the close sibling preview_workflow_recipe, which an agent could easily confuse it with.

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 never states when to use this tool versus alternatives such as preview_workflow_recipe or plan_cross_app_workflow. Usage is only implied ('search' = discovery), with no exclusions or preconditions, so an agent must infer the routing itself.

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 ClipsB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, so the safety profile is covered. The description adds scope but omits the behavior a selection tool most needs to disclose: whether this replaces the current selection or adds to it, and what happens to selection on tracks excluded by track_index.

Agents need to know what a tool does to the world before 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 covering both modes with no filler. Nothing is wasted and the primary case (whole sequence) comes first.

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 need not be explained, and both params are fully described in the schema. What is missing is the semantic context for a crowded selection tool family: selection replacement semantics and how this differs from its 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 both parameters and the enum are already documented in the schema, including the 'both' default. The description only loosely maps 'specific track' to track_index and adds no new format or interaction detail, so a 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?

States a specific verb (select) and resource (all clips) with two clear scopes: the active sequence or a specific track. It does not distinguish itself from nearby siblings like select_clips_in_range, select_clips_by_pattern, or select_clips_by_name, which an agent could easily confuse with a plain 'select all'.

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 use case (bulk selection) but never states when to prefer it over the many other selection tools, nor any prerequisites such as an active sequence being open. With roughly a dozen selection-related siblings, this is a real gap.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the agent knows this changes state but destroys nothing. The description adds no behavioral context beyond that, notably whether the selection replaces or extends the current selection — the key semantic for a select tool, especially with 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?

A single sentence that front-loads the action and never wastes a word. Appropriately sized for a one-parameter filter 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?

An output schema exists, so return values need no explanation, and the single parameter is fully documented in the schema. The remaining gap is selection semantics — replace vs. additive, and behavior on no match — which is not covered anywhere given idempotentHint=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% and the color_index parameter is fully documented in the schema with an explicit index-to-color mapping, so the description correctly need not repeat it. The phrase 'specific color label' mirrors the parameter but adds no format or range 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?

States a specific verb (select) and resource (clips) filtered by a named attribute (color label on source project item), which distinguishes it from generic selection tools. However it does not explicitly differentiate from the nearby siblings select_clips_by_name and select_clips_by_pattern, which follow the same pattern.

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, and no routing to alternatives such as select_clips_by_name, select_clips_by_pattern, or select_all_clips. The agent must infer the choice between the family of selection tools entirely on its own.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false and openWorldHint=false, so the safety profile is covered. The description adds the substring-match rule and that selection targets the active sequence, but omits whether an active sequence is required and how it interacts with existing selection beyond the add_to_selection param.

Agents need to know what a tool does to the world before 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, front-loading the core action and then the optional filters. Every clause carries 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?

An output schema exists so return values need not be explained, and the description covers the action, scope, and optional filters for a straightforward selection tool. Minor gap on active-sequence prerequisites, but nothing critical to 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 description coverage is 100%, so all four parameters are already documented, including the substring/case-insensitive match, track_type enum, optional track_index, and add_to_selection. The description restates the track filtering but adds no format or default 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.

Purpose4/5

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

States a specific verb (Select) and resource (clips), plus the matching rule (name, substring match) and scope (active sequence). This makes it distinguishable from siblings like select_clips_by_pattern or select_clips_by_color, though it never names an alternative directly.

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 'by name' selector and 'active sequence' scope, but there is no explicit when-to-use guidance, no exclusions, and no reference to the competing selection tools. Adequate but leaves routing to inference.

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

select_clips_by_patternSelect Clips By PatternA

Select every Nth clip (with an offset) among clips that match optional name, duration, time-range, track, and enabled filters, then read back the selection count. Covers 'select every other clip on V1' and similar repetitive selections without changing the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
offsetNoZero-based index of the first candidate to select (default 0). Must be below every_nth.
every_nthNoSelect one clip out of every N candidates (default 1 = all candidates).
name_regexNoCase-insensitive ECMAScript 3 compatible regular expression the clip name must match.
track_typeNoTrack type to scan (default video).
count_scopeNoWhether the Nth count restarts on each track (default) or runs across all scanned tracks in timeline order.
end_secondsNoOnly clips overlapping before this sequence time.
track_indexNoRestrict to one track index.
name_containsNoCase-insensitive substring the clip name must contain.
start_secondsNoOnly clips overlapping at or after this sequence time.
add_to_selectionNoKeep the existing selection instead of replacing it (default false).
include_disabledNoInclude disabled clips as candidates (default true).
max_duration_secondsNoMaximum clip duration.
min_duration_secondsNoMinimum clip duration.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 carry the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false); the description usefully clarifies that the mutation is only to selection state and that the timeline is untouched, resolving the apparent tension with readOnlyHint=false. It also mentions reading back the selection count, which is a behavioral detail beyond 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, front-loaded with the core selection behavior, then the practical example. Efficient, though the first sentence is dense with a long filter enumeration that slightly slows parsing.

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, the return count needn't be explained, and annotations plus 100% schema coverage handle most details. The description's remaining gap is the replace-vs-append default of selection, which is left to the schema's add_to_selection parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% across all 13 parameters, so the schema already documents offset, every_nth, filters, and defaults. The description only summarizes categories (name, duration, time-range, track, enabled) without adding syntax or semantics 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 gives a specific verb (select), a precise resource (every Nth clip), and the pattern mechanism including offset, plus the filter dimensions. It clearly differentiates by mechanism from siblings like select_clips_by_name or select_clips_in_range, but never names an 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?

It provides a concrete use case ('select every other clip on V1') and notes it doesn't change the timeline, which implies when it applies. However, it never states when NOT to use it or which sibling to prefer for plain name-based or range-based selection, leaving routing to inference.

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 RangeB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the agent knows this mutates selection state without deletion. The description adds the overlap criterion and active-sequence scope, but does not disclose whether the selection replaces or adds to existing selection—a core behavioral question for a selection tool that annotations do not answer.

Agents need to know what a tool does to the world before 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 redundancy. Every word contributes to specifying the operation and its scope.

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 and annotations cover the safety profile, while the schema fully documents parameters, so the description carries a lighter burden. Still, for a selection tool in a large sibling set, it omits disambiguation from other selection commands and the important replace-versus-add selection 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 start_seconds, end_seconds, track_type, and track_index in detail. The description only gestures at a 'time range' and says nothing about track filtering, so it adds no meaning beyond the schema 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 states a specific verb ('Select'), resource ('clips'), and selection criterion ('overlap a time range in the active sequence'), which distinguishes it implicitly from siblings like select_clips_by_pattern or select_all_clips. However, it does not explicitly name or contrast with those sibling tools, so an agent must infer the 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 offers no when-to-use guidance, no conditions for choosing this over alternatives such as select_clips_by_pattern, select_clips_by_color, or select_all_clips, and no exclusions. The only contextual clue is 'in the active sequence,' which implies a prerequisite but is not framed as guidance.

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 ClipsB

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false and idempotentHint=false, so the agent knows selection state changes, but the description adds nothing beyond that — notably it does not say whether this replaces the current selection, adds to it, or operates only within the active sequence's targeted tracks. For a selection tool where replace-vs-add semantics matter, that is a real 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?

A single front-loaded sentence with no filler, appropriately sized for a no-parameter tool. It is efficient but so thin that conciseness shades into under-specification.

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 need not be explained, and the zero-parameter schema keeps the call signature trivial. What is missing is the selection semantic (replace vs. additive) and the interaction with existing selection state, which the agent cannot recover from annotations alone.

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 the baseline is 4. There is nothing for the description to clarify beyond the target set, which it does state.

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 gives a specific verb ('Select') and resource ('disabled clips') with a scope qualifier ('in the active sequence'), which cleanly distinguishes it from select_all_clips, select_clips_by_color, select_clips_by_name, and select_clips_in_range. It stops short of naming those siblings explicitly, but the 'disabled' filter is a strong discriminator.

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 when-to-use guidance, no mention of the natural follow-up (enable_disable_clip / batch_enable_disable) on the selected set, and no stated preconditions such as requiring an active sequence. The agent must infer the workflow entirely.

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; on failure, diagnostic detail when the tool provides it.
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 the agent knows this is a state-changing but non-destructive, non-idempotent operation. The description adds only the location ('Project panel') and says nothing about what the selection changes (e.g., replaces vs. adds to current selection, UI focus 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?

A single, front-loaded sentence with no wasted words. 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?

An output schema exists and annotations cover safety traits, so the description need not explain return values. However, for a selection tool, it omits whether the selection replaces or adds to existing selections and how it interacts with related selection siblings, leaving 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 coverage is 100%, so the single item_id parameter is fully documented in the schema. The description adds no further meaning, which matches the baseline of 3 when 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?

States a specific verb ('Select') and resource ('project item') with a location ('Project panel'), making the basic action clear. It does not explicitly distinguish itself from sibling selection tools like set_clip_selection or select_clips_by_pattern, but the 'project item' target provides some 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 instructions on when to use this tool versus alternatives, no prerequisites, and no context about side effects. The usage is only implied by the 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_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; on failure, diagnostic detail when the tool provides it.
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 the full profile (not read-only, not idempotent, not destructive, closed-world), so the bar is lower, but the description adds no context beyond them: it does not say whether this alters editor UI state, whether it persists with the project, or what happens if the name is ambiguous.

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?

One short, front-loaded sentence with no filler. It is efficient, though it is so terse that it barely differentiates itself from 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?

An output schema exists so return values need not be explained, and the tool is simple with one well-documented parameter. Still, for a state-changing operation an agent would benefit from knowing the sequence must pre-exist and what side effects 'active' has; the description is minimally viable 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?

Schema coverage is 100% and the single parameter is fully documented in the schema; the description's 'by name or ID' merely echoes that. Baseline 3 applies since the schema carries the 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 a specific verb and resource ('Set the active sequence'), which is distinguishable from siblings like set_sequence_settings or set_sequence_frame_rate. It does not explicitly contrast with the read counterpart get_active_sequence, but the direction of the operation is 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?

No when-to-use guidance, no prerequisites (e.g. the sequence must already exist in the project), and no mention of what 'active' affects for downstream calls. The agent must infer all context.

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. Reads back every affected track and reports verified only when all match the requested state.

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; on failure, diagnostic detail when the tool provides it.
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 establish it as a non-read-only, non-destructive mutation, so the baseline is lowered. The description still adds meaningful behavior beyond that: it reads back every affected track and only reports 'verified' when all match the requested state, which tells the agent to expect post-write verification semantics it could not get from 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?

Three tight sentences with the core action front-loaded, followed by use context and verification behavior. No filler, no 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 two-parameter mutation with full schema coverage, a sibling set, and an existing output schema, the description covers purpose, workflow context, and verification behavior adequately. It only lacks explicit sibling disambiguation, which is a minor gap given the name already says 'all'.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 documented including the enum for track_type, so the schema does the heavy lifting. The description adds no semantics beyond the schema, which yields the baseline 3.

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 all tracks targeted or untargeted'), scoping the operation to the entire track set. It is clear on its own, but it never names the obvious sibling set_target_track (single-track targeting) to differentiate itself, leaving the agent to infer the distinction from 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?

'Useful before insert/overwrite edits' gives a concrete workflow context for when to reach for this tool. It stops short of naming alternatives or stating when-not to use it, so the routing guidance is contextual rather than explicit.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false and openWorldHint=false, so the safety profile is covered. The description adds that the setting lives on a clip's Motion effect, but says nothing about persistence, permissions, or whether it applies per-clip vs. per-effect-instance, so it adds only modest 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?

One short sentence, front-loaded with the verb and resource, with the qualifier in a parenthetical. No wasted 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?

With a complete schema, an output schema, and annotations covering safety, the description's remaining burden is small and it covers the essential scope. It is slightly thin on how this relates to the Motion effect's other properties, 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 description coverage is 100%, so both node_id and enabled are already documented; the baseline is 3. Note a minor tension: the description says 'quality' while the actual parameter is a boolean enable/disable, so the description does slightly mislead about the value space without fully clarifying 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?

States a specific verb and resource ('Set the anti-alias quality') and narrows the target to the clip's Motion effect, which is a real distinction from generic clip setters like set_clip_properties. It does not explicitly contrast itself with nearby siblings such as set_frame_blend or set_time_interpolation, 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 Guidelines3/5

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

The parenthetical 'useful for scaled/rotated clips' implies a usage context, but there is no explicit when-to-use/when-not, no prerequisite, and no named alternative. Usage must be inferred from the hint.

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 a video clip's blend mode through its Opacity effect and read the stored mode back. Premiere stores the mode as an index into its modes in alphabetical order, with Subtract and Divide last (mapped on Premiere 25.2.3 by rendering every index over a known background).

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; on failure, diagnostic detail when the tool provides it.
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?

Beyond the annotations (readOnlyHint=false, idempotentHint=false), the description discloses meaningful mechanism: the mode is applied via the clip's Opacity effect and read back from stored state, and Premiere encodes it as an alphabetical index with Subtract/Divide appended. That index-ordering caveat is real behavioral context an agent could not infer. It still omits reversibility/permission details, so it is not 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?

Two tight sentences with the purpose front-loaded before the technical addendum. The version-specific parenthetical ("mapped on Premiere 25.2.3 by rendering every index over a known background") is niche detail that borders on trivia but does document a real caveat.

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 values need no explanation, and both parameters are fully schema-documented. The description adds the mechanism and index caveat, giving an agent enough to call it correctly, though prerequisites (e.g. the clip needing an Opacity effect) remain 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?

Schema coverage is 100% with a full enum, so the baseline is 3; the description earns above that by explaining why the enum maps to backend indices (alphabetical ordering, Subtract/Divide last), which clarifies the blend_mode parameter's semantics. node_id is left entirely 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?

States a specific verb and resource ("Set a video clip's blend mode") plus the implementation path ("through its Opacity effect"), so an agent knows exactly what changes. It does not explicitly distinguish itself from near neighbors like set_clip_opacity or set_frame_blend, which share the same territory.

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 never says when to reach for this tool versus set_clip_opacity, set_frame_blend, or manual effect manipulation, and gives no prerequisites or exclusions. Usage is only implied by the phrase "Set a video clip's blend mode."

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 PointB

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; on failure, diagnostic detail when the tool provides it.
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 disclose the mutation profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds that the change targets the Anchor Point on the Motion effect, which is useful context beyond annotations. However, it omits behavioral details like what happens if the Motion effect is missing or whether the change is reversible, so it only partially compensates.

Agents need to know what a tool does to the world before 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 and target without any filler. Every word earns its place, 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.

Completeness3/5

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

For a simple property setter with an output schema and annotations covering safety, the description is minimally adequate. It names the property and effect but omits prerequisites (e.g., requiring a Motion effect to exist) and usage context relative to other clip property setters. The structured fields fill some gaps, but the description could do more to complete the picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id, x, and y. The description adds no extra parameter semantics—it repeats the target property but does not clarify coordinate systems, units (beyond 'pixels' in schema), or motion effect interaction. Baseline 3 is appropriate when the schema carries the parameter 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 states a specific verb and resource: 'Set the Anchor Point property on a video clip's Motion effect.' It clearly identifies the exact property being modified, distinguishing it from sibling setters like set_clip_position or set_clip_scale. However, it does not explicitly name or contrast with those siblings, so it falls 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, no prerequisites (e.g., the clip must have a Motion effect), and no exclusions. The description merely states what it does, leaving the agent to infer usage 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.

set_clip_durationSet Clip DurationA

Set one timeline clip's visible duration by moving only its timeline end (TrackItem.end) while keeping its start fixed. Pass exactly one of duration_seconds or end_seconds. Works for extending still images past their import length. Refuses to overlap the next clip on the same track, rejects shortening that would strand effect keyframes unless keyframe_policy is preserve, reads start/end back, and restores the original end if Premiere clamps or ignores the write (for example when video media has no handle left). Linked audio/video partners get the same change by default (include_linked), applied as the same end offset so partners with a J/L cut keep their offset; every clip is checked before any is changed. Use this instead of speed changes, which Premiere does not expose to scripting.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the timeline clip (track item) to resize
end_secondsNoTarget absolute timeline end (out-point) in seconds. Must be at least one frame after the clip's start. Specify exactly one of duration_seconds or end_seconds.
include_linkedNoAlso apply the edit to the clip's linked audio/video partners, as Premiere does with linked selection (default: true).
keyframe_policyNoWhen shortening, how to handle effect keyframes beyond the new visible length: reject (default) leaves the timeline unchanged; preserve keeps them and reports their count.
duration_secondsNoTarget visible duration in seconds, measured from the clip's current timeline start. Specify exactly one of duration_seconds or end_seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.6/5.0
Behavior5/5

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

Adds substantial behavior beyond the annotations: atomic pre-checking across all clips, refusal to overlap the next clip, keyframe-stranding rejection unless keyframe_policy=preserve, read-back verification, and restoration of the original end if Premiere clamps or ignores the write. It also discloses the linked-partner default and the same-end-offset rule that preserves J/L cuts. This is far richer than the readOnly/destructive/idempotent hints.

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?

One dense paragraph, but front-loaded with the core action before the constraints and edge cases. Each clause carries real information (atomicity, clamp fallback, keyframe policy, linked offset). It is slightly overloaded and would read better split into behavior vs. constraints, but nothing is wasted.

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?

A mutation tool with five parameters and an output schema; the description covers the failure modes, safety guarantees, and default behaviors an agent needs before invoking. Return values need not be explained since an output schema exists. Nothing material 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 nonetheless reinforces the mutual-exclusivity of duration_seconds/end_seconds and, more importantly, adds cross-parameter semantics absent from the schema: include_linked partners receive the change applied as the same end offset, preserving J/L cuts. That interaction knowledge justifies a step above 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?

Names a specific verb (set), resource (one timeline clip's visible duration), and implementation detail (moves only TrackItem.end while keeping start fixed). This immediately distinguishes it from siblings like set_clip_start_time, trim_clip, and move_clip. It also closes with a redirect for the adjacent use case (speed changes).

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 routes the agent to alternatives: 'Use this instead of speed changes, which Premiere does not expose to scripting.' It also states the exclusivity rule for duration_seconds vs end_seconds and the still-image extension use case. It does not, however, contrast with the other trimming siblings (trim_clip, set_clip_start_time), so routing is partially covered.

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 OpacityA

Set the opacity of a video clip (0-100) using English or measured Spanish built-in names, then read it back.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the safety profile is known. The description adds that the tool reads the value back after setting, which is a useful behavioral detail, but it does not cover side effects, permissions, or why the operation is non-idempotent.

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. However, the clause 'using English or measured Spanish built-in names' is ambiguous and slightly detracts from an otherwise efficient statement.

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 mutation tool with full schema coverage, complete annotations, and an output schema, the description covers the core purpose and notes the read-back behavior. Usage guidance is absent, but the structured fields carry most of what 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?

Schema description coverage is 100%, so the schema already documents node_id and opacity fully. The description repeats the 0-100 range from the schema and adds the unclear phrase 'using English or measured Spanish built-in names,' which does not map to the documented numeric parameter and adds little usable 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 a specific verb and resource: 'Set the opacity of a video clip (0-100).' It distinguishes this tool from the many other set_clip_* tools by naming the exact property, opacity, so an agent can select it without opening sibling 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?

The description gives no guidance on when to use this tool versus alternatives such as set_clip_properties, set_clip_properties_batch, or other clip-property setters. It also omits prerequisites or conditions. Only the implied purpose suggests usage.

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 PanB

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the safety profile is covered. The description adds one piece of non-obvious behavior: the tool reads the pan value back after setting it. It says nothing about permissions, clip-linking side effects, or whether pan is a single value or keyframable.

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 tight sentence with the verb and resource front-loaded. The trailing 'including Channel Volume layouts' clause is slightly redundant but not harmful.

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 covering safety, a 100%-covered schema, and an output schema handling the read-back, the description is adequate. It still omits when this tool is preferred over the volume/properties siblings, which is the main gap for a simple two-param 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?

Schema description coverage is 100% and the schema already documents pan's range semantics (-100 full left, 0 center, 100 full right) and node_id. The description adds no syntax or format 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.

Purpose4/5

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

States a specific verb and resource: setting (and reading back) the pan balance on an audio clip. That is enough to separate it from set_clip_volume and adjust_audio_levels. The trailing 'including Channel Volume layouts' is vague and doesn't sharpen the purpose, keeping it 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 when-to-use guidance and no routing to alternatives. An agent must infer on its own whether to use set_clip_pan, set_clip_properties, or set_project_item_audio_channel_mapping. No preconditions or exclusions are stated.

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 PositionB

Set the Position property on a video clip's Motion effect using English or measured Spanish built-in names, then read it back. Values are in pixels.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesX position in sequence pixels (converted to Premiere's normalized Position when the host stores it that way)
yYesY position in sequence pixels (converted to Premiere's normalized Position when the host stores it that way)
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false), so the mutation nature is covered. The description adds useful context by disclosing that the tool reads the value back after setting and that values are in pixels, but it omits auth requirements and what happens on failure or to unmentioned Position axes.

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 action front-loaded. The clause about 'English or measured Spanish built-in names' is somewhat cryptic and costs a little clarity, but the overall size is appropriate and wastes little space.

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 need no explanation, and annotations cover the safety profile. However, for a mutation tool with no when-to-use guidance and an unexplained naming convention, the description leaves gaps an agent would need to call 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 x, y and node_id are fully documented in the schema. The description's 'Values are in pixels' merely repeats the schema's 'X position in sequence pixels' and adds no syntax, range, or coordinate-origin detail beyond it, 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 and resource ('Set the Position property on a video clip's Motion effect'), clearly distinguishing it from sibling setters like set_clip_scale, set_clip_rotation and set_clip_opacity. It does not explicitly name those siblings, but the resource is precise enough for an agent to route correctly.

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 when-to-use guidance and no alternatives named. An agent is left to infer that this is the tool for positioning versus set_clip_anchor_point or set_effect_property. The phrase 'using English or measured Spanish built-in names' hints at a naming convention but never explains what that means operationally.

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 PropertiesA

Set supported clip properties (opacity, scale, position, rotation) and read each requested value back. Clip speed is unsupported and fails before mutation; use set_clip_duration to change a clip's timeline length.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleNoScale percentage (0-10000; 100 = original size)
speedNoUnsupported by Premiere's documented scripting APIs. Supplying this returns an actionable error without mutating the clip; use set_clip_duration to change timeline length.
node_idYesNode ID of the clip
opacityNoOpacity value (0-100)
rotationNoRotation in degrees
position_xNoHorizontal position in sequence pixels
position_yNoVertical position in sequence pixels

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare the safety profile (non-readonly, non-destructive, non-idempotent), so the bar is lower. The description adds real behavioral context: it discloses a read-back of each requested value, and that speed 'fails before mutation' (i.e. no partial write), which is valuable for error/recovery reasoning.

Agents need to know what a tool does to the world before 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 padding, front-loaded with the supported capability before the unsupported case and its alternative. 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?

An output schema exists, so return values need not be explained, and the 7-param schema is fully documented. The only missing piece is disambiguation against the single-property setter siblings, which slightly limits completeness.

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% and the speed parameter's unsupported note is already in the schema, giving a baseline of 3. The description reinforces the supported-property set and the failure semantics for speed, adding marginal 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?

States a specific verb (Set) plus the exact resource and enumerates the supported property set (opacity, scale, position, rotation). An agent immediately knows this is a multi-property mutation on a clip, distinct from single-property or duration 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?

Explicitly handles the speed edge case and routes to set_clip_duration. However, it never addresses the granular siblings set_clip_scale, set_clip_opacity, set_clip_rotation, and set_clip_position, so the agent cannot tell from the description whether to batch here or call those instead.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), and the description adds real behavioral context: a preflight pass over every target property and read-back verification with no partial batch reported as verified. It does not clarify what happens on preflight failure (abort vs. skip), which is the one remaining behavior an agent would want.

Agents need to know what a tool does to the world before 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, both load-bearing: the first gives scope and the preflight behavior, the second gives the verification guarantee. The most decision-relevant facts come first 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?

An output schema exists, so return shape need not be explained, and the description covers the two non-obvious behaviors (preflight, verified read-back) plus batch size. Minor gaps: no statement of which property families are settable in prose and no failure-mode description for the preflight.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 itself is rich (per-field docs, min/max, the speed-unsupported warning, maxItems 16), so baseline 3 applies. The description's 'Motion/Opacity' phrasing actually under-describes the accepted set, since scale, position, and rotation are also valid.

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 (Apply), the resource (Motion/Opacity values), and the batch scope (up to 16 clips), which cleanly separates it from the single-clip set_clip_properties and the narrower set_clip_scale/set_clip_opacity 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 'up to 16 clips' bound and 'batch' framing imply when to prefer this over the singular setters, but no alternative is named and no precondition (e.g., clips must be selected or node IDs resolvable) is stated. Usage is inferable but not spelled out.

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 RotationB

Set the Rotation property on a video clip's Motion effect using English or measured Spanish built-in names, then read it back.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false), so the behavior is largely covered structurally. The description usefully discloses that the value is read back after setting, but it does not explain the surprising idempotentHint=false, required permissions, or the dependency on a Motion effect existing.

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 the verb first. It is appropriately sized, though the middle 'English or measured Spanish built-in names' fragment is confusing filler that does not clearly earn 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?

An output schema exists, so return values need not be explained, and both parameters are documented in the schema. The only residual gap is the unexplained reference to a Motion effect and the non-idempotent annotation, which for a simple setter 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 both node_id and degrees are already documented with type and range context. The description adds nothing about the parameters themselves, merely referencing the effect property naming, 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?

States a specific verb (Set) and resource (the Rotation property on a clip's Motion effect), which distinguishes it from siblings like set_clip_scale, set_clip_opacity, and set_clip_position. The core action is unambiguous, though the 'English or measured Spanish built-in names' clause is odd and slightly muddies 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?

There is no when-to-use or when-not-to-use guidance, and no alternative tool is named. Nothing tells the agent when rotation-setting is the right choice versus the many other clip-property tools.

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

Scale a video clip evenly through its Motion effect using English or measured Spanish built-in names, and read the result back. With Uniform Scale off, both Scale (height) and Scale Width are set, so the picture is not stretched; use set_scale_width_height for different values.

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; on failure, diagnostic detail when the tool provides it.
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 declare non-read-only, non-idempotent, non-destructive, and the description adds real value beyond them: the operation runs through the Motion effect, writes both Scale and Scale Width when Uniform Scale is off so the picture isn't stretched, and reads the result back. It doesn't mention permissions or reversibility, so not 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?

Front-loaded with the core action and the alternative, and the Uniform Scale caveat is useful. The 'English or measured Spanish built-in names' clause is unexplained filler that slightly dilutes an otherwise tight entry.

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 values need not be explained. The description covers the mechanism, the two-property side effect, and the alternative routing, which is sufficient for a 2-param idempotency-flagged mutation, though it omits any indication of failure conditions.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 params (scale percentage semantics, node_id) fully documented in the schema, so baseline 3 applies. The description mentions Scale/Scale Width properties but maps them loosely rather than clarifying the two actual 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?

States a specific verb and resource ('Scale a video clip') plus the mechanism (Motion effect) and names the sibling it differs from (set_scale_width_height). The odd phrase 'English or measured Spanish built-in names' is confusing and somewhat distracts, keeping it from a clean 5.

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 routes the agent to an alternative: 'use set_scale_width_height for different values.' It also gives the condition under which both axes are set (Uniform Scale off). It stops short of stating when not to use this tool generally.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint=false, and openWorldHint=false. The description adds no behavioral context beyond the basic action, such as whether selecting a clip clears an existing selection or how the active sequence context affects 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, front-loaded sentence with no unnecessary words. It is appropriately sized for a simple two-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?

The tool is simple, the input schema is fully documented, annotations cover safety hints, and an output schema exists. However, the description leaves meaningful gaps around selection semantics and alternatives in a crowded sibling set of selection commands.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id and selected are fully documented in the schema. The description does not add meaning beyond the schema, which is acceptable but not additive.

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: select or deselect a clip in the active sequence. It is clear what the tool does, but it does not explicitly distinguish itself from many sibling selection tools such as select_all_clips, select_clips_by_name, or deselect_all_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 gives no guidance on when to use this tool versus the many alternative selection tools. It does not clarify whether it adds to, replaces, or toggles the current selection, nor does it mention conditions such as single-clip versus multi-clip selection.

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 QeA

Unavailable: Premiere's documented ExtendScript and UXP APIs have no setter for a timeline clip's speed (only getters), and the undocumented QE setSpeed is deliberately not used. Always fails before mutation. To change how long a clip runs on the timeline, use set_clip_duration.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false) describe a routine mutating tool but say nothing about it being non-functional. The description supplies the critical undisclosed behavior: no documented setter exists, the undocumented QE setSpeed is deliberately unused, and the call always fails before any mutation. That is high-value context 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?

Two sentences, front-loaded with the blocking fact ('Unavailable') and then the remediation, with zero filler. 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?

For a deliberately dead-end tool with an output schema and fully covered parameters, the description contains everything an agent needs: it cannot succeed, it will not mutate, and where to go instead. Nothing further is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id, reverse, and speed_percent are already fully documented with units (100 = normal). The description adds no parameter-level meaning beyond noting that no mutation will occur regardless of arguments, 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 and resource ('set a timeline clip's speed') and immediately qualifies it with the decisive fact that the operation is unimplemented and always fails. It also names the correct sibling (set_clip_duration), so an agent can tell exactly what this tool is and is not without touching 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 Guidelines5/5

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

It gives explicit when-not-to-use ('Unavailable... Always fails before mutation') plus the alternative and the condition that selects it ('To change how long a clip runs on the timeline, use set_clip_duration'). This is exactly the routing guidance the dimension asks for.

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 TimeB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so safety is covered. The description adds the useful effect note that timecode origin for the source media shifts, but says nothing about what happens to already-placed clips or whether media interpretation 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, zero waste, and the core action is front-loaded in the first clause. Nothing to trim.

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?

Output schema exists, so return values need not be described, and annotations cover the safety profile. However, for a mutation tool with an ambiguous sibling named set_start_time, the definition should have disambiguated scope and noted any side effects; that gap keeps it at the minimum-viable 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%, so both parameters (item_id, start_seconds) are already documented, setting the baseline at 3. The description's 'timecode offset' phrasing adds slight meaning to start_seconds but no units, format, or reference-point 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?

Specific verb+resource: 'Set the start time (timecode offset) of a project item', with a clarifying clause about shifting where timecode begins. Clear enough on its own, but it does not differentiate itself from the sibling set_start_time, which an agent could easily confuse with this 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 on when to use this versus alternatives such as set_start_time, set_zero_point, or set_item_in_out. The description gives no preconditions, no context, and no exclusions.

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; on failure, diagnostic detail when the tool provides it.
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 annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the safety profile is covered. The description adds useful scope and efficiency context, but it does not disclose side effects, undo behavior, or whether repeated calls with the same volume are idempotent, leaving gaps 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?

Two sentences, zero waste, and the batch scope is front-loaded. Every sentence earns its place by clarifying the target set and the efficiency rationale.

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 batch mutation tool with full schema coverage, annotations covering safety, and an output schema available, the description provides enough scope and usage context. It could be slightly richer about return behavior or prerequisites, 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 description coverage is 100%, so the schema already explains volume_db, track_index, and clip_indices. The description confirms the clip-selection behavior but adds no format, range, or edge-case 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?

The description states a specific verb and resource: 'Set the volume (in dB)' on clips. It clarifies the exact scope as 'every audio clip of a track, or on a list of clip indices,' which distinguishes it from the singular sibling set_clip_volume and from general mix tools like 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 Guidelines4/5

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

It gives clear context for when to prefer this tool: 'One round trip instead of one call per clip - essential for sequences with dozens of clips.' This implies the batch scenario versus per-clip alternatives, but it does not explicitly name set_clip_volume as the single-clip alternative.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (not read-only, not destructive, non-idempotent, not open-world). The description adds a genuine scope boundary (does not touch Essential Sound Amplify automation), which is real value beyond structured data, but it discloses nothing about permissions, side effects, or return 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?

Two short, front-loaded sentences with no filler. The core action comes first and the scope caveat follows, so 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?

With a full output schema, a 100% coverage input schema, and annotations covering safety, the description needs only to establish purpose and scope, which it does. The remaining gap is no explicit differentiation from set_clips_volume for batch volume setting.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (node_id, volume_db) are fully documented in the schema, including the dB convention. The description adds only the 'Volume > Level' UI-path phrasing and no additional parameter semantics, 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?

States a specific verb+resource ('Set an audio clip's Volume > Level in dB'), which is unambiguous and clearly distinguishable from the read counterpart get_clip_volume. It does not explicitly differentiate from the plural sibling set_clips_volume, so it falls 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 Guidelines3/5

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

The exclusion 'Does not read or change Essential Sound Amplify automation' gives useful scope guidance, but there is no explicit when-to-use statement and no routing to alternatives such as set_clips_volume for multiple clips or adjust_audio_levels for other audio operations. Usage is only implied.

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 LabelB

Set the color label on a project item or clip and read it back

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false and idempotentHint=false, so the safety profile is covered. The description usefully adds that the new value is returned, but says nothing about failure modes for a nonexistent item, permission needs, or why repeated identical sets are treated as non-idempotent.

Agents need to know what a tool does to the world before 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, and the mutation is front-loaded ahead of the read-back detail. Nothing to trim.

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 setter with full schema coverage, annotations, and an output schema (so return values need no explanation), the definition is nearly sufficient. The remaining gap is routing guidance versus get_color_label and set_color_value.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (node ID or name) and color_index with the full 0-15 color legend are already documented in the schema. The description adds no additional parameter semantics, 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?

States a specific verb and resource (set the color label) plus the affected object types (project item or clip), so the agent knows exactly what it mutates. It hints at read-back behavior that differentiates it loosely from get_color_label, but never names that sibling as an 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 implies the tool can substitute for a separate read by saying it 'reads it back,' but there is no explicit when-to-use guidance, no prerequisite (e.g. item selected/unlocked), and no stated relationship to get_color_label.

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; on failure, diagnostic detail when the tool provides it.
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 that this is a non-read-only, non-idempotent, non-destructive mutation, so the safety profile is covered. The description adds useful scope by clarifying that the value is set on an effect property, but it does not disclose what happens to existing values, whether the effect must already be applied, or any other behavioral detail 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 front-loaded sentence with no filler. It immediately states the action and scope, and every phrase 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, annotations, and output schema together carry much of the burden, so the description need not explain return values or parameter formats. However, for a 7-parameter mutation tool, it still lacks prerequisite context and does not route the agent away from generic siblings like set_effect_property.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (node_id, component_name, property_name, alpha, red, green, blue) is already documented in the input schema. The description does not add syntax, format, or usage meaning beyond what the schema 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.

Purpose4/5

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

The description names a specific verb (Set) and resource (color value on an effect property) and gives concrete examples such as tint color and fill color. It is clear on its own but does not explicitly distinguish itself from sibling tools like set_effect_property or set_color_label.

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 versus alternatives such as set_effect_property or set_color_label. There is no mention of prerequisites, such as the effect or property needing to exist, 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_effect_propertySet Effect PropertyA

Set the value of a specific effect property on a clip. Accepts scalar, boolean, string, array-shaped vector values (for example Motion > Position as [x, y]), and MOGRT JSON objects or strings, 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, the exact JSON string reported for a MOGRT text or graphic parameter, or that same JSON object if the client parsed it.
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; on failure, diagnostic detail when the tool provides it.
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?

Annotations already declare this is a non-readOnly, non-destructive mutation. The description adds useful behavioral detail by enumerating accepted value shapes and stating that the operation verifies readback component by component. It does not cover permissions, failure modes, or reversibility, so it is not 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 purpose is front-loaded in the first clause, followed by the accepted value shapes and readback verification. The single long sentence is dense but earns its clauses; there is 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?

An output schema exists, so return values need not be described. Annotations cover safety hints, and the description supplies value-shape semantics and readback verification. It omits prerequisites such as the effect already existing on the clip, but is otherwise 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%, and the schema itself already documents all four parameters including the value type details. The description repeats the same scalar/boolean/string/vector/MOGRT JSON information, adding little beyond the structured 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 states a specific verb and resource: setting an effect property value on a clip. It does not explicitly name or differentiate from siblings like get_effect_properties or set_clip_properties, though the scope is clear enough from 'effect property on a 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 gives no when-to-use guidance, no exclusion conditions, and no alternatives. It only lists accepted value types, which is parameter semantics rather than usage guidance.

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 InterpretationB

Set footage interpretation settings for a project item and read them back, including fields that were not meant to change

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description carries a lower burden. It adds that settings are read back after writing, but the phrase 'including fields that were not meant to change' is ambiguous and could mislead an agent about side effects; it never addresses idempotency, which the annotations flag 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.

Conciseness4/5

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

It is a single front-loaded sentence stating the action first and the readback second, with no filler. The trailing clause is slightly confusing but the sentence remains compact and well-ordered.

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 need not be explained, and annotations cover safety. What remains thin is routing (no alternative named) and the vague readback clause; the definition is adequate but leaves gaps for a mutation tool with several close 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 item_id, frame_rate, and pixel_aspect_ratio are fully documented in the schema (including the '1.0 = square pixels' note). The description adds no parameter-level meaning beyond that, 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 ('Set') and resource ('footage interpretation settings') scoped to 'a project item', so an agent can identify the operation. It does not, however, name or differentiate itself from siblings like get_footage_interpretation or set_override_frame_rate, which touch the same concepts.

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 get_footage_interpretation or the override variants (set_override_frame_rate, set_override_pixel_aspect_ratio). The closest thing to usage context is the readback mention, which is a behavior, not a when-to-use condition.

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; on failure, diagnostic detail when the tool provides it.
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 it is a non-idempotent, non-destructive write, so the safety profile is covered. The description adds only that it uses QE DOM, which hints at a legacy/implicit-context API but does not explain what that implies for reliability, required Premiere state, or 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.

Conciseness4/5

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

Two short sentences, front-loaded with the action and resource; nothing is padded. The QE DOM note is terse and arguably useful, though slightly cryptic for a reader who does not know the abbreviation.

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 a simple two-parameter mutation with an output schema, so return values need no explanation. Still missing are the operational constraints that matter for a QE DOM call — whether the sequence/clip must be open and selected, and what happens if the DOM object is unavailable — leaving it 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?

With 100% schema description coverage on both parameters (node_id and enabled), the schema already carries the semantics. The description restates the toggle concept without adding format, ID sourcing, or behavior 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?

Names a specific verb pair (enable/disable) and the exact resource and scope (frame blending on a clip), which is unambiguous. It does not, however, differentiate itself from near neighbors such as set_time_interpolation or set_blend_mode, which an agent might confuse with it.

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 statement of when to reach for this tool versus alternatives like set_blend_mode (visual blending) or set_time_interpolation, and no prerequisites such as the clip needing to be in the active sequence. The agent must infer usage entirely.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false. The description adds only the project-level HDR context, but does not disclose accepted value ranges, persistence behavior, permissions, or side effects 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 with no redundant phrases. It states the action and scope immediately and is appropriately sized for a one-parameter setter.

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 complexity, the presence of an output schema, complete parameter schema coverage, and annotations covering safety traits, the description is largely complete. It could be improved by noting the valid luminance range or project-specific prerequisites, but it provides enough context for an agent to call 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%, so the parameter's unit ('nits') is already documented by the schema. The description reinforces that this is the graphics white luminance HDR setting but adds no syntax, range, or formatting 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?

The description states a specific verb and resource ('Set the graphics white luminance value') with clear project scope and HDR context. It distinguishes itself from the sibling getter get_graphics_white_luminance by the verb 'set'.

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 prerequisites, and no alternatives. It only states what the tool does, not when an agent should choose it over the related getter or other sequence setting tools.

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the safety profile is covered. The description adds the useful detail that in and/or out may be set partially, but says nothing about persistence, undoability, or what happens to the untouched point.

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 tight sentence with the operation and its effect front-loaded; nothing is wasted, though it is on the lean side for a 4-parameter mutation.

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, annotations covering the safety profile, and full schema description coverage, the description only needs to convey purpose and scope, which it does. It stops just short of routing the agent away from the near-identical sequence-level 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 baseline of 3 applies. The description's mention of 'in and/or out points' loosely maps to in_seconds/out_seconds but adds no format or defaulting detail, and media_type is not referenced at all.

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 (Set) and resource (in/out points on a project item in the project panel), and the parenthetical clarifies the effect (marks source range for editing). It does not explicitly name the sibling it differs from (set_sequence_in_out_points / clear_item_in_out), so an agent must infer the item-vs-sequence 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?

The parenthetical '(marks source range for editing)' implies the context of use, but there is no explicit when-to-use, when-not, or named alternative such as clear_item_in_out or set_source_in_out. Usage is only inferable.

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 InterpolationA

Set the interpolation type of an existing keyframe (Linear, Hold, or Bezier). Premiere exposes no interpolation readback, so a write is reported as committed_unverified.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesSeconds from the clip's start on the timeline (0 is the clip's first frame) 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; on failure, diagnostic detail when the tool provides it.
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?

Beyond the annotations (readOnly=false, idempotent=false, destructive=false), the description adds genuinely valuable behavior: Premiere has no interpolation readback, so writes return committed_unverified. That tells the agent not to expect verification. It does not say what happens if no keyframe exists at the given time or whether the existing value is overwritten.

Agents need to know what a tool does to the world before 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 action stated first and the caveat second, with no filler. Every sentence carries information the agent 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?

An output schema exists, so return values need no explanation, and the description still flags the unverified-commit status, which is the key operational risk for a write with no readback. Minor gaps remain around failure behavior when the target keyframe does not exist at time_seconds.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id, effect_name, property_name, time_seconds and interpolation are already documented in the schema, including the enum. The description only restates the enum values and adds no new meaning (e.g., time_seconds origin or effect/property name resolution), 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?

States a specific verb and resource ('Set the interpolation type of an existing keyframe') and enumerates the three supported modes, so the agent knows exactly what is mutated. It does not explicitly distinguish itself from the nearby set_time_interpolation sibling or note that keyframes must first be created with add_keyframe.

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 'of an existing keyframe' implies a precondition (the keyframe must already exist), which is useful routing context toward add_keyframe, but no explicit when-to-use or when-not guidance is given. Alternatives such as set_time_interpolation or get_keyframes are never mentioned.

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

set_metadataSet MetadataA

Update project metadata on a project item. Supply complete metadata_xml plus updated_fields, or field_name and value to read-modify-write one XMP/project property through AdobeXMPScript with field readback. The project packet (default) stays in the project; packet 'xmp' is written by Premiere into the source media file on disk and requires the filesystem capability.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueNoReplacement value for field_name. Maximum 4096 characters.
packetNoPacket for field_name writes. Default project (Premiere-private metadata).
item_idYesNode ID or name of the project item
field_nameNoNamed field to update (for example Column.Intrinsic.LogNote). Used with value; cannot be combined with metadata_xml.
metadata_xmlNoComplete Project Metadata XML previously read from get_metadata, with the intended field values applied.
expected_valueNoOptional compare-and-set guard for field_name writes.
updated_fieldsNoExact Project Metadata field paths changed in metadata_xml (for example, Column.Intrinsic.Description).
field_namespaceNoXMP namespace URI or alias (premiere, dc, xmp, exif). Default premiere for project packet; required for xmp.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false. The description adds real context beyond that: the xmp packet persists to the source media file on disk, requires the filesystem capability, and writes go through AdobeXMPScript with field readback. It does not explain the non-idempotent behavior, which 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.

Conciseness4/5

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

Three compact sentences, front-loaded with the primary effect before the modality and packet details. Dense but every clause carries information; 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?

An output schema exists so return values need no explanation, and annotations cover the safety profile. The description supplies the write mode, persistence target, and capability requirement, leaving only sibling disambiguation unaddressed.

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 per-parameter docs already carry the load. The description still adds relationship semantics the schema does not: which parameter groups combine (metadata_xml with updated_fields; field_name with value) and the packet-dependent default for field_namespace.

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 ('Update project metadata on a project item') and covers both project and xmp packet targets. However, it never names its near-identical siblings (set_xmp_metadata, set_project_panel_metadata, get_metadata), so an agent must infer which metadata writer to use.

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?

Explains the two mutually exclusive write modes (metadata_xml + updated_fields vs field_name + value) and gives the condition selecting packet 'xmp' (writes into source media, requires filesystem capability). It stops short of any when-not-to-use or alternative-tool guidance.

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; on failure, diagnostic detail when the tool provides it.
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 the operation is not read-only, not destructive, not open-world, and not idempotent. The description adds that false refreshes an existing offline item, but does not disclose permissions, side effects, or idempotency behavior beyond what annotations and schema already 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 front-loaded sentence that says what the tool does and covers both boolean modes without wasted 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 mutation tool with an output schema and rich annotations, the description is nearly sufficient. It explains both offline and online modes, though it does not explicitly restate the default offline=true behavior that the schema 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?

Schema description coverage is 100%, so item_id and offline are already well documented, including the default true and false-refresh behavior. The description restates the false case but adds no format, syntax, or 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 states a specific verb and resource: setting a project item offline, with an inverse online-refresh behavior. This clearly distinguishes the tool from media-inspection siblings, but it does not explicitly name alternative tools such as check_offline_media or refresh_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?

It provides an implied usage condition by explaining that offline=false asks Premiere to refresh an existing offline item back online. However, it gives no explicit when-to-use guidance or alternatives relative to siblings like check_offline_media or relink_media.

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) and read it back

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, and idempotentHint=false, so the safety profile is covered. The description adds that the tool 'read[s] it back', disclosing a return/confirmation behavior beyond the annotations, though it does not explain how the override interacts with existing clip timing or whether it can be reverted.

Agents need to know what a tool does to the world before 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 core action first and a compact parenthetical that earns its place by adding use-case context. No filler 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 two-parameter tool with full schema coverage, an output schema, and annotations covering safety and idempotency, the description supplies everything needed to call it correctly. Only the interaction with existing media timing is left implicit, a minor gap given the rest of the 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% and both parameters carry their own descriptions (node ID/name, example frame rates), so the schema does the heavy lifting. The description adds no format or constraint detail beyond that, which is the expected baseline when the schema is complete.

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 (Override) and resource (frame rate of a project item), and the parenthetical clarifies the exact scenario. The phrase 'project item' cleanly distinguishes it from the sibling set_sequence_frame_rate, which operates at sequence level.

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 image sequences or misinterpreted media' tells the agent when this tool is appropriate, which is real routing guidance. It stops short of naming alternatives or stating when not to use it (e.g. versus set_sequence_frame_rate or set_footage_interpretation), so it falls just below a 5.

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 RatioB

Override the pixel aspect ratio of a project item and read it back

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, destructiveHint=false, and openWorldHint=false, so the mutation/safety profile is covered. The description adds genuine value with 'and read it back', disclosing that the applied value is echoed after the write, but it says nothing about persistence, permissions, or interaction with existing footage interpretation metadata.

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 no wasted words. It is terse to the point of omitting usage context, but the sentence itself 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?

An output schema exists, so return-shape explanation is not required. However, for a non-idempotent override write, the description leaves the agent without disambiguation against the sequence-level PAR tool or guidance on when an override is appropriate, which is a real gap for this tool family.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 of the three parameters documented including examples ('1 for square pixels'). The description adds nothing 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?

States a specific verb ('Override') plus resource ('pixel aspect ratio of a project item'), which is unambiguous. The 'project item' scoping implicitly separates it from the sibling set_sequence_pixel_aspect_ratio, but the description never names that sibling or states the distinction explicitly.

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 when-to-use guidance, no prerequisites, and no mention of the closely related set_sequence_pixel_aspect_ratio or set_footage_interpretation alternatives. The agent must infer which of these PAR-related tools applies.

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 PositionB

Set the playhead (CTI) position, clamp it to the active sequence's end, and read the stored position back.

ParametersJSON Schema
NameRequiredDescriptionDefault
time_secondsYesTime position in seconds to move the playhead to (0 to the sequence end)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 the mutation/safety profile (readOnlyHint=false, destructiveHint=false), lowering the bar. The description adds two genuinely useful behaviors beyond that: the value is clamped to the sequence end, and the stored position is read back for verification. It does not state the active-sequence requirement or whether the change is undoable.

Agents need to know what a tool does to the world before 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 three tightly ordered clauses (set, clamp, read back) and zero filler. Nothing is wasted or buried.

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 values need no explanation, and the clamp/readback behavior is covered. The only gap is the unstated prerequisite of an active sequence and the relationship to navigate_playhead, which for a one-parameter tool is a minor 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% and the single parameter already documents the seconds range, so the schema carries the load. The description only reinforces the clamping bound with no additional syntax or format 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?

States a specific verb+resource ('Set the playhead (CTI) position') and adds the distinguishing CTI synonym. However, it does not differentiate itself from close siblings like navigate_playhead or get_playhead_position, which an agent must choose between.

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 when-to-use guidance, no prerequisite (an active sequence must exist), and no reference to the alternative navigate_playhead tool that also moves the playhead. The agent is left to infer selection from names alone.

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

Unavailable: Premiere's scripting API cannot set a project item's poster frame. Fails without changing the item; set it in the Project panel (Shift+P).

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations declare readOnlyHint=false/destructiveHint=false, and the description adds the critical behavioral fact those annotations cannot convey: the call is a guaranteed failure that leaves the item unchanged. Disclosing the no-op/failure semantics is exactly the context annotations omit.

Agents need to know what a tool does to the world before 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 leads with unavailability, then states behavior and the workaround. No filler, every clause carries load.

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 stub with an output schema already present, the description supplies everything an agent needs: it cannot succeed, it changes nothing, and where to do the task manually. Nothing relevant 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% for both item_id and time_seconds, so parameters are already fully documented. The description adds no parameter detail, but none is needed given the tool never succeeds; 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 the exact operation, the platform limitation that blocks it ('Premiere's scripting API cannot set a project item's poster frame'), and the observable outcome ('Fails without changing the item'). An agent knows immediately this is a non-functional stub and cannot confuse it with working siblings like set_clip_properties or set_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 Guidelines5/5

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

It explicitly tells the agent when not to use this tool and names the concrete alternative: do it in the Project panel with the Shift+P shortcut. There is no ambiguity about routing.

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 MappingB

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; on failure, diagnostic detail when the tool provides it.
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 readOnlyHint=false, idempotentHint=false and destructiveHint=false. The description adds one useful behavioral nuance: it maps exactly ONE output channel, implying an incremental per-channel set rather than a wholesale remap. It does not state persistence, side effects on linked clips, 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.

Conciseness4/5

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

A single tight sentence, front-loaded with the action and the objects it acts on. It wastes no words, though it is arguably too sparse to be maximally useful.

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 need not be explained, and the annotations cover the safety profile. However, for a mutation tool that changes audio routing on a project item, the description says nothing about prerequisites (does the item need multiple audio channels?) or scope of effect.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 including the zero-based indexing convention. The description only loosely restates output/source channels and adds no format or constraint 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.

Purpose4/5

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

Specific verb+resource: 'Map one output audio channel of a project item to a source channel' tells the agent exactly what changes. It is clearly distinguishable from sibling setters like set_sequence_audio_settings or adjust_audio_levels, though it names no 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 Guidelines2/5

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

No when-to-use, no prerequisites, no alternatives. The agent is not told when channel mapping is the right tool versus sequence-level audio settings or clip pan/volume tools. Usage must be inferred 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.

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; on failure, diagnostic detail when the tool provides it.
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 cover safety (not read-only, not idempotent, not destructive), so the description's real contribution is the read-back verification step, which is genuinely useful. It still doesn't say whether the existing column configuration is replaced or merged, which matters for a non-idempotent setter.

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?

One sentence, front-loaded with the action and resource, with the verification clause appended. No wasted words, though the slash-joined 'metadata/column configuration' is slightly dense.

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 mutating tool with full schema coverage, an output schema (so return values need no explanation), and annotations covering the safety profile, the description provides what an agent needs to call it. The only gap is the absence of alternatives 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?

There is a single parameter with 100% schema description coverage, so the schema already documents metadata_xml. The description restates 'from XML' but adds no format, schema, or expected XML structure beyond that.

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'), a specific resource ('project panel metadata/column configuration'), the input form (from XML), and an extra verification behavior. An agent can distinguish it from the sibling get_project_panel_metadata without opening either 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?

It never says when to use this versus the read-side sibling get_project_panel_metadata, nor when a panel metadata rewrite is warranted. Usage is only implied by the verb.

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 DiskA

Set the project's scratch disks for captured video, captured audio, video previews and audio previews in one call. Each path must be an existing folder or "SameAsProject"; any rejected path fails the call.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_previewsNoPath for audio previews
captured_audioNoPath for captured audio
captured_videoNoPath for captured video
video_previewsNoPath for video previews
save_and_verifyNoSave the project afterwards and confirm the saved scratch-disk settings (default: false). Premiere has no scratch-disk getter, so without this the result is unverified.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare the mutation profile (readOnly=false, destructive=false, idempotent=false), so safety is largely covered structurally. The description adds genuinely useful behavior beyond that: paths must be an existing folder or the 'SameAsProject' sentinel, and any rejected path fails the whole call (all-or-nothing semantics). It stops short of describing authorization or persistence requirements.

Agents need to know what a tool does to the world before 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 waste. The scope and the four targets come first, the failure semantics follow, and the atomicity constraint is placed where it matters.

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 values need not be explained, and annotations cover the safety profile. The description covers the atomicity and path-validation rules well; only prerequisites (open project, permission needs) and the relationship to set_scratch_disk_path are left implicit.

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 still adds value by defining the 'SameAsProject' sentinel and the existing-folder validation rule that the per-parameter schema strings do not mention. It does not clarify optionality (all five params are non-required) or defaults.

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 (project's scratch disks), enumerates the four disk targets, and the phrase 'in one call' differentiates it from the sibling set_scratch_disk_path (singular) and get_project_scratch_disks (read). An agent can pick it 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?

Usage is implied by the enumeration of the four disk types, but the description never states when to prefer this over set_scratch_disk_path, nor any prerequisites such as a project being open. No when-not guidance is offered.

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' so media fills the sequence frame. Accepts a timeline clip node ID (active sequence, same IDs as get_clip_properties) or a project item node ID or name. A timeline clip is resolved first and its source project item is updated through ProjectItem.setScaleToFrameSize(). ExtendScript exposes no getter for this flag, so the result is committed_unverified unless the timeline clip's Motion > Scale reads back changed (verified). Check with get_clip_properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesTimeline clip node ID in the active sequence, or project item node ID or name

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 substantial behavior beyond the annotations: the update routes through ProjectItem.setScaleToFrameSize(), ExtendScript exposes no getter for the flag, so the result is committed_unverified unless the timeline clip's Motion > Scale reads back changed. This is exactly the kind of outcome/auth/uncertainty disclosure annotations cannot carry.

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?

Four sentences, front-loaded with the effect, then inputs, then the commit/verify mechanics. Dense but each sentence carries distinct information; slight extra compression is possible but nothing is wasted.

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 mutation with an output schema, the description covers the input contract, resolution behavior, and verification pathway. The remaining open question is which sibling scaling tool to prefer for related operations, which is a minor gap.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds real semantics: the same node IDs as get_clip_properties, the clip-vs-project-item resolution order, and the name fallback. That is more than the schema's one-line parameter description 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?

States a precise verb and effect ('Enable Scale to Frame Size so media fills the sequence frame'), which is distinguishable from sibling scaling tools like set_clip_scale or set_scale_width_height that set arbitrary dimensions. An agent can identify the operation 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?

Explains the accepted input forms (timeline clip ID, project item ID, or name) and the resolution precedence: timeline clip first, then its source project item. It also names get_clip_properties as the verification path. It stops short of naming alternative scale tools or stating when not to use this one.

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 width and height scale on a clip. Turns Uniform Scale off, writes Motion > Scale Width (width) and Motion > Scale (which Premiere uses as the height once Uniform Scale is off), then reads all three back. Fails when a value does not read back.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
scale_widthYesScale width percentage (0-10000)
scale_heightYesScale height percentage (0-10000). Written to Motion > Scale, which is the height when Uniform Scale is off.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 key behavioral traits: it turns Uniform Scale off, writes to specific Motion properties, reads all three values back, and fails when a value does not read back. This gives the agent important side-effect, verification, and failure-condition context that the annotations 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 three tightly written sentences, front-loaded with the primary action and followed by the exact write sequence and failure condition. Every sentence contributes necessary operational detail with 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?

Given the mutation nature of the tool, the annotations, the fully described input schema, and the presence of an output schema, the description is complete. It covers the key side effect, the exact property writes, the read-back verification, and the failure mode, leaving nothing critical for the agent to guess.

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 documents all three parameters. The description adds meaningful mapping detail beyond the schema by clarifying that width is written to Motion > Scale Width and height is written to Motion > Scale when Uniform Scale is off, which helps the agent understand the underlying Premiere 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 states a specific verb and resource: set independent width and height scale on a clip. It also distinguishes this operation from uniform scaling by explicitly noting that it turns Uniform Scale off, which separates it from siblings like set_uniform_scale and set_clip_scale.

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 through its mechanism (independent width and height scaling, Uniform Scale off), but it does not explicitly state when to choose this tool over alternatives like set_clip_scale or set_uniform_scale. No exclusions or prerequisites are given, so the agent must infer the appropriate context.

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 PathB

Set one project scratch disk (captured media, previews, auto-save, CC Libraries or Motion Graphics template media) to an existing folder or "SameAsProject", using Premiere's ScratchDiskType constants.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesAbsolute path of an existing folder, or "SameAsProject"
save_and_verifyNoSave the project afterwards and confirm the saved scratch-disk settings (default: false). Premiere has no scratch-disk getter, so without this the result is unverified.
scratch_disk_typeYesWhich scratch disk to set

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 the full safety profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false, openWorldHint=false), so the bar is lower. The description adds only the constraint that the target must be an existing folder or 'SameAsProject', which the schema's path description already states; it does not disclose persistence behavior or verification needs beyond what the save_and_verify parameter documents.

Agents need to know what a tool does to the world before 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 written sentence that front-loads the verb and resource, then enumerates the covered disk types with zero 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?

An output schema exists, so return values need not be described, and the parameters are fully covered by the schema. The remaining gap is routing: with near-duplicate siblings ('set_project_scratch_disk', 'get_project_scratch_disks') and a mutation-adjacent tool, the description should clarify how this differs, and it does not.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 restates the enum categories and the 'SameAsProject' value, but adds no semantics beyond the schema (which already documents the enum, the path format, and the save_and_verify tradeoff).

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 (Set) and resource (one project scratch disk) and enumerates which disk types are covered, mapping to the ScratchDiskType constants. However, it does not differentiate itself from the close sibling 'set_project_scratch_disk', which appears to address the same resource, leaving ambiguity about which tool an agent should pick.

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 context, no prerequisites, and never mentions the obvious alternatives ('set_project_scratch_disk', 'get_project_scratch_disks') that exist among siblings. An agent must infer routing from name similarity alone.

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 SettingsB

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; on failure, diagnostic detail when the tool provides it.
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 that this is a non-read-only, non-idempotent, non-destructive mutation. The description adds only the 'active sequence' scoping constraint and nothing about reversibility, whether unset fields are preserved, or side effects on existing clips. With annotations carrying the safety profile, 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.

Conciseness5/5

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

A single tight sentence with the resource front-loaded and the affected fields parenthesized. 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?

An output schema exists so return values need not be described, and the two optional parameters are fully covered by the schema. The only gap is the lack of usage/routing context, which keeps it from a 5 for a tool embedded in a very dense set of set_sequence_* 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 both parameters (sample_rate, channel_type with its 0-3 mapping values) are fully documented in the schema. The description merely restates the two field names and adds no format or constraint detail beyond the schema. 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?

States a specific verb ('Change') and resource ('audio settings of the active sequence') and enumerates the affected fields (sample rate, channel type). This clearly separates it from siblings like set_sequence_frame_rate and set_sequence_resolution, though it never names an 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 Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no routing versus sibling inspectors such as inspect_sequence_av_settings or the broader set_sequence_settings. The agent must infer that this is the narrow audio-only setter from the tool name alone.

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 FormatB

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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, openWorldHint=false, and idempotentHint=false. The description adds the scoping detail that the change applies to the active sequence, but it does not explain persistence, error behavior, or whether the setting affects only display versus underlying media.

Agents need to know what a tool does to the world before 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-loaded with the action and target. Every word is necessary and there is no redundant or vague 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 simple, low-complexity setter with rich schema descriptions, annotations, and an output schema, the definition is nearly complete. It could mention that audio and video formats are independently settable or what happens when parameters are omitted, but those details are arguably covered by 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 both audio_display_format and video_display_format are fully documented in the schema, including their numeric mappings. The description adds no additional parameter meaning beyond what the schema already provides, making the baseline 3 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: 'Set the timecode display format for the active sequence.' It clearly distinguishes this from sibling setters like frame rate, resolution, and audio settings, though it does not explicitly name an alternative 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?

There is no guidance on when to use this tool versus alternatives such as set_sequence_settings or set_sequence_frame_rate. The phrase 'for the active sequence' implies a prerequisite, but no explicit when/when-not instruction is provided.

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 TypeC

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; on failure, diagnostic detail when the tool provides it.
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. Beyond that, the description adds only the implicit 'active sequence' scope; it says nothing about whether the change is persistent, requires saving, or affects existing rendered media. For a mutation tool this leaves meaningful behavioral questions unanswered.

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 short sentence with no filler and the operation front-loaded. It is efficient, though arguably under-specified rather than intentionally concise.

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?

Output schema exists so return values need no explanation, but for a sequence-wide mutation the description omits scope impact, persistence, and how it relates to sibling sequence-setting tools. Given the crowded sibling namespace, this is too thin to fully orient an 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% and the sole parameter's enum values (0=progressive, 1=upper field first, 2=lower field first) are fully documented in the schema. The description adds no parameter meaning at all, 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?

States a specific verb (Set) and the targeted property (field order) scoped to 'the active sequence', which is enough for an agent to know this is a sequence-level setting mutation. It is not tautological with the name, but it does not distinguish itself from close siblings such as set_sequence_settings or set_sequence_display_format.

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 prerequisites (an active sequence must exist), and no pointer to overlapping siblings like set_sequence_settings or inspect_sequence_av_settings. The agent is left to infer all routing decisions.

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 RateC

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; on failure, diagnostic detail when the tool provides it.
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 safety profile is covered. The description adds only the 'active sequence' target, saying nothing about whether existing clips are conformed, retimed, or left untouched — a meaningful behavioral unknown for this mutation.

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 no filler or redundancy. It is efficient, though the brevity contributes to the missing usage and behavioral context rather than being optimized for it.

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 annotations covering the safety profile, the definition is minimally sufficient to call the tool. It does not resolve the sibling overlap (set_override_frame_rate, set_sequence_settings) or note any effect on existing sequence content, which leaves 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% and the single parameter includes an example list of common frame rates plus min/max bounds, so the schema does the heavy lifting. The description adds no syntax or format guidance beyond it, which is the baseline-3 case.

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 (Change) and resource (frame rate of the active sequence), which is clear enough to act on. It does not distinguish itself from close siblings like set_sequence_resolution or set_override_frame_rate, so an agent must infer which one applies from the 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?

The description gives no when/when-not guidance and never mentions nearby alternatives such as set_override_frame_rate or set_sequence_settings, which affect frame-rate-adjacent settings. The agent is left to guess which frame-rate tool is correct.

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 an export range, etc.) and read them back. out_seconds must be after in_seconds and not past the sequence end.

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsYesIn-point in seconds (0 or later)
out_secondsYesOut-point in seconds; after in_seconds and not past the sequence end

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 declare a non-read-only, non-idempotent, non-destructive mutation. The description adds the validation rule ('out_seconds must be after in_seconds and not past the sequence end') and the read-back behavior, which is useful, but discloses nothing about required context (active sequence, edit permissions) or what existing in/out points are 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?

Two short sentences, front-loaded with the action and followed by the key constraint. No filler, 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?

An output schema exists so return values need not be explained, and the critical ordering/bounds constraint is stated. What remains missing is the operational precondition (an active sequence) and the relationship to sibling in/out tools, but for a two-parameter mutation this is largely 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 coverage is 100% and both parameter descriptions already state the same constraints the prose repeats. The description adds no syntax, unit, or default 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.

Purpose4/5

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

States a specific verb and resource ('Set the sequence in and out points') plus a secondary effect ('read them back'), which an agent can map to the sequence-level in/out range concept. It stops short of distinguishing itself from close siblings like set_source_in_out, set_item_in_out, or clear_sequence_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 Guidelines3/5

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

The parenthetical '(for an export range, etc.)' gives a hint of intended use, but there is no explicit when-to-use or when-not guidance, and no naming of the alternatives (get_sequence_in_out_points, clear_sequence_in_out) that an agent might confuse it with.

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; on failure, diagnostic detail when the tool provides it.
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?

With readOnlyHint=false and destructiveHint=false already declaring this as a non-destructive write, the description adds real value by disclosing the legacy-host failure mode — it returns a capability error rather than silently failing. It stops short of saying whether the change is undoable or whether it affects existing clips.

Agents need to know what a tool does to the world before 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 that front-loads the primary action and appends the failure condition. No filler, nothing to trim.

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 values need no explanation, and annotations cover the safety profile. The description closes the main remaining gap by explaining the error path; only undo/scope details for a mutation are 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?

Schema description coverage is 100% and the schema already gives format examples ('1.0', '1.4222'), so the description adds nothing about the ratio parameter. Baseline 3 is appropriate for a single fully-documented 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?

Names a precise verb (Change) and resource (pixel aspect ratio of the active sequence), so the operation is unmistakable. It does not, however, distinguish itself from the near-sibling set_override_pixel_aspect_ratio, which an agent could plausibly confuse with it.

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 happens but never says when to reach for this tool versus set_override_pixel_aspect_ratio, set_sequence_resolution, or set_sequence_frame_rate. No prerequisites or exclusions are given, leaving the agent to infer routing 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.

set_sequence_resolutionSet Sequence ResolutionC

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false, idempotentHint=false, so the safety profile is partly covered. The description adds only a parenthetical defining frame size and omits meaningful behavior: whether resizing resamples clips, whether it can be undone, and whether it requires the sequence to be active. Minimal added value 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.

Conciseness4/5

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

A single front-loaded sentence with no wasted words. It is tight, though at the cost of the behavioral detail a mutation tool would benefit from.

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 need not be explained, and annotations carry part of the safety profile. The tool is simple (2 params, no nesting), but for a sequence-wide mutating operation the description still leaves unaddressed prerequisites and side effects, making it merely 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?

With 100% schema description coverage, the schema already documents width and height as pixel dimensions. The description's '(frame size)' phrasing adds a small interpretive gloss but no units beyond pixels, no valid-range or aspect-ratio coupling guidance, 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?

States a specific verb (Change) and resource (resolution/frame size) scoped to the active sequence, which is enough to distinguish it from sibling setters like set_sequence_frame_rate or set_sequence_pixel_aspect_ratio. It stops short of explicitly contrasting with those siblings, so it is clear but not maximally differentiating.

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 versus alternatives such as set_sequence_frame_rate, set_sequence_pixel_aspect_ratio, or set_scale_to_frame_size, nor any prerequisite or state condition (e.g., sequence must be open/active). The agent gets a purpose but no routing context.

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 SettingsC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description's only added behavioral note is the 'read back' phrase, which is redundant given an output schema exists. It says nothing about permissions/undo, partial updates (width-only or height-only), or effects on existing clip framing.

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

Conciseness3/5

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

A single front-loaded sentence with no filler, which is structurally fine, but it is so thin (and the 'read back' clause so ambiguous) that it borders on under-specification rather than crisp conciseness.

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 mutation tool with several overlapping siblings, the description omits the two things an agent most needs: how it differs from set_sequence_resolution and whether omitting width or height is allowed. The output schema covers return values, but the routing and partial-update gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 width, height, and sequence_id semantics (including the active-sequence default). The description's 'frame-size' phrasing loosely maps to width/height but adds no format or constraint 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.

Purpose3/5

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

States a specific verb ('Modify') and resource ('sequence frame-size settings'), plus a read-back behavior. However, 'frame-size' is not clearly distinguished from the sibling 'set_sequence_resolution', and several other siblings (set_sequence_pixel_aspect_ratio, set_sequence_field_type, set_sequence_display_format) touch the same settings surface, so an agent cannot reliably tell which tool owns width/height from this text 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?

No when-to-use guidance and no named alternatives, despite a large sibling set containing a near-duplicate (set_sequence_resolution) and a read counterpart (get_sequence_settings). The agent must infer routing entirely on its own.

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. Provide this, out_seconds, or both.
out_secondsNoOut point in seconds. Provide this, in_seconds, or both.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 it is a non-read-only, non-destructive, non-idempotent, closed-world mutation, so the safety profile is covered. The description adds the useful precondition that a clip must be open in the Source Monitor, but says nothing about persistence, error behavior when no clip is open, or reset 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?

A single front-loaded sentence with no filler; the scope qualifier is placed after the verb+resource so the core action reads first.

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 full annotation coverage, the description supplies the key missing context (the Source Monitor precondition) and correctly leaves return values to the output schema. Only error/edge-case behavior 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?

Schema description coverage is 100% and each parameter already documents itself ('Provide this, out_seconds, or both'). The description's 'in and/or out' mirrors the anyOf constraint but adds no syntax, units, or format 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?

States a specific verb (set), resource (in/out points), and scope (clip currently open in the Source Monitor), which cleanly separates it from set_sequence_in_out_points and set_item_in_out. It does not explicitly name those siblings, but the target object is 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 phrase 'currently open in the Source Monitor' implies the precondition for use, but there is no explicit when-to-use/when-not guidance or pointer to the sequence/item in-out siblings. Usage is inferable 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_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; on failure, diagnostic detail when the tool provides it.
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=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the mutation safety profile is covered. The description adds target scope and value semantics ('timecode offset'), but it does not disclose side effects, persistence, auth needs, or whether linked items are affected.

Agents need to know what a tool does to the world before 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 or wasted wording. It communicates the core operation 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?

Output schema exists and annotations cover the basic mutation safety profile, so return values need not be explained. However, for a tool surrounded by near-neighbor setters, the definition is still thin on routing and behavioral context, making it 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 the schema already documents item_id and start_seconds. The parenthetical '(timecode offset)' adds minor interpretive context beyond 'Start time in seconds', but not enough to raise the baseline for fully covered 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?

States a specific verb ('Set') and resource ('start time / timecode offset') scoped to a 'project item'. This distinguishes it from generic setters, but it does not explicitly name or differentiate itself from close siblings such as set_clip_start_time.

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 prerequisites, and no alternatives. It only identifies the target scope ('for a project item'), which is not enough to route an agent among the many sibling setters.

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

Target or untarget one video or audio track for source-patched insert/overwrite edits. Premiere allows several tracks of a type to be targeted at once, so by default (exclusive=true) targeting a track also untargets every other track of the same type. Reads back every track of that type and reports verified only when the readback matches the requested state; otherwise committed_unverified or an error.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetedYesWhether to target (true) or untarget (false) the track
exclusiveNoWhen targeting (targeted=true), also untarget every other track of the same type so only this track is targeted (default: true). Ignored when targeted=false.
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; on failure, diagnostic detail when the tool provides it.
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 this as a non-read-only, non-idempotent, non-destructive write, but the description adds genuinely useful behavior: Premiere allows multiple targeted tracks, exclusive=true untargets all other tracks of the same type, and the tool reads back state and reports verified / committed_unverified / error. That verification-outcome disclosure is context annotations cannot provide.

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 dense sentences, front-loaded with the core action and the exclusive-by-default caveat before the verification detail. No filler, though the final sentence about readback states is somewhat packed.

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?

Covers targeting semantics, the exclusive default, and the verification outcomes, and an output schema already exists so return shapes need no exposition. Minor gaps remain (e.g. which sequence is affected, undo/rollback behavior), so a 4 rather than 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 coverage is 100%, and the description largely restates schema content (exclusive default, targeting semantics) rather than adding new meaning. Baseline 3 is appropriate when the schema already documents every 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?

States a specific verb pair (target/untarget) and resource (one video or audio track) plus the workflow context (source-patched insert/overwrite edits). It implicitly differentiates from siblings such as set_all_tracks_targeted and get_target_tracks by emphasizing a single track, but never names an alternative, 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 Guidelines4/5

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

Gives clear context for when to use it (to prepare a track for source-patched insert/overwrite) and explains the exclusive default and how it behaves when targeted=false. No explicit when-not guidance or named alternative tools, which keeps it at 4.

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; on failure, diagnostic detail when the tool provides it.
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 the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false). The description adds a useful implementation note ('Uses QE DOM'), which signals a specific underlying mechanism, but it does not explain the practical consequences, such as whether the change applies immediately or requires a render.

Agents need to know what a tool does to the world before 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, front-loaded sentences with zero filler; the action and the option set come first and the implementation note is secondary.

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 values need not be described, and the two required parameters are fully covered by the schema. The only gap is the absence of any usage or prerequisite context for a mutation tool, which a brief when-to-use sentence would have closed.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id and the numeric enum mapping for interpolation_type (0/1/2). The description restates the three mode names but adds no syntax or format 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.

Purpose4/5

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

States a specific action (Set time interpolation type) on a specific resource (a clip) and enumerates the three valid modes, so the agent knows exactly what changes. It does not distinguish itself from the closely related sibling set_frame_blend, which overlaps with one of the listed modes.

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 vs set_frame_blend, set_clip_speed_qe, or reverse_clip, all of which operate on the same clip timing domain. The agent has to infer applicability from the option list alone.

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 IngestA

Request enabling or disabling project transcoding on ingest. Premiere exposes no getter for independent verification, so dispatch is reported as requested_unverified.

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; on failure, diagnostic detail when the tool provides it.
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?

Adds real behavioral context beyond the annotations: it is a dispatch/request rather than a confirmed write, and Premier exposes no getter, so the outcome is reported as requested_unverified. That disclosure materially affects how an agent should treat success. The annotations cover safety profile, and this goes further by flagging unverifiable state.

Agents need to know what a tool does to the world before 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, zero padding, and the primary action is front-loaded before the caveat. 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 a full output schema, annotations, and complete parameter documentation, the description only needs to supply behavior the structured fields cannot. It does so by explaining the requested_unverified reporting semantics. Minor gap: no guidance on when this setting matters or how to confirm the resulting state afterward.

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

Parameters3/5

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

Only one parameter, and schema coverage is 100% — the schema description ('True to enable transcode on ingest, false to disable') fully documents it. The description adds nothing beyond that, so 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?

States a specific verb and resource: 'Request enabling or disabling project transcoding on ingest.' An agent knows exactly what the tool does. It does not name or differentiate against any sibling, but no sibling overlaps with transcoding-on-ingest, so confusion risk is low.

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 says what the tool does but never states when to reach for it versus alternatives (e.g., proxy workflows via manage_proxies, or import-time settings). No prerequisites or context conditions are given; usage is only implied by the project-level setting it names.

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; on failure, diagnostic detail when the tool provides it.
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 cover the safety profile (readOnly=false, destructive=false, openWorld=false), so the description only needs to add context. It usefully explains that enabling uniform links Scale Width and Scale Height, which is behavioral info beyond the annotations. However, it calls the operation a 'toggle' while the schema takes an explicit boolean, which is a mild wording inconsistency about how state is set.

Agents need to know what a tool does to the world before 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 with the operation stated first and the effect of enabling it second. 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 simple 2-parameter tool with an output schema and full annotation coverage, the description supplies enough to invoke it correctly. It could mention the sibling tools it competes with, but 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%, so the baseline is 3, but the description adds real meaning: it explains that 'uniform=true' links Scale Width and Scale Height, clarifying the consequence of the boolean beyond the schema's own description.

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?

Names a specific verb and resource (set uniform scale on a clip's Motion effect) and clarifies what the operation means. It is distinguishable from siblings like set_scale_width_height and set_clip_scale, though it does not explicitly contrast with 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 when-to-use guidance, no prerequisites, and never names the alternative tools (set_scale_width_height, set_scale_width_height set_scale_width_height etc.) that an agent might confuse this with. Usage is only implied by the purpose statement.

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; maximum +15 dB).
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; on failure, diagnostic detail when the tool provides it.
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 disclose the write/idempotency profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), lowering the bar. The description adds genuine behavioral context beyond that: windows are validated for overlap and range and 'rejected before any keyframe write', and times are clip-relative. It does not describe atomicity or partial-failure behavior, keeping it 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.

Conciseness5/5

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

Two tight sentences with zero padding; the primary action is front-loaded and the validation constraint follows immediately. 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, return values need not be explained, and the description covers the core action plus its validation rule. For a 4-parameter tool with full schema coverage this is nearly sufficient, though it could note scope (single clip only) and the meaning of base_db versus ducked_db more explicitly.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 notes that times are clip-relative and that windows are rejected for overlap largely restate what the schema already documents (e.g., 'Window start, relative to clip start'), adding little semantic value beyond the structured fields.

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

Purpose4/5

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

The description gives a specific verb and resource: 'Build a verified Volume > Level keyframe curve for one audio clip', which is far more concrete than a tautology. It implicitly separates itself from generic keyframe siblings like add_keyframe by framing the task around ducking windows, but it never names an alternative, 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 Guidelines3/5

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

Usage is implied rather than stated: the tool is for creating ducking curves on a clip. There is no explicit when-to-use versus when-to-use-something-else, and no mention of alternatives such as add_audio_keyframes or add_keyframe, so the agent must infer the choice.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the safety profile is already covered. The description adds no behavioral context beyond that, such as whether existing work area is overwritten or any side effects. It neither contradicts nor enriches 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?

Extremely concise single sentence with no wasted words. Front-loaded with the action and target. However, it is borderline under-specified, which slightly reduces its helpfulness as a standalone 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 two-parameter setter with full schema coverage, output schema present, and annotations covering the safety profile, the description is sufficient for an agent to invoke it correctly. It could benefit from a brief note on context (e.g., needs an active sequence), but that 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%, with both parameters clearly documented in the schema. The description adds no additional meaning or syntax beyond what the schema 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.

Purpose4/5

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

Clear verb 'Set' and resource 'work area (bar) in and out points'. Distinguishes from get_work_area and other in/out setters (e.g., set_sequence_in_out_points) by specifying 'work area'. Doesn't explicitly name alternatives, but the name and description make the 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 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. The description only states what it does, leaving the agent to infer context from the sibling tools. No alternatives or prerequisites are mentioned.

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; on failure, diagnostic detail when the tool provides it.
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=false, idempotentHint=false, and destructiveHint=false, so the agent knows this mutates UI state non-destructively. The description adds nothing beyond that — it doesn't say whether the switch persists across sessions or is scoped per-project — so it earns only a modest credit.

Agents need to know what a tool does to the world before 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 and resource first and examples in parentheses. Nothing superfluous.

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 UI-state setter with an output schema and full schema coverage, the description covers what an agent needs to call it. Minor gaps remain (persistence scope, effect on the current layout) but are not blocking.

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 param description already points to get_workspaces, which sets a baseline of 3. The description goes further by listing example workspace names ('Editing', 'Color', 'Audio', 'Effects', 'Graphics'), which is real added meaning since the schema defines no enum for this string.

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 ('Switch to') and resource ('workspace layout') and gives concrete example values ('Editing', 'Color', 'Audio'). It does not differentiate from the sibling get_workspaces, which is the natural companion tool, 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 Guidelines3/5

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

Usage is implied — you call this to change the active workspace layout — but the description offers no explicit when-to-use, no prerequisites, and no mention of get_workspaces as the discovery alternative (that pointer lives only in the schema). Adequate but not instructive.

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. WARNING: Premiere writes XMP into the source media file on disk (the file's metadata block and modification time change; picture and sound are untouched). Requires the filesystem capability.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes far beyond the annotations: it discloses that Premiere writes into the source media file on disk, that the metadata block and modification time change, that picture/sound are untouched, and that the filesystem capability is required. This is exactly the side-effect detail an agent needs before invoking a non-idempotent write.

Agents need to know what a tool does to the world before 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 waste, with the merge behavior front-loaded and the side-effect warning clearly marked. Every clause carries 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?

An output schema exists so return values need no explanation, and the description covers the mutation's on-disk consequences and the required capability. Nothing material is missing for a 2-parameter write 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 the schema already states that xmp_xml should contain 'only the fields to add or replace'. The description's 'raw XMP XML patch' and 'without removing unrelated fields' reinforce merge intent but add little 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?

States a specific verb (merge) plus resource (a project item's XMP metadata) and a precise scope qualifier ('without removing unrelated fields'). This clearly separates it from get_xmp_metadata, set_metadata, and set_project_panel_metadata without needing to 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 merge semantics imply when this tool is appropriate (patching a few XMP fields rather than replacing the block), but it never explicitly names an alternative such as get_xmp_metadata for reading or set_metadata for other metadata types. Usage is inferable but not stated.

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 PointB

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; on failure, diagnostic detail when the tool provides it.
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 this as a non-read-only, non-idempotent, non-destructive mutation. The description adds what is being changed (starting timecode / zero point), but does not disclose side effects, required permissions, or how existing sequence timing is affected.

Agents need to know what a tool does to the world before 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 wasted words. It communicates the action directly and is appropriately sized for a simple setter 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 simple two-parameter mutation with full schema coverage, annotations, and an output schema, the description is sufficient to invoke the tool. It leaves usage routing and edge-case behavior unstated, but those are secondary given the structured 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%, so sequence_id and start_seconds are already documented in the schema. The description only restates the start-time semantics and adds no syntax, default, or format details 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?

States a specific verb and resource: set the starting timecode / zero point of a sequence. It distinguishes itself from sequence-rate and sequence-resolution siblings by target, though it does not explicitly name an alternative 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?

Provides no when-to-use guidance, prerequisites, or alternatives. It does not clarify when to use this instead of other timing-related tools such as set_start_time or set_clip_start_time.

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

slide_editSlide EditA

Perform a verified slide edit on a clip using adjacent clips from the public timeline DOM. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed. Requires readable finite media and ffprobe duration evidence for every edited source; refuses unknown duration, stills, and nonunit/reversed speed before mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
include_linkedNoAlso apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).
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; on failure, diagnostic detail when the tool provides it.
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?

Goes well past the annotations (readOnly=false, destructive=false, idempotent=false) by disclosing real execution semantics: linked audio/video partners are edited by default via include_linked, all clips are validated before any mutation (atomic preflight), and the tool refuses at validation time rather than partially applying. That is exactly the behavioral detail an agent needs before invoking a timeline mutation.

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 dense sentences with the primary action front-loaded and supporting constraints following. No filler, though terms like 'public timeline DOM' and 'nonunit speed' are implementation jargon that costs a little readability for little gain.

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 verified mutation tool with a full input schema, output schema, and annotations, the description covers prerequisites, default side effects, and refusal conditions. Error/return behavior is left to the output schema, which is fine, but the lack of a stated failure contract after validation leaves 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 coverage is 100% and all three parameters carry descriptions, including the include_linked default and the sign convention for offset_seconds. The prose only restates what the schema already says, so this is the baseline 3.

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+resource ('perform a verified slide edit on a clip') and describes the mechanism (adjacent clips from the timeline DOM). It never explicitly contrasts itself with the nearby sibling edit operations slip_edit and roll_edit, so an agent must already know NLE terminology to route correctly.

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 concrete preconditions for use: readable finite media, ffprobe duration evidence, and an explicit refusal list (unknown duration, stills, nonunit/reversed speed). It stops short of naming the alternative to call when those conditions fail, so the when-not path is implied rather than routed.

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

slip_editSlip EditA

Perform a verified slip edit on a clip using public source in/out properties. Requires accessible physical media duration from ffprobe; unknown duration or linked partners using different source files refuse before mutation. Linked audio/video partners get the same edit by default (include_linked); every clip is checked before any is changed.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
include_linkedNoAlso apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).
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; on failure, diagnostic detail when the tool provides it.
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 declare the write/non-idempotent/non-destructive profile, and the description adds non-obvious behavior: a hard ffprobe duration prerequisite, pre-mutation refusal semantics, and all-or-nothing validation ('every clip is checked before any is changed'). The linked-partner default is described but largely duplicates the schema field.

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 dense sentences, front-loaded with the action and followed by prerequisites and failure behavior; every sentence carries information. Slightly telegraphic phrasing ('public source in/out properties') costs a little readability.

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?

Output schema exists so return values need no explanation. The description covers the mutation's prerequisites, refusal conditions, and linked-clip side effects – the key gaps an agent needs before invoking a non-idempotent edit. Only the sibling-tool routing is omitted.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 node_id, include_linked, and offset_seconds are already documented, including the positive/negative offset convention and the default. The description adds no parameter-level detail beyond what the schema states, so 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?

States a specific verb+resource ('verified slip edit on a clip') and adds the mechanism ('using public source in/out properties'), which implicitly distinguishes it from slide_edit and roll_edit. It never names those siblings, so an agent still has to infer the boundary from editing-domain knowledge.

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?

Gives clear preconditions (accessible ffprobe duration, no linked partners on differing source media) and states that the operation refuses rather than partially applying. It does not say when to choose this over sibling edit tools like slide_edit, roll_edit, trim_clip, or set_source_in_out.

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's documented ExtendScript and UXP APIs have no setter for a timeline clip's speed (only getters), and the undocumented QE setSpeed is deliberately not used. Always fails before mutation. To change how long a clip runs on the timeline, use set_clip_duration.

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; on failure, diagnostic detail when the tool provides it.
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?

Goes well beyond annotations: it discloses that the operation always fails before mutation, why (no setter in ExtendScript/UXP), and that the QE fallback was intentionally not used. This is exactly the kind of context needed for a non-functional stub.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with the unavailability verdict, then the reason, then the redirect. 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?

An output schema exists and the safety profile is covered by annotations; for a deliberately failing tool, the description supplies everything an agent needs to understand and avoid 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 node_id, speed_percent and reverse all documented in the schema, so the description is not required to carry parameter meaning. It adds nothing further, which is the baseline-3 case.

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 precisely what the tool does — nothing, because it fails before mutation — and explains the API reason (no documented setter; QE setSpeed deliberately avoided). This unambiguously distinguishes it from set_clip_speed_qe and get_clip_speed.

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 explicitly names the alternative, set_clip_duration, and the condition that selects it ('to change how long a clip runs'). An agent will never waste a call here by mistake.

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

split_clipSplit ClipA

EXPERIMENTAL (undocumented QE DOM): Split every clip on one track that spans a timeline time, then verify both resulting boundaries. 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; on failure, diagnostic detail when the tool provides it.
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 non-readOnly, non-idempotent, non-destructive. The description adds real value beyond them: it flags EXPERIMENTAL/undocumented QE DOM and discloses that effect-keyframe redistribution is unverified, which is exactly the kind of caveat an agent needs before mutating a timeline.

Agents need to know what a tool does to the world before 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-loading the EXPERIMENTAL warning before the operation and its verification caveat. No filler; every clause carries 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?

With an output schema present, return values need not be explained, and the description covers risk and scope well. It is slightly thin on what 'verify both resulting boundaries' actually entails, but overall adequate for this 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 track_type, track_index, and time_seconds are already documented. The description adds only the notion of 'one track' and 'a timeline time', not new syntax or format detail. 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 specific verb (Split) plus precise scope (every clip on one track that spans a timeline time), and adds a verification step. This is clearly distinguishable from siblings like razor_all_tracks, trim_clip, or split-style edits.

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 scope ('one track that spans a timeline time') implies when it applies, but there is no explicit when-to-use guidance or named alternative (e.g., razor_all_tracks, trim_clip). Usage is inferable rather than stated.

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

stabilize_clipStabilize ClipC

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; on failure, diagnostic detail when the tool provides it.
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 mutation profile is covered by structured data. The only added behavioral note is the cryptic 'Uses QE DOM', which is not explained in terms of what it means for the agent (e.g., undoability, analysis/render time, or required clip state).

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 core action front-loaded; nothing is padded. The trailing 'Uses QE DOM' is the only questionable fragment, since it conveys little without explanation.

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 need not be described, and annotations cover the safety profile. Still, for a non-idempotent clip-mutating tool, the description omits any workflow context (e.g., clip state requirements or the QE DOM reliability caveat), leaving it only 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% and each parameter (method, node_id, smoothness) is documented in the schema with defaults and trade-offs. The description adds nothing about parameters, 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?

States a specific verb ('Apply') and a specific effect ('Warp Stabilizer') on a clip, which is clearly distinct from the generic sibling apply_effect and from inspect_stabilizer_status. However, it never names those siblings or otherwise differentiates itself from them explicitly.

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, when-not-to-use, prerequisites, or alternatives are given. An agent getting a stabilizer request has no guidance on whether to call this versus apply_effect or to check inspect_stabilizer_status first.

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; on failure, diagnostic detail when the tool provides it.
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 state readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the description does not need to repeat safety basics. It adds useful behavioral context by clarifying the asynchronous, handoff-only nature of the call and explicitly bounding what the response does not represent.

Agents need to know what a tool does to the world before 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 with the action front-loaded followed immediately by the important limitation. Every clause earns its place by clarifying scope and avoiding false expectations.

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 zero parameters, available annotations, and an output schema, the description is complete enough for an agent to invoke the tool correctly. It states the action and the key behavioral boundary 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.

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 semantics for the description to explain. The baseline for a zero-parameter tool with an empty input schema 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 states a specific verb and resource: request Adobe Media Encoder to start the render queue. It also distinguishes the tool's scope from related operations by clarifying that it only reports an accepted handoff and does not report queue progress or output-file creation.

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 for when to use the tool and explicitly excludes expectations of progress or output-file creation. However, it does not name the alternative sibling tools for checking progress or confirming completed output, leaving that 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.

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. Only the timeline can be stopped: Premiere's scripting APIs have no documented call that stops the Source Monitor alone, so target "source" returns an error instead of stopping the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetNoWhat to stop. Default "timeline". "source" is refused because no documented API stops only the Source Monitor.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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 only cover the safety profile (non-readonly, non-destructive). The description adds genuinely useful behavioral context beyond them: playback is stopped via QE, the stopped state cannot be verified because the legacy API provides no same-call playhead readback, and 'source' errors out rather than stopping. That verification caveat is exactly the kind of trait annotations cannot 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?

Three sentences, front-loaded with the action, with no filler. The source-error clause is slightly redundant with the schema's own enum description, but every sentence still carries operational weight.

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 values need not be explained. The description covers the action, the source-refusal behavior, and the verification limitation, leaving little an agent would need before 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 coverage is 100% and the enum value descriptions already explain why 'source' is refused, so the single parameter is fully documented in structured data. The description largely restates that reasoning rather than adding new syntax or format meaning, making 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?

States a specific verb+resource ('active-sequence timeline playback stop') and implicitly distinguishes itself from the inverse sibling play_timeline. An agent can tell exactly what operation this performs 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?

Explicitly defines the negative case: only the timeline can be stopped and target 'source' returns an error, so the agent knows not to attempt source-monitor stopping. It stops short of naming an alternative tool, but the when-not condition is unambiguous.

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 VisibilityA

Set video track visibility using Premiere's track mute state (eye icon) and read the mute state back. Premiere's scripting API exposes mute, not a separate video visibility setter.

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; on failure, diagnostic detail when the tool provides it.
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?

Annotations cover the safety profile (readOnly=false, destructive=false), and the description adds genuinely useful context beyond them: the operation maps onto Premiere's mute state and reads the state back, so the agent understands it is a real mutation of track mute. Minor tension with idempotentHint=false since setting a boolean 'visible' reads as idempotent, but the tool name 'toggle' is consistent with that annotation.

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 tight sentences, front-loaded with the action and followed by the mechanism explanation. No padding; the second sentence earns its place by explaining the mute-state indirection.

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 values need not be explained, and annotations carry the safety profile. For a 2-parameter mutation tool the definition is largely sufficient, with the only real omission being guidance versus the mute_track 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% and both parameters ('visible' boolean, 'track_index' 0-based) are fully documented in the schema. The description adds no syntax or format detail beyond that, so 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?

States a specific verb and resource ('Set video track visibility') and clarifies the underlying mechanism (track mute state / eye icon). It is distinguishable from generic track tools, though it never addresses the closely related 'mute_track' sibling, leaving the agent to infer the difference.

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 explains how visibility is implemented but gives no when-to-use guidance or exclusions. With a 'mute_track' sibling in the list, the absence of any routing between the two is a clear gap.

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. Requires accessible physical media duration from ffprobe; unknown duration or linked partners using different source files refuse before mutation. Refuses retimed clips, extensions that would overlap the neighbouring clip on the same track, and, by default, trims that would leave effect keyframes outside the visible clip. Linked audio/video partners get the same trim by default (include_linked), applied as the same offset from each partner's own source point so a J/L cut or slipped audio stays in sync; every clip is checked before any is changed. To set a clip's timeline length or extend a still image, use set_clip_duration.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to trim
include_linkedNoAlso apply the edit to the clip's linked audio/video partners, as Premiere does with linked selection (default: true).
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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare it is not read-only and not destructive, but the description adds substantial behavioral detail: it requires ffprobe duration, refuses before mutation on specific conditions, applies the same trim to linked partners with offset preservation, checks every clip before any change, and explains keyframe handling. This is well 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.

Conciseness4/5

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

Front-loaded with the core action and then requirements, refusals, linked behavior, and an alternative. Dense but every sentence carries specific, non-redundant information. Slightly long but justified by the tool's complexity.

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's complexity, the description covers prerequisites, refusal conditions, linked-partner semantics, keyframe policy, and an alternative tool. Output schema exists, so return values need not be explained. Nothing critical 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 coverage is 100% so all parameters are already documented in the schema. The description adds meaning by explaining the linked-partner offset behavior ('same offset from each partner's own source point so a J/L cut or slipped audio stays in sync') and clarifying keyframe_policy default behavior, which enriches understanding beyond the schema text.

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?

Starts with a specific verb and resource: 'Trim exactly one source in/out point and verify the corresponding visible timeline edge.' Clearly distinguishes itself from the named alternative set_clip_duration by scope, and the agent can immediately tell what operation is performed.

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 set_clip_duration as the correct tool for setting timeline length or extending stills, and lists clear preconditions and refusal conditions (unknown duration, linked partners with different source files, retimed clips, overlapping extensions, keyframe policy). No inference needed for when to use or avoid this tool.

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

undoUndoA

EXPERIMENTAL (undocumented QE DOM: qe.project.undo / undoStackIndex). Undo the most recent Premiere project action(s) through QE, checked step by step against Premiere's undo-stack position (stackVerified; the timeline itself is not read back). Undo history is project-wide. Only actions Premiere records are undoable: QE edits such as razor, insert, lift and extract report undoSteps (and undoStackIndex) in their results; pass that undoSteps as count to reverse exactly that call. A marker receipt with undoTracked:false recorded no undo step: calling Undo for it would reverse an earlier action. Only CEP tool results carry undoSteps; UXP tools and workflows that send several commands are not counted. Always pass expected_undo_stack_index to check the stack position, but matching position alone does not prove which action is on top. Observed marker boundaries refuse the entire request before any step unless acknowledge_untracked_markers:true explicitly permits prior non-marker actions. The barrier persists through server/helper reloads while the CEP engine remains alive; it cannot account for marker writes before observation, after an engine reset, or through UXP, the manual UI, or other clients. Matching the QE index verifies stack position only.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of times to undo (default: 1)
expected_undo_stack_indexYesRequired safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top.
acknowledge_untracked_markersNoExplicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it.
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?

Goes far beyond the annotations: EXPERIMENTAL status, undocumented QE DOM paths, project-wide undo history, step-by-step position check with a stated blind spot ('matching position alone does not prove which action is on top'), persistence of the marker barrier across reloads, and enumerated limits (UXP, manual UI, engine resets). The destructiveHint=false annotation is not contradicted, though the warning that Undo 'would reverse an earlier action' is exactly the risk an agent must weigh.

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

Conciseness3/5

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

One dense paragraph with the critical EXPERIMENTAL warning and safety-guard behavior front-loaded, but verbose and repetitive: the caveat that a matching index proves position only is stated twice. Much of the length is earned by the tool's complexity, but it could be tightened.

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 mutant, experimental QE-backed tool with a required safety guard, the description covers prerequisites, failure modes (refused step, marker barrier), permission/acknowledgment semantics, and known blind spots. An output schema exists, so return values need not be described.

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 baseline is 3, but the description adds real meaning: it explains that the undoSteps value from a prior call should be passed as count to reverse exactly that call, and that expected_undo_stack_index is a positional guard rather than proof of the top action. That connects the parameters to the workflow rather than restating their types.

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 ('Undo the most recent Premiere project action(s) through QE') and pins down the mechanism (PS undo-stack position verified via undoStackIndex). It implicitly scopes itself away from untracked actions, but never names the adjacent siblings redo or multiple_undo, so an agent must infer the boundary itself.

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?

Strong when-to-use guidance: only actions Premiere records are undoable, pass the undoSteps a QE edit returned as count, and acknowledge_untracked_markers is required to pass a marker receipt boundary. Clear conditions, but no explicit routing against the sibling undo-family tools.

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 clip, replacing it with the nested sequence's clips at their exact source in/out and timeline positions. Refuses without changing anything when the nest is trimmed, retimed, linked to a partner clip, or when the destination range is occupied or locked. Re-reads every placed clip and reports failure with Undo guidance if any start or source range differs. Nested clips are re-placed from their project items, so effects, keyframes, and transitions inside the nest are not carried over.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnly=false, destructive=false, idempotent=false, but the description adds substantial context beyond them: failure is atomic ('without changing anything'), it re-reads every placed clip and reports failure with Undo guidance if ranges differ, and effects/keyframes/transitions inside the nest are not carried over. These are exactly the non-obvious behavioral traits an agent needs.

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?

Four sentences, all of which carry load-bearing information (operation, refusal conditions, verification behavior, data-loss caveat) and the core action is front-loaded. Slightly dense, but no sentence is waste.

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 an output schema present, return values need not be explained; the description fully covers the mutation semantics, atomicity, refusing conditions, and the effects/keyframes caveat. Nothing an agent needs to call this 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% for the single node_id parameter, so the schema already documents it fully. The description adds no additional syntax or format detail about node_id, 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+resource (unnest a nested sequence clip) and describes the exact resulting operation: replacing it with the nested sequence's clips at their source in/out and timeline positions. An agent can distinguish this from the reverse operation nest_clips without opening either 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?

Gives explicit preconditions/when-not conditions: it refuses when the nest is trimmed, retimed, linked to a partner clip, or the destination range is occupied or locked. It does not name an alternative tool to use in those cases (e.g., nest_clips, unlink_selection), so it falls 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.

update_markerUpdate MarkerB

Update the name, comments or color of the sequence marker at a time and read them back. EXPERIMENTAL (QE DOM): the receipt reports undoStackIndex movement, which does not prove QE can reverse the marker. Every marker attempt protects an engine undo boundary; undoTracked:false means the marker did not observably advance the QE index.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name
colorNoNew color index (0=Green, 1=Red, 2=Purple, 3=Orange, 4=Yellow, 5=White, 6=Blue, 7=Cyan)
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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, destructiveHint=false. The description adds non-obvious behavioral context about undo-boundary protection and the undoTracked:false flag, but expresses it in dense, opaque jargon (QE DOM, undoStackIndex) that is hard for an agent to act on.

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

Conciseness3/5

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

The purpose is front-loaded in the first sentence, but the trailing experimental paragraph is dense and jargon-heavy, and the phrase 'at a time' is awkward. Adequately sized but the caveat is hard 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?

An output schema exists, so return values needn't be explained, and annotations cover the safety profile. However, the description omits practical preconditions such as whether the marker must already exist at time_seconds or what happens on an invalid position.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 itself documents all four parameters, including color indices. The description only restates the field names without adding syntax, format, or edge-case meaning 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?

States a specific verb (update), resource (sequence marker), and the editable fields (name, comments, color). This distinguishes it from add_marker/delete_marker siblings, though it never names those alternatives explicitly.

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 and no alternatives or prerequisites. It only implies usage through the word 'update', leaving the agent to infer that this modifies existing markers rather than creating or removing them.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false. The description adds the validation scope and the local-file constraint, but does not explain the non-read-only or non-idempotent behavior, which is unexpected for a 'validate' operation. With annotations present, this leaves 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?

Consists of a single well-structured sentence, front-loaded with the action and object. Every clause enumerates a distinct validation check and earns its place; 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?

Given that an output schema exists and annotations supply safety hints, the description provides the validation scope and usage context. It omits any explanation of the non-read-only annotation, but is otherwise complete enough for a validation utility.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 (path, frame_rate) with descriptions. The description adds no parameter-specific syntax or constraints 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?

States a specific verb 'Validate' and resource 'CMX 3600 EDL', and enumerates the aspects validated (grammar, timecodes, durations, duplicate event IDs, record overlaps, record gaps). However, it does not explicitly differentiate from sibling tools like inspect_cmx3600_edl or compare_cmx3600_edls, so it falls 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 Guidelines4/5

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

Provides clear context: 'before user-assisted Premiere interchange,' indicating the appropriate use case. But it does not state when not to use it or name alternative tools, so exclusions are missing.

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; on failure, diagnostic detail when the tool provides it.
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 declare readOnlyHint=false and idempotentHint=false, yet the description frames the tool as an innocuous existence check plus a question asked of the sequence, giving no account of the state change implied by the annotations (e.g., loading a preset onto the sequence to derive its extension). It also says nothing about failure behavior when the preset is missing or when no sequence is active.

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 that covers both behaviors with no filler. It is appropriately sized for a one-parameter tool, though the second clause (asking the sequence) reads a bit awkwardly and could be tightened.

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-value explanation is unnecessary, and the one parameter is fully documented. The description covers both halves of the operation; the only material omission is any note about the non-read-only side effect and error conditions.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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% for the single required preset_path parameter, and the schema already documents it as a full path to an .epr file. The description adds no format, path-resolution, or relative-vs-absolute detail beyond that, 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 specific verbs (validate existence, query output extension) and specific resources (an Adobe Media Encoder .epr preset, the active Premiere sequence), which is far more than a restatement of the name. It is distinguishable from nearby siblings like get_encoder_presets or validate_project_for_export, though it never explicitly names an alternative to differentiate itself.

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 when-to-use or when-not-to-use guidance. The only implicit signal is that this is a pre-export check, but the description never states prerequisites (e.g., an active sequence must exist) or how it relates to sibling validators such as validate_project_for_export or verify_delivery_conformance.

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; on failure, diagnostic detail when the tool provides it.
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 readOnly, idempotent, non-destructive and non-open-world. The description adds genuine scope detail beyond that ('never reads font inventories, image pixels, or writes files'), which tells the agent exactly what side effects will not occur. It is consistent with the annotations but does not describe failure modes or validation outcomes.

Agents need to know what a tool does to the world before 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 with the primary action front-loaded and the scope constraint following. No filler 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?

With an output schema present and rich annotations, the description needn't explain return values, and the schema fully covers the two parameters. The remaining gap is that it never says what 'valid' actually means or what conditions cause a 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 nested fields like font_family and safe_margin_percent carry their own descriptions, so the schema does the heavy lifting. The description adds no parameter-level meaning, matching the baseline of 3.

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 (validate) and resource (MOGRT brand kit) plus its place in the workflow ('before using it in a template or batch preview'). It does not explicitly name a sibling such as verify_mogrt_artifact or preview_mogrt_recipe to disambiguate, 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 Guidelines4/5

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

Gives a clear when-to-use condition: validate before using the kit in a template or batch preview. No explicit when-not or named alternative is given, so it is clear context without exclusions.

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; on failure, diagnostic detail when the tool provides it.
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, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds meaningful context: it is local-only, never uploads, never mutates Premiere, and it validates against approximate (not guaranteed) limits, which warns the agent results may be soft.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with the purpose, then the outputs, then the safety constraint. No padding and every clause carries 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?

With an output schema present, the description need not detail return values, and it still summarizes them (violations, warnings, normalized hashtags, counts). Annotations cover the safety profile. The only gap is the absence of explicit guidance on when to prefer this over neighboring validation/planning 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% across 14 params, so the schema carries parameter documentation. The description names the metadata categories (title, description, hashtags, content flags) and the rendered file, adding light orientation but no format or syntax 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?

States a specific verb (validate) and resource (rendered file plus publish metadata) and scopes it to 'one platform's approximate 2026 publish limits.' The 'Local-only; never uploads or changes Premiere' clause clearly separates it from mutation/delivery siblings like export_sequence or verify_delivery_conformance.

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 – validate a publish package before posting to a given platform – but no alternative is named and no explicit when/when-not is given. Siblings such as plan_platform_delivery_matrix or verify_delivery_conformance are not referenced, leaving the agent to infer the boundary.

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 preflight 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. readyForExport means these preflight checks passed; it does not test exporter initialization, encoder availability, or whether the host can render. Require an actual output file from export_sequence and verify_delivery_file before claiming delivery.

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds real value beyond them: it defines what readyForExport actually means and explicitly bounds that guarantee, preventing an agent from over-claiming success. This is exactly the kind of behavioral nuance the structured fields cannot 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?

Three sentences, front-loaded with the purpose and tightly packed with the guarantee boundary. It is dense rather than padded, though the limitation clauses make it longer than strictly minimal for a preflight 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 an output schema present, return values need not be explained, and the description instead covers the semantically critical part — the meaning and limits of readyForExport — plus the required downstream verification. Nothing an agent needs to call this correctly 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 still adds semantic framing by enumerating what each optional input checks (gaps, empty timelines, preset/output paths, duration), connecting the booleans and paths to observable preflight outcomes rather than restating types.

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: 'Run a non-mutating export preflight for an active or named sequence.' It scopes exactly what it checks (offline media, empty timelines, preset/output paths, duration, gaps) and distinguishes itself from the sibling export_sequence and verify_delivery_file tools 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 Guidelines5/5

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

It states both when to use it (preflight before export) and, more valuably, when it is NOT sufficient: 'it does not test exporter initialization, encoder availability, or whether the host can render.' It names the follow-up tools (export_sequence, verify_delivery_file) required before claiming delivery, which is explicit alternative routing.

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 ConnectionC

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; on failure, diagnostic detail when the tool provides it.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior1/5

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

The description explicitly claims 'Read-only check', but annotations declare readOnlyHint=false. This is a direct contradiction, making the description misleading about the tool's 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, front-loaded with the core purpose. The second sentence clarifies scope and is not wasteful; every sentence 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?

For a simple zero-parameter check with an output schema, the description covers purpose but the contradiction with annotations leaves the agent unsure about read-only behavior and side effects. The claim 'never reads project names, media, or paths' is detailed but conflicts with the annotation, reducing completeness.

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 the baseline score is 4 per the rubric. The description adds no parameter semantics because there are none to describe.

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 (check/verify) and resource (After Effects CEP connector), and clarifies scope by saying it never reads project names, media, or paths. Differentiates from sibling verify_premiere_connection implicitly by targeting After Effects, but does not explicitly name an 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?

No guidance on when to use this tool versus alternatives such as verify_premiere_connection. The description only states what it does, not when it is appropriate or what prerequisites exist.

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; on failure, diagnostic detail when the tool provides it.
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 establish the safe read-only, idempotent, closed-world profile. The description adds real value beyond that: it discloses the three-valued result model (pass/fail/not_evaluated per check) and explicitly negates what it cannot prove, which prevents over-trusting a pass verdict.

Agents need to know what a tool does to the world before 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-loaded with the action and the contract framing, then the result model and the scope caveat. No filler, and the most decision-relevant caveat comes last where it is still easy to retain.

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

Completeness4/5

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

For a 17-parameter read-only verification tool with an output schema and full schema coverage, the description covers the essentials: what is analyzed, what the possible verdicts are, and where the guarantees stop. The only genuine omission is routing guidance against the near-identical verify_delivery_file 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 every one of the 17 parameters is already documented in the schema with types, defaults, and units. The description adds no per-parameter semantics beyond the phrase 'explicit delivery contract', 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 states a specific verb and resource — verifying a local exported file against a delivery contract — and names the underlying tooling (ffprobe, EBU R128), so the agent knows what is being checked. It does not distinguish itself from the very close sibling verify_delivery_file, leaving 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?

There is no explicit when-to-use or routing to alternatives such as verify_delivery_file or validate_project_for_export. However, the scope exclusions ('does not prove Premiere render lineage or visual approval') function as implicit when-not guidance, which lifts it above pure silence.

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; on failure, diagnostic detail when the tool provides it.
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 description usefully discloses the pass criteria (regular file, non-empty, size/checksum match), but it portrays a pure read/verify operation while the annotations declare readOnlyHint=false and idempotentHint=false — a checksum calculation on a fixed file is inherently read-only and idempotent. This mismatch misleads an agent reasoning about side effects and safe retries.

Agents need to know what a tool does to the world before 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 action (verify regular file) before the computed checksum and the optional comparisons. 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?

An output schema exists, so return-value explanation is unnecessary, and the description covers inputs, pass criteria, and behavior. The only gap is how failure is surfaced (raised error vs result flag), which the description leaves to the 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 description coverage is 100%, so all five parameters (output_path, expected_checksum, checksum_algorithm, minimum_size_bytes, expected_size_bytes) are already documented in the schema. The description reinforces the checksum-algorithm and optional-comparison semantics but adds no syntax or format detail beyond it; 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?

Precise verb+resource: it states exactly what is verified (a non-empty regular file), what is computed (SHA-256/SHA-512 checksum), and what optional comparisons occur. An agent can distinguish this file-level integrity check from broader siblings like verify_delivery_conformance 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 description implies its context (post-export integrity checking) but never states when to use it versus siblings such as validate_project_for_export or verify_delivery_conformance, nor any prerequisites (e.g., that the delivery must already exist). Usage is inferred rather than directed.

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 the file:// media references of an FCPXML or FCP7 XML (xmeml) document, 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; on failure, diagnostic detail when the tool provides it.
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 state the safety profile, but the description adds meaningful behavioral context: references outside approved roots are never statted or exposed as local paths. It does not clarify any side effects or why readOnlyHint is false, but the security-boundary disclosure is valuable 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 two tight sentences with no wasted words. The core action and the important root-scoping constraint 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?

An output schema exists, so return-value details are not required. The description covers the key scope and privacy behavior, though it leaves mildly ambiguous what 'verify' includes beyond path eligibility.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 in detail. The description reinforces the allowed_roots constraint but adds little syntax or format detail beyond the schema, making the baseline of 3 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 gives a specific verb+resource: verify file:// media references of an FCPXML or FCP7 XML document. It also states the scope constraint of caller-approved roots. However, it does not explicitly distinguish the tool from nearby siblings such as inspect_fcpxml_interchange, so 4 rather than 5.

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 its scope constraint: only references inside caller-approved existing roots are inspected. It does not say when to choose this tool over alternatives or when not to use it, leaving usage guidance at the minimum viable level.

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; on failure, diagnostic detail when the tool provides it.
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, idempotentHint, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context by specifying the exact check performed and the important negative guarantees about what it does not prove.

Agents need to know what a tool does to the world before 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 verification statement followed by explicit limitations. Every sentence earns its place and 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?

For a simple read-only verification tool with rich annotations, complete parameter schema, and an output schema, the description is appropriately complete. It clarifies the exact scope and non-scope, and return values are covered by the 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 description coverage is 100%, so both required parameters are fully documented in the schema itself. The description reinforces the workspace-contained nature but adds no syntax or format 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 names a specific verb (Verify) and resource (.mogrt artifact), and states the exact technical scope: local presence plus ZIP header. The negative list (does not prove controls, import compatibility, playback, or visual correctness) distinguishes it from sibling validation and preview tools without needing to 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 description implies usage as a lightweight pre-flight existence/format check, and its negative list helps set expectations. However, it does not explicitly say when to use this tool instead of alternatives like validate_mogrt_brand_kit or preview_mogrt_recipe, leaving alternative selection to inference.

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; on failure, diagnostic detail when the tool provides it.
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 false, and openWorldHint false. The description adds meaningful behavioral context beyond those annotations: the check never returns project names, paths, or media details, and it verifies connectivity without exposing sensitive data.

Agents need to know what a tool does to the world before 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 with no wasted words. The purpose is front-loaded, and the second sentence adds the key behavioral guarantee about what is not returned.

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 verification tool with rich annotations, full schema coverage, and an output schema, the description is complete. It covers purpose, safety, and the privacy constraint 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% and the single backend parameter is fully documented in the schema, including its default and the fact that this check never falls back to a different bridge. The description adds no parameter-level semantics beyond that, 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 states a specific verb and resource: it verifies that the MCP server, selected Premiere bridge, active project, and active sequence are connected. The phrase 'first-run check' and the privacy constraint help distinguish it from broader state or capability 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 Guidelines4/5

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

It clearly establishes the context for use as a safe, read-only first-run connection check. It does not explicitly name alternatives such as get_capabilities or ping, nor state when not to use it, 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 21 tool updatesv1.19.0
    • Changedadd_audio_keyframes4 fields changed
      • changedInput schema / properties / keyframes / items / properties / level_db / description
        Previous value: -"Audio level in dB"New value: +"Audio level in dB (maximum +15 dB)"
      • addedInput schema / properties / keyframes / items / properties / level_db / maximum
        Added value: +15
      • addedInput schema / properties / keyframes / items / properties / time_seconds / minimum
        Added value: +0
      • addedInput schema / properties / keyframes / minItems
        Added value: +1
    • Changedadd_keyframe1 field changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time in seconds relative to clip start where to add keyframe"New value: +"Seconds from the clip's start on the timeline (0 is the clip's first frame) where to add the keyframe"
    • Changedadd_marker1 field changed
      • changedInput schema / properties / node_id / description
        Previous value: -"Optional clip node ID to add marker to clip instead of sequence"New value: +"Optional clip node ID to add the marker to that clip instead of the sequence. Premiere 25.2.3 timeline clips have no marker collection, so this refuses there and names the source time to use with add_marker_to_project_item."
    • Changedadd_markers_batch1 field changed
      • changedInput schema / properties / node_id / description
        Previous value: -"Optional timeline clip node ID; markers are then created on that clip instead of the sequence (requires the active sequence)."New value: +"Optional timeline clip node ID; markers are then created on that clip instead of the sequence (requires the active sequence). Premiere 25.2.3 timeline clips have no marker collection, so this refuses there and names the source time to use with add_marker_to_project_item."
    • Changedadd_to_render_queue1 field changed
      • addedInput schema / properties / start_batch
        Added value: +{
        +  "description": "Opt in to start the entire ready Adobe Media Encoder queue after this handoff, including unrelated jobs. Default false (enqueue only). A successful call does not verify that any render started or completed.",
        +  "type": "boolean"
        +}
    • Changeddelete_marker1 field changed
      • changedInput schema / properties / node_id / description
        Previous value: -"Optional clip node ID (deletes from sequence if omitted)"New value: +"Optional clip node ID (deletes from sequence if omitted). Premiere 25.2.3 timeline clips have no marker collection, so this refuses there."
    • Changedexport_sequence1 field changed
      • changedInput schema / properties / range / description
        Previous value: -"What to render: the entire sequence (default), the sequence in/out range (set_sequence_in_out_points), or the work area. Scripts cannot set the work area on current Premiere builds, so prefer in_to_out for a ranged export."New value: +"What to render: the entire sequence (default), the sequence in/out range (set_sequence_in_out_points), or the work area. work_area requires an enabled work area around part of the sequence; unset or full-sequence work areas are refused instead of encoding everything. Set and read back a valid work area where the host supports it, or use in_to_out for a ranged export."
    • Changedget_value_at_time1 field changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time in seconds to query the value at"New value: +"Seconds from the clip's start on the timeline (0 is the clip's first frame) to read the value at"
    • Changedimport_media2 fields changed
      • addedInput schema / properties / file_paths / items / minLength
        Added value: +1
      • addedInput schema / properties / file_paths / minItems
        Added value: +1
    • Changedmultiple_undo3 fields changed
      • addedInput schema / properties / acknowledge_untracked_markers
        Added value: +{
        +  "description": "Explicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / expected_undo_stack_index / description
        Previous value: -"Optional safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if actions were undone and new ones recorded since, the position can match again and undo would reverse the newer action."New value: +"Required safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top."
      • addedInput schema / required
        Added value: +[
        +  "expected_undo_stack_index"
        +]
    • Changedredo3 fields changed
      • addedInput schema / properties / acknowledge_untracked_markers
        Added value: +{
        +  "description": "Explicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / expected_undo_stack_index / description
        Previous value: -"Optional safety guard: the undoStackIndexAfter reported by the undo you want to redo. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if other actions were undone and redone, or new ones recorded, since, the position can match again and redo would re-apply a different action than the one you undid (a new action also clears Premiere's redo history)."New value: +"Required safety guard: the undoStackIndexAfter reported by the undo you want to redo. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top."
      • addedInput schema / required
        Added value: +[
        +  "expected_undo_stack_index"
        +]
    • Changedrelink_media1 field changed
      • addedInput schema / properties / allow_unsafe_cep_relink
        Added value: +{
        +  "description": "Explicitly permit the legacy CEP changeMediaPath call. It can wedge Premiere even when the target file exists; prefer relink_offline_media_uxp.",
        +  "type": "boolean"
        +}
    • Changedremove_keyframe1 field changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time in seconds of the keyframe to remove"New value: +"Seconds from the clip's start on the timeline (0 is the clip's first frame) of the keyframe to remove"
    • Changedremove_keyframe_range2 fields changed
      • changedInput schema / properties / end_seconds / description
        Previous value: -"End of the range in seconds"New value: +"End of the range, in seconds from the clip's start; must not be before start_seconds"
      • changedInput schema / properties / start_seconds / description
        Previous value: -"Start of the range in seconds"New value: +"Start of the range: seconds from the clip's start on the timeline (0 is the clip's first frame)"
    • Changedset_blend_mode1 field changed
      • changedInput schema / properties / blend_mode / enum
        Previous value: -[
        -  "Normal",
        -  "Dissolve",
        -  "Darken",
        -  "Multiply",
        -  "Color Burn",
        -  "Linear Burn",
        -  "Darker Color",
        -  "Lighten",
        -  "Screen",
        -  "Color Dodge",
        -  "Linear Dodge",
        -  "Lighter Color",
        -  "Overlay",
        -  "Soft Light",
        -  "Hard Light",
        -  "Vivid Light",
        -  "Linear Light",
        -  "Pin Light",
        -  "Hard Mix",
        -  "Difference",
        -  "Exclusion",
        -  "Subtract",
        -  "Divide",
        -  "Hue",
        -  "Saturation",
        -  "Color",
        -  "Luminosity"
        -]New value: +[
        +  "Color",
        +  "Color Burn",
        +  "Color Dodge",
        +  "Darken",
        +  "Darker Color",
        +  "Difference",
        +  "Dissolve",
        +  "Exclusion",
        +  "Hard Light",
        +  "Hard Mix",
        +  "Hue",
        +  "Lighten",
        +  "Lighter Color",
        +  "Linear Burn",
        +  "Linear Dodge",
        +  "Linear Light",
        +  "Luminosity",
        +  "Multiply",
        +  "Normal",
        +  "Overlay",
        +  "Pin Light",
        +  "Saturation",
        +  "Screen",
        +  "Soft Light",
        +  "Vivid Light",
        +  "Subtract",
        +  "Divide"
        +]
    • Changedset_clip_properties5 fields changed
      • addedInput schema / properties / opacity / maximum
        Added value: +100
      • addedInput schema / properties / opacity / minimum
        Added value: +0
      • changedInput schema / properties / scale / description
        Previous value: -"Scale percentage (100 = original size)"New value: +"Scale percentage (0-10000; 100 = original size)"
      • addedInput schema / properties / scale / maximum
        Added value: +10000
      • addedInput schema / properties / scale / minimum
        Added value: +0
    • Changedset_keyframe_interpolation1 field changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time in seconds of the keyframe"New value: +"Seconds from the clip's start on the timeline (0 is the clip's first frame) of the keyframe"
    • Changedset_playhead_position1 field changed
      • changedInput schema / properties / time_seconds / description
        Previous value: -"Time position in seconds to move the playhead to"New value: +"Time position in seconds to move the playhead to (0 to the sequence end)"
    • Changedset_sequence_in_out_points2 fields changed
      • changedInput schema / properties / in_seconds / description
        Previous value: -"In-point in seconds"New value: +"In-point in seconds (0 or later)"
      • changedInput schema / properties / out_seconds / description
        Previous value: -"Out-point in seconds"New value: +"Out-point in seconds; after in_seconds and not past the sequence end"
    • Changedsetup_ducking2 fields changed
      • changedInput schema / properties / base_db / description
        Previous value: -"Normal clip level in dB (defaults to 0)."New value: +"Normal clip level in dB (defaults to 0; maximum +15 dB)."
      • changedInput schema / properties / ducking_windows / items / properties / ducked_db / description
        Previous value: -"Level during the window, in dB."New value: +"Level during the window, in dB (maximum +15 dB)."
    • Changedundo3 fields changed
      • addedInput schema / properties / acknowledge_untracked_markers
        Added value: +{
        +  "description": "Explicitly acknowledge that QE steps reverse or restore prior non-marker actions, because marker reversal is not verified. Default false; marker boundaries refuse the entire request before any step.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / expected_undo_stack_index / description
        Previous value: -"Optional safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if actions were undone and new ones recorded since, the position can match again and undo would reverse the newer action."New value: +"Required safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. The guard compares the position only; matching position cannot prove which action is on top."
      • addedInput schema / required
        Added value: +[
        +  "expected_undo_stack_index"
        +]
  2. 384 tool updatesv1.18.6
    • Changedadd_adjustment_layer2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_audio_keyframes2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_custom_metadata_field2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_keyframe2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_marker2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_marker_to_project_item2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_markers_batch1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_text_overlay2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Addedadd_title
    • Changedadd_to_render_queue2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_to_timeline2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_to_timeline_batch1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_tracks2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_transition2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadd_transition_to_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedadjust_audio_levels2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedanalyze_dialogue_edit_candidates1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedanalyze_loudness2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedanalyze_video_interlacing2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedanalyze_video_qc2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_after_effects_render_handoff1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_audio_effect2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_edit_plan5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / plan / description
        Previous value: -"An edit plan containing insert_clip and remove_clip operations (maximum 100)"New value: +"An edit plan: { sequence_id?, operations: [...] } with up to 100 insert_clip and remove_clip operations. Operations run in order, and each one's times refer to the timeline as the operations before it left it."
      • addedInput schema / properties / plan / properties
        Added value: +{
        +  "operations": {
        +    "items": {
        +      "properties": {
        +        "audio_track_index": {
        +          "description": "insert_clip: audio track (default 0)",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "include_linked": {
        +          "description": "remove_clip without ripple: also remove linked audio/video partners (default true)",
        +          "type": "boolean"
        +        },
        +        "item_id": {
        +          "description": "insert_clip: project item node ID or name",
        +          "type": "string"
        +        },
        +        "node_id": {
        +          "description": "remove_clip: timeline clip node ID",
        +          "type": "string"
        +        },
        +        "ripple": {
        +          "description": "remove_clip: close the gap with a verified sync-locked ripple delete (always takes linked partners)",
        +          "type": "boolean"
        +        },
        +        "start_seconds": {
        +          "description": "insert_clip: timeline insert time in seconds (insert edit, sync-locked tracks shift)",
        +          "minimum": 0,
        +          "type": "number"
        +        },
        +        "type": {
        +          "enum": [
        +            "insert_clip",
        +            "remove_clip"
        +          ],
        +          "type": "string"
        +        },
        +        "video_track_index": {
        +          "description": "insert_clip: video track (default 0)",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "type"
        +      ],
        +      "type": "object"
        +    },
        +    "maxItems": 100,
        +    "minItems": 1,
        +    "type": "array"
        +  },
        +  "sequence_id": {
        +    "description": "Sequence name or ID to edit (activated first); defaults to the active sequence",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / plan / required
        Added value: +[
        +  "operations"
        +]
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_effect2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_lut2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_mogrt_premiere_handoff1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedapply_spot_workflow_plan1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedattach_custom_property2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedaudit_timeline_health1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedauto_reframe_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedbatch_add_transitions2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedbatch_apply_effect2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedbatch_enable_disable2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedbatch_rename_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedbuild_caption_artifact1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcapture_frame2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcheck_caption_safe_zone1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcheck_offline_media1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclear_item_in_out2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclear_sequence_in_out2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclose_all_source_clips1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclose_project3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / project_path
        Added value: +{
        +  "description": "Path of the open project to close (default: the active project)",
        +  "type": "string"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclose_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedclose_source_monitor1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcolor_correct2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcompare_cmx3600_edls2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcompute_mask_fit_motion1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedconsolidate_and_transfer4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / copy_to_new_location / description
        Previous value: -"Copy media to a new location (default: true)"New value: +"Must be true (the default): Premiere's scripted Project Manager always collects media into the destination."
      • changedInput schema / properties / transcode / description
        Previous value: -"Transcode media during copy (default: false)"New value: +"Transcode media to match the sequence instead of copying it (default: false)"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedconsolidate_duplicates1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcopy_effect_values2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcopy_effects_between_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_bars_and_tone3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / bin_id
        Added value: +{
        +  "description": "Optional destination bin: node ID, slash-separated bin path from the project root, or bin name. The bin is resolved before anything is created; the item is moved there and its location read back.",
        +  "type": "string"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_caption_track1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_context_edit_plan2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_editorial_context_pack1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_editorial_plan1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_mogrt_batch1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_mogrt_recipe1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_project2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_project_backup2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_sequence_checkpoint1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_sequence_from_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_sequence_from_preset2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_smart_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_subclip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcreate_subsequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedcrop_clip1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_marker2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_multiple_project_items3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / confirm_remove_from_sequences
        Added value: +{
        +  "description": "Delete even when an item (or something inside a bin) is used in a sequence, which also removes those timeline clips (default: false).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_preview_files2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_project_item3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / confirm_remove_from_sequences
        Added value: +{
        +  "description": "Delete even when the item (or something inside the bin) is used in a sequence, which also removes those timeline clips (default: false).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddelete_track3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / force
        Added value: +{
        +  "description": "Also delete a track that holds clips, removing those clips (default: false)",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddeselect_all_clips1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetach_proxy2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_active_picture_bounds2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_audio_transients2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_beats1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_motion_peaks2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_repeated_takes1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_scene_edits1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_silence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddetect_source_scene_changes2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changeddiff_sequence_snapshots1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedduplicate_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedduplicate_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedenable_disable_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedencode_file2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedencode_project_item2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedenqueue_after_effects_render1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_aaf2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_as_fcp_xml2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_as_project2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_frame2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_omf2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_sequence7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / overwrite
        Added value: +{
        +  "description": "Replace a file that already exists at output_path (default: false, which refuses the export). The replacement is only reported as written when the file's size or modification time changes.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / preset_path / description
        Previous value: -"Path to an AME preset file (.epr). Uses default H.264 if omitted."New value: +"Path to an AME preset file (.epr). Uses the default H.264 (MP4) Match Source preset if omitted."
      • addedInput schema / properties / range
        Added value: +{
        +  "description": "What to render: the entire sequence (default), the sequence in/out range (set_sequence_in_out_points), or the work area. Scripts cannot set the work area on current Premiere builds, so prefer in_to_out for a ranged export.",
        +  "enum": [
        +    "entire",
        +    "in_to_out",
        +    "work_area"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / timeout_minutes
        Added value: +{
        +  "description": "How long to wait for the render (default: 15; long sequences such as full podcast episodes may need more)",
        +  "maximum": 240,
        +  "minimum": 1,
        +  "type": "number"
        +}
      • changedInput schema / properties / work_area_only / description
        Previous value: -"Export only the work area (default: false, exports entire sequence)"New value: +"Deprecated alias for range: 'work_area'"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_sequence_clip_review_frames2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_sequence_edl1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_sequence_marker_review_frames1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedexport_sequence_review_frames2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedextract_selection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedfind_items_by_media_path2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedfind_project_item_by_name2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedfreeze_frame2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedgenerate_media_contact_sheet2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_active_sequence1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_advanced_feature_support2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_all_project_paths1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_av_feature_support1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_bin_contents3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / bin_id / description
        Previous value: -"Bin name, node ID, or path (e.g., 'Footage', 'Footage/Raw')"New value: +"Bin name, node ID, or path (e.g., 'Footage', 'Footage/Raw'); '/' or 'root' for the project root"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_bridge_telemetry1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_capabilities1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_caption_style_guidance1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_adjustment_layer2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_at_playhead2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_at_position2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_links2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_markers2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_properties2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_speed2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_clip_volume2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_color_label2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_color_space2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_duplicate_media3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties
        Added value: +{
        +  "contains": {
        +    "description": "Optional case-insensitive substring matched against project item names before paging. Omit or pass an empty string to include every entry.",
        +    "maxLength": 256,
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "Maximum duplicate media groups (a group matches contains when any item name matches) entries to return (1-500, default 100).",
        +    "maximum": 500,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  "offset": {
        +    "description": "Zero-based index of the first duplicate media groups (a group matches contains when any item name matches) entry to return (default 0). Pass the previous response's nextOffset to read the next page.",
        +    "minimum": 0,
        +    "type": "integer"
        +  }
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_effect_properties2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_encoder_presets3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / format / description
        Previous value: -"Filter to presets whose name or format bucket matches this (e.g. 'H.264', 'ProRes', 'Proxy'). Omit to list all."New value: +"Filter by container/format (e.g. 'H.264', 'mp4', 'QuickTime', 'WAV') or preset name (e.g. 'ProRes', 'Proxy'). Presets whose format matches come first. Omit to list all."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_export_file_extension2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_footage_interpretation2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_full_clip_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_full_project_overview1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_full_sequence_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_graphics_white_luminance1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_insertion_bin1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_item_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_keyframes2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_linked_items2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_mogrt_component2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_next_edit_point2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_offline_media1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_playhead_position1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_premiere_state1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_project_info1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_project_item_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_project_panel_metadata3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties
        Added value: +{
        +  "max_chars": {
        +    "description": "Maximum characters of metadata XML to return (256-200000, default 20000). Longer XML is cut at this length and reported with truncated: true and totalChars.",
        +    "maximum": 200000,
        +    "minimum": 256,
        +    "type": "integer"
        +  }
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_project_scratch_disks1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_qe_clip_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_render_queue_status1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_selected_clips1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_sequence_count1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_sequence_in_out_points1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_sequence_markers_by_type2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_sequence_settings2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_sequence_structure2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_source_monitor_info1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_source_monitor_position1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_target_tracks1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_timeline_gaps2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_timeline_summary2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_total_clip_count1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_track_info2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_unused_media3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties
        Added value: +{
        +  "contains": {
        +    "description": "Optional case-insensitive substring matched against project item names before paging. Omit or pass an empty string to include every entry.",
        +    "maxLength": 256,
        +    "type": "string"
        +  },
        +  "limit": {
        +    "description": "Maximum unused project items entries to return (1-500, default 100).",
        +    "maximum": 500,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  "offset": {
        +    "description": "Zero-based index of the first unused project items entry to return (default 0). Pass the previous response's nextOffset to read the next page.",
        +    "minimum": 0,
        +    "type": "integer"
        +  }
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_used_media_report2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_value_at_time2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_version_info1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_work_area1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_workspaces1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedget_xmp_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedhas_proxy2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_ae_comps2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_edl2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_fcp_xml2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_folder2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_image_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_media2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_mogrt3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / duration_seconds / description
        Previous value: -"Duration in seconds (default: 5)"New value: +"Duration in seconds (default: 5). Applied after import by moving the graphic's end and read back; a duration that would overlap the next clip on the track is not applied."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_mogrt_from_library2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedimport_sequences2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinsert_from_source2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_after_effects_render_templates1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_after_effects_template_source1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_cmx3600_edl2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_dom_object2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_edit_readiness2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_fcpxml_interchange2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_film_editorial_workflow1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_media_streams2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_mogrt_library1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_project_item_av_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_project_recovery1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_sequence_av_settings1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_sequence_review_report2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinspect_stabilizer_status1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedinvert_selection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedis_work_area_enabled2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlift_selection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlink_selection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_available_audio_effects1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_available_audio_transitions1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_available_effects1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_available_transitions1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_clip_effects2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_markers2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_project_items2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_sequence_checkpoints1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_sequence_tracks2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedlist_sequences1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Addedlist_stock_titles
    • Changedlock_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmanage_media_watch1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmanage_project_context2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmanage_proxies2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmatch_frame2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmove_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmove_clip_to_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmove_item_to_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmove_items_to_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmove_playhead_to_edit2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmultiple_undo3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / expected_undo_stack_index
        Added value: +{
        +  "description": "Optional safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if actions were undone and new ones recorded since, the position can match again and undo would reverse the newer action.",
        +  "type": "number"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedmute_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changednavigate_playhead1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changednest_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changednormalize_loudness_file2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedopen_in_source2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedopen_project2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedoverwrite_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedoverwrite_from_source2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpaste_clip_attributes1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedping1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_active_speaker_reframe1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_beat_montage1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_chapter_markers1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_client_notes_checklist1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_cross_app_workflow1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_emphasis_zoom_keyframes1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_filler_word_removal1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_multicam_angle_switches1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_pause_tightening1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_platform_delivery_matrix1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_reaction_captions3 fields changed
      • addedInput schema / properties / max_cue_chars
        Added value: +{
        +  "description": "Longest caption text before a cue is split at a word boundary; defaults to 84 (two 42-character lines).",
        +  "maximum": 400,
        +  "minimum": 16,
        +  "type": "integer"
        +}
      • addedInput schema / properties / max_cue_seconds
        Added value: +{
        +  "description": "Longest time one caption stays up before it is split; defaults to 6.",
        +  "maximum": 30,
        +  "minimum": 1,
        +  "type": "number"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_short_export_folder1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_short_subscribe_cta1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_shot_match2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_silence_review_markers1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_speaker_checkerboard1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplan_word_mute_ranges1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplay_source_monitor2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedplay_timeline1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_after_effects_render1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_after_effects_render_handoff2 fields changed
      • changedInput schema / properties / premiere_project_path / description
        Previous value: -"Exact open, saved Premiere project path."New value: +"Exact open, saved Premiere project path. It may be outside approved_workspace_path: it is only compared with the project Premiere has open."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_brand_spot1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_edit_plan5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / plan / description
        Previous value: -"An edit plan containing insert_clip and remove_clip operations (maximum 100)"New value: +"An edit plan: { sequence_id?, operations: [...] } with up to 100 insert_clip and remove_clip operations. Operations run in order, and each one's times refer to the timeline as the operations before it left it."
      • addedInput schema / properties / plan / properties
        Added value: +{
        +  "operations": {
        +    "items": {
        +      "properties": {
        +        "audio_track_index": {
        +          "description": "insert_clip: audio track (default 0)",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "include_linked": {
        +          "description": "remove_clip without ripple: also remove linked audio/video partners (default true)",
        +          "type": "boolean"
        +        },
        +        "item_id": {
        +          "description": "insert_clip: project item node ID or name",
        +          "type": "string"
        +        },
        +        "node_id": {
        +          "description": "remove_clip: timeline clip node ID",
        +          "type": "string"
        +        },
        +        "ripple": {
        +          "description": "remove_clip: close the gap with a verified sync-locked ripple delete (always takes linked partners)",
        +          "type": "boolean"
        +        },
        +        "start_seconds": {
        +          "description": "insert_clip: timeline insert time in seconds (insert edit, sync-locked tracks shift)",
        +          "minimum": 0,
        +          "type": "number"
        +        },
        +        "type": {
        +          "enum": [
        +            "insert_clip",
        +            "remove_clip"
        +          ],
        +          "type": "string"
        +        },
        +        "video_track_index": {
        +          "description": "insert_clip: video track (default 0)",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "type"
        +      ],
        +      "type": "object"
        +    },
        +    "maxItems": 100,
        +    "minItems": 1,
        +    "type": "array"
        +  },
        +  "sequence_id": {
        +    "description": "Sequence name or ID to edit (activated first); defaults to the active sequence",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / properties / plan / required
        Added value: +[
        +  "operations"
        +]
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_editorial_plan1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_mogrt_batch3 fields changed
      • addedInput schema / properties / brand_kit / properties / font_family / description
        Added value: +"PostScript font name for the template text (for example Halogen-Bold). Use a font from Adobe Fonts: After Effects will not export a template with other fonts unattended."
      • addedInput schema / properties / brand_kit / properties / safe_margin_percent / description
        Added value: +"Title-safe margin: 2-25 (percent) or 0.02-0.25 (fraction of the frame); default 10%."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_mogrt_library_publish1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_mogrt_premiere_handoff1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_mogrt_recipe3 fields changed
      • addedInput schema / properties / brand_kit / properties / font_family / description
        Added value: +"PostScript font name for the template text (for example Halogen-Bold). Use a font from Adobe Fonts: After Effects will not export a template with other fonts unattended."
      • addedInput schema / properties / brand_kit / properties / safe_margin_percent / description
        Added value: +"Title-safe margin: 2-25 (percent) or 0.02-0.25 (fraction of the frame); default 10%."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_motion_graphics_demo1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_product_spot1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_project_intake1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_watched_media_import1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpreview_workflow_recipe1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedpublish_mogrt_to_library1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrank_short_form_candidates1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrazor_all_tracks2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedread_sequence_captions1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedread_video_scopes2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedredo3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties
        Added value: +{
        +  "count": {
        +    "description": "Number of redo steps (default: 1)",
        +    "type": "number"
        +  },
        +  "expected_undo_stack_index": {
        +    "description": "Optional safety guard: the undoStackIndexAfter reported by the undo you want to redo. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if other actions were undone and redone, or new ones recorded, since, the position can match again and redo would re-apply a different action than the one you undid (a new action also clears Premiere's redo history).",
        +    "type": "number"
        +  }
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrefresh_media2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrelink_media2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_all_effects2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_effect2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_effect_by_name2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_from_timeline3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also remove the clip's linked audio/video partners (default: true). A ripple removal always includes them, since closing the gap on one side only would desync the timeline.",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_keyframe2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_keyframe_range2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedremove_selected_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrename_bin2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrename_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrename_project_item2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedrename_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedreplace_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedreplace_clip_media2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedreverse_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedripple_delete3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / range_content / description
        Previous value: -"What to do about clips on OTHER participating tracks that sit entirely inside the time range being closed (the usual case in a multicam-style sequence with aligned clips). 'refuse' (default) changes nothing and reports them; 'delete' also removes them, i.e. lifts that whole time segment out of every participating track and closes up. 'delete' is destructive across tracks -- the removed clips are listed in the result."New value: +"What to do about other clips on participating tracks that sit entirely inside the time range being closed (the usual case in a multicam-style sequence with aligned clips). With scope 'sync_locked' the clip's own linked audio/video partners are always removed with it, as in Premiere; with 'own_track' they are kept. 'refuse' (default) changes nothing and reports them; 'delete' also removes them, i.e. lifts that whole time segment out of every participating track and closes up. 'delete' is destructive across tracks -- the removed clips are listed in the result."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedroll_edit3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsave_project1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsave_project_as2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedscene_edit_detection2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsearch_project_context2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsearch_project_items2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsearch_workflow_recipes1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_all_clips2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_clips_by_color2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_clips_by_name2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_clips_by_pattern1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_clips_in_range2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_disabled_clips1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedselect_item2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_active_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_all_tracks_targeted2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_anti_alias_quality2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_blend_mode2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_anchor_point2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_duration3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also apply the edit to the clip's linked audio/video partners, as Premiere does with linked selection (default: true).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_opacity2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_pan2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_position4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / x / description
        Previous value: -"X position in pixels"New value: +"X position in sequence pixels (converted to Premiere's normalized Position when the host stores it that way)"
      • changedInput schema / properties / y / description
        Previous value: -"Y position in pixels"New value: +"Y position in sequence pixels (converted to Premiere's normalized Position when the host stores it that way)"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_properties4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / position_x / description
        Previous value: -"Horizontal position"New value: +"Horizontal position in sequence pixels"
      • changedInput schema / properties / position_y / description
        Previous value: -"Vertical position"New value: +"Vertical position in sequence pixels"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_properties_batch1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_rotation2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_scale2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_selection2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_speed_qe2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_start_time2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clip_volume2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_clips_volume2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_color_label2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_color_value2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_effect_property2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_footage_interpretation2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_frame_blend2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_graphics_white_luminance2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_item_in_out2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_keyframe_interpolation2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_offline2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_override_frame_rate2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_override_pixel_aspect_ratio2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_playhead_position2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_poster_frame2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_project_item_audio_channel_mapping2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_project_panel_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_project_scratch_disk3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / save_and_verify
        Added value: +{
        +  "description": "Save the project afterwards and confirm the saved scratch-disk settings (default: false). Premiere has no scratch-disk getter, so without this the result is unverified.",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_scale_to_frame_size2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_scale_width_height4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / scale_height / description
        Previous value: -"Scale height percentage"New value: +"Scale height percentage (0-10000). Written to Motion > Scale, which is the height when Uniform Scale is off."
      • changedInput schema / properties / scale_width / description
        Previous value: -"Scale width percentage"New value: +"Scale width percentage (0-10000)"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_scratch_disk_path6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / path / description
        Previous value: -"Full directory path for the scratch disk"New value: +"Absolute path of an existing folder, or \"SameAsProject\""
      • addedInput schema / properties / save_and_verify
        Added value: +{
        +  "description": "Save the project afterwards and confirm the saved scratch-disk settings (default: false). Premiere has no scratch-disk getter, so without this the result is unverified.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / scratch_disk_type / description
        Previous value: -"Type: 'capturedVideo', 'capturedAudio', 'videoPreview', 'audioPreview', 'autoSave', 'ccLibraries'"New value: +"Which scratch disk to set"
      • addedInput schema / properties / scratch_disk_type / enum
        Added value: +[
        +  "capturedVideo",
        +  "capturedAudio",
        +  "videoPreview",
        +  "audioPreview",
        +  "autoSave",
        +  "ccLibraries",
        +  "motionGraphicsTemplateMedia"
        +]
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_audio_settings2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_display_format2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_field_type2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_frame_rate2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_in_out_points2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_pixel_aspect_ratio2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_resolution2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_sequence_settings2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_source_in_out2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_start_time2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_target_track2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_time_interpolation2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_transcode_on_ingest2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_uniform_scale2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_work_area2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_workspace2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_xmp_metadata2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedset_zero_point2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsetup_ducking1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedslide_edit3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedslip_edit3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also apply the edit to the clip's linked audio/video partners so picture and sound stay in sync (default: true).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedspeed_change2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedsplit_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedstabilize_clip2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedstart_batch_encode1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedstop_playback3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties
        Added value: +{
        +  "target": {
        +    "description": "What to stop. Default \"timeline\". \"source\" is refused because no documented API stops only the Source Monitor.",
        +    "enum": [
        +      "timeline",
        +      "source"
        +    ],
        +    "type": "string"
        +  }
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedtoggle_track_visibility2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedtrim_clip3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / include_linked
        Added value: +{
        +  "description": "Also apply the edit to the clip's linked audio/video partners, as Premiere does with linked selection (default: true).",
        +  "type": "boolean"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedundo3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / expected_undo_stack_index
        Added value: +{
        +  "description": "Optional safety guard: the undoStackIndex a tool result reported right after the call you want to reverse. The step is refused, with nothing changed, when Premiere's undo-stack position differs from it. This compares the position only: if actions were undone and new ones recorded since, the position can match again and undo would reverse the newer action.",
        +  "type": "number"
        +}
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedunlink_selection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedunnest_sequence2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedupdate_marker3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / color / description
        Previous value: -"New color index"New value: +"New color index (0=Green, 1=Red, 2=Purple, 3=Orange, 4=Yellow, 5=White, 6=Blue, 7=Cyan)"
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedvalidate_cmx3600_edl2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedvalidate_export_preset2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedvalidate_mogrt_brand_kit3 fields changed
      • addedInput schema / properties / brand_kit / properties / font_family / description
        Added value: +"PostScript font name for the template text (for example Halogen-Bold). Use a font from Adobe Fonts: After Effects will not export a template with other fonts unattended."
      • addedInput schema / properties / brand_kit / properties / safe_margin_percent / description
        Added value: +"Title-safe margin: 2-25 (percent) or 0.02-0.25 (fraction of the frame); default 10%."
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedvalidate_platform_publish_package1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedvalidate_project_for_export1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_after_effects_connection1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_delivery_conformance2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_delivery_file2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_fcpxml_media_references2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_mogrt_artifact1 field changed
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
    • Changedverify_premiere_connection2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedOutput schema / properties / data / description
        Previous value: -"Tool-specific result data when ok is true."New value: +"Tool-specific result data when ok is true; on failure, diagnostic detail when the tool provides it."
  3. 2 tool updatesv1.18.2
    • Changedget_sequence_structure2 fields changed
      • addedInput schema / properties / sequence_id / maxLength
        Added value: +512
      • addedInput schema / properties / sequence_id / minLength
        Added value: +1
    • Changedinspect_dom_object3 fields changed
      • changedInput schema / properties / object_path / description
        Previous value: -"Dot-path to the DOM object to inspect (e.g., 'app.project.activeSequence')"New value: +"Property path starting with app or qe (e.g. 'app.project.activeSequence.videoTracks[0]'). Function calls and statements are rejected."
      • addedInput schema / properties / object_path / maxLength
        Added value: +512
      • addedInput schema / properties / object_path / minLength
        Added value: +1
  4. 12 tool updatesv1.18.0
    • Addedcompute_mask_fit_motion
    • Changedcreate_bin2 fields changed
      • changedInput schema / properties / parent_bin / description
        Previous value: -"Optional parent bin name or node ID. Creates in root if omitted."New value: +"Optional parent bin node ID, slash-separated bin path, or exact bin name. Alias of parent_bin_id that also accepts a path or name."
      • addedInput schema / properties / parent_bin_id
        Added value: +{
        +  "description": "Optional node ID of the existing parent bin (searched recursively through nested bins). Creates in the project root if both parent_bin_id and parent_bin are omitted.",
        +  "type": "string"
        +}
    • Changedget_mogrt_component1 field changed
      • addedInput schema / properties / expected_values
        Added value: +{
        +  "additionalProperties": {
        +    "type": "string"
        +  },
        +  "description": "Optional read-only audit map of MOGRT text parameter display names to the text each should contain (for example { \"Headline\": \"Chapter 3\" }). Result audit.status is verified, mismatch, or missing_property.",
        +  "type": "object"
        +}
    • Changedimport_mogrt1 field changed
      • addedInput schema / properties / text_values
        Added value: +{
        +  "additionalProperties": {
        +    "type": "string"
        +  },
        +  "description": "Optional map of MOGRT text parameter display names to the exact text to write (for example { \"Headline\": \"Chapter 3\" }). Each value is written explicitly after import and read back; the result reports verified, mismatch, missing_property, or committed_unverified per field.",
        +  "type": "object"
        +}
    • Changedmanage_proxies1 field changed
      • changedInput schema / properties / preset_path / description
        Previous value: -"Path to a proxy ingest preset (.epr) for 'create'. If omitted, the first preset found in Premiere's IngestPresets/Proxy folder is used."New value: +"Path to a proxy ingest preset (.epr) for 'create'. If omitted, the server lists Premiere's IngestPresets/Proxy presets and AME H.264 system presets, skips every preset whose output destination is Same as Project (Adobe's shipped proxy presets are), and uses the first remaining one. Fails with a clear error when none qualify."
    • Addedpaste_clip_attributes
    • Changedpreview_mogrt_recipe4 fields changed
      • changedInput schema / properties / headline / description
        Previous value: -"Primary lower-third text, at most 160 characters."New value: +"Primary headline text, at most 160 characters. Required for text recipes; optional caption for media_placeholder."
      • addedInput schema / properties / placeholder_media_path
        Added value: +{
        +  "description": "Required for media_placeholder: absolute workspace-contained PNG, JPEG, MOV, or MP4 placed as the swappable Essential Graphics media slot.",
        +  "type": "string"
        +}
      • changedInput schema / properties / recipe / enum
        Previous value: -[
        -  "lower_third",
        -  "title_card",
        -  "callout",
        -  "quote_card",
        -  "social_end_card"
        -]New value: +[
        +  "lower_third",
        +  "title_card",
        +  "callout",
        +  "quote_card",
        +  "social_end_card",
        +  "media_placeholder"
        +]
      • addedInput schema / properties / text_controls
        Added value: +{
        +  "description": "full (default) also exposes per-text-layer Font Size, Fill Color, Stroke Color, Stroke Width, Position, Scale, Rotation, Anchor Point, and Opacity controls; text_only exposes only the text strings.",
        +  "enum": [
        +    "full",
        +    "text_only"
        +  ],
        +  "type": "string"
        +}
    • Addedset_clip_duration
    • Changedset_clip_properties1 field changed
      • changedInput schema / properties / speed / description
        Previous value: -"Unsupported by Premiere's public scripting APIs. Supplying this returns an actionable error without mutating the clip."New value: +"Unsupported by Premiere's documented scripting APIs. Supplying this returns an actionable error without mutating the clip; use set_clip_duration to change timeline length."
    • Changedset_scale_to_frame_size1 field changed
      • changedInput schema / properties / item_id / description
        Previous value: -"Node ID or name of the project item"New value: +"Timeline clip node ID in the active sequence, or project item node ID or name"
    • Changedset_source_in_out5 fields changed
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "required": [
        +      "in_seconds"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "out_seconds"
        +    ]
        +  }
        +]
      • changedInput schema / properties / in_seconds / description
        Previous value: -"In point in seconds (optional)"New value: +"In point in seconds. Provide this, out_seconds, or both."
      • addedInput schema / properties / in_seconds / minimum
        Added value: +0
      • changedInput schema / properties / out_seconds / description
        Previous value: -"Out point in seconds (optional)"New value: +"Out point in seconds. Provide this, in_seconds, or both."
      • addedInput schema / properties / out_seconds / minimum
        Added value: +0
    • Changedset_target_track1 field changed
      • addedInput schema / properties / exclusive
        Added value: +{
        +  "description": "When targeting (targeted=true), also untarget every other track of the same type so only this track is targeted (default: true). Ignored when targeted=false.",
        +  "type": "boolean"
        +}
  5. 2 tool updatesv1.16.3
    • Changedget_metadata4 fields changed
      • changedInput schema / properties / include_project_metadata / description
        Previous value: -"Include the potentially large Project Metadata XML payload (default: true). Set false for a bounded identity/path response."New value: +"Include the potentially large Project Metadata XML payload (default: true unless parse_fields is true)."
      • addedInput schema / properties / include_sensitive
        Added value: +{
        +  "description": "When parse_fields is true, include GPS, serials, and similar EXIF. Default false.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / include_xmp_metadata / description
        Previous value: -"Include the potentially large XMP XML payload (default: true). Set false for a bounded identity/path response."New value: +"Include the potentially large XMP XML payload (default: true unless parse_fields is true)."
      • addedInput schema / properties / parse_fields
        Added value: +{
        +  "description": "Parse project metadata and XMP into named fields (default false). When true, raw XML is omitted unless include_project_metadata or include_xmp_metadata is explicitly true.",
        +  "type": "boolean"
        +}
    • Changedset_metadata5 fields changed
      • addedInput schema / properties / expected_value
        Added value: +{
        +  "description": "Optional compare-and-set guard for field_name writes.",
        +  "type": "string"
        +}
      • changedInput schema / properties / field_name / description
        Previous 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."New value: +"Named field to update (for example Column.Intrinsic.LogNote). Used with value; cannot be combined with metadata_xml."
      • addedInput schema / properties / field_namespace
        Added value: +{
        +  "description": "XMP namespace URI or alias (premiere, dc, xmp, exif). Default premiere for project packet; required for xmp.",
        +  "type": "string"
        +}
      • addedInput schema / properties / packet
        Added value: +{
        +  "description": "Packet for field_name writes. Default project (Premiere-private metadata).",
        +  "enum": [
        +    "project",
        +    "xmp"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / value / description
        Previous value: -"Legacy partial-write argument. It is no longer executed; read projectMetadata first, update the complete XML, then supply metadata_xml and updated_fields."New value: +"Replacement value for field_name. Maximum 4096 characters."
  6. 11 tool updatesv1.16.1
    • Addedadd_markers_batch
    • Changedadd_to_timeline1 field changed
      • addedInput schema / properties / scope
        Added value: +{
        +  "description": "Which tracks shift: 'sync_locked' (default) matches Premiere's insert; 'target_tracks' ripples only the named pair and WILL desync other tracks.",
        +  "enum": [
        +    "sync_locked",
        +    "target_tracks"
        +  ],
        +  "type": "string"
        +}
    • Addedcreate_sequence_checkpoint
    • Addedexport_sequence_edl
    • Changedinsert_from_source1 field changed
      • addedInput schema / properties / scope
        Added value: +{
        +  "description": "Which tracks shift: 'sync_locked' (default) matches Premiere's insert and keeps sync-locked tracks in sync; 'target_tracks' ripples only the named pair and WILL desync other tracks.",
        +  "enum": [
        +    "sync_locked",
        +    "target_tracks"
        +  ],
        +  "type": "string"
        +}
    • Addedlist_sequence_checkpoints
    • Addednavigate_playhead
    • Addedplan_client_notes_checklist
    • Addedplan_multicam_angle_switches
    • Changedripple_delete3 fields changed
      • addedInput schema / properties / dry_run
        Added value: +{
        +  "description": "Validate and report the shift plan without changing the timeline (default: false)",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / range_content
        Added value: +{
        +  "description": "What to do about clips on OTHER participating tracks that sit entirely inside the time range being closed (the usual case in a multicam-style sequence with aligned clips). 'refuse' (default) changes nothing and reports them; 'delete' also removes them, i.e. lifts that whole time segment out of every participating track and closes up. 'delete' is destructive across tracks -- the removed clips are listed in the result.",
        +  "enum": [
        +    "refuse",
        +    "delete"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / scope
        Added value: +{
        +  "description": "Which tracks shift: 'sync_locked' (default) shifts the clip's track plus every sync-locked track, matching Premiere's ripple behaviour; 'own_track' shifts only the clip's own track and WILL desync other tracks.",
        +  "enum": [
        +    "sync_locked",
        +    "own_track"
        +  ],
        +  "type": "string"
        +}
    • Addedselect_clips_by_pattern
  7. 16 tool updatesv1.16.0
    • Changedadd_to_render_queue2 fields changed
      • changedInput schema / properties / preset_path / description
        Previous value: -"Path to an AME preset file (.epr)"New value: +"Required path to an AME preset file (.epr). Omitting this raises an Illegal Parameter error on current Premiere hosts."
      • changedInput schema / required
        Previous value: -[
        -  "output_path"
        -]New value: +[
        +  "output_path",
        +  "preset_path"
        +]
    • Changedbuild_caption_artifact1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changeddetect_repeated_takes1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Addedget_caption_style_guidance
    • Changedplan_active_speaker_reframe1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedplan_chapter_markers1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedplan_emphasis_zoom_keyframes1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedplan_filler_word_removal1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedplan_pause_tightening1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Addedplan_reaction_captions
    • Addedplan_short_export_folder
    • Addedplan_short_subscribe_cta
    • Changedplan_speaker_checkerboard1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedplan_word_mute_ranges1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedrank_short_form_candidates1 field changed
      • changedInput schema / properties / word_timeline / description
        Previous value: -"Caller-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."New value: +"Caller-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. Different labeled speakers may overlap; same-speaker words may not, even when another speaker is between them."
    • Changedset_effect_property3 fields changed
      • addedInput schema / properties / value / additionalProperties
        Added value: +true
      • changedInput schema / properties / value / description
        Previous 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."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, the exact JSON string reported for a MOGRT text or graphic parameter, or that same JSON object if the client parsed it."
      • changedInput schema / properties / value / type
        Previous value: -[
        -  "number",
        -  "string",
        -  "boolean",
        -  "array"
        -]New value: +[
        +  "number",
        +  "string",
        +  "boolean",
        +  "array",
        +  "object"
        +]
  8. 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
  9. 5 tool updatesv1.14.5
    • Addeddetect_beats
    • Addeddetect_motion_peaks
    • Addedinspect_stabilizer_status
    • Addedplan_shot_match
    • Addedread_video_scopes
  10. 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"
        +}
  11. 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"
  12. 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."
  13. 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."
  14. 1 tool updatev1.9.2
    • Addedverify_premiere_connection
  15. 3 tool updatesv1.8.0
    • Addeddetect_silence
    • Removedevaluate_expression
    • Removedexecute_extendscript

TDQS

C2.8/5.0

Scored across 384 tools

Disambiguation2/5

The set has hundreds of tools with heavily overlapping purposes: many list/get/inspect/read variants for the same project, sequence, clip, track, and marker data, plus multiple edit, effect, export, and analysis tools whose boundaries are difficult to distinguish. Descriptions often clarify differences, but the sheer number of near-duplicates and plan/preview/apply variants makes misselection likely.

Naming Consistency3/5

Most names use snake_case and a verb_noun pattern, which is readable and broadly consistent. However, the set mixes many suffixes and prefixes such as _uxp, _qe, _cep, _batch, preview_, plan_, inspect_, and apply_, and uses inconsistent singular/plural forms like add_track vs add_tracks.

Tool Count1/5

384 tools is an extreme mismatch for any coherent MCP surface, far beyond the typical 3-15 range. The list includes many experimental, unavailable, preview-only, plan-only, and diagnostic tools that inflate the count without earning a distinct place.

Completeness2/5

The surface attempts broad Premiere Pro coverage, but many core or expected operations are explicitly unavailable, experimental, or plan-only, including speed changes, LUT application, AAF export, nesting, EDL import, and reliable caption creation. These dead ends and workaround-only routes create significant gaps that can cause agent failures.

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
  • A
    license
    Not graded
    quality
    C
    maintenance
    Control Adobe Premiere Pro from AI agents via ExtendScript, enabling media import, sequence creation, effect application, media export, and custom scripting.
    23 npm
    MIT