Skip to main content
Glama
leancoderkavy

Premiere Pro MCP Server

MCP for Adobe Premiere Pro

MCP Toplist

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

321 core tools across 37 modules, 14 resources, and 11 guided workflows. A connected UXP host adds 54 capability-gated tools.

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


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

The AI handles the entire workflow through 321 core tools spanning the supported ExtendScript, QE DOM, local media and interchange analysis, revisioned project-context retrieval, safe edit-planning, project-intake preview, review handoff, and connection-verification surfaces. A compatible, authenticated UXP panel adds 54 documented, capability-gated tools without replacing the production CEP bridge.

Latest release: 1.14.4

  • Verified editing semantics: QE razor operations use sequence timecode and batch effect application preflights every target before reporting a verified component readback.

  • Honest playback state: legacy playback tools report an accepted request, not movement or stoppage, until a separate position readback confirms it.

  • Fail-closed catalogs: empty QE audio-transition catalogs are errors, and effect fallback results are explicitly bounded and partial.

  • 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 v1.14.4 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.


Related MCP server: Kdenlive MCP Server

For editors evaluating an AI workflow

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

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

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

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


Quick Start

Easiest supported path: Claude Desktop

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

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

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

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

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

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

First proof, before the first edit

Illustrated local Premiere MCP workflow

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

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

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

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

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

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

Other AI assistants

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

Before you begin

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

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

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

1. Install

Option A — npm:

npm install -g premiere-pro-mcp

Option B — Clone from source:

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

2. Install the CEP plugin

If installed via npm:

premiere-pro-mcp --install-cep

If cloned from source:

npm run install-cep

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

3. Check the setup

premiere-pro-mcp --doctor

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

Update an existing installation

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

Installed globally from npm:

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

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

Installed from a Git clone:

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

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

Remove the CEP connector

Fully quit Premiere, then remove only this connector:

premiere-pro-mcp --uninstall-cep

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


Publishing to npm

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

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

  2. Allow the npm publish action.

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

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

For local publishing, use the guided helper:

npm run publish:npm

Useful local variants:

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

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

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

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

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

3. Configure your MCP client

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

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

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

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

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

Add to your MCP server configuration:

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

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

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

Add to your VS Code MCP server configuration:

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

4. Verify the bridge in Premiere Pro

  1. Open (or restart) Premiere Pro

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

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

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

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

The default bridge directory is derived from the operating system on both sides, so most local setups should not set PREMIERE_TEMP_DIR. 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.14.4 --install-cep

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

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

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

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

npm run build:claude

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

Windows and macOS capability coverage

Surface

Windows

macOS

Verification boundary

CEP production bridge

Premiere Pro 2020–2026

Premiere Pro 2020–2026

Run get_capabilities, then ping with Premiere open

UXP preview bridge

Premiere Pro 25.6+

Premiere Pro 25.6+

Live loopback WebSocket and host API verification required

npm CEP installer

Copies plugin and verifies REG_SZ debug keys

Copies plugin and verifies the installed manifest/debug settings

Restart Premiere after installation

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 319 of the 321 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.

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

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

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

Collaboration and AI feature boundaries

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

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

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

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

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

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

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

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

Reusable project context

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

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

Authenticated UXP connection

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

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

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

When enabled, MCP discovery includes 54 capability-gated UXP additions. The first expansion covers effects, deterministic timeline selection, selection batches, scene detection, proxy/ingest, relink, metadata, color conformance, Source Monitor audition, storage, and least-privilege workspace access. The second adds Project-panel selection, marker CRUD, bin organization, sequence settings, imports, typed effect parameters/keyframes, track-item transforms, 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, and transactional source trim/framing documented in the third-wave workflow matrix. The bounded migration surface also includes a non-ripple selected-item lift plus native video-transition listing and transactions; it does not claim direct empty-track create/delete or global redo support. A separate hybrid benchmark gate keeps native acceleration disabled until reproducible cross-platform evidence exists. See also the first stable workflow matrix and the next-ten workflow matrix. 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 panel now requests access to one operator-selected workspace instead of declaring full filesystem access. Choose the folder in the panel before invoking a path-based UXP workflow. Media, relink, preset, export, and Source Monitor file paths must remain inside it; the persistent capability token and native root path are never returned over MCP. Lexical containment alone cannot exclude symlink, junction, or reparse-point escapes, and Adobe's request-scoped UXP filesystem API does not document canonical-path resolution. Builds without a host-supplied canonical resolver therefore advertise path-based UXP commands as unsupported and fail closed at invocation; use the existing CEP fallback for those operations.

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

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

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


Tools (321 core total; 319 under the default profile; 373 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 54 authenticated UXP additions with their current action or mode values. It is generated from the same MCP registration surface returned to clients; the tables below are a shorter workflow-oriented overview.

Discovery & Inspection (10 + 10)

Tool

Description

get_project_info

Current project name, path, sequences, items

get_active_sequence

Detailed active sequence with all clips

list_project_items

All items in the project panel

get_full_project_overview

Comprehensive snapshot: bin tree, sequences, media types

get_full_sequence_info

Exhaustive sequence data: tracks, clips, effects, markers

get_full_clip_info

Everything about a clip: effects, keyframes, metadata

get_timeline_summary

Human-readable overview: duration, coverage %, effects

search_project_items

Filter by name, extension, offline status, color label

get_premiere_state

Full snapshot: project, sequence, playhead, selection

inspect_dom_object

Explore any Premiere Pro DOM object interactively

get_advanced_feature_support

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

create_editorial_plan

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

preview_editorial_plan

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

apply_editorial_organization_plan

Apply a confirmed organization plan through guarded UXP bin transactions only

Project Management (26)

Tool

Description

save_project / save_project_as / open_project

File operations

create_project / close_project

Project lifecycle

import_media / import_folder / import_ae_comps

Import media and AE comps

create_bin / delete_bin / rename_bin / create_smart_bin

Bin management

import_sequences / import_fcp_xml

Import from other projects

create_bars_and_tone

Generate bars & tone media

set_scratch_disk_path

Configure scratch disks

consolidate_and_transfer

Project Manager consolidation

Timeline & Editing (10 + 27 advanced)

Tool

Description

add_to_timeline / overwrite_clip

Insert and overwrite edits

ripple_delete

Remove clip and close gap (QE)

roll_edit / slide_edit / slip_edit

Professional trim modes (QE)

move_clip_to_track

Move between tracks (QE)

reverse_clip / speed_change / set_clip_speed_qe

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

split_clip / trim_clip / move_clip

Basic edits; trim verifies source points and visible timeline edges

set_clip_properties

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

link_selection / unlink_selection

Link/unlink A/V

Premiere Pro 26.3 compatibility: some installations silently ignore QE structural edits (ripple_delete, razor/split) and existing effect-parameter writes. These tools now verify the resulting sequence state and return an error instead of a false success. For structural edits, rebuild the wanted source ranges into a new sequence with create_sequence and add_to_timeline. Native transitions are unavailable when the host does not expose qeTrack.addTransition; overlay clips remain a workaround for transitions that do not need to blend adjacent source frames. See issue #21.

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

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

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

Effects & Color (8)

Tool

Description

apply_effect / apply_audio_effect

Apply by name (QE)

remove_effect / remove_all_effects

Remove effects

color_correct

Lumetri: exposure, contrast, temperature, etc.

apply_lut

Apply LUT files

stabilize_clip

Warp Stabilizer with configurable settings

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

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

Keyframes (8)

Tool

Description

add_keyframe / get_keyframes

Create and read keyframes

remove_keyframe / remove_keyframe_range

Delete keyframes

set_keyframe_interpolation

Linear / Hold / Bezier

get_value_at_time

Query interpolated value at any time

set_color_value

Set color properties on effects

Export & Encoding (16)

Tool

Description

export_sequence

Export via Adobe Media Encoder

validate_export_preset

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

verify_delivery_file

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

capture_frame

Export frame as PNG, return as base64 image

export_as_fcp_xml / export_aaf / export_omf

Interchange formats

encode_project_item / encode_file

Direct encoding

start_batch_encode

Start render queue

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

Source Monitor & Playback (7 + 4)

Tool

Description

open_in_source / close_source_monitor

Source monitor control

insert_from_source / overwrite_from_source

3-point editing

play_timeline / stop_playback

Playback control (QE)

play_source_monitor

Play in source monitor

Selection & Clipboard (7 + 6)

Tool

Description

select_clips_by_name / select_clips_in_range

Smart selection

copy_effects_between_clips

Copy effects via QE

batch_apply_effect

Apply effect to multiple clips

set_blend_mode

27 blend modes

Media Properties (16)

Tool

Description

set_offline / has_proxy / detach_proxy

Offline/proxy management

set_override_frame_rate

Override FPS

set_scale_to_frame_size

Auto-scale to sequence frame

get_xmp_metadata / set_xmp_metadata

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

get_color_space

Color space info

Sequence Management (11)

Tool

Description

create_sequence / create_sequence_from_preset

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

duplicate_sequence / delete_sequence

Manage sequences

auto_reframe_sequence

Auto-reframe for social media

attach_custom_property

FCP XML custom properties

unnest_sequence

Replace nested sequence with its clips

Workspace & Captions (2 + 1)

Tool

Description

get_workspaces / set_workspace

Switch workspace layouts

create_caption_track

Create caption/subtitle tracks

Scripting (2)

Tool

Description

execute_extendscript

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

evaluate_expression

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

...and 100+ more

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


MCP Resources

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

Resource URI

Description

config://premiere-instructions

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

config://extendscript-reference

Complete ExtendScript API reference for writing custom scripts

config://premiere-workflows

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

config://premiere-project-context

Revisioned local project-context indexing and retrieval workflow

premiere://project/info

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

premiere://project/sequences

Bounded sequence inventory with stable Premiere IDs

premiere://project/media

Bounded, path-redacted project-media inventory

premiere://project/bins

Bounded, path-redacted project-bin inventory

premiere://timeline/active

Bounded active-timeline tracks, clips, and markers snapshot

premiere://effects/available

Bounded video/audio effect catalog for planning

premiere://effects/applied

Bounded active-timeline component inventory

premiere://transitions/available

Bounded video/audio transition catalog for planning

premiere://export/presets

Bounded export-preset names and formats, without native paths

premiere://project/metadata

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

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


Remote Deployment (Fly.io)

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

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

Connect to an operator-managed instance

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

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

Self-host on Fly.io

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

Then connect with:

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

Trusted-operator OAuth resource-server mode

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

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

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

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

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

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


Environment Variables

Variable

Description

Default

PREMIERE_TEMP_DIR

Shared temp directory for MCP ↔ CEP communication

OS temp dir + /premiere-mcp-bridge

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_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 321 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/                   # 31 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
├── scripts/
│   ├── install-cep.sh           # macOS CEP installer (symlink + debug mode)
│   └── install-cep.ps1          # Windows CEP installer (copy + REG_SZ debug mode)
├── Dockerfile                   # Multi-stage Docker build for Fly.io
├── fly.toml                     # Fly.io deployment config
├── RESEARCH.md                  # API research and implementation status
├── CONTRIBUTING.md              # Contribution guidelines
├── CHANGELOG.md                 # Version history
└── LICENSE                      # MIT License

Technical Details

CEP and UXP backends

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

ExtendScript Compatibility

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

Security

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

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

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

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

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

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

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

QE DOM

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

  • Apply effects and transitions by name

  • Ripple delete, roll/slide/slip edits

  • Set clip speed and reverse

  • Frame blending and time interpolation

  • Remove all effects from a clip


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


Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines.

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


License

MIT — free for personal and commercial use.

Available Tools

324 tools
add_adjustment_layerAdd Adjustment LayerA

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

ParametersJSON Schema
NameRequiredDescriptionDefault
track_indexNoVideo track index (default: 0)

Output Schema

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

TDQS

A3.8/5.0
Behavior4/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines2/5

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

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

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

add_audio_keyframesAdd Audio KeyframesB

Add audio level keyframes to create fades or level changes

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

Output Schema

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

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already indicate this is a mutating operation (readOnlyHint=false), so the description adds little beyond the basic action. It does not disclose whether existing keyframes are replaced or appended, whether keyframes must be sorted by time, or what constraints apply to level_db. No contradiction with annotations exists, but the behavioral detail is thin.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. It states the action and the purpose in the fewest possible words while remaining informative.

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

Completeness3/5

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

The schema covers both parameters and an output schema exists, so the basic call is well specified. However, the lack of usage guidance and missing behavior around existing keyframes leaves the definition incomplete for an agent deciding when to call it and what side effects 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%, and the schema fully documents node_id and the time_seconds/level_db keyframe properties. The description adds no parameter-level meaning 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 uses a specific verb-resource pairing: 'Add audio level keyframes', and it states the intended purpose ('create fades or level changes'). This clearly distinguishes it from generic add_keyframe and from one-shot level adjustment 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 Guidelines2/5

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

No guidance is given for when to use this tool versus alternatives such as add_keyframe, adjust_audio_levels, set_clip_volume, or setup_ducking. The phrase 'to create fades or level changes' implies a use case, but there are no explicit conditions, exclusions, or alternative recommendations.

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

add_custom_metadata_fieldAdd Custom Metadata FieldA

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

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

Output Schema

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

TDQS

A4.3/5.0
Behavior4/5

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

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

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

Conciseness4/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines5/5

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

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

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

add_keyframeAdd KeyframeA

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

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

Output Schema

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

TDQS

A4/5.0
Behavior4/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines3/5

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

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

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

add_markerAdd MarkerA

Add a marker to the active sequence or a clip

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

Output Schema

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

TDQS

A3.9/5.0
Behavior3/5

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

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

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

Conciseness4/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines4/5

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

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

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

add_marker_to_project_itemAdd Marker To Project ItemB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior2/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines2/5

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

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

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

add_text_overlayAdd Text OverlayA

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

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

Output Schema

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

TDQS

A4.5/5.0
Behavior4/5

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

Beyond the annotations, the description adds critical behavioral context: this tool is not a functional implementation and should not be expected to perform the named operation. It also explains the underlying platform limitation. It stops short of stating precisely what happens if the tool is invoked (e.g., returns an error), but the 'Unavailable' disclosure 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?

The entire description is one tightly written sentence that front-loads the critical 'Unavailable' signal, then gives the reason and actionable alternatives. Every word earns its place; there is no filler or redundancy.

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

Completeness5/5

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

For an unavailable/stub tool, the description is complete: it states the limitation, names the correct alternative path, and provides a secondary option for title graphics. The presence of an output schema reduces the need to describe return values, and nothing essential is missing for an agent deciding whether to call this tool.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters are already documented with meaningful descriptions. The tool description adds no additional parameter-level semantics, which is acceptable here because the tool is declared unavailable and the agent is redirected to alternatives.

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

Purpose5/5

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

The description immediately and unambiguously states that this tool is unavailable for its nominal purpose, with a specific reason: Premiere exposes no supported API for creating caption clips from raw text. This clearly distinguishes it from related tools like create_caption_track without requiring the schema to be opened.

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 tells the agent what to do instead: import an .srt/.vtt and use create_caption_track, or use a MOGRT/PNG overlay for title graphics. It provides both a direct alternative and a fallback, leaving no ambiguity about when or whether to call this tool.

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

Add the active sequence to the Adobe Media Encoder render queue

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

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false and idempotentHint=false, so the description adding 'add ... to ... render queue' is consistent. However, it does not disclose side effects like whether this launches AME, blocks until encoding, or merely queues the item. Since annotations exist but are sparse, some additional behavioral context would be 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?

The description is a single, clear sentence with no filler. It could arguably name the sibling alternative for disambiguation, but it is appropriately concise and front-loaded.

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

Completeness3/5

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

For a tool with two optional-style parameters (one required) and an output schema, the description is minimally sufficient. However, it does not explain what happens when preset_path is omitted, how the output_path should be formatted, or what the return value represents, leaving some ambiguity.

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

Parameters3/5

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

Schema description coverage is 100%, so both output_path and preset_path are already documented in the schema. The description itself does not add further meaning beyond what the schema provides, which meets the baseline but does not exceed it.

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

Purpose5/5

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

The description states a clear, specific verb ('add') and resource ('active sequence to the Adobe Media Encoder render queue'). It is distinguishable from siblings like start_batch_encode, export_sequence, and encode_project_item because it specifically targets the AME render queue.

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

Usage Guidelines3/5

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

The description implies the tool operates on the active sequence and targets Adobe Media Encoder, but it does not explicitly state when to prefer this over export_sequence, encode_file, or start_batch_encode, nor does it mention prerequisites like having AME installed or an active sequence being required.

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

add_to_timelineAdd To TimelineA

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

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

Output Schema

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

TDQS

A3.8/5.0
Behavior4/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

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

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

Usage Guidelines3/5

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

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

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

add_to_timeline_batchAdd To Timeline BatchA

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

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

Output Schema

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

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses meaningful behavior beyond the annotations: preflighting before first insertion, read-back verification of every placement, and fail-closed behavior if Premiere cannot verify one. This gives the agent a clear model of how the tool behaves at 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?

The description is two concise, front-loaded sentences covering purpose, limits, and failure behavior. It avoids filler and appropriately leaves parameter-level detail to the schema.

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

Completeness5/5

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

With full schema coverage, an output schema present, and annotations covering safety hints, the description provides the missing operational context: batch limit, preflight, read-back, and fail-closed behavior. No critical call-time decision is left 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 description coverage is 100%, so the schema already explains the individual parameters. The main description adds the undocumented 32-item limit and validation semantics, while the clips schema adds ordering and insert-edit constraints, providing extra value beyond the raw 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 ('Insert'), a specific resource ('project items'), and a clear scope ('up to 32 in one validated CEP request'). The 'batch' framing and the 32-item limit clearly distinguish it from the singular sibling 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?

The description and clips schema point to add_to_timeline semantics, and 'up to 32' implies a multi-item batching use case. However, it never explicitly states when to choose this tool over add_to_timeline or what conditions would make the singular tool preferable.

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

add_trackAdd TrackB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

The description states a specific action ('Add'), a clear resource ('video or audio tracks'), and a target context ('active sequence'). It does not, however, distinguish itself from the sibling tool 'add_tracks', which appears to serve a very similar purpose.

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

Usage Guidelines2/5

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

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

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

add_tracksAdd TracksA

Add video and/or audio tracks through QE and verify the active sequence gained the exact requested counts

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

Output Schema

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

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate this is not read-only or idempotent, so the mutation is expected. The description adds useful behavioral context by stating that the tool verifies the active sequence's resulting track counts, which is a meaningful side-effect disclosure beyond the structured hints. No contradiction with annotations.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every phrase earns its place: 'Add', 'video and/or audio tracks', 'through QE', and the verification clause.

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

Completeness4/5

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

Given four optional numeric parameters, full schema coverage, and the presence of an output schema, the description supplies the essential purpose and postcondition. It could clarify behavior when no active sequence exists or explicitly distinguish itself from add_track, but nothing critical is missing for invoking the tool.

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

Parameters3/5

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

Schema description coverage is 100%, with each of the four parameters already explained and given defaults. The description only summarizes them as 'video and/or audio tracks' and adds the verification behavior; it does not provide additional parameter-level meaning. This matches the baseline of 3.

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

Purpose5/5

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

The description states a specific verb ('Add'), the resource ('video and/or audio tracks'), the mechanism ('through QE'), and a clear postcondition ('verify the active sequence gained the exact requested counts'). It is easily distinguished from the singular sibling add_track and from delete_track or create_caption_track.

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

Usage Guidelines3/5

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

The description implies when to use it: when you need to add multiple track types and confirm the active sequence has the exact counts. However, it does not explicitly route away from add_track or state any exclusions or prerequisites, so the usage guidance is left mostly to inference.

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

add_transitionAdd TransitionB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior3/5

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

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

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

Conciseness4/5

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

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

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

Completeness3/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

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

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

Usage Guidelines3/5

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

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

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

add_transition_to_clipAdd Transition To ClipB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

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

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

Usage Guidelines2/5

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

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

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

adjust_audio_levelsAdjust Audio LevelsA

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

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

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

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

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

Usage Guidelines3/5

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

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

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

analyze_loudnessAnalyze LoudnessA

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

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

Output Schema

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

TDQS

A4.2/5.0
Behavior4/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines4/5

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

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

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

analyze_video_interlacingAnalyze Video InterlacingB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior1/5

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

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

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

Conciseness5/5

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

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

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

Completeness2/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines4/5

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

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

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

analyze_video_qcAnalyze Video QcB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior1/5

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

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

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

Conciseness5/5

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

The description is two sentences and every sentence earns its place: the first states the operation and target, the second clarifies the safety profile. There is no filler, title repetition, or schema redundancy.

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

Completeness4/5

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

For a simple three-parameter tool with a full input schema and an output schema, the prose covers the main non-schema context: local file, FFmpeg, black/freeze detection, and no Premiere modification. The annotation contradiction slightly undermines overall completeness, but the prose alone is nearly sufficient for correct invocation.

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines3/5

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

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

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

apply_audio_effectApply Audio EffectA

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

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

Output Schema

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

TDQS

A3.5/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness3/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines2/5

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

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

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

apply_edit_planApply Edit PlanA

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

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

Output Schema

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

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses meaningful behavioral context beyond the annotations: every target is revalidated before applying, the edit capability is required, and an exact preview token is mandatory. It does not describe failure behavior or atomicity, but the annotations include no positive safety hints, so the description carries the burden well enough.

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

Conciseness5/5

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

The description is a single tight sentence that front-loads the core purpose, then adds the two most important constraints: revalidation and the token requirement. There is 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?

The description, combined with full schema coverage and an output schema, gives an agent the essential purpose, precondition, permission requirement, and token requirement. It is slightly incomplete regarding what happens when revalidation fails, but that is a minor gap for a two-parameter apply operation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents plan and confirmation_token. The description reinforces that the token is exact and that the plan was previewed, but it adds little semantic meaning beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('Apply') with a clear resource ('previously previewed compound edit') and adds the key precondition of revalidation. It is immediately distinguishable from preview_edit_plan and other workflow-plan siblings because it applies, rather than creates or previews, a 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?

The description clearly implies that this tool is used after a preview step and requires an exact confirmation token, which routes the agent toward preview_edit_plan as the prerequisite. However, it does not explicitly name the sibling or spell out when not to use it, so it stops just short of full routing guidance.

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

apply_effectApply EffectA

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

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

Output Schema

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

TDQS

A4.1/5.0
Behavior4/5

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

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

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

Conciseness4/5

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

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

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

Completeness4/5

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

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

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

Parameters4/5

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

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

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

Purpose5/5

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

The description states a specific verb and resource: 'Apply a video effect to a clip.' It distinguishes itself from sibling tools like apply_audio_effect by specifying 'video effect,' and the effect_name examples make the intent unambiguous.

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

Usage Guidelines3/5

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

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

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

apply_lutApply LutA

Apply a LUT file to a clip via Lumetri Color

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

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines2/5

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

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

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

apply_spot_workflow_planApply Spot Workflow PlanA

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

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

Output Schema

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

TDQS

A4.2/5.0
Behavior4/5

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

Annotations establish that this is a non-read-only, non-idempotent mutation, and the description adds valuable behavioral context: required authorities, the restriction to empty explicitly named tracks, and the warning that host readback is not playback or render verification. No contradiction with annotations is present.

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

Conciseness5/5

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

Three dense sentences cover purpose, constraints, and a critical verification caveat, with no filler. The most important action is front-loaded, and every sentence contributes meaningful operational information.

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

Completeness4/5

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

Given the tool's complexity, the description covers the key preconditions: previewed exact plan, confirmation token, authority requirements, track targeting, and verification limitations. The output schema handles return-value expectations, and the main gap is a lack of explicit tie-back to which sibling preview tools apply in which 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 coverage is 100%, so the schema already fully documents both parameters. The description reinforces that the plan must be "exact" and "previewed," but this largely echoes the schema's own wording rather than adding new semantic detail.

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

Purpose5/5

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

The opening sentence uses a specific verb-resource pairing: "Apply one exact previewed motion-demo, product-spot, or brand-spot plan." This clearly distinguishes it from sibling tools like apply_edit_plan and the various preview_*_spot tools by naming the exact plan types it consumes.

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

Usage Guidelines4/5

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

The description conveys when to use the tool by requiring an "exact previewed" plan and confirmation token, which implies the preview_*_spot workflow must run first. It also gives practical constraints: edit authority, filesystem authority for MOGRT, and empty named tracks. It stops short of explicitly spelling out alternatives or when not to use the tool.

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

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

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already communicate that this is a write operation, non-idempotent, and not destructive, so the description does not need to restate those. The description adds the target scope ('active sequence') but does not disclose behavior such as overwriting existing properties, requiring an active sequence, or failure semantics. This is acceptable but minimal.

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

Conciseness5/5

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

The description is a single, compact sentence that front-loads the action, object, and target. There is no filler or redundant wording, and 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.

Completeness4/5

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

For a tool with only two required parameters, an output schema, and annotations, the description is largely sufficient. The main gap is that it does not indicate where property_id comes from or how custom properties relate to metadata fields created by sibling tools, but this is not blocking for basic invocation.

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

Parameters3/5

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

The input schema provides 100% parameter description coverage, so the schema already documents property_id and property_value. The description's 'key/value pair' phrasing usefully reinforces how the parameters relate, but it does not add significant new constraints 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 action (attach), a specific resource (custom property as a key/value pair), and a specific target (the active sequence). This clearly distinguishes it from related metadata tools like add_custom_metadata_field or set_metadata without needing to inspect 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?

No guidance is provided about when to use this tool versus related metadata/sequence tools, nor any prerequisites such as requiring an active sequence. The description implies the use case through the phrase 'active sequence,' but it does not explicitly route the agent away from alternatives or clarify conditions.

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

auto_reframe_sequenceAuto Reframe SequenceC

Auto-reframe a sequence for a different aspect ratio

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

Output Schema

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

TDQS

C2.9/5.0
Behavior2/5

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

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

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

Conciseness4/5

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

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

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

Completeness3/5

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

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

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

Parameters3/5

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

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

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

Purpose4/5

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

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

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

Usage Guidelines2/5

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

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

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

batch_add_transitionsBatch Add TransitionsA

Add the same transition to all cut points on a track

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

Output Schema

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

TDQS

A3.9/5.0
Behavior3/5

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

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

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

Conciseness5/5

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

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

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

Completeness3/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines4/5

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

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

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

batch_apply_effectBatch Apply EffectA

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

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

Output Schema

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

TDQS

A4.2/5.0
Behavior4/5

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

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

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

Conciseness5/5

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

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

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

Completeness4/5

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

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

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

Parameters3/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines4/5

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

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

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

batch_enable_disableBatch Enable DisableB

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

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

Output Schema

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

TDQS

B3.4/5.0
Behavior2/5

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

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

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

Conciseness4/5

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

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

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

Completeness3/5

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

For a 4-parameter tool with full schema coverage and an output schema present, the description conveys the core purpose adequately. It does not, however, mention the alternative singular tool, prerequisites for each target mode, or edge-case behavior (empty selection, locked tracks), which an agent would need to invoke it reliably among 180+ siblings. Adequate but with clear gaps.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters (target, enabled, track_type, track_index) are already documented, including the conditional requirement for track_type/track_index when target is 'track'. The description's parenthetical '(selected, track, or all)' merely restates the target enum and adds no new semantic meaning. Baseline 3 applies given full schema coverage.

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

Purpose5/5

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

The description states a specific verb ('Enable or disable'), a resource ('multiple clips'), and the targeting scope ('selected, track, or all'). The phrase 'multiple clips at once' distinguishes it from the sibling enable_disable_clip, which handles the singular case. This is immediately actionable and clearly differentiated.

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

Usage Guidelines3/5

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

The targeting modes ('selected, track, or all') give a clear sense of when this tool applies to batch operations. However, it never names the singular sibling enable_disable_clip as the alternative for single-clip toggles, nor does it state when NOT to use it (e.g., for muting audio or locking tracks). Usage is implied rather than explicit.

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

batch_rename_clipsBatch Rename ClipsA

Rename multiple clips on the timeline using a pattern. Supports sequential numbering.

ParametersJSON Schema
NameRequiredDescriptionDefault
patternYesName pattern. Use {n} for a sequential number, ## for a zero-padded two-digit sequence number, and {name} for the original name (e.g., 'Scene_##', '{name}_v2')
track_typeYesTrack type to rename clips on
track_indexYesTrack index (0-based)
start_numberNoStarting number for {n} placeholder (default: 1)
selected_onlyNoOnly rename selected clips (default: false, renames all on track)

Output Schema

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

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate this is a write operation and not idempotent. The description adds the context that it renames clips on a timeline and supports sequential numbering, but does not disclose side effects such as whether source media files are left untouched or whether re-running is safe. Given the annotation coverage, this is adequate but not rich.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every word adds meaningful context about what the tool does and the pattern capability it supports.

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

Completeness4/5

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

With a complete input schema, useful annotations, and an output schema present, the description is largely sufficient for correct invocation. It covers the batch nature and pattern behavior. The main gap is lack of explicit guidance about when to choose this over rename_clip, but that is a usage-nuance rather than a blocking omission.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are already documented in the input schema. The description mentions pattern and sequential numbering, which lightly echoes the pattern schema, but it does not meaningfully add beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific verb ('Rename') and a specific resource ('multiple clips on the timeline') and adds the pattern-based renaming mechanism. This clearly differentiates it from sibling singular tools like rename_clip and rename_bin/rename_project_item.

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

Usage Guidelines3/5

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

The phrasing 'Rename multiple clips' implies it is for batch operations rather than single-clip renaming, but no explicit alternatives or when-not-to-use conditions are given. The description leaves the decision to inference rather than naming a sibling such as rename_clip.

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

capture_frameCapture FrameA

Capture the current frame and return it as inline image data for the LLM to see. This lets the AI visually inspect the current state of the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
time_secondsNoTime position in seconds to capture. Uses current playhead if omitted.

Output Schema

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

TDQS

A4.3/5.0
Behavior4/5

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

With annotations providing only limited safety signals (readOnlyHint false, destructiveHint false), the description adds useful behavioral context by stating that the tool returns inline image data rather than writing to disk. It also communicates that this is an inspection aid for the LLM. It could disclose more about side effects or cost, but the core behavior is clear.

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

Conciseness5/5

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

Two tight sentences, front-loaded with the action and outcome. Every sentence earns its place: the first states what happens and the second states the intended use case.

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

Completeness5/5

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

For a simple tool with one optional parameter, 100% schema coverage, no nested objects, and an output schema, the description is sufficient. It clearly explains the purpose, return form, and the scenario in which an agent would want to invoke it.

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

Parameters3/5

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

The single optional parameter time_seconds is fully documented in the schema (100% coverage), including its default behavior. The description adds no new parameter-level detail beyond reinforcing that the 'current frame' is the default, so the baseline schema coverage score of 3 is appropriate.

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

Purpose5/5

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

The description names a specific action ('Capture the current frame') and delivers the key outcome ('return it as inline image data for the LLM to see'), which distinguishes it from sibling export/render tools like export_frame or freeze_frame. It clearly identifies the resource as the current timeline state.

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

Usage Guidelines4/5

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

The second sentence gives clear context for when an agent should call it: when the AI needs to visually inspect the current timeline state. It does not explicitly name alternatives or say when not to use it, but the purpose is specific enough to guide selection.

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

check_offline_mediaCheck Offline MediaA
Read-onlyIdempotent

Check for offline (missing) media in the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

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

TDQS

A3.5/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 semantic clarification that 'offline' means 'missing.' It does not disclose the scope or nature of the check beyond what the annotations and output schema already imply.

Agents need to know what a tool does to the world before 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, declarative sentence with no wasted words. It is exactly the right size for a zero-parameter read-only check.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 low complexity (no parameters, read-only, idempotent) and the presence of an output schema, the description is sufficient for correct invocation. The only meaningful gap is the ambiguity with get_offline_media, which is a usage-guidance issue rather than a completeness issue.

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

Parameters4/5

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

The tool has zero parameters, and schema description coverage is 100%, so there is nothing for the description to clarify about inputs. The baseline of 4 for zero-parameter tools applies.

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

Purpose4/5

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

The description clearly states the action ('Check') and resource ('offline media'), and the parenthetical '(missing)' clarifies what 'offline' means. However, it does not distinguish this tool from the nearly identical sibling get_offline_media, so an agent cannot tell them apart 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?

No guidance is given about when to use this tool versus alternatives such as get_offline_media, get_used_media_report, find_items_by_media_path, relink_media, or refresh_media. The description leaves the agent to guess which tool is appropriate for a given situation.

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

clear_item_in_outClear Item In OutA

Clear in and/or out points on a project item (reset to full duration).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
clear_inNoClear the in point (default: true)
clear_outNoClear the out point (default: true)

Output Schema

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

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate this is a mutation (readOnlyHint=false) that is not flagged destructive. The description adds genuine behavioral context beyond annotations: the operation resets the item to full duration, explaining the semantic consequence of clearing points. It doesn't discuss reversibility or effects on existing sequences, but the core behavior is disclosed and there is no contradiction with annotations.

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

Conciseness5/5

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

A single sentence with zero filler: verb, target, and outcome in one compact phrase. The behavioral clarification is delivered as a parenthetical that earns its place rather than padding the description.

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

Completeness4/5

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

For a simple 3-param boolean operation with an output schema and full schema coverage, the description captures the essential semantics. Minor gaps: it doesn't orient the agent toward the closely related set_item_in_out and clear_sequence_in_out siblings, and the definition of 'project item' is left to the schema. These are small omissions for a low-complexity tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents item_id, clear_in, and clear_out including defaults. The description adds the 'and/or' clarification and the 'reset to full duration' outcome, but no param-specific detail beyond what the schema already provides. Baseline 3 is appropriate when the schema carries the load.

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

Purpose5/5

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

The description names a specific verb (clear), a precise resource (in/out points on a project item), and the resulting state (reset to full duration). The parenthetical clarifies what 'clearing' actually means, and the phrase 'project item' distinguishes it from sequence-level siblings like clear_sequence_in_out and set_sequence_in_out_points.

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

Usage Guidelines3/5

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

The resource scope ('on a project item') implies when the tool applies, and the sibling list contains sequence-level counterparts (clear_sequence_in_out, set_sequence_in_out_points) that an agent could infer are alternatives. However, no explicit routing, exclusions, or conditions are given — the agent must infer the boundaries between this tool and related item-level tools like set_item_in_out.

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

clear_sequence_in_outClear Sequence In OutA

Clear the in and/or out points on the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
clear_inNoClear in point (default: true)
clear_outNoClear out point (default: true)

Output Schema

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

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already signal a non-read-only, non-idempotent operation, so the description's job is lighter. It adds that the action targets in/out points on the active sequence and that either or both can be cleared, but it does not disclose recovery behavior, no-op behavior, or what happens if the sequence lacks in/out points.

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

Conciseness5/5

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

A single, front-loaded sentence with no redundant words. It efficiently states the operation, target, and scope.

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

Completeness5/5

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

For a simple two-optional-boolean tool with a full schema and output schema, the description plus schema are sufficient for an agent to invoke it correctly. No critical behavioral or contextual information is missing.

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

Parameters3/5

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

Schema coverage is 100%: both clear_in and clear_out have descriptive text and defaults. The description's 'and/or' phrasing matches the boolean combination model, but it adds little beyond what the schema already communicates.

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

Purpose5/5

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

The description names a specific verb ('clear'), a precise resource ('the in and/or out points'), and a scope ('active sequence'). This cleanly distinguishes it from related tools like set_sequence_in_out_points and clear_item_in_out.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives such as set_sequence_in_out_points, get_sequence_in_out_points, or clear_item_in_out. The intended invocation context is only implied by the phrase 'active sequence.'

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

close_all_source_clipsClose All Source ClipsA
Destructive

Close all clips in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

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

TDQS

A3.5/5.0
Behavior2/5

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

With destructiveHint=true, readOnlyHint=false, and idempotentHint=false already in the annotations, the description adds no behavioral context: nothing about undo-ability, unsaved changes in clips, behavior when no clips are open, or whether project items are unaffected. The description is consistent with the annotations but contributes nothing beyond them.

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

Conciseness5/5

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

A single six-word sentence that carries full meaning with no filler. The core action and target are front-loaded and immediately parsable.

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

Completeness3/5

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

For a zero-parameter tool with an output schema and destructive annotation, the description is mostly adequate. However, it omits useful operational details such as the relationship to close_source_monitor, failure behavior when no clips are open (non-idempotent hint suggests calling it with an empty Source Monitor may error), and absence of impact on project bins.

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

Parameters4/5

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

The tool has zero parameters and 100% vacuous schema coverage, which sets the baseline at 4. The phrase 'all clips' usefully signals that the operation is non-selective and cannot be scoped to an individual clip.

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

Purpose5/5

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

The description states a specific verb (close) and a clearly bounded resource ('all clips in the Source Monitor'). It distinguishes itself from the nearest sibling close_source_monitor, which targets the monitor panel itself rather than the clips within it.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus the closely related sibling close_source_monitor, or whether it complements open_in_source / set_source_in_out workflows. The agent must 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.

close_projectClose ProjectA
Destructive

Close the current Premiere Pro project

ParametersJSON Schema
NameRequiredDescriptionDefault
save_firstNoWhether to save before closing (default: true)

Output Schema

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

TDQS

A4/5.0
Behavior3/5

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

Annotations already flag destructiveHint=true and readOnlyHint=false, so the description does not need to restate the destructive nature. It adds no further behavioral detail such as unsaved-changes handling, but the input schema's save_first parameter covers that, and the description does not contradict the annotations.

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

Conciseness5/5

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

A single sentence that is direct and front-loaded: it names the action and target immediately. There is no filler or redundancy.

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

Completeness4/5

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

For a simple one-parameter destructive action, the description plus annotations and output schema cover the essential context. It does not discuss failure cases like no open project, but that is reasonably implied by 'current project' and is not a critical gap.

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

Parameters3/5

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

Schema description coverage is 100% and the single save_first parameter is self-explanatory in the schema. The tool description adds no parameter-specific detail, which is acceptable because the schema carries full semantic weight.

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

Purpose5/5

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

States a specific verb ('Close') and resource ('the current Premiere Pro project'), clearly distinguishing it from sibling tools like open_project, create_project, and save_project. The word 'current' adds necessary scope and prevents confusing it with closing a sequence or source clip.

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

Usage Guidelines4/5

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

The description makes the usage context clear: call it to close the active Premiere Pro project. It does not explicitly enumerate alternatives or when not to use it, but the action is distinct enough among siblings that the context alone is sufficient.

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

close_sequenceClose SequenceA
Destructive

Close a sequence tab in the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

The description adds some context beyond the annotations by specifying that the tab (not the sequence data) is what gets closed, which mitigates confusion with delete_sequence. However, it does not elaborate on the destructive implications flagged by destructiveHint=true — e.g., whether unsaved state is lost or whether the sequence remains available after closing.

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

Conciseness5/5

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

A single, front-loaded sentence with zero filler. The core action ('Close a sequence tab') appears first, followed by the location ('in the timeline'), which is all the description needs.

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

Completeness4/5

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

For a simple one-parameter tool with an output schema and 100% schema coverage, the description covers the essential operation. The only notable gap is not clarifying the distinction between closing a tab and deleting a sequence, given the destructiveHint=true annotation.

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

Parameters3/5

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

The description adds no parameter information, but schema description coverage is 100% — the schema already documents that sequence_id accepts a name or ID and defaults to the active sequence. Per the baseline for high coverage, a 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb+resource pair — 'Close a sequence tab in the timeline' — which precisely distinguishes it from sibling tools like delete_sequence (removes the sequence), close_project, and close_source_monitor. The mention of 'tab' signals a UI-level operation, not data deletion.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus its many siblings. Notably, it does not clarify when to use close_sequence instead of delete_sequence, close_project, or close_source_monitor, nor does it address the destructiveHint=true annotation by explaining the consequences of closing a sequence tab.

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

close_source_monitorClose Source MonitorA
Destructive

Close the clip currently open in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

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

TDQS

A3.6/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, and the description adds little beyond that. It does not disclose whether unsaved changes are discarded, whether closing is a no-op when no clip is open, or whether the Source Monitor panel itself remains active. No contradiction exists, but behavior beyond the annotation 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?

One clear sentence with no wasted words. The action, target, and location are front-loaded and immediately understandable.

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

Completeness4/5

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

For a zero-parameter tool with an output schema and a destructive hint, the description covers the core behavior adequately. The only small gap is the lack of clarity around edge cases, such as attempts to close when no clip is open, and the relationship to close_all_source_clips.

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 schema contains all needed information. The description adds nothing about parameters, but none are needed, making the baseline 4 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: 'Close the clip currently open in the Source Monitor.' The singular 'clip currently open' differentiates it from the sibling close_all_source_clips, so an agent can identify the operation 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?

The description provides no explicit when-to-use guidance or comparison to alternatives such as close_all_source_clips. The singular scope is implied, but an agent is not told how to choose between closing one clip versus all source clips, nor what happens when no clip is open.

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

color_correctColor CorrectA

Apply basic color correction to a clip using Lumetri Color

ParametersJSON Schema
NameRequiredDescriptionDefault
tintNoTint adjustment
blacksNoBlacks adjustment (-100 to 100)
whitesNoWhites adjustment (-100 to 100)
node_idYesNode ID of the clip
shadowsNoShadows adjustment (-100 to 100)
contrastNoContrast adjustment (-100 to 100)
exposureNoExposure adjustment (-4.0 to 4.0)
highlightsNoHighlights adjustment (-100 to 100)
saturationNoSaturation (0-200, 100 = normal)
temperatureNoColor temperature adjustment

Output Schema

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

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=false and destructiveHint=false, covering the basic safety profile. The description adds that the operation uses Lumetri Color and is 'basic', but does not disclose whether an existing correction is replaced, whether a new effect is created, or any other side effects beyond mutation.

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

Conciseness5/5

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

A single, front-loaded sentence contains the essential verb, target, and method with no wasted words. It is concise while still conveying the tool's core purpose.

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

Completeness4/5

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

With a fully documented input schema, an output schema, and annotations covering the mutation profile, the definition is largely complete for invocation. The only notable gap is the absence of usage guidance and deeper side-effect disclosure, but those are already reflected in other dimensions.

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

Parameters3/5

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

The schema covers 100% of the 10 parameters with descriptions, so the schema carries the burden of parameter semantics. The tool description itself adds no parameter-level detail, which is acceptable given the full coverage.

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

Purpose5/5

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

The description uses a specific verb ('Apply'), a clear resource ('a clip'), and the method ('Lumetri Color'), making the tool's function immediately identifiable. It also distinguishes itself from sibling tools like apply_lut or apply_effect by specifying 'basic color correction' and the Lumetri mechanism.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives such as apply_effect, apply_lut, or set_color_value. There are no stated exclusions, prerequisites, or conditions that would help an agent decide between this and sibling tools.

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

compare_cmx3600_edlsCompare Cmx3600 EdlsA

Compare two local CMX 3600 EDLs by event number and report bounded added, removed, and changed editorial events. Read-only; it does not alter either interchange file or Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
after_pathYesExisting revised .edl file
before_pathYesExisting baseline .edl file

Output Schema

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

TDQS

A3.6/5.0
Behavior1/5

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

The description explicitly claims 'Read-only; it does not alter either interchange file or Premiere,' but the annotations set readOnlyHint to false. This is a direct contradiction between the description and structured metadata, which undermines an agent's trust in side-effect expectations.

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

Conciseness5/5

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

The entire description is one focused sentence with no filler. It front-loads the action and resource, then adds the key behavioral caveat and the nature of the report.

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

Completeness4/5

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

With an output schema present and full parameter schema coverage, the description gives enough context: inputs are local EDLs, comparison key is event number, and the outcome is a bounded list of added/removed/changed events. The term 'bounded' is slightly under-specified but not fatal.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The parameter descriptions ('Existing revised .edl file' and 'Existing baseline .edl file') already clarify role and expected state; the main description does not add further parameter-level meaning.

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

Purpose5/5

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

The description names a specific verb ('Compare'), a specific resource ('two local CMX 3600 EDLs'), and the comparison dimension ('by event number'), and lists the output classes: added, removed, and changed editorial events. This clearly distinguishes the tool from siblings like inspect_cmx3600_edl and validate_cmx3600_edl.

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

Usage Guidelines4/5

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

The context is clear: use this for comparing two local CMX 3600 EDL files, not for inspecting or validating a single EDL. However, it does not explicitly name alternatives or state when not to use the tool, so it stops short of full routing guidance.

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

consolidate_and_transferConsolidate And TransferB

Consolidate, copy, or transcode project media using the Project Manager. Reports success only after a new destination folder contains a copied Premiere project.

ParametersJSON Schema
NameRequiredDescriptionDefault
transcodeNoTranscode media during copy (default: false)
rename_mediaNoRename media to match clip names (default: false)
exclude_unusedNoExclude unused clips (default: true)
convert_ae_compsNoConvert After Effects compositions (default: false)
destination_pathYesDestination folder path for the consolidated project
convert_syntheticNoConvert synthetic importer items (default: false)
copy_to_new_locationNoCopy media to a new location (default: true)
include_all_sequencesNoInclude all sequences (default: true). If false, only active sequence is used.
include_preview_filesNoInclude preview/render files (default: false)
convert_image_sequencesNoConvert image sequences to clips (default: false)

Output Schema

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

TDQS

B3.4/5.0
Behavior3/5

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

The description adds a useful behavioral guarantee: success is reported only after a new destination folder contains a copied Premiere project. Annotations already signal non-read-only and non-destructive intent. However, it does not disclose whether the source project is modified, whether the operation is long-running, or what happens on failure.

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

Conciseness5/5

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

Two tight sentences with the core action front-loaded and the key success condition second. No fluff, no repetition of schema details. Every sentence earns its place.

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

Completeness4/5

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

Given a rich input schema and an output schema, the description provides the essential behavioral contract. It could mention prerequisites or failure handling, but the success criterion compensates for much of that gap. The tool is adequately specified for an agent to invoke it confidently.

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

Parameters3/5

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

All 10 parameters are fully documented in the schema, so the description carries little parameter burden. The high-level mention of consolidate/copy/transcode maps loosely onto the boolean flags, but no parameter-specific meaning is added beyond the schema.

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

Purpose4/5

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

The description clearly states the operation: consolidate, copy, or transcode project media via the Project Manager. It names the resource and adds a concrete success condition. It does not explicitly differentiate from sibling tools like export_as_project or consolidate_duplicates, but the Project Manager framing provides enough distinction.

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

Usage Guidelines2/5

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

The description implies the tool is for consolidating/transferring project media but gives no explicit guidance on when to use it versus alternatives, and no prerequisites such as saving the project or ensuring destination availability. Without exclusions or conditions, an agent has limited decision support.

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

consolidate_duplicatesConsolidate DuplicatesA

Consolidate duplicate project items and report success only when duplicate media groups decrease.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

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

TDQS

A3.7/5.0
Behavior4/5

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

The annotations are sparse (readOnly=false, destructive=false, idempotent=false), so the description adds meaningful value by stating the non-obvious success condition: success is only reported when duplicate media groups decrease. This implies the operation may fail or no-op if deduplication does not occur. No contradiction with annotations.

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

Conciseness5/5

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

A single sentence with the action front-loaded and no filler. It conveys both the operation and the success condition 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?

Given no parameters, an output schema, and sparse but consistent annotations, the description is nearly sufficient for invocation. It lacks guidance on when to choose this over consolidate_and_transfer, but the core behavior is adequately covered.

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 schema coverage is complete and there is no parameter burden. The baseline 4 applies since the description correctly imposes no parameter requirements.

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

Purpose4/5

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

The description clearly states the action ('Consolidate duplicate project items') and adds a measurable success criterion. It does not explicitly differentiate from siblings like consolidate_and_transfer or get_duplicate_media, but the resource and success condition make the intent 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?

No guidance is provided on when to use this tool versus similar siblings such as consolidate_and_transfer or get_duplicate_media. There are no stated prerequisites, exclusions, or contextual cues beyond the implied action.

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

copy_effects_between_clipsCopy Effects Between ClipsA

Copy all effects (or a specific effect) from one clip to another. Does not copy intrinsic properties like Motion/Opacity unless specified.

ParametersJSON Schema
NameRequiredDescriptionDefault
effect_nameNoSpecific effect display name to copy (copies all non-intrinsic effects if omitted)
source_node_idYesNode ID of the source clip to copy effects from
target_node_idYesNode ID of the target clip to paste effects to

Output Schema

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

TDQS

A4/5.0
Behavior4/5

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

Annotations already mark this as non-read-only, non-idempotent, and non-destructive; the description adds the valuable behavioral caveat that intrinsic properties like Motion/Opacity are not copied unless a specific effect is named. It clarifies scope without contradicting the annotations, though it doesn't say what happens to existing target effects.

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

Conciseness5/5

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

Two concise sentences: the first states the core operation and optional scope, the second adds the key exclusion. Every word earns its place and the main purpose is front-loaded.

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

Completeness4/5

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

With full parameter schema, an output schema, and annotations present, the description is sufficient for a moderate-complexity tool. It captures the core behavior and the critical intrinsic-properties caveat; only deeper details like target-effect replacement behavior are left out.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter docs already describe effect_name, source_node_id, and target_node_id fully. The description adds only a mild restatement of the effect_name behavior ('or a specific effect', 'unless specified'), which is already encoded in the schema.

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

Purpose5/5

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

The description states a specific action ('Copy'), a clear resource ('all effects or a specific effect from one clip to another'), and an important scope exclusion ('Does not copy intrinsic properties like Motion/Opacity unless specified'). This clearly distinguishes it from related tools such as apply_effect or copy_effect_values.

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

Usage Guidelines3/5

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

The description implies when to use it—when copying effects between clips—and explains the optional effect_name choice ('all effects' vs 'a specific effect'), but it never explicitly contrasts this tool with siblings such as copy_effect_values or apply_effect. No clear when-not or alternative routing is provided.

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

copy_effect_valuesCopy Effect ValuesA

Copy verified scalar effect-property values from one effect to the matching effect on another clip. Both clips must already have the same effect applied. Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.

ParametersJSON Schema
NameRequiredDescriptionDefault
effect_nameYesDisplay name of the effect to copy values for
source_node_idYesNode ID of the source clip
target_node_idYesNode ID of the target clip

Output Schema

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

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, the description discloses a meaningful behavioral quirk: 'Legacy CEP deliberately refuses Blend Mode because Premiere can corrupt its enum value on cross-clip writes.' This explains a limitation and its rationale, which is exactly the kind of context an agent needs to avoid an unexpected failure.

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

Conciseness5/5

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

The description is two sentences with no filler. It front-loads the core operation, then adds the prerequisite and the important Blend Mode limitation. Every sentence earns its place.

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

Completeness5/5

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

For a tool with only three required parameters, a clear prerequisite, an important exception, and an existing output schema, the description is complete. An agent can determine when to call it, what it copies, what it refuses to copy, and the preconditions required for success.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter meanings are already fully documented. The description adds context about 'scalar' values and the matching-effect requirement, but it does not add per-parameter detail beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly identifies the action ('Copy'), the resource ('verified scalar effect-property values'), and the operation's scope ('from one effect to the matching effect on another clip'). It distinguishes itself from broader copy tools like copy_effects_between_clips by noting it only handles scalar values and requires both clips to already have the same effect applied.

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

Usage Guidelines4/5

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

The description gives an explicit precondition: 'Both clips must already have the same effect applied.' It also notes a specific non-supported case (Blend Mode). However, it does not explicitly name alternative tools or state when to prefer a sibling like set_effect_property or copy_effects_between_clips.

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

create_bars_and_toneCreate Bars And ToneA

Create a Bars and Tone synthetic media item in the project (useful for leader/calibration)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName for the bars and tone item (default: 'Bars and Tone')
widthNoFrame width in pixels (default: 1920)
heightNoFrame height in pixels (default: 1080)
timebaseNoTimebase as ticks-per-second string (default uses sequence timebase)
audio_sample_rateNoAudio sample rate in Hz (default: 48000)
pixel_aspect_numeratorNoPixel aspect ratio numerator (default: 1)
pixel_aspect_denominatorNoPixel aspect ratio denominator (default: 1)

Output Schema

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

TDQS

A4/5.0
Behavior3/5

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

Annotations already carry the safety profile (readOnlyHint=false, destructiveHint=false, idempotent=false), and the description aligns with these by describing a creation operation. The description adds that the result is a synthetic, generated item that lands in the project, which is useful. However, it does not disclose prerequisites (e.g., an open project), where the item is inserted (which bin), or that repeated calls keep producing new items. With annotations covering the safety profile, a mid score is appropriate.

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

Conciseness5/5

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

A single front-loaded sentence: the verb and object appear immediately, and the parenthetical earns its place by contributing the use case (leader/calibration). There is zero filler, repetition of the title, or extraneous detail. This is the right size for a simple creation tool.

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

Completeness4/5

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

Given 0 required parameters, a fully described schema, an output schema, and annotations pinning down the safety profile, the description covers everything essential: what is created, where it appears, and why an agent would use it. Minor gap: no explicit statement that an open project is required or mention of the default insertion bin, though 'in the project' implies the active project context.

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

Parameters3/5

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

Schema description coverage is ​​100%, so every parameter (name, width, height, timebase, audio_sample_rate, pixel_aspect_*) already has its own documented meaning and default. The tool description adds no parameter-level information, which the rubric's high-coverage baseline of 3 explicitly permits. There is no gap for the description to compensate for.

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

Purpose5/5

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

The description opens with the specific verb 'Create' and names a precise resource: 'a Bars and Tone synthetic media item in the project.' The 'synthetic media item' qualifier is what separates this from the many create_* siblings (create_sequence, create_bin, create_subclip, create_caption_track) that create project structures, not generated test patterns. The resource and scope are unambiguous.

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

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical '(useful for leader/calibration)' states the intended use case explicitly. There is no competing sibling tool that generates synthetic media items, so the absence of named alternatives is tolerable. It lacks explicit when-not-to-use language, but for a unique tool the clear use-case context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_binCreate BinB

Create a new bin (folder) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the new bin
parent_binNoOptional parent bin name or node ID. Creates in root if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description aligns with the annotations (readOnlyHint=false matches the mutating 'create' verb) and adds the location context 'in the project panel,' which is mildly useful. However, it reveals nothing beyond the creation fact — no information about name-collision behavior, project-scope requirements, or side effects — and the annotation flags are all false defaults that carry little weight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single ten-word sentence with zero filler; the core action and resource are front-loaded. The '(folder)' gloss and the 'project panel' location qualifier both earn their place and cost nothing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool, the combination of a fully documented schema, an output schema, and annotations covers the mechanics of invocation. The single real gap is the missing routing distinction from create_smart_bin, which is already penalized under purpose clarity and usage guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters, including the meaningful distinction that parent_bin accepts a name or node ID and defaults to root when omitted. The description adds no parameter-level meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action (create) on a specific resource (bin) and clarifies the domain meaning with '(folder)' and the location 'in the project panel.' It clearly differentiates from delete_bin and rename_bin, but it does not distinguish itself from the near-identical sibling create_smart_bin, which also creates a bin in the project panel. That missing distinction keeps it from a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as create_smart_bin, import_folder, or move_item_to_bin. No prerequisites (e.g., an open project) or exclusions are mentioned, and with over 160 siblings including a smart-bin creation tool, an agent must infer selection criteria entirely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_caption_trackCreate Caption TrackA

Create a caption/subtitle track in the active sequence from an imported caption file (e.g., .srt, .vtt). Reports structural success only when the host exposes a caption-track readback; otherwise reports an unverified accepted request.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the imported caption project item (e.g., an .srt file)
start_secondsNoOffset in seconds from the start of the sequence (default: 0)
caption_formatNoCaption format: 'subtitle' (default), '608', '708', 'teletext', 'ebu', 'op42', 'op47'

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a meaningful behavioral nuance: it reports 'structural success only when the host exposes a caption-track readback; otherwise reports an unverified accepted request.' This goes beyond the annotations, which only indicate mutability and non-idempotency, and helps the agent interpret the result correctly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences deliver the essential action, context, and the critical verification caveat. The information is front-loaded and every sentence adds value.

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 complete parameter schema, annotations, and presence of an output schema, the description supplies the necessary active-sequence context and success-reporting caveat. Nothing critical for invoking the tool correctly appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well-documented. The description adds a helpful file-format example (.srt, .vtt) but does not elaborate on parameter behavior beyond the schema, keeping this 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?

The description clearly identifies the action ('Create'), the target resource ('caption/subtitle track in the active sequence'), and the input source ('imported caption file'). It is distinct from siblings like read_sequence_captions and add_track because it specifies caption/subtitle track creation from a file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the prerequisite of an imported caption file and the context of an active sequence, but it does not explicitly state when to choose this over alternatives or when not to use it. The usage context is inferable rather than directly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_context_edit_planCreate Context Edit PlanA
Read-onlyIdempotent

Create a non-mutating, evidence-backed edit-plan scaffold from indexed Premiere context. It returns ranked source/time candidates and stale-state guards; the model must review them and use preview_edit_plan before any mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesEditing goal, such as finding the strongest budget explanation for a rough cut
strategyNoPlanning mode; default rough_cut
project_idYesProject context ID returned by manage_project_context capture
sequence_idNoOptional exact sequence ID filter
max_candidatesNoMaximum 25; default 8

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes beyond the annotations by stating non-mutating behavior, describing the return value as ranked candidates and stale-state guards, and requiring model review before any subsequent mutation. This gives the agent a clear behavioral contract without contradicting readOnlyHint or idempotentHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense, purposeful sentences front-load the tool's core nature and immediately state the workflow constraint. No filler or redundant restatement of the schema or title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Combined with a rich schema, an output schema, and safety annotations, the description supplies the essential behavioral context and next-step workflow. The mention of indexed context, ranked candidates, stale-state guards, and the preview_edit_plan prerequisite is enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage with meaningful descriptions for all five parameters, so the description does not need to restate them. It adds no parameter-specific detail beyond the general notion of ranked source/time candidates, so the schema carries the semantic weight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific verb and resource ('Create ... edit-plan scaffold') and characterizes the output as ranked source/time candidates plus stale-state guards. It clearly distinguishes this non-mutating planning tool from mutation-oriented siblings by explicitly requiring preview_edit_plan before any mutation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states when to use the tool — building an evidence-backed plan from indexed Premiere context — and explicitly routes the model to preview_edit_plan before mutation. However, it does not contrast with create_editorial_plan or spell out cases where this tool should be skipped.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_editorial_planCreate Editorial PlanA
Read-onlyIdempotent

Create a local, evidence-backed editorial workflow plan from captured project context. It never calls an LLM, uploads media, or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesThe editorial goal used to retrieve relevant local evidence.
workflowYesThe workflow to plan. Every workflow remains review-only.
project_idYesProject context ID returned by manage_project_context capture.
sequence_idNoOptional exact sequence ID filter for evidence retrieval.
max_candidatesNoMaximum evidence candidates to include; defaults to 8.
platform_targetsNoRequired only for platform_cutdown. These are proposed derivative sequence dimensions; this tool does not create or reframe a sequence.
organization_rulesNoRequired only for organize. Rules are supplied by the editor or MCP client; the server does not infer categories from filenames alone.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly says the tool never calls an LLM, uploads media, or changes Premiere, and that the plan is local and evidence-backed. These traits go beyond the annotations (readOnlyHint, idempotentHint, destructiveHint) and give the agent concrete information about side effects and execution behavior. There is no contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence states the core purpose and source of inputs, and the second sentence states explicit non-goals. Each sentence earns its place and the key action is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input schema, 100% parameter coverage, and presence of an output schema, the description is sufficient. It states what the tool produces, where the inputs come from, and what side effects it will not have. An agent can select and invoke the tool correctly without missing crucial information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all seven parameters, including conditional requirements and defaults. The description adds only a high-level relationship between captured project context and the evidence-based plan, but it does not deepen understanding of individual parameters. 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 clear verb-resource pair: 'Create a local, evidence-backed editorial workflow plan from captured project context.' It also provides useful non-goals ('never calls an LLM, uploads media, or changes Premiere') that help differentiate it from generation, import, and edit tools. However, it does not explicitly name or exclude any sibling tool, so it is clear but not maximally differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'from captured project context' implies the tool should be used after project context has been captured, but there is no explicit when-to-use or when-not-to-use guidance. It does not mention alternatives such as preview_editorial_plan or apply_edit_plan. Usage is implied rather than explicitly described.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_projectCreate ProjectA

Create a new Premiere Pro project at the specified path

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path for the new .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish mutability (readOnly=false) and non-destructive/non-idempotent profile. The description adds the core behavior—creates a file at the given path—but does not disclose overwrite behavior, whether the created project becomes active, or failure conditions. With annotations covering safety, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no filter; the action and path scoping are front-loaded. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a low-complexity tool with one fully documented parameter, annotations, and an output schema, so the description does not need to explain return values. Missing edge details—existing-path behavior and whether the project opens—keep it just below the top score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers 100% of parameters, including the .prproj requirement. The description merely restates 'specified path' and adds no syntax, format, or constraints beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Uses a specific verb ('Create'), names the resource ('Premiere Pro project'), and scopes it ('at specified path'). This clearly differentiates it from sibling project tools like open_project, save_project, and create_project_backup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word 'new' signals the intended use case—starting a fresh project—rather than opening or saving an existing one. It does not explicitly name alternatives or exclusions, but the context is clear enough for a simple creation action.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_project_backupCreate Project BackupA

Create a collision-safe, byte-verified backup beside an existing .prproj file without opening or modifying the source project.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYesAbsolute or working-directory-relative path to an existing .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly=false and destructive=false. The description adds meaningful behavioral guarantees beyond this: collision-safe naming, byte verification, and no modification or opening of the source project. These are important operational details an agent would not know otherwise.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the action, the target resource, the key safety guarantees, and the non-destructive nature. There is no redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has only one parameter, full schema coverage, and an output schema. The description covers the essential behavior, the file type, the location of the backup, collision safety, and verification. Nothing critical is missing for an agent to select and invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with project_path already documented as an existing .prproj path. The description adds only the contextual detail that the backup is created beside that file, which is helpful but does not add substantial semantic information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: create a backup of an existing .prproj file. The qualifiers 'collision-safe', 'byte-verified', and 'without opening or modifying the source project' make the tool's purpose precise and distinguish it from save/save-as/export siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: this is a non-modifying safety backup created beside the original file. It does not explicitly name alternatives or state when not to use it, but the preconditions and non-destructive nature are clear enough for an agent to infer when it is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_sequenceCreate SequenceB

Create a new sequence in the project

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
preset_pathNoOptional path to a sequence preset file (.sqpreset). If omitted, a default preset is discovered from the Premiere installation (override with PREMIERE_DEFAULT_SEQUENCE_PRESET).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly=false, idempotent=false, and destructive=false, and the description confirms a mutating create operation without contradicting those flags. It adds only the project scope; it does not disclose what happens on name collision, where the sequence appears in the bin, or whether it becomes the active sequence. With the annotation baseline present, this is minimally adequate but thin.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no filler, and the essential create-verb and sequence-resource are front and center. It is appropriately concise, though it carries so little content that it reads almost as an expansion of the title rather than a standalone guide.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter creation tool with a full schema and output schema, the description covers the basic what and where. It is not fully complete because it omits placement/activation side effects and does not distinguish this route from create_sequence_from_preset, which matters given the large sibling set.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters are fully described in the input schema (name, and optional preset_path with default-preset behavior and the PREMIERE_DEFAULT_SEQUENCE_PRESET override). The prose description adds no parameter meaning beyond the schema, so it meets the baseline for 100% schema coverage but nothing more.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (create) and a resource (a new sequence) and scopes it to the project, so an agent knows the core operation. It does not differentiate create_sequence from close siblings such as create_sequence_from_preset or create_sequence_from_clips, so it misses the top level of clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to choose this tool over create_sequence_from_preset, duplicate_sequence, or import_sequences. There is no mention of alternatives, prerequisites, or exclusion criteria; the only contextual hint is that the sequence is created in the current project.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_sequence_from_clipsCreate Sequence From ClipsB

Create a new sequence by automatically placing project items in order

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
item_idsYesArray of project item names or node IDs to include in order

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal that the operation is not read-only, not idempotent, and not marked destructive. The description adds the behavioral detail that items are placed automatically and in order, but it does not disclose side effects such as whether source items are modified or where the new sequence is created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence with no wasted words. The action and primary behavior are front-loaded, and every word contributes to the tool's meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple two-parameter schema with full coverage and an output schema present, the description is largely sufficient for invoking the tool correctly. It could add context about bin placement or whether original items are affected, but nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description's reference to 'project items in order' adds little beyond the item_ids description, which already states 'to include in order.' No extra parameter-level meaning is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Create a new sequence') and adds a distinguishing mechanism ('automatically placing project items in order') that separates it from sequence tools like create_sequence_from_preset. It does not explicitly name a sibling, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to choose this tool over siblings such as create_sequence, create_sequence_from_preset, or create_subsequence. The description implies a scenario indirectly, but it provides no explicit context, alternatives, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_sequence_from_presetCreate Sequence From PresetA

Create a new sequence from a specific preset file (.sqpreset)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new sequence
preset_pathYesFull path to the .sqpreset file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, covering the mutation and non-idempotent nature of the operation. The description adds no additional behavioral context beyond the operation itself, but it does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, efficient sentence that states the action, resource, and file type with no filler or redundancy. Every word contributes to the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with only two parameters, full schema descriptions, a defined output schema, and annotations covering mutation and idempotency behavior. The description sufficiently orients an agent, though it does not mention preconditions like an active project or conflict handling if the sequence name already exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters already described ('Name for the new sequence' and 'Full path to the .sqpreset file'). The description reinforces the .sqpreset extension for preset_path but adds no substantial meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Create') and resource ('a new sequence from a specific preset file'), explicitly naming the .sqpreset file format. This clearly differentiates it from siblings like create_sequence or create_sequence_from_clips without needing to inspect schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: use this tool when creating a sequence from a .sqpreset preset file. It does not explicitly mention alternatives or when-not-to-use, but the file-format constraint makes the intended usage unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_smart_binCreate Smart BinB

Create a smart bin (search bin) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the smart bin
queryYesSearch query for the smart bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so this is clearly a write operation. However, the description adds no behavioral detail beyond the simple fact of creation, such as whether a duplicate name is allowed or what happens on repeated calls with the same name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It communicates the action, the object, and the location efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter creation tool with a rich schema and an output schema, the description is nearly complete. It clearly identifies what a smart bin is and where it is created, though it doesn't address edge cases like duplicate names or overwrite behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters (name and query) are already documented in the schema. The description adds only contextual meaning around the tool itself, not additional parameter-level semantics, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action ('Create'), a specific object ('smart bin (search bin)'), and a location ('in the project panel'). It is distinguishable from a generic bin creation tool, though it does not explicitly contrast with create_bin.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'smart bin (search bin)' implies this is for search-based bins rather than regular folders, but there is no explicit guidance on when to use this versus create_bin or search_project_items. Usage context is mostly implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_subclipCreate SubclipB

Create a subclip from a project item with in/out points

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the subclip
item_idYesNode ID or name of the source project item
in_secondsYesIn-point in seconds
out_secondsYesOut-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate that this is a write operation (readOnlyHint=false) and is not destructive; the description is consistent with that. It adds minimal behavioral context beyond the schema, such as indicating the source is an existing project item, but no extra side effects, prerequisites, or return behavior are disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence states the verb and object immediately and contains no filler or repetition. It is appropriately sized for a simple create operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With full schema coverage, annotations, and an output schema present, the brief description is largely sufficient for a well-scoped create tool. It could add value by noting the relationship to create_subsequence or naming what object is returned, but nothing essential for invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the description is not required to explain the parameters. The phrase 'with in/out points' loosely echoes in_seconds/out_seconds but adds no semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific operation (Create), the object produced (a subclip), and the source/input (a project item with in/out points). It is easily distinguished from sibling creation tools like create_sequence or create_subsequence because it targets a subclip, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is given. The description is a definition rather than decision support, and it names no alternatives such as create_subsequence, so an agent must infer when this tool is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_subsequenceCreate SubsequenceA

Create a separate subsequence from selected clips or a time range. This Premiere API does not replace the original timeline clips with a nested-sequence reference.

ParametersJSON Schema
NameRequiredDescriptionDefault
ignore_track_targetingNoWhether to ignore track targeting (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only and not destructive, but the description adds a meaningful behavioral detail: the tool creates a separate subsequence and does not replace original timeline clips with a nested-sequence reference. This clarifies the mutation's scope and allays concerns about destructive replacement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler: the first states the operation and inputs, and the second provides a key behavioral clarification. Information is front-loaded and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The definition is mostly complete for a tool with one optional documented parameter, an output schema, and annotation coverage. Minor gaps remain around implicit prerequisites such as requiring an active timeline selection or work area, but these are unlikely to block correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single parameter ignore_track_targeting is already documented in the schema. The tool description adds no additional parameter-level meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: 'Create a separate subsequence from selected clips or a time range.' It also adds a distinguishing behavior—this API 'does not replace the original timeline clips with a nested-sequence reference'—which helps differentiate it from sibling tools like nest_clips.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool by specifying inputs (selected clips or a time range), but it does not explicitly contrast it with alternatives such as nest_clips, duplicate_sequence, or create_sequence_from_clips. There are no when-not-to-use conditions, so the agent must infer routing from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

crop_clipCrop ClipA

Apply or update Premiere's Crop effect on one video clip and read back every requested value. Adding Crop uses the legacy QE catalog only when the clip does not already contain it.

ParametersJSON Schema
NameRequiredDescriptionDefault
topNoPercent cropped from the top edge.
leftNoPercent cropped from the left edge.
zoomNoWhether Crop should scale the remaining image to fill the frame.
rightNoPercent cropped from the right edge.
bottomNoPercent cropped from the bottom edge.
node_idYesTimeline video-clip node ID.
edge_featherNoCrop edge feather percentage.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is not read-only, and the description adds meaningful behavioral detail: it can either add a new Crop effect or update an existing one, and adding uses the legacy QE catalog only when the clip lacks the effect. This goes beyond the basic write status.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler. The core behavior is front-loaded, and the legacy QE note earns its place by clarifying an important implementation detail about effect creation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 combination of description, complete schema, and output schema covers the essential operational behavior. The main gap is minor: the legacy QE catalog phrase is unexplained, though it does not prevent correct use of 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 schema already documents all seven parameters and their meaning. The description adds no additional parameter-level semantics beyond noting that requested values are read back, which is expected given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: applying or updating Premiere's Crop effect on one video clip. It also conveys that values are read back, and the focus on the Crop effect distinguishes it from generic effects tools like apply_effect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied rather than explicit. The description indicates this tool is for Crop effect operations on a single clip, and the add-vs-update distinction is helpful, but it does not explicitly state when to use this tool over sibling alternatives like apply_effect or set_clip_properties.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_binDelete BinC
Destructive

Delete a bin (folder) from the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_idYesName or node ID of the bin to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already carry destructiveHint=true and readOnlyHint=false, so the description adds only the minor 'project panel' location detail. Critically, it does not disclose whether deleting a bin cascades to its contents (clips, sequences) or requires the bin to be empty first — the most consequential behavioral fact for a destructive container operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single ten-word sentence with the verb and object front-loaded. There is no filler, no repetition of schema content, and nothing that could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one parameter, output schema present, destructiveHint annotation present), but the unanswered cascade-deletion question — whether the bin's contents are also destroyed — is a material gap that affects whether an agent should call this tool at all. For a destructive operation, the description should disclose the blast radius.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the bin_id property is already fully documented in the input schema ('Name or node ID of the bin to delete'). The description adds no parameter-level information beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Delete'), a resource ('bin'), and clarifies both the resource type ('folder') and its location ('project panel')). This orients an agent and distinguishes it from sibling delete_sequence. It does not, however, address how it relates to the overlapping sibling deletion tools delete_project_item and delete_multiple_project_items, so full sibling differentiation is not achieved.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use delete_bin versus the sibling deletion tools delete_project_item, delete_multiple_project_items, or delete_sequence. With a sibling list of 300+ tools and several plausible deletion targets, this ambiguity is left entirely unresolved for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_markerDelete MarkerC
Destructive

Delete a marker at a specific time position

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID (deletes from sequence if omitted)
time_secondsYesTime position of the marker to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and idempotentHint=false, and the description merely restates the destructive nature through the verb 'Delete' without adding behavioral context such as irreversibility, behavior when no marker exists at time_seconds, or consequences for dependent workflows. The description does not contradict the annotations, but it also adds no disclosure beyond what annotations already convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, tightly worded sentence with the action verb front-loaded and no filler. It is appropriately short, though it could earn a 5 if it packed in scope or usage guidance at the cost of only a few words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema and annotations cover return values and destructive safety, and the input schema fully documents both parameters, so much of the burden is already carried by structured fields. The remaining gaps are usage context: no guidance on when deletion is appropriate versus updating a marker, and no caveat about the sequence-vs-clip scope beyond the node_id parameter description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both time_seconds and node_id documented in the input schema, so the baseline of 3 applies. The description adds no meaning beyond the schema — 'at a specific time position' merely echoes the time_seconds parameter description, and it says nothing about node_id that the schema doesn't already cover.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Delete') and resource ('a marker') plus the identifying criterion ('at a specific time position'), which distinguishes it from marker siblings like add_marker, update_marker, and list_markers by action. However, it does not specify whether the marker lives on a sequence or a clip — that scope is left to the node_id parameter, so differentiation from sibling marker tools is incomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives; it never mentions update_marker for modifying markers, list_markers for finding them, or the fact that omitting node_id deletes from the sequence while providing it deletes from a clip. The only usage hint lives in the node_id parameter description, not in the tool description itself.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_multiple_project_itemsDelete Multiple Project ItemsB
Destructive

Delete multiple project items at once from the project panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsYesArray of node IDs or names of items to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already carry destructiveHint=true, so the description does not need to restate danger. It adds that the target is project-panel items and that deletion happens in batch, but it does not disclose whether deletion is permanent, reversible, or cascading. This is acceptable given the annotation coverage but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, direct sentence with no filler or redundancy. The action, object, scope, and batch nature are all conveyed efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter destructive operation with an output schema and strong annotations, the description is mostly sufficient. However, it omits usage guidance distinguishing it from delete_project_item and does not clarify permanence or side effects beyond what the destructiveHint annotation already conveys.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the single parameter item_ids is already fully documented. The description adds no extra meaning about how IDs or names resolve to project items, so it neither improves nor detracts from the schema's explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete') and the resource ('multiple project items') with a specific scope ('from the project panel'). It is easy to tell this is the batch counterpart to single-item deletion, though it does not explicitly name or contrast sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives such as delete_project_item, delete_sequence, or delete_bin. The 'multiple... at once' wording implies a batch use case, but no explicit selection criteria or exclusions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_preview_filesDelete Preview FilesA
Destructive

Delete all preview/render cache files for the project. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_typeNoType of preview files to delete: 'video', 'audio', or 'all' (default: 'all')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare destructiveHint=true, and the description adds useful context by specifying exactly what is destroyed: 'all preview/render cache files for the project.' It also notes 'Uses QE DOM,' which hints at the underlying implementation, although this detail is somewhat cryptic.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with the main purpose front-loaded. The second sentence ('Uses QE DOM') is short but adds limited value and could arguably be omitted; overall, there is minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The destructive scope is clearly stated, the optional parameter is fully documented in the schema, and an output schema exists so return values do not need description. The description is sufficient for a straightforward cleanup tool, though it does not mention prerequisites or reversibility beyond the destructive hint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of the single parameter (media_type) with a clear description and default value. The tool description adds no parameter-specific meaning beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Delete'), resource ('preview/render cache files'), and scope ('for the project'), making the tool's function unambiguous. It also differentiates itself from sibling tools like delete_sequence or delete_bin by specifying preview/render cache specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the imperative 'Delete all preview/render cache files,' but it does not explicitly state when to use this tool or when to prefer an alternative. No exclusions or alternative tool references are provided, so an agent must infer the intended context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_project_itemDelete Project ItemA
Destructive

Delete a project item (clip, bin, etc.) from the project panel. This removes it from the project but does not affect timeline instances.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish destructiveHint=true, readOnlyHint=false, and idempotentHint=false. The description adds value beyond those hints by specifying that deletion does not affect timeline instances and occurs in the project panel, which is a meaningful behavioral nuance. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, each earning its place. The first defines the action and scope; the second prevents confusion with timeline-level deletion. No redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one documented parameter, destructiveHint=true, and an output schema, the description is nearly sufficient for an agent to call the tool correctly. It clearly explains deletion scope and the important non-effect on timeline instances, though explicit tool-selection boundaries against sibling tools are left to inference.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already covers item_id fully with the description 'Node ID or name of the project item to delete.' The description adds examples of what counts as a project item ('clip, bin, etc.'), which helps interpret valid values, but it does not change the format or semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States an explicit verb and resource: 'Delete a project item (clip, bin, etc.) from the project panel.' It clearly scopes the operation to the project panel and clarifies it is not a timeline operation. However, it does not differentiate itself from overlapping siblings like delete_bin, delete_sequence, or delete_multiple_project_items.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives useful context: the item is removed from the project but timeline instances are unaffected, which implies the intended use is project-panel deletion rather than timeline removal. However, it never names alternative tools or states explicit exclusions, and the 'bin, etc.' example overlaps with the dedicated delete_bin sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_sequenceDelete SequenceB
Destructive

Delete a sequence from the project

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true, and the description adds no behavioral context beyond that. It does not mention whether the deletion affects underlying media, whether it is undoable, or what happens to open sequence references.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundant content. For a simple one-parameter destructive tool, this length is appropriate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a straightforward deletion tool with one fully documented parameter, destructive annotations, and an output schema, the description is nearly sufficient. It lacks only a clarifying note about when sequence deletion is preferred over project-item deletion and whether media is removed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the sequence_id parameter documented as 'Sequence name or ID to delete.' The tool description itself adds no parameter-level detail, but the baseline of 3 applies because the schema fully covers the parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Delete') and the target resource ('a sequence from the project'). It distinguishes this tool from sibling tools like delete_bin, delete_track, and delete_project_item by naming the sequence resource directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to prefer this tool over alternatives such as delete_project_item or delete_multiple_project_items. There are no preconditions, exclusions, or hints about scope, leaving the selection decision to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_trackDelete TrackA
Destructive

Delete a video or audio track from the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesType of track to delete
track_indexYesIndex of the track to delete (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The destructiveHint annotation already communicates that this operation is destructive, and the description does not contradict it. The description adds the active-sequence scoping constraint, but it does not disclose what happens to the track's contents (e.g., whether clips on that track are also deleted) or any preconditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with no filler or repetition of the schema. It states the action, target, and scope efficiently, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter destructive operation with a full input schema and an output schema, the description is largely complete. The main gap is that it does not mention the side effects on clips contained in the deleted track, which would be useful for an agent reasoning about consequences.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and both parameters have clear descriptions including the track_type enum and the 0-based track_index. The description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Delete'), a precise resource ('video or audio track'), and a clear scope ('from the active sequence'). This naturally distinguishes it from sibling tools like delete_sequence, delete_bin, and remove_from_timeline without requiring the agent to open schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended usage is implied: use this when you need to delete a video or audio track from the active sequence. However, the description gives no explicit when-not-to-use guidance and names no alternatives, even though siblings like add_track, list_sequence_tracks, and delete_sequence exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

deselect_all_clipsDeselect All ClipsA

Deselect all clips in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clearly discloses the behavioral effect: the current selection in the active sequence is emptied. It does not claim to affect clip media or timeline structure, and it does not contradict any annotation. With no readOnlyHint, it appropriately signals that the tool changes selection 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?

A single, front-loaded sentence that communicates the action and scope with no filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema and a simple state-changing action, the description is fully sufficient. An agent knows exactly what invoking this tool will do and in what scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and 100% schema coverage, so there is nothing for the description to add about parameter meaning. The baseline of 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?

The description names a specific verb and resource: 'Deselect all clips in the active sequence.' It clearly distinguishes itself from related selection tools like select_all_clips, select_clips_by_name, and invert_selection by stating the deselect action and the active-sequence 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 gives no explicit guidance on when to use this tool versus alternatives such as set_clip_selection, select_all_clips, or invert_selection. The intended scenario of clearing the current selection is only implied by the action, not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detach_proxyDetach ProxyB

Detach/remove the proxy from a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description carries low burden for safety, but it still adds no specific behavioral context. It does not explain whether detaching deletes proxy files, affects other items, or has side effects beyond removing the association. The description merely restates the tool's action without depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one short, direct sentence with no filler. It front-loads the core verb and target immediately, making it easy to parse. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with an output schema and annotations, the description is minimally acceptable, but it lacks guidance on edge cases such as handling an item with no proxy or whether the operation is reversible. It is adequate but not rich enough to fully prepare an agent for unexpected runtime situations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage for the single parameter item_id, and the description confirms that the item is a 'project item'. The description does not add new semantic detail beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verb 'Detach/remove' and a defined resource 'proxy from a project item', clearly indicating the operation. It does not explicitly distinguish itself from sibling tools like manage_proxies or has_proxy, but the action is unambiguous enough for an agent to infer intent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool over siblings such as manage_proxies or has_proxy. The description implies a simple detach action but provides no context about prerequisites, alternatives, or conditions that would make this tool the correct choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_active_picture_boundsDetect Active Picture BoundsA

Detect the most frequent active-picture crop rectangle in decoded video, exposing probable letterbox or pillarbox bars without modifying the source.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoCropdetect black threshold from 0 through 255 (default: 24)
media_pathYesExisting local video file
sample_secondsNoDecode sample duration from 1 through 300 seconds (default: 30)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations: it clarifies that the source is not modified despite readOnlyHint=false, and it reveals that detection is based on the most frequent crop rectangle in decoded video. This helps set expectations about the heuristic 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?

A single, well-structured sentence front-loads the action and outcome while including the key safety caveat. Every phrase earns its place; there is 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?

With an output schema present and all parameters documented in the input schema, the description covers the essential purpose and side-effect caveat. Slight incompleteness remains in the absence of usage-vs-alternative guidance, 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%, so the schema already documents limit, media_path, and sample_seconds. The description adds no parameter-level semantics beyond what the schema provides, which is acceptable but not additive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Detect'), a concrete resource ('active-picture crop rectangle'), and an explicit purpose ('exposing probable letterbox or pillarbox bars'). This clearly distinguishes it from generic detect/analyze siblings such as detect_silence or detect_scene_edits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use case is implied by the letterbox/pillarbox mention, but there is no explicit guidance on when to use this tool versus alternatives like crop_clip or inspect_media_streams. No when-not-to-use or alternative routing is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_audio_transientsDetect Audio TransientsA

Find probable beat or edit-point transients from decoded audio peaks. Returns candidates for editorial review; it does not claim musical beat-grid accuracy or change a timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local audio or video file
maximum_eventsNoMaximum returned candidates from 1 through 1000 (default: 200)
threshold_dbfsNoMinimum transient peak from -60 through 0 dBFS (default: -12)
minimum_interval_secondsNoMinimum spacing from 0.05 through 10 seconds (default: 0.25)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only provide generic false hints, so the description carries the burden. It adds meaningful behavioral context: the tool returns candidates rather than definitive beats and explicitly says it doesn't modify the timeline. This goes beyond what annotations convey, though it doesn't discuss other potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the core purpose, then immediately states the candidate nature and key exclusions. Every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists and the input parameters are fully documented, the description provides sufficient contextual framing: source is decoded audio peaks, results are candidates for review, and timeline changes are excluded. A slightly richer note about exact output shape or potential side effects beyond timeline would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and each parameter already includes ranges and defaults, so the description doesn't need to add parameter-level meaning. The tool description adds no parameter-specific detail beyond what the schema provides, which matches the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Find probable beat or edit-point transients from decoded audio peaks.' It clearly differentiates itself from beat-grid-accurate tools and timeline mutators, which is relevant given siblings like detect_silence and scene analysis 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 provides clear context about intended use ('candidates for editorial review') and explicitly states what it does not do: it does not claim beat-grid accuracy or change a timeline. It stops short of naming a specific alternative tool, but the usage context is strong.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_beatsDetect BeatsA

Estimate a steady beat grid from a local audio or video file without changing Premiere. FFmpeg decodes at most 30 minutes to a bounded mono analysis stream; local onset autocorrelation returns BPM, phase-aligned beat times, confidence, and half/double-time alternatives.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_beatsNoMaximum beat times returned (default: 500).
media_pathYesAbsolute path to an existing local audio or video file.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations nearly empty (readOnlyHint=false and no destructive flag, so no safety signals), the description carries the full burden and does so admirably. It discloses the non-destructive nature, the 30-minute decode limit, the bounded mono analysis stream, the local onset autocorrelation method, and the exact return content. This gives an agent strong behavioral expectations without needing to guess.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each adding substantive information: non-destructive scope, input/time limit, algorithm, and outputs. The most important facts are front-loaded, and there is zero redundant filler or repetition of the schema field descriptions. Every term ('bounded mono analysis stream,' 'phase-aligned') earns its place by sharpening the behavioral contract.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with a rich output schema, the description covers all the operational essentials: input type, duration cap, analysis strategy, output dimensions, and side-effect absence. The output schema handles the return structure, so the description need not enumerate fields. The only minor edge case (what happens when the file is longer than 30 minutes) is not stated, but it is a small gap in an otherwise complete definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters completely (100% coverage): media_path is 'Absolute path to an existing local audio or video file' and max_beats is 'Maximum beat times returned (default: 500).' The description adds useful context by explaining the file is decoded by FFmpeg and that beat times are phase-aligned, which gives the path meaning beyond just 'a file.' It does not fully explain max_beats, but that is already explicit in the schema, so a 4 is warranted rather than a 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 does not just name the tool; it specifies a concrete verb and object: 'Estimate a steady beat grid from a local audio or video file.' It also names the key outputs (BPM, beat times, confidence, half/double-time alternatives), which makes the tool's purpose unmistakable and distinguishes it from detection siblings like detect_silence, detect_audio_transients, and detect_motion_peaks.

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 establishes clear usage context: use this tool when you need a beat grid from a local media file, and it explicitly scopes the operation as 'without changing Premiere.' The written output contract (BPM, phase-aligned beat times, confidence) makes it clear this is for beat-oriented analysis, not general transient or silence detection, so an agent can correctly choose it among many detection tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_motion_peaksDetect Motion PeaksA

Find probable high-motion moments in a bounded local video sample from decoded frame differences. Read-only editorial candidates; camera movement, flashes, cuts, and subject motion are not semantically distinguished.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNoMinimum mean luma-frame difference from 0 through 255 (default: 12)
media_pathYesExisting local video file
maximum_eventsNoMaximum returned candidates from 1 through 1000 (default: 200)
sample_secondsNoDecode duration from 1 through 300 seconds (default: 60)
samples_per_secondNoFrame samples per second from 1 through 10 (default: 4)
minimum_interval_secondsNoMinimum peak spacing from 0.1 through 30 seconds (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clearly states the operation is read-only and that candidates are only 'probable high-motion moments'; it even discloses the limitation that camera movement, flashes, cuts, and subject motion are not semantically distinguished. Although the annotations mark destructiveHint=false, they do not mark readOnlyHint=true, so the description itself does useful extra work in clarifying safety. It could add more behavioral detail about the return shape (e.g., timestamps and scores), but with an output schema present this is a minor omission.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence that front-loads the resource ('bounded local video sample from decoded frame differences'), states the output type ('probable high-motion moments'), and adds an important limitation. 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 read-only detection tool with a rich schema (six parameters, all described, with defaults) and an output schema, the description covers the main behavior and limitations. Remaining gaps are minor: it does not explicitly explain how returned peaks should be consumed in an editorial workflow and does not explicitly exclude scene changes as semantic detections, but the limitation sentence largely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so each of the six parameters already has a meaningful description with defaults and ranges. The description adds no additional parameter-level behavior beyond calling them the basis for finding motion peaks. Baseline 3 applies because the schema already 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?

The description clearly identifies a verb ('Find') and a specific resource ('bounded local video sample from decoded frame differences'), saying this produces high-motion candidate moments. It explains that it is read-only and editorial candidates, but it does not name a sibling tool that offers a similar alternative. Thus it is specific but not explicitly differentiated from, for example, detect_source_scene_changes or detect_scene_edits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage as a read-only motion-analysis pass over a local video file, and the phrase 'editorial candidates' suggests it is for finding possible moments of interest rather than semantic classification. However, it never explicitly says when to choose it over related tools such as detect_scene_edits, detect_silence, or detect_source_scene_changes, and it omits context (e.g., shall be used for rough-cut selection; for shot changes use another tool). This is adequate but not strong guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_scene_editsDetect Scene EditsB

Safe scene-edit facade. It uses the authenticated Premiere UXP bridge when connected and explicitly confirmed; CEP fallback is intentionally withheld because synchronous scene detection can block the panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesHow Premiere should materialize detected edits on the current native selection.
operation_idNoOptional idempotency key sent to the UXP bridge.
confirm_non_undoableYesMust be true because the host operation mutates the project and is not claimed undoable.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

It adds useful behavioral context beyond the annotations: authenticated UXP bridge dependency, explicit confirmation requirement, and intentional withholding of CEP fallback due to panel-blocking risk. It does not describe failure behavior when no connection exists, but the schema and annotations already signal mutation and non-undoability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler; the key qualifier 'Safe scene-edit facade' is front-loaded, and the implementation rationale follows immediately. Every sentence adds operational information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the fully covered schema and presence of an output schema, invocation details are mostly handled outside the description. However, the description leaves the core purpose implicit and offers no routing guidance against scene_edit_detection or detect_source_scene_changes, so an agent cannot confidently select this tool from context alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents mode, operation_id, and confirm_non_undoable; the description adds no parameter-specific detail. This is the appropriate baseline when the schema carries the semantic load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description calls the tool a 'Safe scene-edit facade' and mentions 'scene detection,' so the general purpose is inferable, but it never explicitly states the core action: detecting scene edits and materializing them as cuts, markers, or subclips. It also does not differentiate this tool from siblings like scene_edit_detection or detect_source_scene_changes.

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 an operating precondition—'uses the authenticated Premiere UXP bridge when connected and explicitly confirmed'—and explains why CEP fallback is withheld. However, it does not tell the agent when to prefer this over alternative scene-detection tools or what to do when the bridge is unavailable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_silenceDetect SilenceA

Find silent ranges in a media file and return both the silences and the complementary segments worth keeping. Analysis only — nothing in the project or on the timeline is modified. Requires ffmpeg on PATH: Premiere's scripting API exposes no audio-level or waveform data, so silence cannot be measured through the bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathNoAbsolute path to the media file to analyse. Provide this or project_item_id.
project_item_idNoNode ID or name of a project item whose media path is resolved through Premiere. Provide this or media_path.
noise_threshold_dbNoLevel at or below which audio counts as silence, in dBFS. Closer to 0 is more aggressive (default: -30).
min_duration_secondsNoShortest run of silence to report, in seconds (default: 1.5).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states 'Analysis only — nothing in the project or on the timeline is modified,' but the annotations declare readOnlyHint=false. This directly contradicts the annotation, so the behavioral transparency score must be 1 per the contradiction rule.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words: the first covers purpose and output, the second covers safety and the external ffmpeg dependency. Information is front-loaded and each sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core details: what the tool does, that it is analysis-only, and why ffmpeg is required. The schema covers parameter semantics and defaults. The only gap is the readOnlyHint contradiction, which creates some confusion but does not prevent correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters have thorough descriptions in the schema (100% coverage), so the baseline is 3. The tool description does not add additional parameter-level meaning beyond the schema, which is acceptable given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific verb ('Find'), a clear resource ('silent ranges in a media file'), and the exact output ('both the silences and the complementary segments worth keeping'). This clearly distinguishes it from sibling analysis tools like analyze_loudness or plan_silence_review_markers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides strong context: it is analysis-only and requires ffmpeg because Premiere's bridge exposes no audio-level data. This tells an agent when this tool is necessary, though it does not explicitly name alternative tools or state 'use X instead when...'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

detect_source_scene_changesDetect Source Scene ChangesA

Detect probable visual cuts in a local source file using FFmpeg scene scores. Read-only and source-relative; it does not cut a Premiere timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNoScene-score threshold from 0.01 through 1 (default: 0.3)
media_pathYesPath to an existing local video file
maximum_eventsNoMaximum returned changes (default: 500; maximum: 2000)
minimum_interval_secondsNoKeep only the strongest event within this interval (default: 0.25)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly states 'Read-only', but the annotations declare readOnlyHint: false. This is a direct contradiction between the description and the structured annotation metadata. Because the description contradicts annotations, it does not provide trustworthy behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences deliver the core purpose and the most important boundary. Every phrase earns its place, and the key differentiator is front-loaded. No unnecessary detail or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately covers the tool's source-relative scope and its main non-behavior. However, the contradiction with readOnlyHint weakens its reliability, and it does not clarify when to choose this over related sibling tools like detect_scene_edits. Given the output schema exists, return-value detail is not required, but the unresolved metadata conflict leaves the context incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter schemas already document threshold, media_path, maximum_events, and minimum_interval_seconds. The description adds the FFmpeg scene-score context, which slightly clarifies the domain, but it does not add substantial parameter-level meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a specific operation: detecting probable visual cuts in a local source file via FFmpeg scene scores. It also distinguishes itself from timeline-affecting tools by stating it does not cut a Premiere timeline. This is strong, actionable purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description communicates the intended context: operate on source media files, not the active sequence. It also provides an exclusion ('does not cut a Premiere timeline'). It does not name alternative scene-detection siblings such as detect_scene_edits, but the scope guidance is clear enough to route selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

duplicate_clipDuplicate ClipA

Duplicate a clip on the timeline (copy to same position on next available track)

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to duplicate

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the operation is a write but not destructive. The description adds useful context beyond annotations: the copy preserves timeline position and lands on 'the next available track.' It doesn't detail edge cases like no available track or whether all clip attributes are copied, but the core side effect is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the verb and resource, then adds the key placement detail in a parenthetical. No filler or redundant restatement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter mutation tool with annotations and an output schema, the description is largely complete. The only notable gap is that 'next available track' is not fully defined (e.g., direction or behavior when no track is available), but this is minor for selecting and invoking the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: node_id is already documented as 'Node ID of the clip to duplicate.' The description adds no additional parameter-level meaning, so it relies on the schema, which is sufficient for the single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a precise operation—duplicate a clip—on a specific resource (a clip on the timeline), and includes the placement result 'copy to same position on next available track.' This clearly distinguishes it from the many clip-edit siblings and from duplicate_sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when this tool is appropriate: to create a copy of a clip at the same timeline position on the next free track. It doesn't explicitly name alternatives or exclusions, but the behavior is specific enough that an agent can select it without opening other tool definitions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

duplicate_sequenceDuplicate SequenceB

Duplicate an existing sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to duplicate

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate this is not read-only and not destructive, but the description adds no additional behavioral context such as whether a new sequence is created, how it is named, or whether the original is left untouched. It primarily restates the tool's title.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence with no filler and delivers the core meaning immediately. It is appropriately sized for a simple one-parameter operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has one required parameter, and an output schema is reported to exist, so return-value details are not the description's responsibility. However, useful context about the behavior of duplication, such as naming collision handling and whether the original sequence is unchanged, is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides full coverage of the single parameter, sequence_id, described as 'Sequence name or ID to duplicate'. The description adds nothing beyond the schema, but with 100% schema coverage a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Duplicate') and identifies the resource ('an existing sequence'), making the core operation clear. It does not explicitly contrast with related tools like create_sequence or duplicate_clip, but the phrasing is specific enough to distinguish the intent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives such as create_sequence, create_subsequence, or duplicate_clip. The description implies the operation but provides no exclusions or selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

enable_disable_clipEnable Disable ClipB

Enable or disable a clip on the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesSet to true to enable, false to disable
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-idempotent mutation. The description merely restates the action and adds no behavioral context such as effect on disabled clips, visual state changes, or relationship to selection. It does not contradict the annotations, but it also does not add value beyond them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler words. It front-loads the action and the object, and every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple two-parameter toggle operation with an output schema available, so a brief description is largely sufficient. However, it would be slightly stronger if it clarified that this applies to the active timeline/sequence or distinguished itself from batch_enable_disable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both 'node_id' and 'enabled' already documented clearly. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('enable or disable') and a clear resource ('a clip on the timeline'), making the core action unambiguous. It does not explicitly differentiate itself from sibling tools like batch_enable_disable, but the singular 'a clip' implies single-clip operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as batch_enable_disable or set_clip_properties. An agent must infer from the name that this handles a single clip, and there is no mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

encode_fileEncode FileA

Encode an external file (not in project) using Adobe Media Encoder

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsNoOptional start time in seconds
input_pathYesFull path to the input file
out_secondsNoOptional end time in seconds
output_pathYesFull output file path
preset_pathYesPath to an AME preset file (.epr)
remove_on_completionNoRemove from queue on completion (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a writing, non-idempotent, non-destructive operation. The description adds little behavioral detail beyond that: it does not explain whether encoding runs synchronously or queues in Adobe Media Encoder, whether existing output files are overwritten, or what side effects occur in the render queue. For a tool with a mutation side effect, this is a meaningful 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?

The description is a single, focused sentence with no filler. It front-loads the key differentiator ('external file (not in project)') and states the method. Every word contributes.

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 plus the fully documented schema is adequate for a simple encode call, and the presence of an output schema means return values do not need to be described. However, the tool lacks guidance about queue behavior, how it relates to start_batch_encode or encode_project_item, and what constitutes successful completion. These gaps matter for correct selection and invocation among many encoding-related siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all six parameters are already documented in the input schema. The description adds only the context that the input is an external file not in the project, which clarifies input_path slightly but does not compensate for or add meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Encode') and resource ('external file'), and the parenthetical '(not in project)' directly distinguishes it from sibling tools like encode_project_item. This is enough for an agent to identify what this tool does without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: encoding external files that are not part of the project. It does not explicitly name alternative tools such as encode_project_item or start_batch_encode, nor does it state when not to use them, so it stops short of full alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

encode_project_itemEncode Project ItemA

Encode a specific project item (not a sequence) using Adobe Media Encoder

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to encode
output_pathYesFull output file path
preset_pathYesPath to an AME preset file (.epr)
remove_on_completionNoRemove from queue on completion (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate readOnly=false, destructive=false, and idempotent=false, so the description does not need to restate those. It adds the useful context that encoding happens via Adobe Media Encoder, but it does not disclose whether the operation is asynchronous, whether it manages a render queue, or what side effects occur on completion.

Agents need to know what a tool does to the world before 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, the object, the scope clarification, and the tool used. Every element earns its place, and there is no redundant restating of the title or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and fully documented parameters, the description does not need to explain return values or parameter formats. However, for a mutating tool that interacts with Adobe Media Encoder, it leaves gaps around queueing behavior, blocking vs. non-blocking execution, and differentiation from nearby encode/render 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 parameters are already fully documented in the schema. The description adds no parameter-level information beyond clarifying that the item is a project item rather than a sequence, which is more about tool selection than parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Encode'), a specific resource ('project item'), and immediately clarifies scope with '(not a sequence)', which distinguishes it from sequence-oriented encoding tools in the sibling list. The mention of Adobe Media Encoder also anchors the mechanism.

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 '(not a sequence)' parenthetical gives some implicit usage guidance by ruling out sequence encoding, but it does not explicitly say when to choose this tool over closely related siblings like encode_file, start_batch_encode, or add_to_render_queue. No alternatives are named and no exclusions beyond 'not a sequence' are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_aafExport AafA

Unavailable on the CEP backend. Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/export.aaf')
sample_rateNoAudio sample rate (default: 48000)
mix_down_videoNoMix down video to single track (default: true)
bits_per_sampleNoAudio bit depth (default: 16)
explode_to_monoNoExplode multichannel audio to mono (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

All annotations are default false values (readOnlyHint, idempotentHint, destructiveHint, openWorldHint), so they convey almost nothing and the description carries the disclosure burden. The description discloses the single most decision-relevant behavioral fact — calls to this tool will not work on the CEP backend — and adds an authentication prerequisite for the alternative. No contradiction with annotations exists since 'unavailable' does not conflict with any of the default hints. It falls short of 5 only because it discloses nothing about the tool's actual behavior beyond unavailability, though for a dead-end tool that is arguably all that matters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences where every word earns its place. The critical fact is front-loaded ('Unavailable on the CEP backend'), followed immediately by the action directive naming the alternative. Zero waste, no filler, ideal structure for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool whose only purpose is to divert the agent, the description is complete: it states unavailability, names the replacement, and gives the required version and authentication context for that replacement. The output schema exists, all parameters are schema-documented, and nothing an agent needs to decide whether/how to invoke this tool is missing. Full context for a dead-end redirect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — all 5 parameters (output_path, sample_rate, mix_down_video, bits_per_sample, explode_to_mono) have descriptions in the schema — so the baseline 3 applies and the description need not compensate. The description adds no parameter-level meaning, which is acceptable given the tool is a redirect and the schema already documents every field.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly communicates the tool's operational status — 'Unavailable on the CEP backend' — and distinguishes it from the working sibling export_aaf_uxp, which is the sibling differentiation the rubric rewards. It never states the verb+resource ('exports AAF files') explicitly, but the title 'Export Aaf' and the tool name carry that meaning, so an agent can infer the function. Slightly under a 5 because the function itself is only implied, not described.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-not-to-use guidance ('Unavailable on the CEP backend') and names the exact alternative with its prerequisite: 'Use export_aaf_uxp with an authenticated Premiere 26.3+ UXP bridge.' This is textbook routing behavior — the agent knows not to call this tool and knows exactly what to call instead and under what conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_as_fcp_xmlExport As Fcp XmlA

Export the active sequence as a Final Cut Pro XML file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/export.xml')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provide meaningful safety context (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the description carries the burden. It only says 'Export' and does not disclose that a file is written to output_path, whether an existing file may be overwritten, or what happens if no sequence is active. The description adds little behavioral detail beyond the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, front-loaded sentence contains every essential element: action, target, and output format. There is no filler or redundant restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter export tool with a documented schema and an output schema present, the description is nearly complete. The only notable gap is the lack of explicit guidance about when to choose this over other export formats, but the basic invocation requirements are clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the single output_path parameter is fully documented with an example. The description adds nothing beyond the schema, which is acceptable given the complete schema coverage, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Export'), a clear resource ('the active sequence'), and an unambiguous output format ('Final Cut Pro XML file'). This distinguishes it from related siblings like export_aaf, export_omf, and export_sequence without requiring schema inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The format 'Final Cut Pro XML' implies when this tool should be used, but the description does not explicitly contrast it with alternatives such as export_aaf, export_omf, or export_sequence. There is no when-not-to-use guidance, only an implicit usage condition.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_as_projectExport As ProjectA

Export a sequence as a standalone Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path for the exported .prproj file
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide only negative hints (readOnly=false, destructive=false) and are not informative. The description adds that the operation creates a standalone .prproj file, which is useful behavioral context. It does not mention overwrite behavior, whether the current project is modified, or whether media is embedded/referenced, leaving some side-effect ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One tightly worded sentence contains the action, target, and output format with no filler or redundant framing. It is appropriately sized for a simple export operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description, combined with 100% schema documentation and an output schema, covers the essential aspects of the operation. It lacks an explicit note about whether the output file overwrites an existing path or whether the current project remains untouched, but the 'standalone' wording partially covers the latter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents output_path and sequence_id, including the active-sequence fallback. The description adds no parameter detail beyond identifying the sequence as the thing being exported, so it meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Export') with a clear resource ('a sequence') and a precise output ('standalone Premiere Pro project file'). This distinguishes it from sibling export tools like export_sequence (media output) and export_as_fcp_xml / export_aaf / export_omf (interchange formats).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'standalone Premiere Pro project file' gives a clear usage context: choose this tool when a sequence must become a .prproj rather than a media or interchange file. It does not explicitly name alternatives or exclusions, so it misses the top tier, but the context is unambiguous enough for an agent to route correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_frameExport FrameB

Export the current frame as an image file

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/frame.png'). Extension determines format.
time_secondsNoTime position in seconds to export. Uses current playhead if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mostly restates the tool's purpose and does not disclose behavior beyond the annotations. It does not mention whether an existing file at output_path gets overwritten, whether an active sequence is required, or what side effects occur when time_seconds is provided. Annotations already indicate this is not read-only and not destructive, but the description adds little behavioral context beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler. It front-loads the action and object clearly, making it easy for an agent to grasp quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, the schema documents all parameters, annotations cover the safety profile, and an output schema exists, so the description does not need to explain return values. However, it omits contextual details like active-sequence requirements and does not help disambiguate from similar frame-export siblings, leaving the description minimally adequate rather than complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage for both parameters, including output_path extension-based format selection and time_seconds defaulting to the current playhead. The description itself adds no parameter-specific meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb and resource: export the current frame as an image file. It is understandable in isolation and distinguishable from sequence-level exports, but it does not explicitly differentiate itself from similar frame-related siblings like capture_frame or freeze_frame.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool instead of alternatives such as capture_frame, freeze_frame, or export_sequence_review_frames. The only usage hint is the time_seconds parameter note in the schema, which is parameter-level guidance rather than tool-selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_omfExport OmfA

Export the active sequence as an OMF file (Open Media Framework, for audio post-production)

ParametersJSON Schema
NameRequiredDescriptionDefault
include_panNoInclude pan information in the OMF (default: false)
output_pathYesFull output file path (e.g., '/Users/me/export.omf')
sample_rateNoAudio sample rate (default: 48000)
handle_framesNoHandle length in frames when trimming (default: 1000)
bits_per_sampleNoAudio bit depth (default: 16)
trim_audio_filesNoTrim audio to used range plus handles (default: true)
audio_file_formatNoAudio format: 0=AIFF, 1=WAV. Default: 1
audio_encapsulatedNoEmbed audio in OMF (true) or reference external files (false). Default: true

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not idempotent, and not destructive, so the bar for additional behavioral disclosure is lower. The description adds the target scope ('active sequence') and format, but does not disclose side effects such as file creation/overwriting, whether the OMF embeds or references media, or what happens if no sequence is active. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the verb and target, then adds the format clarification. Every word earns its place, with no filler or repetition of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 100% schema coverage, presence of an output schema, and annotations covering the basic operation type, the description is largely complete for invocation. It could add a hint about prerequisites like requiring an active sequence or note about file overwrite behavior, but these are relatively minor gaps for an export tool whose parameters are fully documented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all eight parameters are already documented in the input schema with meaningful descriptions. The tool description itself adds no parameter-level detail, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Export'), a specific resource ('the active sequence'), and a specific output format ('OMF file'). The parenthetical '(Open Media Framework, for audio post-production)' further disambiguates the tool from other export tools like export_aaf or export_as_fcp_xml.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides useful context ('for audio post-production') that implies when OMF export is appropriate, but it does not explicitly state when to choose this tool over alternatives such as export_aaf or export_sequence. There is no when-not-to-use guidance or mention of sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequenceExport SequenceB

Export the active sequence using Adobe Media Encoder

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull output file path (e.g., '/Users/me/exports/video.mp4')
preset_pathNoPath to an AME preset file (.epr). Uses default H.264 if omitted.
work_area_onlyNoExport only the work area (default: false, exports entire sequence)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations mark the tool as non-read-only, non-idempotent, and non-destructive. The description adds the useful behavioral detail that it delegates to Adobe Media Encoder, but it does not disclose whether the operation blocks, queues asynchronously, or overwrites existing output files. There is no contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that identifies the action, target resource, and encoding mechanism with no filler. Every word contributes to the tool's meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The rich schema and presence of an output schema mean parameter and return-value documentation is largely covered. However, the description omits operational context such as asynchronous behavior, relationship to the render queue, and when to choose alternative export-related tools, leaving it minimally complete for a medium-complexity tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with output_path, preset_path, and work_area_only already documented in the input schema. The description adds no parameter-level meaning, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and object: 'Export the active sequence using Adobe Media Encoder.' This makes the tool's purpose unambiguous and identifies the target resource and mechanism. However, it does not explicitly distinguish it from sibling tools like add_to_render_queue, start_batch_encode, or encode_project_item.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as add_to_render_queue, start_batch_encode, or export_frame. It also omits prerequisites like requiring an active sequence or Adobe Media Encoder being installed. Only the basic operation is stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_clip_review_framesExport Sequence Clip Review FramesA

Export one file-verified composite frame at the midpoint of each clip on a chosen video track in one bridge request. Read-only in Premiere; it does not mute tracks or claim visual quality.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum clips to sample (default: 20; maximum: 50)
output_dirYesExisting directory for clip_001.png and subsequent review frames
track_indexNoZero-based video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful behavioral context beyond the annotations: it is read-only with respect to the Premiere project, does not mute tracks, and does not claim visual quality. These caveats help an agent understand side effects and limitations. It does not contradict the annotations; the false readOnlyHint is consistent with writing files to disk.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core operation and followed by two caveats. There is no redundant restatement of schema information and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a moderately complex export tool, the description covers key behavioral constraints: one bridge request, midpoint frames, track selection, read-only behavior in Premiere, and no muting/visual-quality claims. The output schema covers return values. The main minor gap is explicit guidance on when to prefer this over closely related export sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the input schema, so schema description coverage is 100%. The description adds top-level context like 'chosen video track' and 'midpoint,' but it does not provide additional per-parameter semantic detail beyond what the schema already includes. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Export') and precisely defines the resource and scope: one file-verified composite frame at the midpoint of each clip on a chosen video track, in one bridge request. This clearly differentiates it from sibling tools like export_sequence_review_frames and export_sequence_marker_review_frames even without naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case of sampling clip midpoints on a selected track and highlights the 'one bridge request' efficiency, but it never explicitly states when to choose this tool over export_sequence_review_frames, export_sequence_marker_review_frames, or capture_frame. No alternatives or exclusion conditions are given, so usage guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_marker_review_framesExport Sequence Marker Review FramesA

Export up to 24 file-verified composite frames at active-sequence marker positions in one bridge request for marker-driven review. It reads markers and writes image files only; it does not add, update, or remove Premiere markers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum chronological marker frames to export (default: 12; minimum: 1; maximum: 24).
output_dirYesExisting directory where marker_review_001.png through marker_review_NNN.png will be written
end_secondsNoOptional positive exclusive upper bound for marker positions in seconds.
marker_typeNoOptional exact Premiere marker type to include (for example Comment or Chapter).
start_secondsNoOptional non-negative lower bound for marker positions in seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide safety hints, and the description adds meaningful context by stating the side effect is limited to writing image files while leaving Premiere markers untouched. It also discloses the one-request batching and file-verified frame nature, though overwrite behavior and empty-marker cases are not addressed.

Agents need to know what a tool does to the world before 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, well-structured sentences: the first front-loads the action and constraints, and the second removes ambiguity about side effects. There is no filler or unnecessary repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a fully documented schema, output schema, and annotations, the behavior-focused description gives an agent enough to select and invoke the tool correctly. Minor gaps remain around empty-marker behavior and file overwrite semantics, but these do not block correct use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents limit defaults, output_dir naming, start/end bounds, and marker_type. The description adds general context but no per-parameter 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.

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: exporting file-verified composite frames at active-sequence marker positions, capped at 24 and packaged in one bridge request. It also differentiates the tool from marker-editing siblings by explicitly stating it does not add, update, or remove Premiere markers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear use case ('marker-driven review') and explicitly scopes behavior to reading markers and writing image files, excluding marker mutation. It does not name alternative export tools such as export_sequence_review_frames or export_frame, so it stops short of full when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_sequence_review_framesExport Sequence Review FramesA

Export 2-24 evenly spaced, file-verified frames from an active-sequence range in one bridge round trip for visual review. This samples rendered output; it does not prove playback, audio, or editorial quality.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_dirYesExisting directory where review_001.png through review_NNN.png will be written
end_secondsNoOptional positive range end in seconds (default: sequence end)
frame_countNoNumber of evenly spaced frames to export (default: 6; minimum: 2; maximum: 24)
start_secondsNoOptional non-negative range start in seconds (default: sequence start)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the sparse annotations: it specifies the 2-24 frame count, even spacing, file verification, and the single-round-trip efficiency. It also sets expectations with the sampling caveat, which is valuable since annotations only declare readOnly/destructive/idempotent hints as false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler. The first states the operation, constraints, and purpose; the second adds a critical limitation. All content is relevant and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the fully documented input schema and presence of an output schema, the description adequately covers range, count, file verification, and limitations. It could be slightly more complete by contrasting with the marker- and clip-specific review-frame siblings, but nothing essential to invoking the tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the input schema already documents output_dir, optional start/end_seconds, and frame_count with defaults, minimum, and maximum. The description reinforces the 'active-sequence range' idea but adds no new parameter-specific syntax or meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Export') and identifies the precise resource: '2-24 evenly spaced, file-verified frames from an active-sequence range.' It also states the intended purpose ('for visual review') and distinguishes itself from sibling review-frame tools by emphasizing even spacing and range-based sampling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'for visual review' provides a clear intended use case, and 'it does not prove playback, audio, or editorial quality' explicitly tells the agent when the tool is not appropriate. It does not name sibling alternatives such as export_sequence_marker_review_frames, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_selectionExtract SelectionA

Extract (remove and close gap) the content between sequence in/out points.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly discloses the mutating behavior (removes content and closes the gap), which goes beyond the annotations' readOnlyHint=false and destructiveHint=false. It does not specify track scope or behavior when no in/out points are set, but the gap-closing detail is material and clearly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with no wasted words; the verb is front-loaded and the parenthetical immediately disambiguates the editing behavior. Every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter command this is nearly sufficient, and an output schema exists so return values need not be described. It is missing prerequisites (in/out points must be set) and track scope, which an agent may need to know before calling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is nothing for the schema to document; the baseline is 4. The description adds the operational context (sequence in/out points define the range), which is the only relevant semantic information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 operation ('extract'), the exact resource ('content between sequence in/out points'), and the consequence ('remove and close gap'). This clearly distinguishes it from sibling tools like lift_selection (which would leave a gap) and ripple_delete (which operates on selected clips, not the in/out range).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the behavior: call this when you want to remove the range defined by the sequence in/out points and close the resulting gap. However, it does not explicitly name alternatives or state when not to use it, such as choosing lift_selection when a gap should be preserved.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_items_by_media_pathFind Items By Media PathA
Read-onlyIdempotent

Find project items whose media path contains the given search string

ParametersJSON Schema
NameRequiredDescriptionDefault
path_searchYesPartial file path to search for

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral detail by specifying substring/contains matching semantics rather than exact path matching, which is useful for setting agent expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single concise sentence with no filler. The core action and search criterion are front-loaded, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read-only search tool with full schema coverage and an output schema, the description is complete. An agent has everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the parameter description ('Partial file path to search for') already conveys the key meaning. The tool description reinforces this by linking path_search to media path containment, but adds little beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Find'), a clear resource ('project items'), and a precise search criterion ('media path contains the given search string'). It is immediately distinguishable from sibling tools like find_project_item_by_name, which searches by name rather than media path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly conveys when this tool is appropriate: when searching for project items by a partial media path. It does not explicitly name alternatives or exclusions, but the intended use case is unmistakable from the phrasing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_project_item_by_nameFind Project Item By NameA
Read-onlyIdempotent

Find a project item by name (searches recursively through bins)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the project item to find

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context—recursive traversal through bins—but does not disclose match semantics, such as whether the first match is returned or what happens when no item is found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the core action and resource, followed by a parenthetical that adds important scope. No filler or redundant restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only lookup tool with an output schema present, the description covers the essential facts: what to search for and where to search. Minor ambiguity remains around uniqueness, match behavior, and not-found handling, but these are unlikely to block correct invocation for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single 'name' parameter already described as 'Name of the project item to find'. The tool description adds no additional parameter-level meaning, such as exact vs partial matching or case sensitivity, so it remains at the schema-supported baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description specifies the action 'Find', the resource 'project item', the search criterion 'by name', and adds scope 'searches recursively through bins'. This clearly distinguishes it from siblings like find_items_by_media_path, which searches by media path, and list_project_items, which lists rather than searches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for locating a project item by name across nested bins, but it does not explicitly state when to prefer it over alternatives such as search_project_items or get_project_item_info. It gives clear context but no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

freeze_frameFreeze FrameA

Create a freeze frame from a clip at a specific time. Exports the frame and imports it back as a still image.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path for the exported frame (e.g., /path/to/freeze.png)
time_secondsNoTime in the sequence to freeze (in seconds). Uses playhead if omitted.
duration_secondsNoDuration of the freeze frame on the timeline (default: 2)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations mark this as a mutating operation (readOnlyHint=false), and the description adds useful behavioral context by disclosing that the tool both exports the frame and imports it back as a still image. This reveals the side effect on the timeline beyond the schema. It does not mention file-overwrite behavior or source-clip requirements, but the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly-written sentence that front-loads the primary action and adds the key export/import nuance without wasted words. Every segment earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with full schema coverage and an output schema present, the description is mostly sufficient. The primary gap is that it does not specify which clip or sequence the freeze frame is created from (e.g., selected clip, playhead context), which is a relevant operational detail. Still, the essentials are covered, so only a minor gap remains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear descriptions for output_path, time_seconds, and duration_seconds. The description adds little beyond the schema; phrases like 'at a specific time' mirror the time_seconds parameter description. Since the schema carries the full semantic weight, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb-resource pair: 'Create a freeze frame from a clip at a specific time.' It further distinguishes itself from similar export/capture tools by noting the frame is 'imported back as a still image,' which sets it apart from sibling tools like export_frame or capture_frame. This makes its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: when you need to create a freeze frame from a clip. However, it does not explicitly state when to prefer this tool over alternatives (e.g., export_frame or capture_frame) nor mention prerequisites like having a clip selected or an active sequence. There is no exclusionary guidance, so an agent might struggle to choose between highly related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_media_contact_sheetGenerate Media Contact SheetA

Generate a new, disk-verified PNG contact sheet from evenly sampled source frames. Refuses to overwrite an existing output and does not modify Premiere or the source.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoGrid rows from 2 through 8 (default: 3)
columnsNoGrid columns from 2 through 8 (default: 4)
media_pathYesExisting local video file
output_pathYesNew .png output path
thumbnail_widthNoThumbnail width from 160 through 1280 pixels (default: 320)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations: it refuses to overwrite an existing output, performs disk verification, and does not modify Premiere or the source. This clarifies the tool's non-destructive but file-writing nature, with no contradiction against the provided annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, both dense with useful information: core action, output type, sampling strategy, overwrite behavior, and side-effect guarantee. There is no filler or repetition of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is largely sufficient: it covers required inputs, output type, sampling behavior, and side-effect safety, while the full schema and output schema cover parameter details and return structure. It does not describe failure modes or whether Premiere must be open, but those gaps are minor given the support from structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents all five parameters with descriptions, so the baseline is 3. The description adds extra semantic value by indicating that output_path must point to a non-existent file (refuses to overwrite) and that frames are evenly sampled from the source, which helps understand how rows/columns relate to the output.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb+resource pair: it generates a disk-verified PNG contact sheet from evenly sampled source frames. It also distinguishes itself from single-frame exports by emphasizing the contact-sheet output and explicitly stating that it does not modify Premiere or the source.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied clearly: call this when you want a contact sheet of sampled frames from a local video file. However, the description does not name alternatives or provide explicit when-to-use/when-not-to-use routing, aside from the overwrite refusal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_active_sequenceGet Active SequenceA
Read-onlyIdempotent

Get detailed information about the currently active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, and the description is consistent with a read-only getter. The description adds the scope 'currently active sequence' but otherwise provides no additional behavioral context beyond what annotations already convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that states the action and target immediately. There is no filler or redundant repetition 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 zero-parameter read-only getter with annotations and an output schema present, the description is largely sufficient. It could be slightly more complete by naming what kind of 'detailed information' is returned or distinguishing it from similar getter tools, but nothing critical is missing for 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?

The tool has zero parameters, so parameter descriptions are not needed. The schema coverage is complete, and there is nothing for the description to add about parameter syntax or meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the verb ('Get') and resource ('currently active sequence'), so an agent can tell this is a read operation on the active sequence rather than a listing or mutation. However, 'detailed information' is somewhat vague and could overlap with siblings like get_sequence_settings or get_full_sequence_info, so it doesn't fully differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives such as set_active_sequence or get_sequence_settings. The phrase 'currently active sequence' implies a prerequisite but there is no explicit context, exclusions, or mention of related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_advanced_feature_supportGet Advanced Feature SupportB
Read-onlyIdempotent

Report public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features

ParametersJSON Schema
NameRequiredDescriptionDefault
backendNoBackend being evaluated (default: cep, the current production MCP transport)
frameio_entitledNoWhether the operator has confirmed Frame.io account/project access
premiere_versionNoOptional Premiere version such as 26.3.0 for version-specific eligibility
network_availableNoWhether required Adobe/cloud services are reachable
generative_ai_entitledNoWhether the operator has confirmed Adobe generative AI entitlement

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that this reports 'user-assisted boundaries,' which hints at interactive/assisted workflows but does not explain what that means in practice. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that front-loads the primary action ('Report') and the key subject matter. It is efficiently worded, though the phrase 'user-assisted boundaries' is somewhat of a jargon-heavy noun pile that could be clearer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema reduces the need to explain return values, and the optional parameters are all individually described. However, with closely related siblings like get_av_feature_support and get_capabilities, the description would be more complete if it clarified when this specific advanced feature check is the right choice.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents all five optional parameters, including the backend enum and boolean entitlement flags. The description adds no parameter-level detail, but it does not need to because the schema already carries that burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Report') and names the resource: public-API support, prerequisites, entitlements, and user-assisted boundaries for Premiere collaboration and AI features. It is clear enough to distinguish from the general get_capabilities tool, though it does not explicitly contrast with the similarly named get_av_feature_support sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for checking support/entitlements before using collaboration or AI features, but it never states when to prefer it over get_av_feature_support or get_capabilities. No explicit usage context, prerequisites, or exclusions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_all_project_pathsGet All Project PathsA
Read-onlyIdempotent

Get all unique media file paths used in the project. Useful for asset management and archiving.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

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. The description adds useful scoping context ('unique', 'media file paths used in the project') but does not disclose additional behavioral traits such as output shape or potential performance considerations. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no waste. The core action is front-loaded, and the second sentence provides relevant usage context. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, idempotent tool with an output schema, the description is complete. It states what is returned ('all unique media file paths used in the project') and why it matters, leaving no critical gap for an agent to select and 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 has zero parameters and the schema is empty, so there are no parameter semantics to document. The description appropriately avoids inventing parameter details; a baseline of 4 is appropriate for a no-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a resource ('all unique media file paths used in the project'), and the intended purpose. It is clear and not a tautology, though it does not explicitly compare against related siblings like find_items_by_media_path or get_used_media_report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Useful for asset management and archiving' implies when the tool might be used, but it gives no explicit guidance about when to prefer this tool over alternatives or when not to use it. The guidance is present but left mostly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_av_feature_supportGet Av Feature SupportA
Read-onlyIdempotent

Report the documented automation boundary for advanced audio and modern color management, including actionable reasons for UI-only features.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

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 context about the kind of information returned (automation boundary, UI-only reasons), but doesn't disclose details like output structure or whether this reflects static documentation versus runtime state. With strong annotations and an output schema present, this is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single well-formed sentence that conveys the core purpose, the domain scope, and a key value-add ('actionable reasons for UI-only features') without waste. It is front-loaded with the verb 'Report' and the 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?

Given zero parameters, strong annotations (readOnly, idempotent, non-destructive), and an output schema that presumably documents the return value, the description is nearly complete. It could have mentioned the intended use context (e.g., 'call before attempting operations that may be UI-only'), but the phrase 'documented automation boundary' conveys the essential context adequately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is no parameter documentation burden. The description's focus on the report's content serves the purpose well since there is nothing to parameterize. Baseline for 0 params is 4, and the description does not need to compensate for any schema gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reports on the documented automation boundary for advanced audio and modern color management, which distinguishes it from other capability/query tools like get_capabilities and inspect_sequence_av_settings. It uses a specific verb ('Report') and resource ('documented automation boundary'). However, the phrase 'advanced audio and modern color management' is somewhat abstract and could be more explicit about what functionality is covered.

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 this is the tool to consult when an agent needs to know whether a feature can be automated or is UI-only. It mentions 'actionable reasons for UI-only features', which guides the agent toward using this for feasibility checks. However, it does not explicitly name sibling alternatives or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bin_contentsGet Bin ContentsA
Read-onlyIdempotent

Get detailed contents of a specific bin (folder) including all nested items, media paths, offline status, color labels, and metadata. Searches by bin name or node ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum direct children to return. Pair with recursive false for the smallest bounded response.
bin_idYesBin name, node ID, or path (e.g., 'Footage', 'Footage/Raw')
offsetNoZero-based offset into the bin's direct children. Pair with limit for a bounded page.
max_depthNoMaximum nested-bin depth when recursive is true. Defaults to the legacy unlimited recursion.
recursiveNoInclude items from sub-bins recursively (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds useful behavioral context about what is returned, including nested items, media paths, offline status, color labels, and metadata, without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The first sentence front-loads the purpose and return scope, and the second adds lookup flexibility. Every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full output schema, complete parameter descriptions, and annotations establishing read-only/idempotent behavior, the description is nearly complete for correct invocation. It could improve by explicitly differentiating itself from the search/list sibling tools, but this is 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 coverage is 100%, so all five parameters are already documented, including bin_id's accepted forms and pagination options. The description mostly restates that lookup is by bin name or node ID, adding little meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Get'), a specific resource ('a specific bin (folder)'), and enumerates the returned content ('all nested items, media paths, offline status, color labels, and metadata'). This clearly distinguishes it from siblings like list_sequences and list_project_items.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool: when you need the detailed contents of a specific bin, located by name or node ID. However, it does not explicitly name alternatives or state when not to use it, despite close siblings such as search_project_items and find_project_item_by_name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bridge_telemetryGet Bridge TelemetryA
Read-onlyIdempotent

Inspect privacy-preserving aggregate bridge health: pending command/response counts, busy operations, queue age, and CEP heartbeat state without returning project or personal data.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by emphasizing that the data is privacy-preserving, aggregate-only, and excludes project or personal data, which clarifies the tool's constraints and prevents false expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence that leads with the core action and resource, then efficiently enumerates the specific telemetry metrics. Every clause adds value, with no filler or repetition of the tool name or title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only telemetry tool with an output schema and annotations covering safety, the description is complete. It identifies the data category (bridge health), lists the concrete metrics, and explicitly explains the privacy boundary, which is sufficient for an agent to decide whether to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and zero required parameters, so there is no parameter semantics for the description to clarify. Per the baseline for parameterless tools, the description need not add parameter information, and it correctly focuses on what the tool returns instead.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 a specific resource ('aggregate bridge health'), then enumerates the exact metrics returned: pending command/response counts, busy operations, queue age, and CEP heartbeat state. It also distinguishes itself from data-access tools by explicitly stating it does not return project or personal data.

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 monitoring bridge health and telemetry without exposing private data, but it does not explicitly state when to use this tool versus alternatives like ping, get_capabilities, or verify_premiere_connection. There is no when-not guidance or mention of alternative tools, leaving usage context mostly inferred.

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

Report Windows/macOS support, Premiere Pro backend coverage, enabled authority, and whether live host verification is still required. Use tool_names or tool_offset/tool_limit to return a bounded tool catalog.

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_offsetNoZero-based offset into the filtered tool catalog. Pair with tool_limit for an explicitly sized page.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavior context by mentioning live-host-verification state, enabled authority, and a bounded-catalog mode with a legacy response path, all consistent with a read-only introspection tool. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with no filler. The first sentence front-loads the core reporting purpose, and the second sentence quickly covers the parameter-driven catalog mode. Nothing repeats the title or wastes the agent's attention.

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 does not need to document return shapes. Zero required parameters, fully described optional parameters, and read-only/idempotent annotations mean the two-sentence description plus schema supplies everything needed to invoke the tool correctly. The legacy-response hint is slightly shorthand, but not a blocking omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3; tool_limit, tool_names, and tool_offset each already have descriptions. The description contributes only the phrase 'bounded tool catalog' and a mention of tool_names/tool_offset/tool_limit, which largely restates schema intent. It does not need to compensate for missing parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Report' and lists concrete capability topics: Windows/macOS support, Premiere Pro backend coverage, enabled authority, and live-host-verification status. This makes the tool's purpose unmistakable and separates it from sibling feature-support and connection-check tools like get_av_feature_support and verify_premiere_connection even without naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit guidance on bounding the catalog with tool_names or tool_offset/tool_limit, which is useful parameter-level usage context. However, it does not state when this tool should be chosen over alternatives or when it should not be used, so tool-selection guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_adjustment_layerGet Clip Adjustment LayerB
Read-onlyIdempotent

Check if a clip is an adjustment layer

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe, non-mutating call. The description clarifies the predicate nature ('Check if') but adds little beyond what the safety annotations and tool name already imply; no side-effect or error behavior is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler or repetition. It front-loads the essential action and resource, and every word contributes to meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity, one-parameter, read-only tool with rich annotations and a declared output schema, the description is largely sufficient. It explains the core behavior, and remaining details like return format are plausibly covered by the output schema. There is no mention of edge cases, but none seem critical for this simple predicate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id documented as 'Node ID of the clip.' The description adds no additional meaning about the parameter's format, source, or validity constraints. Baseline 3 is appropriate because the schema already fully documents the single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Check if a clip is an adjustment layer' uses a specific verb ('Check') and resource ('clip... adjustment layer'), clearly indicating this is a predicate-style query. It is not a tautology, and it is distinguishable from the sibling add_adjustment_layer, though it does not explicitly name that sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or context such as 'use this before adding an adjustment layer' or 'use get_clip_properties instead for other clip info.' The usage context must be inferred entirely from the tool name and description's single sentence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_at_playheadGet Clip At PlayheadA
Read-onlyIdempotent

Get all clips at the current playhead position across all tracks.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type to check (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, lowering the bar for behavioral disclosure. The description adds useful behavioral context by specifying 'all clips' and 'across all tracks,' clarifying that it is a broad query rather than a per-track or selected-clip operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the resource and scope with no filler, repetition, or re-statement of annotation data. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only query with one optional, fully documented parameter and an output schema present, the description is sufficient. It identifies the target, the scope, and leaves the optional filter to the schema, so nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, track_type, is fully documented in the schema with an enum and a default of 'both.' The description adds no parameter-specific meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('all clips at the current playhead position') and adds explicit scope ('across all tracks'). This clearly differentiates it from related tools like get_clip_at_position, which targets an arbitrary position.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'current playhead position' implies the intended use case, and the optional track_type parameter gives some context, but the description does not explicitly name alternatives or state when not to use this tool. Usage guidance must be inferred rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_at_positionGet Clip At PositionB
Read-onlyIdempotent

Get the clip at a specific time position on a track

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesTrack type
track_indexYesTrack index (0-based)
time_secondsYesTime position in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered externally. The description is consistent with those annotations and adds a mild scoping trait ('specific time position' rather than playhead), but it discloses no edge-case behavior such as what happens when no clip exists at the requested position or whether a missing clip returns null or errors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler. Every word contributes to stating the operation's purpose and scope, and nothing is repeated from the title or schema. This is appropriately sized for a simple read-only getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with an output schema present, full parameter coverage, and strong annotations, the definition is mostly sufficient. However, it lacks guidance distinguishing it from get_clip_at_playhead and omits any note about the empty-position edge case. These are gaps, but not critical ones given the output schema handles return-value documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter briefly described ('Track type', 'Track index (0-based)', 'Time position in seconds'). The tool description adds no parameter meaning beyond the schema, so the baseline of 3 applies. The enum restriction on track_type and the 0-based note on track_index are already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get'), a resource ('the clip'), and a precise scope ('at a specific time position on a track'), so an agent knows immediately what the tool does. It implicitly contrasts with the sibling get_clip_at_playhead by emphasizing 'specific time position,' but it does not explicitly name that alternative, so it misses full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives. The obvious sibling get_clip_at_playhead (clip at the playhead) is never mentioned, and there are no exclusions or conditions stated. Usage context must be inferred entirely from the tool name and one-line description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_markersGet Clip MarkersA
Read-onlyIdempotent

Get all markers on a specific project item (source clip markers, not sequence markers).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is well covered. The description adds meaningful scope beyond annotations by specifying that markers returned belong to a project item and are source clip markers rather than sequence markers, which clarifies the tool's actual behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no waste. The core action and the critical scoping distinction are presented immediately, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one fully documented parameter and an output schema, the description is complete. The annotations cover safety and idempotency, the schema covers the parameter, and the description covers the semantic scope. Nothing essential is missing for an agent to select and invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter item_id, with a clear description 'Node ID or name of the project item'. The tool description adds no parameter-level details beyond what the schema already provides, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a specific resource ('all markers on a specific project item'), and immediately disambiguates from related tools by clarifying these are source clip markers, not sequence markers. This distinguishes it from siblings like list_markers and get_sequence_markers_by_type without needing to open their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly frames when to use the tool: when you need markers on a project item, and explicitly excludes sequence markers. It does not name alternative tools or provide explicit 'use this instead' guidance, but the source-clip-vs-sequence distinction is a strong usage boundary for an agent navigating the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_propertiesGet Clip PropertiesB
Read-onlyIdempotent

Get detailed properties of a specific clip by its node ID

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesThe node ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered by structured data. The description adds no behavioral context beyond the lookup semantics; it does not mention response shape, error conditions, or any side effects, but for a simple annotated getter this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler or redundancy. Every word contributes to identifying the action, resource, and required identifier.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple one-parameter schema, rich annotations, and presence of an output schema, the description is largely sufficient for correct invocation. It lacks explicit differentiation from similar getter tools, which prevents a perfect score, but nothing critical for making the call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single parameter node_id is documented as 'The node ID of the clip'. The description repeats this idea without adding new meaning such as format, origin, or validation rules, so it stays at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get') and resource ('detailed properties of a specific clip') with the lookup key ('by its node ID'). It is clear and understandable, though it does not explicitly distinguish itself from closely related siblings like get_full_clip_info or get_qe_clip_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives such as get_full_clip_info, get_qe_clip_info, or get_item_info. There are no exclusions, prerequisites, or contextual cues beyond the basic lookup mechanism.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_speedGet Clip SpeedB
Read-onlyIdempotent

Get the playback speed and reverse state of a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe, repeatable read. The description is consistent with those annotations and adds none of the riskiest ambiguity, but it also contributes no extra behavioral context (e.g., behavior on invalid node_id, or whether speed is expressed as a ratio versus a percentage). With annotations covering the safety profile, this lands at baseline 3.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence of nine words that is verb-first and front-loaded with the key facts: what is retrieved and from what. There is zero redundancy and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter getter with a full output schema and comprehensive safety annotations, the description states exactly what data the agent will receive and nothing critical is missing for invoking the call. The only minor gap is the lack of distinction from overlapping getter siblings, which is a real but small omission at this simplicity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id documented as 'Node ID of the clip.' The description adds no parameter-level meaning, but the schema fully carries that burden, so the baseline 3 applies without requiring the description to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('clip') and precisely states the data returned: playback speed and reverse state. This is clear and unambiguous. However, it does not explicitly differentiate from overlapping siblings such as get_clip_properties or get_qe_clip_info, which could also surface speed-related data, so it stops short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. Siblings like get_clip_properties and get_qe_clip_info overlap in scope, and setter counterparts (speed_change, reverse_clip, set_clip_speed_qe) represent the write-side operations, yet no when-to-use context, exclusions, or alternative mentions appear anywhere in the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_clip_volumeGet Clip VolumeA
Read-onlyIdempotent

Read an audio clip's Volume > Level in dB. Use this to verify a level actually applied - setValue() clamps silently. Does not report Essential Sound Amplify automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the audio clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered. The description adds value beyond annotations by explaining that setValue() clamps silently, positioning this read as the authoritative verification path, and by disclosing the Amplify automation limitation. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, each earning its place: purpose, use-case rationale, and limitation. The purpose is front-loaded in the first sentence, and there is zero filler or repetition of information already present in the annotations or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with full schema coverage, an output schema, and readOnly/idempotent annotations, the description covers the purpose, the verification use case, and a key limitation. Minor edge cases — such as return behavior when no volume is set — are left to the output schema, which is an acceptable division of labor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — node_id is already documented as 'Node ID of the audio clip.' The description's phrase 'audio clip's' reinforces the parameter's target type but adds no syntax, format, or edge-case meaning beyond the schema. Baseline 3 is appropriate since the schema fully carries the parameter documentation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Read an audio clip's Volume > Level in dB.' This precisely identifies the operation, the target property path, and the unit of measurement, clearly distinguishing it from write tools like set_clip_volume and broad reads like get_clip_properties. The final sentence further defines scope by naming what is excluded (Essential Sound Amplify automation).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a concrete when-to-use: 'Use this to verify a level actually applied - setValue() clamps silently,' which tells the agent this is the verification read after a set operation. It also notes a limitation of the tool ('Does not report Essential Sound Amplify automation'). However, it never names alternative tools or explicit when-not conditions, leaving some sibling routing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_color_labelGet Color LabelA
Read-onlyIdempotent

Get the color label of a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds no further behavioral context such as error handling or edge cases, but it does not contradict any annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that names the action, target, and resource without filler. This is appropriately concise for a one-parameter read-only getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity getter, the description plus the complete input schema, existing output schema, and strong safety annotations cover everything needed to invoke it correctly. There are no missing prerequisites or ambiguous fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the single parameter is documented as 'Node ID or name of the project item.' The description does not add parameter-level details beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get'), a specific resource ('color label'), and a precise target ('project item'). This clearly distinguishes it from the sibling set_color_label and from broader getters like get_item_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied: call this when you need the color label of a project item. It does not explicitly name alternatives or exclusions, but for a simple getter this is adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_color_spaceGet Color SpaceA
Read-onlyIdempotent

Get the color space information for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is transparent. The description adds no further behavioral context, but it also does not contradict the annotations or obscure any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It states the action and target resource immediately, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read-only getter, the description plus schema and annotations is mostly sufficient. However, it lacks guidance on item types that support color space or how to handle items without color space information, and it does not clarify when this tool is preferable over similar getters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers the single parameter item_id with a clear description ('Node ID or name of the project item'), so schema coverage is 100%. The tool description adds no additional parameter meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: get color space information for a project item. The specific resource ('color space') and object ('project item') make it easy to distinguish from sibling getters like get_color_label or get_item_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to use this tool versus alternatives such as get_item_info or get_clip_properties. It does not mention situations where another getter would be more appropriate, so an agent must infer usage entirely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_duplicate_mediaGet Duplicate MediaA
Read-onlyIdempotent

Find project items that reference the same source media file. Useful for consolidation.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/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, covering the safety profile. The description adds the behavioral detail that it finds project items sharing a source media file, but it does not describe output grouping, edge cases, or how duplicates are determined.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: the first states the core function, the second gives the practical use case. No filler, no repetition, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the zero-parameter schema, rich read-only/idempotent annotations, and presence of an output schema, the description sufficiently covers what an agent needs to know to invoke and interpret the tool. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description carries no parameter-explanation burden. Per calibration, a zero-parameter tool receives a baseline of 4; there is nothing more to add.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Find'), the resource ('project items'), and the specific criterion ('reference the same source media file'). This distinguishes it from action siblings like consolidate_duplicates and from general lookup tools like 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Useful for consolidation' provides clear context on when this tool is appropriate. It does not explicitly enumerate alternatives or exclusions, but the consolidation use case effectively signals its purpose relative to the sibling consolidate_duplicates.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_effect_propertiesGet Effect PropertiesA
Read-onlyIdempotent

List all properties of a specific effect on a clip, including current values

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect (e.g., 'Motion', 'Opacity', 'Lumetri Color')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the detail that current values are included, which slightly supplements the read-only intent, but it does not disclose error cases or additional behavior beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One well-formed sentence that front-loads the action and resource, with no filler or repeated title content. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich annotations and the presence of an output schema, this is nearly complete for a simple read-only listing tool. It could name the natural companion tools or clarify how effect names are resolved, but nothing essential is missing for a straightforward call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's phrase 'specific effect on a clip' aligns with the node_id and effect_name parameters, but it does not add any semantic detail beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('List all properties') on a specific resource ('a specific effect on a clip'), and adds that it includes current values. This clearly distinguishes it from sibling tools like list_clip_effects (which lists effects) and set_effect_property (which modifies a property).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description conveys the basic use case: retrieve properties for a named effect on a clip. However, it does not explicitly say when to choose this over related tools such as list_clip_effects or get_clip_properties, leaving that to inference from the name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_encoder_presetsGet Encoder PresetsA
Read-onlyIdempotent

List available Adobe Media Encoder export presets, with the .epr path of each so it can be passed to export_sequence or encode_project_item. Presets are discovered by scanning the .epr files Adobe ships on disk (Premiere's ExtendScript API exposes no preset enumeration).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoFilter to presets whose name or format bucket matches this (e.g. 'H.264', 'ProRes', 'Proxy'). Omit to list all.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false, and destructiveHint=false, so the safety profile is fully covered. The description adds behavioral context about disk scanning of .epr files, which is useful for an agent to understand that results come from filesystem enumeration. However, it doesn't describe ordering, possible latency, or what happens if no presets match the optional format filter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry the tool's purpose, its distinguishing constraints, and its downstream usage. The most important fact—that the output is a list of presets with .epr paths—is front-loaded, and every clause contributes information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with one optional parameter and an output schema present, the description is largely complete. It could mention how missing or invalid format values are handled, but annotations and the output schema cover safety and return shape, so the remaining gap is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already explains the optional format filter. The description adds a helpful list of example values ('H.264', 'ProRes', 'Proxy') and clarifies that 'format bucket' is part of the matching logic, which goes slightly beyond the schema's plain description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List'), a specific resource ('Adobe Media Encoder export presets'), and the key output detail (the .epr path for each). It also distinguishes this tool from the larger export pipeline by explaining the discovery mechanism, which effectively separates it from sibling tools like validate_export_preset or export_sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says the .epr path is intended to be passed to export_sequence or encode_project_item, giving the agent a clear downstream use. It also explains that preset enumeration is not exposed via Premiere's ExtendScript API, which tells the agent why this tool exists and when to prefer it over direct API enumeration.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_export_file_extensionGet Export File ExtensionA
Read-onlyIdempotent

Get the file extension that would be used when exporting the active sequence with a given preset

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_pathYesFull path to the export preset file (.epr)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the context that this returns a hypothetical extension based on the active sequence and preset, which is useful but not a rich behavioral disclosure beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, succinct sentence with no filler or redundant wording. It front-loads the action and resource immediately, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only query tool with a full input schema and an output schema, the description is complete. It identifies the active-sequence dependency, the preset input, and the query nature of the operation; nothing essential is missing for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% because preset_path is described as 'Full path to the export preset file (.epr)'. The description's reference to 'a given preset' adds no new meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and a clear resource ('the file extension that would be used when exporting the active sequence'), making the tool's purpose unambiguous. It is distinct from sibling export tools like export_sequence and validate_export_preset by focusing on querying the extension rather than performing or validating an export.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'when exporting the active sequence with a given preset' implies a pre-export query context, but the description does not explicitly state when this should be used over alternatives like validate_export_preset or export_sequence. No exclusions or explicit alternative routing is provided, so usage guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_footage_interpretationGet Footage InterpretationA
Read-onlyIdempotent

Get footage interpretation settings for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is well covered. The description aligns with those annotations and adds the scope 'for a project item,' but it does not disclose any additional behavioral details beyond what the schema and annotations already convey. No contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. The verb appears first, and every word contributes either the operation or the target resource. Nothing is repeated from the annotations or unnecessarily expanded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple read-only tool with one required parameter, a fully described schema, comprehensive annotations, and an output schema available. The description, combined with the structured metadata, gives an agent everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, item_id, has 100% schema description coverage ('Node ID or name of the project item'), so the schema already carries the semantic weight. The description's phrase 'for a project item' is consistent but adds no new param information such as lookup behavior, format examples, or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Get') and resource ('footage interpretation settings') for a project item, distinguishing it from generic getters like get_item_info and get_clip_properties. It does not explicitly call out set_footage_interpretation as its counterpart or further disambiguate from similar item-level getters, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as set_footage_interpretation, get_item_info, or get_clip_properties. The description is purely a statement of action and offers no when-to-use, exclusions, or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_clip_infoGet Full Clip InfoA
Read-onlyIdempotent

Get exhaustive information about a specific clip: all effects with every property value, source media details, footage interpretation, metadata, markers, speed, enabled state, color label, linked clips, and proxy status.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip on the timeline

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a safe read-only, idempotent, non-destructive operation, so the description does not need to restate that. It adds value by detailing what data the call exposes, but it does not disclose additional behavioral traits such as response size, failure modes, performance cost, or any prerequisites beyond the annotated safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the verb, resource, and exhaustive intent, followed by a compact colon-separated list of covered data categories. Every phrase contributes information, and there is no filler or repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only tool with a full input schema and an output schema present, the description is complete: it identifies the clip, the exhaustive scope, and the safety profile. Nothing needed for correct invocation is missing, and the sibling list confirms this tool occupies a clear 'full detail' niche.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, node_id, is already fully described in the schema at 100% coverage. The description's 'specific clip' phrasing adds no new meaning about the node_id format or how to obtain it, so it does not go beyond the baseline set by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Get') and resource ('specific clip'), then marks the tool as 'exhaustive' and enumerates its full scope: effects, source media, footage interpretation, metadata, markers, speed, enabled state, color label, linked clips, and proxy status. This distinguishes it clearly from granular siblings like get_clip_properties, list_clip_effects, or get_color_label, even without naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Get exhaustive information about a specific clip' and the wide list of included domains imply that this is the right tool when a comprehensive clip snapshot is needed, rather than a single property getter. It gives clear context but never explicitly states when not to use it or names alternatives, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_project_overviewGet Full Project OverviewA
Read-onlyIdempotent

Get a comprehensive overview of the project. Use include_bin_tree false or sequence_offset/sequence_limit for a bounded response on large projects.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_bin_depthNoMaximum recursive bin-tree depth when include_bin_tree is true (default: 10).
sequence_limitNoMaximum sequences to include. Omit to preserve the complete legacy response.
sequence_offsetNoZero-based offset into project sequences.
include_bin_treeNoInclude the recursive bin tree (default: true). Set false to return project statistics and sequences only.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavioral context by warning that the full response can be unbounded and recommending parameters to bound it. This is useful 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?

The description is two sentences with no filler. The core purpose is front-loaded, and the usage guidance directly follows. Every sentence contributes useful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full output schema, complete parameter documentation, and read-only annotations, the description does not need to enumerate every field. It covers the most important operational concern, large-project response size. It could be slightly stronger by naming the sibling get_project_info for smaller overviews, but it is otherwise sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds value by explicitly naming include_bin_tree, sequence_offset, and sequence_limit and explaining their role in bounding large project responses. max_bin_depth is not mentioned in the description, but the schema documents it fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Get a comprehensive overview of the project.' This is a specific verb and resource, and the mention of bin trees and sequences helps distinguish it from sequence-level tools. However, it does not differentiate itself from sibling tools like get_project_info or get_bin_contents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides concrete guidance for large projects: use include_bin_tree false or sequence_offset/sequence_limit for a bounded response. This is clear context for when parameter tuning is needed. It does not explicitly state when to prefer this tool over alternatives like get_project_info, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_full_sequence_infoGet Full Sequence InfoA
Read-onlyIdempotent

Get exhaustive information about a sequence: settings, all tracks with lock/mute/target state, all clips with positions/effects/speed/enabled state, all markers, transitions, in/out points, and work area.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish that this is read-only, idempotent, and non-destructive. The description adds useful behavioral scope by enumerating exactly what is included (all tracks, clips, markers, transitions, in/out points, work area). It does not mention potential performance weight of an exhaustive call, but this is minor given annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense sentence that is front-loaded with 'exhaustive information' and then efficiently lists each component category. Every clause earns its place and there is no filler or repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema is present, so the description does not need to describe the exact response shape. It comprehensively lists the major data categories returned and the sequence scoping is handled by the schema. Nothing essential is missing for an agent to understand what this tool provides.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, sequence_id, is fully documented in the schema, including the fallback to the active sequence when omitted. The description does not add extra semantic detail about the parameter itself, so it does not exceed the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('Get exhaustive information about a sequence') and then enumerates the full scope: settings, tracks with lock/mute/target state, clips with positions/effects/speed/enabled state, markers, transitions, in/out points, and work area. This clearly distinguishes it from narrower siblings like get_sequence_settings or list_sequence_tracks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word 'exhaustive' and the detailed category list imply this is the comprehensive sequence retrieval tool, but it does not explicitly state when to prefer it over a narrower getter or any alternative. Usage guidance is therefore present only implicitly, not as direct guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_graphics_white_luminanceGet Graphics White LuminanceA
Read-onlyIdempotent

Get the graphics white luminance value (HDR setting) for the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the HDR-setting clarification and project-level scope, but does not disclose additional behavioral details such as return value structure, units, or default behavior. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every word adds meaning, identifying the action, the resource, the HDR context, and the project scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple getter with no parameters, an output schema, and annotations covering safety, the description is complete. It tells the agent what value is being read and at what scope, and the sibling setter provides the natural contrast for write 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 has zero parameters and the schema is empty, so there is no parameter documentation burden. The description correctly does not invent parameters, and the 100% schema description coverage means nothing is left undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Get the graphics white luminance value (HDR setting) for the project.' It clearly identifies what is being retrieved and the project scope, and it is easily distinguishable from the sibling setter set_graphics_white_luminance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a read-only usage by starting with 'Get' and mentioning the HDR setting, but it does not explicitly state when to use this tool versus the sibling set_graphics_white_luminance or provide any exclusion criteria. The usage context is clear enough to infer, but not explicitly guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_insertion_binGet Insertion BinA
Read-onlyIdempotent

Get the current target bin for new imports (the bin that is currently focused in the Project panel)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the operation read-only, idempotent, and non-destructive. The description adds the useful nuance that the result depends on the Project panel's current focus rather than a stored setting, which is behavioral information 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 sentence that front-loads the action and resource, adds one clarifying parenthetical, and contains 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 parameterless, read-only getter with an output schema and safety annotations, this definition gives sufficient operational context. 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.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool accepts zero parameters, so there is no parameter semantics to document. The description's lack of parameter details is therefore harmless.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the operation: retrieving the current target/insertion bin for new imports. The parenthetical additionally defines what 'target bin' means by tying it to the bin currently focused in the Project panel, so the agent knows exactly what state is being read.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'for new imports' gives an immediate use context: call this when you need to know where imported media will land. It does not name alternatives or exclusions, so it does not reach the explicit 5 level, but the intended use case is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_item_infoGet Item InfoB
Read-onlyIdempotent

Get detailed type info about a project item (is it a sequence, multicam, merged clip, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the description only adds the semantic clarification that it returns type classification. It does not disclose edge cases like unknown item IDs or whether lookup by name is exact, but with annotations covering safety this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; the key scoping term 'type info' and examples appear immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 1-parameter tool with full schema coverage, an output schema, and read-only annotations, the description is mostly sufficient. It only lacks explicit differentiation from similar item-info siblings, which keeps it from a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers the single parameter at 100% ('Node ID or name of the project item'), so the description adds nothing beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific operation ('get detailed type info') on a project item and gives concrete examples (sequence, multicam, merged clip). It does not name sibling tools, but the 'type info' scope distinguishes it from get_project_item_info, get_full_clip_info, and get_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to choose this over the many sibling getters, nor any exclusions or prerequisites. The 'type info' phrasing weakly implies use for classification, but no alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_keyframesGet KeyframesA
Read-onlyIdempotent

Get all keyframes for a specific effect property on a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false). The description adds little beyond confirming a read operation, though 'all keyframes' implies no filtering or pagination. No additional context about edge cases or return behavior is provided, but the annotations lower the bar.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the action and resource, with no filler. Every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple getter tool with an output schema present and detailed annotations covering safety. The description is sufficient for an agent to know what to request. A minor gap is not explaining ordering or behavior when no keyframes exist, but the output schema covers return structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with each parameter (node_id, effect_name, property_name) having a clear description. The tool description adds no further semantic detail about how the parameters relate, but the schema itself is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the exact scope ('all keyframes for a specific effect property on a clip'). This distinguishes it from siblings like add_keyframe, remove_keyframe, and get_effect_properties by identifying the specific resource being retrieved.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied: call this when you need keyframes for a known effect property on a clip. However, the description does not explicitly mention alternatives or when not to use this tool, such as when you need to modify keyframes or inspect only effect properties.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_linked_itemsGet Linked ItemsA
Read-onlyIdempotent

Get all clips in the sequence that are linked to the same source as a given clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, non-destructive behavior, so the description need not repeat safety. It adds a small semantic context (same source, within the sequence) but discloses no further behavioral traits such as return shape or edge cases; with the annotation safety burden covered, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one clean, front-loaded sentence with no filler, restatement, or duplicated schema content. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, read-only lookup with a full input schema and an output schema, the description is mostly sufficient. The one missing element is optional guidance distinguishing this from get_clip_links, but nothing essential about how to invoke the tool is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers node_id at 100% with 'Node ID of the clip', and the description adds no new parameter-level detail beyond calling it 'a given clip'. Per the high-coverage baseline, the schema does the work and the description does not meaningfully extend it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get'), names an exact resource ('all clips in the sequence linked to the same source as a given clip'), and clearly conveys what the tool operates on. It is unambiguous, but it does not explicitly contrast itself with the similarly named sibling get_clip_links, so it stops short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to call the tool (when you have a clip's node_id and need all clips sharing its source), which is adequate for a simple query. However, it gives no explicit when/where-not guidance or alternative recommendations, e.g., no mention of get_clip_links or other lookup tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_metadataGet MetadataA
Read-onlyIdempotent

Get metadata for a project item. Disable either XML payload when a bounded identity/path response is sufficient.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
include_xmp_metadataNoInclude the potentially large XMP XML payload (default: true). Set false for a bounded identity/path response.
include_project_metadataNoInclude the potentially large Project Metadata XML payload (default: true). Set false for a bounded identity/path response.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and non-destructive behavior, so the description carries a lighter burden. It adds useful context about potentially large XML payloads and the availability of a bounded identity/path response, but it does not disclose other behavioral details such as response size limits or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no filler. The primary purpose is front-loaded, and the second sentence provides a practical, actionable qualifier about payload control.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only metadata getter with a rich output schema and strong annotations, the description is mostly sufficient. The main gap is the lack of differentiation from overlapping sibling tools with similar metadata-focused names, which leaves some ambiguity about when exactly this tool should be selected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter meanings and defaults are already fully documented. The description reinforces the relationship between the two boolean flags and the bounded response, but it does not add significant semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation ('Get metadata') and resource ('a project item'), so an agent can understand the basic purpose. However, the generic 'metadata' scope overlaps with sibling tools like get_item_info, get_project_item_info, and get_xmp_metadata, and no distinctions are drawn.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers actionable guidance on when to disable the XML payloads ('when a bounded identity/path response is sufficient'), which is useful for efficient invocation. However, it does not explain when to choose this tool over nearby sibling metadata tools, so the tool-selection context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_mogrt_componentGet Mogrt ComponentB
Read-onlyIdempotent

Get MOGRT (Motion Graphics Template) component parameters from a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the MOGRT clip on the timeline

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description adds the scope 'from a clip' and expands the MOGRT acronym, but does not disclose return format, error behavior, or other runtime traits. Given the rich annotations, the description does enough to earn a mid score without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-front-loaded sentence with no filler. It states the action, the resource, and the source clip efficiently, and the acronym expansion is useful rather than redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity, read-only getter with a single fully documented parameter and an output schema, the description is nearly complete. It lacks usage guidance and return-value details, but those are largely covered by the schema, output schema, and annotations, so the provided text is sufficient for the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully documents the single parameter node_id with a clear description, so schema coverage is 100%. The tool description adds no additional parameter syntax, defaults, or constraints, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the specific resource 'MOGRT component parameters from a clip', and helpfully expands the acronym MOGRT. It does not explicitly call out sibling tools for differentiation, but the resource is specific enough that an agent can generally distinguish it from related getters like get_clip_properties or get_effect_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus similar tools. The description only says what it does ('Get MOGRT component parameters from a clip') but gives no scenarios, exclusions, or pointers to alternatives. This is a clear gap given the large number of getter siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_next_edit_pointGet Next Edit PointA
Read-onlyIdempotent

Find the next or previous edit point (clip boundary) from the playhead position.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNoDirection to search (default: next)
track_typeNoTrack type to check (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint, idempotentHint, and destructiveHint=false, so there is no safety contradiction. The description adds behavioral context by anchoring the search at the current playhead and defining an edit point as a clip boundary. No-result behavior is not described, but the output schema likely covers that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the action and target, with an inline parenthetical that removes ambiguity. No filler or redundant restatements of the annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only tool with two optional parameters, a full input schema, and an output schema, this description is nearly complete. The only notable gap is that it does not explicitly say it does not move the playhead, which would fully disambiguate it from move_playhead_to_edit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both parameters already have clear enum descriptions for direction and track_type. The description's 'next or previous' restates the direction parameter but adds no new parameter-level meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States exactly what it does: 'Find' the 'next or previous edit point (clip boundary)' relative to 'the playhead position'. The parenthetical definition of edit point and the playhead anchor clearly distinguish it from siblings like get_clip_at_position and move_playhead_to_edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The playhead-relative phrasing gives clear context for when it applies, and 'find' implies a read-only query. However, it never names alternatives or exclusions, such as using move_playhead_to_edit when the playhead itself needs to move, so an agent must infer the boundary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_offline_mediaGet Offline MediaA
Read-onlyIdempotent

Find all offline/missing media in the project with their expected file paths. Essential for diagnosing broken links.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate that this is read-only, idempotent, and non-destructive, lowering the burden on the description. The description adds the project-wide scope and the fact that expected file paths are included, which goes beyond the structured fields without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the first states the action, scope, and output content, while the second gives a practical reason to call it. The essential information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only diagnostic with an output schema and supporting annotations, the description covers what will be found, at what scope, and why it matters. 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.

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 of 100%, so there is no parameter information for the description to add. The baseline of 4 for parameterless tools applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Find') and resource ('all offline/missing media in the project') and adds the output content ('expected file paths'), so an agent knows exactly what the tool returns. It does not explicitly contrast itself with similar sibling tools such as check_offline_media or find_items_by_media_path, so it misses the full sibling-differentiation bar.

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 'Essential for diagnosing broken links' provides a clear context for when to call the tool. It does not name alternatives or state when not to use it, but the use case is specific enough for a zero-parameter diagnostic.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_playhead_positionGet Playhead PositionA
Read-onlyIdempotent

Get the current playhead (CTI) position in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety behavior. The description adds useful context about the active-sequence scope, but it doesn't go further into return representation or any operational caveats.

Agents need to know what a tool does to the world before 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 operation, the target, and the scope. Every word earns its place, with no redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple parameterless getter with strong annotations and an output schema, this description supplies all essential context: it reads the playhead position from the active sequence. No additional information is needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, and schema description coverage is 100%, so there is no parameter ambiguity. Per the baseline for parameterless tools, the description doesn't need to compensate for anything.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies a read operation ('Get') on a specific resource ('playhead/CTI position') scoped to 'the active sequence.' This differentiates it from sibling tools like set_playhead_position and get_clip_at_playhead.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The use case is clear: query the current playhead position in the active sequence. It doesn't explicitly list alternatives or exclusions, but the read-only framing and the existence of a direct setter sibling make the intended usage apparent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_premiere_stateGet Premiere StateA
Read-onlyIdempotent

Get a comprehensive snapshot of the current Premiere Pro state: project info, active sequence, playhead position, selected clips, and available sequences. The best first call to understand the current context.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description doesn't need to restate safety. It adds 'snapshot' and 'current context' but doesn't describe consistency, cost, or failure behavior; with annotations covering the safety profile, 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, front-loaded with the resource and contents, followed by the usage recommendation. 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.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and an output schema available, the description needs only to communicate scope and usage, which it does. It names the key state dimensions an agent would need before drilling into specific 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 0 parameters and the schema is empty with full coverage, so there are no parameter semantics to explain. Baseline for 0-parameter tools is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('get') and resource ('comprehensive snapshot of the current Premiere Pro state') and enumerates the contents: project info, active sequence, playhead position, selected clips, available sequences. It also positions itself as 'the best first call,' which differentiates it from the many narrower get_* 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?

It gives explicit context for when to use the tool: as the first call to understand current context. It doesn't name when-not-to-use alternatives like get_project_info or get_active_sequence, but the first-call framing implies the correct usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_infoGet Project InfoA
Read-onlyIdempotent

Get information about the currently open Premiere Pro project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/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), so the description only needs to add context. It adds the 'currently open project' scoping, which is useful, but it does not say what happens when no project is open or what subset of information is returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word adds meaning, and the main subject ('get', 'currently open Premiere Pro project') appears 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 no-argument read-only tool, the description plus output schema and annotations are nearly sufficient. It could be more explicit about the exact information fields or the no-open-project error condition, but an agent can safely invoke it without additional guidance.

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; there is no parameter ambiguity for the description to resolve. The schema already shows an empty properties object, and the description adds no conflicting or missing 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 names a specific verb ('get') and resource ('currently open Premiere Pro project'), so an agent knows the basic scope. However, 'information' is broad and the description does not distinguish this tool from similarly named siblings such as get_premiere_state, get_full_project_overview, 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'currently open' implies this is the tool to call only when a project is already active, and it takes no project selector. There is no explicit guidance about when to prefer this over the many sibling inspection tools, so the routing burden remains mostly on the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_item_infoGet Project Item InfoA
Read-onlyIdempotent

Get detailed information about a project item (media file in the project panel): media path, resolution, duration, frame rate, codec info, metadata, color label, offline status, in/out points, and proxy status.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds useful context about the scope (project panel media file) and the type of data returned, but it does not disclose any additional behavioral traits such as authentication requirements, rate limits, or potential side effects beyond what annotations already indicate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action and resource, then efficiently lists the specific information fields. Every part contributes value, and there is no filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, read-only getter with one parameter and an existing output schema, the description is complete. It identifies what the tool operates on, what information it returns, and the annotations confirm it is safe and side-effect-free. No critical calling context is missing for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with item_id described as 'Node ID or name of the project item'. The main description adds a bit of context by clarifying that the item is a media file in the project panel, but it does not provide additional parameter-level details such as examples, ID formats, or how to obtain the item_id. Since the schema already describes the single parameter adequately, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Get') and resource ('project item (media file in the project panel)') and enumerates the exact fields returned, making the purpose clear. It does not explicitly differentiate from the very similarly named sibling 'get_item_info' or related metadata tools, but the detail level still distinguishes it well enough for most cases.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives like get_item_info, get_project_panel_metadata, or inspect_project_item_av_metadata. The description implies it is for reading project item details, but it does not state when not to use it or which sibling covers overlapping functionality.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_panel_metadataGet Project Panel MetadataA
Read-onlyIdempotent

Get the current project panel metadata/column configuration as XML

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds that the result is XML and reflects 'current' state, which is useful but not extensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that conveys the object, action, and output format without any filler. It is appropriately front-loaded and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with no parameters and a declared output schema, the description provides sufficient context. Annotations cover the behavioral safety, and the description specifies the output type (XML).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is no parameter burden on the description. A baseline of 4 is appropriate because there is nothing missing for parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Get' and the specific resource: 'current project panel metadata/column configuration as XML'. This is precise enough to distinguish it from the sibling 'set_project_panel_metadata' and from general 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?

The description makes the usage context clear: call this to retrieve the current project panel column configuration as XML. It does not explicitly name alternatives or exclusions, but the scope is unambiguous and no alternative is suggested.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_project_scratch_disksGet Project Scratch DisksA
Read-onlyIdempotent

Get the current scratch disk paths for the project.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already carry readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds only the 'current' state nuance and does not contradict annotations; no further behavioral detail is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded, no filler. Every word contributes to identifying what is 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 parameterless getter with an output schema and read-only/idempotent annotations, the description covers what an agent needs in order to invoke it correctly. No return format or parameters need explanation.

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 and schema coverage is 100%, so the description carries no parameter burden. The baseline 4 applies because there is nothing to clarify.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the exact resource ('current scratch disk paths') and action ('Get') scoped to the project. It is easily distinguished from the sibling setter set_project_scratch_disk.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Context is clear: use this to retrieve the current scratch disk paths, and use set_project_scratch_disk to change them. The description does not explicitly name that sibling or state exclusions, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_qe_clip_infoGet Qe Clip InfoA
Read-onlyIdempotent

Get QE DOM information about a clip, including properties not available through the standard API.

ParametersJSON Schema
NameRequiredDescriptionDefault
clip_indexYesClip index on the track (0-based)
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile externally. The description adds only that this exposes QE DOM/non-standard data; it doesn't disclose output structure, failure modes, or operational caveats, but with the annotations and output schema present the gap is modest.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words or redundant restating of the tool name or schema. The qualifier about non-standard properties earns its place by differentiating the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three fully documented parameters, read-only annotations, and an output schema present, the description is minimally sufficient for making a basic call. It lacks explicit routing against sibling clip-inspection tools and a clearer definition of 'QE DOM', so an agent comparing get_qe_clip_info with get_clip_properties receives only implicit guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter is already explained in the input schema, including 0-based indexing and the track_type enum. The description adds no additional meaning about how the parameters are used, so the schema carries the weight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific operation ('Get QE DOM information about a clip') and adds a distinguishing qualifier ('properties not available through the standard API') that separates it from standard clip-property tools like get_clip_properties or get_full_clip_info. However, 'QE DOM' is unexplained jargon, so an agent without domain knowledge may still be unsure exactly what is being fetched.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'properties not available through the standard API' implies this is for non-standard or internal DOM data rather than ordinary clip properties, but it never names alternatives or states when not to use it. Usage context is implied, not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_render_queue_statusGet Render Queue StatusA
Read-onlyIdempotent

Get the current status of the Adobe Media Encoder render queue

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the Adobe Media Encoder context but does not disclose additional behavioral details such as what the returned status contains or whether it reflects queued, in-progress, and completed jobs. Annotations carry most of the burden, so a mid score is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence states exactly what the tool does with no filler. Every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

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 query tool with a full output schema and safety-related annotations, the description provides everything needed to select and invoke it correctly. No additional context is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema confirms this, so there is nothing for the description to clarify beyond noting the operation takes no input. The baseline of 4 for parameterless tools applies here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('get') and a precise resource ('current status of the Adobe Media Encoder render queue'). It clearly distinguishes this from render-queue mutation tools like add_to_render_queue or start_batch_encode, and from unrelated status tools like get_project_info.

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 phrasing 'Get the current status' provides clear context: this tool is for querying render queue state. It does not explicitly name alternatives or exclusions, but among the sibling tools it is the only one focused on reading render queue status, so an agent can infer the correct usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_selected_clipsGet Selected ClipsA
Read-onlyIdempotent

Get the currently selected clips in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description does not need to restate safety. It adds the useful behavioral detail that the result depends on the active sequence's current selection state, but does not describe empty-selection or no-active-sequence 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 conveys the complete purpose without filler. Every word adds meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only getter with an output schema, the description fully covers the invocation context. The active-sequence scoping is explicit, and the annotations cover the risk profile, so 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?

The tool has zero parameters, so there is no parameter ambiguity for the description to resolve. With schema coverage at 100% vacuously, the baseline for a no-parameter tool applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Get'), a specific resource ('currently selected clips'), and a context ('active sequence'), making the tool's function unambiguous. It also naturally distinguishes itself from sibling tools like get_active_sequence or get_clip_at_position by focusing on the selection state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to call the tool: whenever the current clip selection in the active sequence is needed. It does not mention any exclusions or alternative tools, but the tool's purpose is sufficiently unique that no alternative routing is necessary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_countGet Sequence CountA
Read-onlyIdempotent

Get the total number of sequences in the project.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose read-only, idempotent, non-destructive behavior, so the description does not need to repeat that. It adds the project-scoped context, which is useful, but it does not disclose any additional behavioral traits beyond what the annotations already convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One clear, front-loaded sentence with no filler or repeated information. 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 zero-parameter read-only count with annotations and an output schema, the description is largely complete. It could be marginally stronger by explicitly scoping to the current/open project, but 'in the project' already conveys the essential context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters and schema coverage is 100%, so there is no parameter documentation burden. The baseline for no-parameter tools applies, and the description adds no parameter confusion.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a precise operation — returning a total count — and a clear resource (sequences) and scope (the project). This distinguishes it from nearby siblings like list_sequences or get_total_clip_count without ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrasing 'total number' implies it should be chosen when only a numeric count is needed rather than sequence details, but the description does not explicitly name alternatives such as list_sequences or state when not to use it. Usage is implied 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_sequence_in_out_pointsGet Sequence In Out PointsA
Read-onlyIdempotent

Get the current sequence in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and a non-destructive nature, and the description's 'Get' is consistent with those. It adds minimal behavioral context beyond that, such as no mention of behavior when no sequence is open or whether returned points are in ticks, frames, or timecode.

Agents need to know what a tool does to the world before 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, redundancy, or irrelevant detail. It states the operation and resource directly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only getter with annotations and an output schema, the description contains the essential information an agent needs to invoke it correctly. Return-value details are covered by the output schema, so the description does not need to elaborate further.

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 full schema coverage of that empty schema, so there is no parameter documentation burden on the description. The description correctly implies a no-argument call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('current sequence in and out points'), making the operation unambiguous. It is clearly distinct from sibling tools like set_sequence_in_out_points and clear_sequence_in_out, so an agent can differentiate it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is a read-only query for the current sequence's in/out points, so the intended use is inferable. It does not explicitly state when to prefer this over alternatives or how it differs from related getters like get_work_area, leaving some inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_markers_by_typeGet Sequence Markers By TypeA
Read-onlyIdempotent

Get all markers of a specific type (comment, chapter, web link, etc.) from a sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
marker_typeYesType of marker to filter
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds scoping to a sequence and marker type, which is useful, but it discloses no additional behavioral details such as ordering, empty results, or defaults beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler; the core action, object, filter, and scope all appear up front. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a simple filtered read operation, and the output schema plus annotations cover return values and safety. The description omits the active-sequence default but the parameter schema documents that, so nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents marker_type and sequence_id, including the active-sequence fallback. The description's examples ('comment, chapter, web link') add a little human-readable color but no essential meaning beyond the enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action ('Get'), a resource ('markers'), and a distinguishing filter ('of a specific type') from a sequence. It is clear enough to select this tool over general list_markers, though it does not explicitly name sibling tools or contrast them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when the agent needs markers filtered by a given type from a sequence, which is clear context. It does not explicitly say when to prefer list_markers, get_clip_markers, or other marker tools, so no exclusions or alternatives are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_settingsGet Sequence SettingsA
Read-onlyIdempotent

Get the settings (resolution, frame rate, etc.) of a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds that it retrieves 'resolution, frame rate, etc.' but does not disclose whether the returned settings reflect effective or override values, nor whether it errors when no sequence is active. With annotations covering the read-only nature, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that gets to the point and includes examples of what settings are returned. It is front-loaded and wastes no words. It could name alternatives, but for its length it is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, read-only, single-parameter tool with a full output schema and complete parameter documentation, the description is sufficient. It lacks guidance on when to prefer this over richer sequence inspection tools, and doesn't state what happens if no sequence is active, but those are minor gaps given the tool's simplicity and annotation coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the single parameter is fully documented in the schema. The description does not add much beyond that, only confirming the tool returns settings and implying the sequence can be identified by ID or name or omitted to use the active sequence. Baseline 3 is correct when schema does the heavy lifting and description provides no additional parameter detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Get the settings (resolution, frame rate, etc.) of a sequence.' It is clear what the tool does and distinguishes it from siblings like set_sequence_settings since it is a read operation. It doesn't explicitly name sibling alternatives, so not a 5, but it is specific enough to understand its role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: use this when you need a sequence's settings. It doesn't explicitly say when not to use it or mention alternatives such as get_sequence_structure or get_full_sequence_info for more detailed sequence data. The optional sequence_id parameter hints at active-sequence behavior, but no explicit guidance is given for choosing this over similar read tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sequence_structureGet Sequence StructureA
Read-onlyIdempotent

Get a complete structural overview of the active sequence: all tracks, all clips with positions, gaps, and clip metadata. Essential for understanding timeline state before making edits.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description mostly restates the tool's informational content rather than adding behavioral details such as performance implications or edge cases. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences: the first front-loads the core scope and contents, the second provides a practical use case. Every sentence earns its place with no redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low parameter count, strong annotations, and presence of an output schema, the description is nearly complete. The only notable gap is that it says 'active sequence' without explicitly noting that sequence_id can override that default, though the input schema covers this.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully documents the single optional sequence_id parameter (100% coverage), so the description doesn't need to explain it. The phrase 'active sequence' confirms the default behavior but doesn't add meaning beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: it 'Get[s] a complete structural overview' of a sequence, and enumerates the contents (tracks, clips with positions, gaps, clip metadata). It is clear, but it does not explicitly distinguish itself from overlapping siblings like get_full_sequence_info, get_timeline_summary, or list_sequence_tracks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives useful context ('Essential for understanding timeline state before making edits'), which implies when an agent might want this tool. However, it provides no explicit guidance on when to prefer it over the many related sibling query tools, and it names no alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_source_monitor_infoGet Source Monitor InfoA
Read-onlyIdempotent

Get information about the clip currently loaded in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to reassert safety. It adds useful context that the result depends on the currently loaded Source Monitor clip, but does not describe return format or any additional behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no filler. It front-loads the core action and resource without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only tool with an output schema and strong annotations, the description is sufficient. The agent knows what to call, what it operates on, and that it is safe and idempotent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so parameter semantics are not a concern. The description does not need to compensate for undocumented parameters, and the baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves information about the clip currently in the Source Monitor, using a specific verb and resource. This distinguishes it from related siblings like get_source_monitor_position and get_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives. It implies a simple read of the Source Monitor state, but does not mention related sibling tools or exclusion conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_source_monitor_positionGet Source Monitor PositionA
Read-onlyIdempotent

Get the current time indicator position in the Source Monitor

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotent=true, and destructiveHint=false, so the safety profile is covered. The description adds no further behavioral context, such as behavior when no clip is open in the Source Monitor or the units of the returned position, but it also does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler or redundant wording. It front-loads the action and immediately identifies the target resource, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only getter with an output schema and safety annotations, the one-sentence description is nearly complete. It does not mention edge cases like a closed or empty Source Monitor, but the output schema likely covers return details, so the description contains adequate context for invoking the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema shows an empty properties object, so there are no parameter semantics for the description to clarify. The baseline for zero-parameter tools is 4, and no additional parameter information is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Get the current time indicator position in the Source Monitor.' The 'Source Monitor' qualifier clearly distinguishes this from timeline position getters like get_playhead_position, so 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the context clear by specifying 'in the Source Monitor,' implying this is the tool for source-monitor position queries rather than timeline/sequence position queries. It does not explicitly name alternatives or exclusion conditions, but for a simple read-only getter the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_target_tracksGet Target TracksA
Read-onlyIdempotent

Get which tracks are currently targeted for editing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the stateful, 'currently targeted' aspect, which is useful context, but does not explain what the return value looks like or how targeting is affected by other tools.

Agents need to know what a tool does to the world before 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 directly states the function. Every word earns its place, with no filler or redundant elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only getter with strong annotations and an output schema, the description is nearly sufficient. It could be slightly more explicit about what 'targeted for editing' means and how it relates to set_target_track, but the core information is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the empty input schema fully specifies the calling contract. No parameter description is needed, and the description appropriately focuses on the purpose rather than inventing unnecessary parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and identifies the exact resource ('which tracks are currently targeted for editing'). This clearly differentiates it from sibling tools like get_track_info or list_sequence_tracks, which retrieve other track-related information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that this tool is used to inspect the current editing target tracks, likely before operations that depend on targeting. However, it does not explicitly state when to use this tool versus alternatives, nor does it mention related setters like set_target_track or set_all_tracks_targeted.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timeline_gapsGet Timeline GapsA
Read-onlyIdempotent

Find all gaps (empty spaces) on the timeline between clips. Useful for identifying where content is missing or where clips can be tightened.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoWhich track type to analyze (default: both)
sequence_idNoSequence name or ID. Uses active sequence if omitted.
min_gap_secondsNoMinimum gap duration in seconds to report (default: 0.04 = ~1 frame at 24fps)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful context about what constitutes a 'gap' and frames the operation as an analysis task, which is consistent with the read-only annotation. No hidden mutation or side effects are suggested.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It front-loads the core action and then gives a practical use case, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is low-complexity, has zero required parameters, full schema coverage, rich annotations, and an output schema. The description, combined with the structured metadata, gives an agent everything needed to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters (track_type, sequence_id, min_gap_seconds) are already fully documented in the schema. The description does not add parameter semantics, but the baseline of 3 applies because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Find') and a specific resource ('gaps/empty spaces on the timeline between clips'), which clearly defines what the tool does. This focus on inter-clip gaps distinguishes it from related timeline-analysis siblings like get_timeline_summary or get_sequence_structure.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear use case ('identifying where content is missing or where clips can be tightened'), which implies when this tool is useful. However, it does not explicitly mention when not to use it or name alternative tools for related timeline analysis, so the guidance is implied rather than fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timeline_summaryGet Timeline SummaryA
Read-onlyIdempotent

Get a human-readable summary of the timeline: total duration, clip count per track, total gaps, coverage percentage, used media files, effect usage, and marker overview. Great for a quick understanding of sequence state.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The read-only, idempotent, non-destructive nature is already declared in annotations, so the description only needs to add scoping context. It does this by disclosing that the result is a human-readable summary covering duration, clips, gaps, coverage, media, effects, and markers. Nothing contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: the first lists what the tool returns, the second states the use case. There is no filler, and the key information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one optional parameter and an output schema present, the description together with the schema and annotations gives an agent everything needed to decide whether and how to call it. No important safety, parameter, or return information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single optional sequence_id parameter is fully documented by the schema, including the 'active sequence if omitted' behavior. The description adds no extra parameter detail, but at 100% schema coverage the schema already carries the burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Get a human-readable summary of the timeline', then enumerates the exact metrics returned. This lets an agent clearly distinguish it from lower-level siblings like get_timeline_gaps or get_used_media_report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Great for a quick understanding of sequence state' provides a clear intended use case. It does not explicitly name alternatives for raw or structured timeline data, but for a read-only overview tool this is adequate contextual guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_total_clip_countGet Total Clip CountA
Read-onlyIdempotent

Get the total number of clips across all tracks in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds useful behavioral context by defining the exact counting scope: all tracks in the active sequence. There is no contradiction with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence that front-loads the action and scope. Every word contributes value, with no repetition or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter aggregate read tool with a rich annotation set and an output schema, the description is fully sufficient. It identifies the active-sequence context and the counting rule, leaving no operational ambiguity for an agent.

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 meaningfully explains what the tool operates on (active sequence; all tracks), making the lack of parameters sensible and 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?

The description uses a specific verb ('Get'), a precise resource ('total number of clips'), and a clear scope ('across all tracks in the active sequence'). This distinguishes it from sibling tools like get_sequence_count or list_sequence_tracks based on the resource and aggregation it targets.

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 clearly implies usage context: when you need a clip count for the active sequence. However, it does not explicitly mention when to prefer this tool over alternatives, nor does it note any exclusions such as hidden/locked tracks or nested sequences.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_track_infoGet Track InfoA
Read-onlyIdempotent

Get detailed information about a specific track: name, clip count, muted, locked, targeted, and list of all clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a safe, read-only, idempotent operation. The description adds value by specifying exactly what information is returned, including the notable inclusion of all clips on the track. This gives the agent a clear picture of the operation's behavior beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence that front-loads the action and resource, then lists the returned fields with no redundancy or filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple two-parameter schema, full enum coverage, read-only annotations, and presence of an output schema, the description covers all necessary context for an agent to select and invoke this tool correctly. Nothing important is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents track_type and track_index adequately. The description does not add parameter-level detail beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('specific track'), and enumerates the exact fields returned: name, clip count, muted, locked, targeted, and list of clips. This clearly distinguishes it from sibling tools like list_sequence_tracks, which list tracks rather than detail one track.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for retrieving details about a single identified track, versus listing or modifying tracks. However, it does not explicitly state when to choose this over alternatives such as list_sequence_tracks or get_sequence_structure, nor does it mention any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_unused_mediaGet Unused MediaA
Read-onlyIdempotent

Find all project items that are NOT used in any sequence. Useful for cleaning up projects.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only, idempotent, non-destructive, and closed-world. The description adds relevant behavioral context by specifying the scope ('all project items') and the exclusion criterion ('NOT used in any sequence'), which helps the agent understand what results to expect beyond the annotation flags.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: the first states the operation, the second states its practical purpose. No filler, no repetition of the title, and the core behavior is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only tool with an output schema, the description is fully sufficient. It defines the selection criteria clearly and gives a real-world context ('cleaning up projects') without needing to explain return format or parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%, so there are no parameter semantics to explain. Per the rubric, zero parameters earns a baseline of 4; the description adds no unnecessary parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a precise verb ('Find') and a specific resource ('all project items that are NOT used in any sequence'). It clearly communicates the tool's purpose and naturally distinguishes it from broader listing tools like list_project_items.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Useful for cleaning up projects' implies when to use the tool, but it does not explicitly state when not to use it or mention alternatives such as get_used_media_report or list_project_items. The usage context 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.

get_used_media_reportGet Used Media ReportA
Read-onlyIdempotent

Get a report of all media files used in a sequence: which source files are used, how many times each appears, on which tracks, and whether any sources are offline.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the description does not need to restate safety. It adds meaningful behavioral context by specifying exactly what the report covers, including offline detection, which goes beyond the annotations. It does not mention potential costs or failure modes, but the output schema covers return structure and annotations cover side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that immediately identifies the tool's purpose and then compactly lists what the report contains. There is no filler or redundant restatement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only reporting tool with one optional parameter, full schema coverage, output schema, and strong annotations, the description covers the essential semantics: what is reported and what statuses are included. It is slightly less explicit about how the target sequence is resolved beyond the schema, but the schema already handles that, leaving no critical gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the parameter description already explains that sequence_id is a sequence name or ID and that the active sequence is used if omitted. The description adds no additional parameter-level meaning beyond referring to 'a sequence', so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get'), a clear resource ('report of all media files used in a sequence'), and enumerates the report's contents: source files, usage counts, tracks, and offline status. This clearly differentiates it from related siblings like get_unused_media or get_offline_media by anchoring on media usage within a sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for analyzing media usage in a sequence and detecting offline sources, providing useful context. However, it does not explicitly state when to prefer this over alternatives such as get_unused_media, get_offline_media, or check_offline_media, nor does it note any exclusions or prerequisites like having an active sequence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_value_at_timeGet Value At TimeA
Read-onlyIdempotent

Get the interpolated value of an effect property at a specific time

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds to query the value at
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the key behavioral nuance that the returned value is interpolated rather than a raw keyframe value. It does not describe edge-case behavior such as querying before/after the first/last keyframe, but with read-only annotations and an output schema the bar is lower.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, dense sentence that front-loads the core behavior. Every word contributes: 'interpolated' and 'at a specific time' carry the semantic payload distinguishing this tool from peers. No fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup tool with all parameters documented in the schema and an output schema present, the description is largely complete. It explains the purpose, the interpolation nuance, and the time dimension. It could explicitly mention that the property needs keyframes for interpolation to apply, but this is a modest gap given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and each parameter already has a clear description. The description adds only the 'interpolated' and 'specific time' context, which slightly reinforces the meaning of time_seconds but does not add substantial semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get'), a clear resource ('effect property'), and two important qualifiers ('interpolated', 'at a specific time'). This distinguishes it from related tools like get_keyframes (which returns keyframe data) and get_effect_properties (which returns property metadata), even among a crowded sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the usage context: use this when you need the interpolated value of an effect property at a given time rather than raw keyframes or property metadata. However, it does not explicitly mention alternatives or state when not to use it, leaving the agent to infer routing from the sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_version_infoGet Version InfoA
Read-onlyIdempotent

Get Premiere Pro version and build information.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds 'version and build information' as the returned content but does not disclose additional behavioral traits; the output schema likely covers 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?

The description is a single, efficient sentence with no wasted words. It front-loads the purpose and is appropriately sized for such a simple zero-parameter getter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, idempotent getter with an output schema, the description is complete. There are no inputs to specify, side effects are covered by annotations, and the output schema handles return structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline of 4 applies. The description appropriately implies no inputs are needed and no parameter documentation is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Get' and identifies the exact resource: 'Premiere Pro version and build information.' This clearly distinguishes it from sibling tools that retrieve project, sequence, or workspace information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for retrieving version/build details, but it does not explicitly state when to use it over alternatives or provide any exclusion guidance. However, the tool is unique enough among siblings that confusion is unlikely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_work_areaGet Work AreaA
Read-onlyIdempotent

Get the current work area in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.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, and destructiveHint=false, so the safety profile is well covered. The description adds no extra behavioral detail (e.g., units of the returned points or behavior when the work area is disabled), but it does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the action and resource with no filler. This 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?

For a no-argument, read-only getter with an output schema and full safety annotations, the description is nearly complete. Minor gaps include units of the in/out points and behavior when the work area is not enabled, but these are edge details likely addressed 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?

The input schema has zero parameters, so the rubric baseline is 4. There are no parameter semantics to document, and the description appropriately includes none.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and a specific resource ('current work area') and clearly states the returned values ('in and out points'). It does not explicitly distinguish itself from sibling getters like get_sequence_in_out_points or is_work_area_enabled, but the work-area 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?

The purpose statement implies when to use this tool: when the current work area's in/out points are needed. However, it provides no explicit guidance on alternatives such as set_work_area, is_work_area_enabled, or get_sequence_in_out_points, and no prerequisites such as an open sequence or enabled work area.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_workspacesGet WorkspacesA
Read-onlyIdempotent

List all available workspace layouts in Premiere Pro

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the scoping detail 'all available' but does not disclose additional behavioral traits such as whether the current workspace is excluded or whether the list is sorted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every word contributes to understanding the tool's function.

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 enumeration tool with a rich annotation set and an output schema, this description is complete. An agent can confidently invoke it without needing additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema coverage is 100%, so there is no parameter information missing. The description appropriately does not need to document parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and a clear resource ('all available workspace layouts in Premiere Pro'). It clearly distinguishes itself from the sibling set_workspace by focusing on read-only enumeration rather than mutation.

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: if an agent needs to know available workspace layouts, this is the tool. However, it does not explicitly mention when to use this over alternatives like set_workspace, leaving the routing decision mostly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_xmp_metadataGet Xmp MetadataB
Read-onlyIdempotent

Get the raw XMP metadata for a project item (includes EXIF, IPTC, Dublin Core, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds minor value by clarifying that the metadata is raw and includes EXIF, IPTC, and Dublin Core, but does not disclose much beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core action (get raw XMP metadata) and succinctly lists the included metadata standards. There is no redundancy or wasted language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one well-documented parameter and an output schema, the description is reasonably complete. It could slightly improve by clarifying how this differs from get_metadata or set_xmp_metadata, but the existing content is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, item_id, is fully described in the schema as 'Node ID or name of the project item', so schema description coverage is 100%. The tool description does not add any additional parameter-level meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the operation: 'Get the raw XMP metadata for a project item' and enriches it with the metadata families included (EXIF, IPTC, Dublin Core). It is distinct enough from the sibling get_metadata by emphasizing 'raw XMP', though it does not explicitly name or contrast that sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives like get_metadata or set_xmp_metadata. The description implies a read-only metadata retrieval use case but provides no explicit when-to-use or when-not-to-use context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

has_proxyHas ProxyA

Check if a project item has a proxy attached

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

'Check if' clearly signals a query-style, non-mutating operation, and the description adds the specific subject matter (proxy attachment). However, annotations provide no positive safety hints, and the description does not cover edge cases like invalid item IDs or behavior when no proxy exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, focused sentence front-loads the action and resource, with no redundant wording or restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter predicate with an output schema, the description is largely complete. The only minor gap is edge-case behavior, which is low-risk for a tool of this simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides complete coverage for item_id with a clear description, so the tool description adds no additional parameter semantics. The baseline of 3 applies because the schema carries the parameter documentation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Check'), a clear resource ('a project item'), and a precise condition ('has a proxy attached'). It is easy to distinguish from related proxy tools like detach_proxy and manage_proxies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states what the tool does but gives no guidance on when to use it, what to do before/after, or how it compares to alternatives. The intended use as a predicate before proxy operations is only implied, not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_ae_compsImport Ae CompsB

Import After Effects compositions from an .aep file

ParametersJSON Schema
NameRequiredDescriptionDefault
comp_namesNoArray of composition names to import. If omitted, imports all comps.
target_binNoTarget bin name or node ID (optional)
ae_project_pathYesFull path to the .aep file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description is essentially a purpose statement and adds little behavioral context beyond the annotations. It does not mention that the import mutates the project, what happens on name conflicts, or the effects of omitting comp_names; those behaviors would need to be inferred from the schema and tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler or repetition. It is appropriately concise, though it is minimal rather than richly structured.

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 full schema coverage, annotations, and an output schema, the basic invocation is understandable. Still, the definition lacks explicit context about import side effects and default behavior beyond what the schema declares, so it is only minimally complete for a mutating import 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 parameters like ae_project_path, comp_names, and target_bin are already documented in structured form. The description only restates the source file concept and adds no new parameter-level meaning, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

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: 'Import After Effects compositions from an .aep file.' This clearly differentiates the tool from siblings like import_media, import_fcp_xml, and import_sequences by naming the source format and content 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?

The intended use is implied by the description: use it to import After Effects compositions from a .aep file. However, it does not explicitly contrast with other import tools or state when not to use it, leaving selection partly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_edlImport EdlA

Unavailable by design: CMX 3600 EDL import opens Premiere UI that can block the CEP bridge. No import is attempted; convert the EDL to FCP7 XML and use import_fcp_xml for unattended interchange.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesAbsolute path to the CMX 3600 .edl file that was requested for import.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description fully discloses that the tool performs no import and why: the Premiere UI it would open can block the CEP bridge. This behavioral detail goes well beyond the annotations, which only carry generic hints and do not reveal the no-op nature or the blocking risk.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences carry all essential information: unavailability, the risk, the no-op behavior, and the alternative. The key verdict is front-loaded with 'Unavailable by design,' and there is no filler or redundant restating of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a deliberately unavailable tool, the description is complete: it explains what would happen if called naively, why it is not attempted, and exactly which sibling tool to use instead. The output schema exists, the parameter list is minimal, and the guidance is sufficient for an agent to make the correct routing decision.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents file_path with 100% coverage. The description adds the CMX 3600 EDL context but does not add new parameter-level semantics such as path format, validation rules, or expected file extensions. Since schema coverage is complete, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description immediately states 'Unavailable by design' and 'No import is attempted,' making the tool's actual behavior unmistakable. It names the specific resource (CMX 3600 EDL) and clearly distinguishes itself from the sibling import_fcp_xml rather than just restating the title.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains that this tool should not be used for EDL import and gives the exact alternative workflow: convert the EDL to FCP7 XML and call import_fcp_xml. This is strong when-to-use and when-not-to-use guidance, including the reason for the exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_fcp_xmlImport Fcp XmlA

Import a Final Cut Pro XML file into the current project

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull path to the FCP XML file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that the call mutates state (readOnlyHint=false) and is not idempotent. The description adds the meaningful target ('current project') but does not disclose side effects such as whether a sequence is created, bin placement behavior, or duplicate handling on repeated imports. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence conveys all essential information with zero redundancy. Every word contributes to specifying the operation, input format, and destination.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema, the description is mostly adequate, but it omits preconditions (e.g., an open/active project) and any side-effect details like import destination within the project or behavior on invalid XML/media references.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales 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 'path' parameter is already fully documented as 'Full path to the FCP XML file.' The description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Import') and names a precise resource ('Final Cut Pro XML file') plus target ('current project'), which clearly distinguishes it from sibling import tools like import_edl, import_media, import_ae_comps, and 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The format and target context imply when to use this tool, but the description never states exclusions or points to alternatives such as import_edl or import_ae_comps. An agent must infer differentiation purely from the file format name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_folderImport FolderB

Import an entire folder of media into the project

ParametersJSON Schema
NameRequiredDescriptionDefault
folder_pathYesPath to the folder to import

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only assert that the operation is not read-only, not idempotent, and not destructive. The description adds no further behavioral detail such as whether the import is recursive, whether a bin is created, how duplicates are handled, or what happens on unsupported files. This is a meaningful gap for a mutating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one efficient sentence with no filler, and the key information (action, resource, destination) is front-loaded. It is appropriately sized for a simple one-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema, the description is minimally viable for invocation, but it omits important contextual details such as supported media types, recursion behavior, destination bin, and how it differs from the many sibling import tools. This leaves the agent to infer selection criteria.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage for the single folder_path parameter with a clear description. The tool description does not add extra parameter context, but the baseline of 3 applies because the schema already documents the only parameter adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Import'), a resource ('an entire folder of media'), and a destination ('into the project'). It is more informative than the title and implies a distinction from single-file import tools, though it does not explicitly name any sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to choose this tool over siblings such as import_media, import_image_sequence, import_sequences, or import_ae_comps. The phrase 'entire folder' is the only implicit cue, and no exclusions or conditions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_image_sequenceImport Image SequenceA

Import a numbered image sequence as a single video clip.

ParametersJSON Schema
NameRequiredDescriptionDefault
target_binNoTarget bin name to import into (optional, imports to root if omitted)
first_file_pathYesFull path to the first image in the sequence (e.g., /path/to/frame_001.png)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the key behavior that the result is a single video clip, which is useful context beyond the annotations. However, with all annotations set to false and thus providing no meaningful guidance, the description does not cover side effects, sequence naming requirements, or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of eleven words, front-loaded with the verb and object, with zero wasted words. It is efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter import tool with an output schema present, the description covers the essential use case and result. It does not address edge cases like non-contiguous sequences, but the schema and output schema make the definition adequately complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 even without parameter details in the description. The description adds no extra parameter-level information, but the schema already documents both parameters clearly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Import', a specific resource 'numbered image sequence', and names the outcome 'as a single video clip'. This clearly distinguishes it from sibling import tools like import_media and import_folder.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly indicates the use case: importing a numbered image sequence as a single clip. It does not explicitly name alternatives or exclusions, but the specificity of 'numbered image sequence' provides clear context that generic import tools do not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mediaImport MediaC

Import media files into the project

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathsYesArray of file paths to import
target_binNoOptional bin name or node ID to import into. Imports to root if omitted.
suppress_uiNoSuppress import dialogs (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations exist but only convey that the operation is not read-only, not idempotent, and not destructive. The description adds no behavioral context beyond that, such as whether files are copied or linked, whether duplicates are handled, or whether dialogs are suppressed (though suppress_ui appears in the schema).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It communicates the core operation directly and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the large set of sibling import tools and the presence of an output schema, the description is too thin to be fully actionable by itself. It lacks usage context, tool-selection guidance, and behavioral detail, though the schema does cover parameter semantics well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are already well documented in the schema. The description itself does not add parameter meaning beyond the schema, which places it at the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Import media files into the project.' It is clear enough at a high level, but it does not explicitly differentiate from sibling import tools such as import_folder, import_image_sequence, import_sequences, or import_fcp_xml.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus the many sibling import tools. No conditions, alternatives, or exclusions are mentioned, so an agent must infer which import scenario this tool handles.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mogrtImport MogrtB

Import a Motion Graphics Template (.mogrt) file and add it to the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathYesFull path to the .mogrt file
track_indexNoVideo track index (default: 0)
start_secondsNoStart time in seconds (default: 0)
duration_secondsNoDuration in seconds (default: 5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is not read-only, not destructive, and not idempotent, and the description adds that the template is placed on the timeline. It does not disclose behavior around repeated imports, missing files, or whether a project item is created, but the annotation coverage lowers the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single declarative sentence with no filter: it states the action, the resource, and the timeline target directly. The description earns its place without repeating the title or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a low-complexity tool with a complete parameter schema, defaults, and an output schema, so the description plus structured data is mostly sufficient. The notable gap is the lack of any pointer to the sibling import_mogrt_from_library, but that is more a tool-selection issue than an invocation gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (mogrt_path, track_index, start_seconds, duration_seconds) are already documented with defaults and descriptions. The description adds no additional parameter-level meaning, which matches the baseline for full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (Import), a specific resource (.mogrt Motion Graphics Template), and a concrete outcome (add to the timeline). It is clear enough to distinguish from generic media or sequence import tools, though it does not explicitly contrast with the sibling import_mogrt_from_library.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to choose this tool over import_mogrt_from_library, import_media, or add_to_timeline. There are no prerequisites, exclusions, or selection criteria stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_mogrt_from_libraryImport Mogrt From LibraryB

Import a MOGRT from a named Adobe Creative Cloud Library.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_nameYesName of the MOGRT in the library
track_indexNoVideo track index (default: 0)
library_nameYesName of the Adobe Creative Cloud Library that contains the MOGRT
start_secondsNoStart time in seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so there is no contradiction. However, the description adds no behavioral context beyond the act of importing—it does not say whether the MOGRT is placed on the timeline, into a bin, duplicated, or whether it requires an active sequence. The marginal transparency contribution is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word earns its place and the core verb+resource+source pattern is immediately scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The 100% parameter documentation and presence of an output schema mean basic invocation details are covered. However, the description omits operational context such as how the track_index and start_seconds parameters relate to placing the MOGRT, and it does not distinguish itself from sibling 'import_mogrt'. Adequate but with visible gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all four parameters with descriptions (100% coverage), so the description does not need to explain them. It adds no additional parameter-level semantics, but the schema carries the burden adequately, warranting the baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Import') and resource ('MOGRT from a named Adobe Creative Cloud Library'), so an agent can tell this is a library-source import. It does not explicitly contrast with the sibling 'import_mogrt', but the 'from a named Adobe Creative Cloud Library' qualifier provides meaningful differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'import_mogrt' or other import-related tools. No mention of prerequisites, placement behavior, or conditions that would make this the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

import_sequencesImport SequencesB

Import sequences from another Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYesFull path to the source .prproj file
sequence_idsYesNon-empty array of sequence IDs to import from the source project.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the operation is expected to modify state and may not be idempotent. The description adds the key fact that this imports sequences from another Premiere Pro project file, but it doesn't clarify what happens on conflict (e.g., duplicate sequence names), whether existing sequences are overwritten, or how the response reports success/failure. With the annotations carrying the safety profile, the description provides moderate additional context but no conflict or side-effect detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence, front-loaded with the action and resource. It is concise and easy to parse. It could add a bit more context (like destination behavior) without becoming bloated, but as-is it is well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is an output schema (not shown in the provided context), which presumably describes the return value. The tool has only two required parameters, both documented. For a relatively simple import operation, the description plus schema covers the basics. However, it doesn't mention key contextual details: whether the source project must be closed while importing, how sequence IDs are obtained (e.g., via list_sequences on the source project), or what happens when a sequence with the same name already exists in the destination. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters (project_path and sequence_ids) are already documented in the schema. The description phrase 'from another Premiere Pro project file' reinforces the meaning of project_path. However, the description does not explain where the imported sequences land in the destination project (e.g., whether they are placed in the same bin or at root level), which is a semantic gap. Overall, the schema does the heavy lifting, and the description adds little beyond that baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action (import) and a resource (sequences from another Premiere Pro project file), which is clear enough. However, it doesn't distinguish itself from sibling tools like import_media, import_folder, import_fcp_xml, import_ae_comps, or import_edl—all of which involve importing some asset. The verb 'import' plus 'sequences from another project file' narrows it, but explicit differentiation from those siblings is missing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used when sequences need to be brought in from another .prproj file, and the parameters (project_path, sequence_ids) reinforce this. But there is no explicit statement about when to use this vs. alternatives like import_ae_comps or import_fcp_xml, nor any mention of prerequisites (e.g., the source project must be closed or the current project must be open). The usage context is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

insert_from_sourceInsert From SourceA

Insert the clip from the Source Monitor at the playhead position (insert edit — shifts existing clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_track_indexNoTarget audio track index (default: 0)
video_track_indexNoTarget video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that the operation is not read-only and is not flagged destructive, but the description adds the key behavioral consequence: 'shifts existing clips.' This is useful beyond structured hints, though it does not elaborate on undoability or exact timeline state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one front-loaded sentence with a parenthetical that explains the key consequence. Every word contributes; there is no filler or repetition of structural metadata.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no required arguments and an output schema, the description covers the essential operation and its main side effect. It leaves minor implied prerequisites (a loaded Source Monitor clip, an active sequence) unstated, but these are reasonably inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and each parameter has a meaningful description plus a default, so the tool description does not need to repeat them. The description adds no parameter-specific semantics, which is acceptable at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses a specific verb ('Insert'), names the source ('Source Monitor'), and the destination ('playhead position'), and distinguishes the operation from overwrite-style edits by noting it 'shifts existing clips.' This is clear and disambiguates from sibling overwrite_from_source.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context (Source Monitor, playhead position) and notes the shift behavior, so an agent can infer when an insert edit is appropriate. However, it does not explicitly state when not to use it or name alternatives such as overwrite_from_source, leaving selection partly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_cmx3600_edlInspect Cmx3600 EdlA
Read-onlyIdempotent

Parse a local CMX 3600 EDL into bounded event, reel, track, transition, and timecode facts without importing it into Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .edl file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds that parsing occurs 'without importing it into Premiere', reinforcing non-mutating behavior. It does not disclose other traits like error handling or file access specifics, but given the annotation coverage, the bar is met at a basic level.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly constructed sentence with no filler. The verb and primary subject are front-loaded, and every element (facts list, import exclusion) earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a simple single-parameter schema, an existing output schema, and annotations covering safety, the description fully conveys the tool's purpose and constraints. Nothing essential is missing for an agent to decide when to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage with the description 'Existing local .edl file', which is clear. The tool description does not add any additional parameter-specific semantics beyond what the schema already conveys, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Parse'), a precise resource ('local CMX 3600 EDL'), and enumerates the output facts (event, reel, track, transition, timecode). It explicitly says 'without importing it into Premiere', which distinguishes it from import-related tools and clarifies its non-destructive nature.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for inspection without import, but does not explicitly state when to prefer this tool over alternatives like validate_cmx3600_edl or compare_cmx3600_edls. It lacks explicit exclusions or alternative tool mentions, though the contrast with import is helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_dom_objectInspect Dom ObjectA
Read-onlyIdempotent

Inspect a Premiere Pro DOM object and list its properties, methods, and values. Useful for exploring the API and debugging.

Examples:

  • "app.project" → project properties

  • "app.project.activeSequence" → sequence properties

  • "app.project.activeSequence.videoTracks[0].clips[0]" → first clip on V1

  • "app.project.activeSequence.videoTracks[0].clips[0].components[0]" → first component of a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
max_depthNoMax depth for nested inspection (default: 1, max: 3)
object_pathYesDot-path to the DOM object to inspect (e.g., 'app.project.activeSequence')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, non-destructive behavior. The description adds the behavioral detail that it lists properties, methods, and values and provides concrete examples, but it does not add rich context such as error behavior or output size. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the purpose, and every example earns its place by clarifying realistic usage. No redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of a full input schema, output schema, and read-only annotations, the description is largely complete. It clearly explains what the tool does, how to use it, and what kind of paths are valid. It leaves minor room for more detail about invalid paths or output size, but nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds meaningful value by providing concrete dot-path examples, including array indexing, which helps an agent understand valid object_path formats beyond the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a clear verb ('Inspect') and resource ('a Premiere Pro DOM object') and says it lists properties, methods, and values. It is distinct from more specific sibling inspectors, though it does not explicitly differentiate itself from them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Says it is 'useful for exploring the API and debugging,' which gives clear context for when an agent would use it. It does not mention alternatives or exclusions, but the intended use case is reasonably explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_edit_readinessInspect Edit ReadinessA
Read-onlyIdempotent

Audit the active sequence in one read-only bridge request for empty timelines, primary-track gaps, disabled clips, muted tracks, and excessive Motion scale. Structural diagnostics only; it cannot judge story, framing, sound, or final delivery.

ParametersJSON Schema
NameRequiredDescriptionDefault
primary_video_trackNoVideo track used for gap inspection (default: 0)
gap_tolerance_secondsNoIgnore smaller gaps caused by time rounding (default: 0.001)
maximum_scale_percentNoWarn above this Motion scale percentage (default: 110)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations by emphasizing 'one read-only bridge request' and confirming the scope is structural diagnostics only, which prevents misuse for creative or delivery decisions. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two tight sentences with no filler. The first sentence front-loads the action and the specific diagnostic checks; the second sentence sets an important limitation. Every clause contributes to selection or invocation clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the three optional parameters are fully described in the schema, an output schema is present, and annotations already communicate read-only/idempotent safety, this description is complete enough for an agent to invoke the tool correctly. It covers scope, limitations, and the active-sequence target without needing to explain return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all three optional parameters. The description adds slight contextual mapping by mentioning 'primary-track gaps' and 'excessive Motion scale,' which relate to primary_video_track and maximum_scale_percent, but it does not add meaning beyond what the parameter descriptions already provide. A baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ('Audit the active sequence'), then enumerates the exact diagnostic checks: empty timelines, primary-track gaps, disabled clips, muted tracks, and excessive Motion scale. It also distinguishes itself from quality-review tools by declaring 'Structural diagnostics only' and listing what it cannot judge. This makes the tool's scope unmistakable even among the many sibling inspect/analyze tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states when this tool is appropriate (structural readiness audit) and explicitly excludes story, framing, sound, and final delivery judgments. It does not name a specific sibling tool as the alternative for those qualitative concerns, but the boundary is concrete enough that an agent can infer when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_fcpxml_interchangeInspect Fcpxml InterchangeA
Read-onlyIdempotent

Inspect a local FCPXML document's root version, sequence/clip counts, bounded asset declarations, and text-only parser warnings before deliberate Premiere import.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .fcpxml or .xml file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral detail: it performs text-only parser warnings and reports structural counts without mutating, which reinforces the read-only nature beyond the annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence delivers the subject, scope, and purpose without filler. The most important information is front-loaded, and every clause adds specific detail about what the inspection covers.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the single well-documented parameter, the presence of an output schema, and read-only annotations, the description provides sufficient context for correct invocation. It states what is inspected and why, leaving no critical operational gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one parameter, 'path', and the schema already describes it fully as an existing local .fcpxml or .xml file. Schema description coverage is 100%, so the description adds no additional parameter-level meaning beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Inspect'), a specific resource ('a local FCPXML document'), and enumerates the concrete aspects inspected: root version, sequence/clip counts, bounded asset declarations, and parser warnings. This clearly distinguishes it from neighboring tools like import_fcp_xml or export_as_fcp_xml.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'before deliberate Premiere import' gives a clear usage context as a pre-flight inspection step. It does not explicitly name alternatives or exclusions, but the context is strong enough to guide an agent away from mutation or import tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_media_streamsInspect Media StreamsA
Read-onlyIdempotent

Inspect a local media file with ffprobe and return container, stream, codec, time-base, channel, and chapter metadata. Read-only and independent of Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local media file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful context beyond these: it relies on ffprobe, works independent of Premiere, and enumerates the metadata categories returned. It stops short of caveats like ffprobe availability or failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one tight, information-dense sentence that front-loads the main action and result. Every clause earns its place: the ffprobe method, the metadata fields, read-only safety, and Premiere independence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one fully documented parameter, an output schema present, and annotations covering the read-only/idempotent safety profile, the description covers everything an agent needs to select and invoke this tool correctly. The only minor addition would be an example path, but nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with media_path described as 'Existing local media file'. The tool description adds the word 'local' and the ffprobe framing but does not meaningfully elaborate on the parameter beyond the schema. Baseline 3 applies because the schema already documents the parameter fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action — inspect a local media file via ffprobe — and lists the exact metadata returned (container, stream, codec, time-base, channel, chapter). This clearly distinguishes it from sibling inspect_* tools like inspect_cmx3600_edl or inspect_dom_object, which target different resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'local media file' and 'independent of Premiere' establish a clear context for when to use this tool versus project-state inspection tools. However, it does not explicitly name alternative tools or state when not to use it, which prevents a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_project_item_av_metadataInspect Project Item Av MetadataA
Read-onlyIdempotent

Inspect a project item's documented effective/original color space, LUT IDs, available color-space overrides, and audio channel shape.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesProject item node ID or exact name

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey read-only, idempotent, and non-destructive behavor, so the description only needs to add contextual value. It adds the specific metadata domains returned and the 'documented' qualifier, which hints that the tool reads stored metadata rather than deriving values. No behavioral contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence that front-loads the action and then tersely lists exactly what will be inspected. Every word earns its place, and there is no redundant restating of the title or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, read-only tool with a strong annotation profile and an output schema, this description is sufficient. It tells the agent what data is exposed, and the output schema can carry the return structure. No critical usage or safety information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter item_id is fully documented in the schema ('Project item node ID or exact name'), so schema coverage is 100%. The description adds no extra parameter-level meaning, so it does not need to compensate; the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect'), a specific resource ('project item'), and enumerates concrete metadata facets: effective/original color space, LUT IDs, color-space overrides, and audio channel shape. This makes it distinguishable from generic siblings like get_item_info or inspect_sequence_av_settings without needing to open their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The narrow scope implies when to use it: when a caller needs these specific AV metadata facets for a project item. However, it does not explicitly state when not to use it or name an alternative tool, so the agent must infer the boundary from sibling names and context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_project_recoveryInspect Project RecoveryA
Read-onlyIdempotent

Read-only recovery inspection: diagnose the active project path and list adjacent Premiere Auto-Save project candidates without opening, copying, or restoring anything.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds behavioral context beyond these by emphasizing 'without opening, copying, or restoring anything', which clarifies the non-invasive scope of the inspection. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is a single front-loaded sentence. It leads with the key behavioral qualifier ('Read-only recovery inspection'), then states the specific diagnostic scope and the non-destructive boundary. Every word contributes value with no repetition 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 the tool has no parameters, a read-only annotation set, and an output schema that can describe return values, the description fully covers what an agent needs: what the tool inspects, what it lists, and what it will not do. It is complete for safe and 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?

The tool has zero parameters, and the schema description coverage is 100% (vacuously). Per the baseline for zero-parameter tools, the description carries no parameter burden and still accurately conveys what the tool examines.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs ('diagnose', 'list') tied to a clear resource ('active project path' and 'adjacent Premiere Auto-Save project candidates'). It also scopes the tool as 'Read-only recovery inspection', which distinguishes it from restore/copy/backup operations and from path-related siblings like get_all_project_paths.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly conveys when this tool is appropriate: when you need recovery-oriented diagnosis without modifying state. It also explicitly says it does not open, copy, or restore anything. However, it does not name alternative sibling tools or provide explicit when-not-to-use guidance, so it falls just short of full routing clarity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_sequence_av_settingsInspect Sequence Av SettingsA
Read-onlyIdempotent

Inspect documented audio, tone-mapping, linear-compositing, bit-depth, render-quality, and display settings for the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.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, covering the safety profile. The description adds the scope of inspected settings but does not explain what 'documented' means or what kind of output to expect; with the annotations carrying the safety burden, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler or redundancy. It uses one verb and packs the meaningful scope into a compact list.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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, zero-parameter inspector with an output schema, the description is mostly sufficient: it names the active sequence and the categories inspected. It loses a point because 'documented' is vague and the lack of any contrast with get_sequence_settings/inspect_project_item_av_metadata leaves some selection ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% schema description coverage, so there is no parameter semantics burden for the description to carry. The 0-parameter baseline of 4 applies; the description's mention of specific setting categories is a mild bonus.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect') and names the resource ('the active sequence'), then enumerates six distinct setting categories (audio, tone-mapping, linear-compositing, bit-depth, render-quality, display). However, it does not differentiate this from sibling tools such as get_sequence_settings or inspect_project_item_av_metadata, 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 gives no guidance on when to choose this tool over alternatives, nor does it name exclusions or related get/set sequence tools. The only usage signal is the phrase 'for the active sequence,' which is implicit context rather than explicit routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_sequence_review_reportInspect Sequence Review ReportA
Read-onlyIdempotent

Build one read-only sequence handoff report with timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. Media paths are never returned; marker comments require an explicit opt-in. It does not prove rendered pixels, audio quality, caption correctness, rights, or editorial approval.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_markersNoMaximum marker entries to return from the start of the sequence (default: 50, maximum: 200).
sequence_idNoSequence name or ID. Uses the active sequence if omitted.
primary_video_trackNoVideo track used for gap inspection (default: 0).
include_marker_commentsNoInclude marker comments. Defaults to false because comments can contain private editorial notes.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds valuable behavioral context beyond annotations: media paths are never returned, marker comments require explicit opt-in, and the report stops short of proving certain quality or rights aspects. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tightly packed sentences: the first lists the report contents, the second states privacy and opt-in constraints, the third states what the report does not prove. No word is wasted and the most important facts are front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, annotations carry the safety profile, and the description covers contents, privacy constraints, and false-confidence limits, the tool is well specified. An agent can decide whether to call it and what to expect without hidden surprises.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters well. The description reinforces the marker-comment opt-in behavior, matching include_marker_comments, but adds little new parameter-level meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Build') and resource ('sequence handoff report') and enumerates the exact report contents: timeline structure, primary-track gaps, disabled clips, muted tracks, marker timing, and offline-source evidence. This precise enumeration distinguishes it from similar sibling tools like get_timeline_summary or get_offline_media.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear when-not-to-use boundaries by stating what the tool does not prove (rendered pixels, audio quality, caption correctness, rights, editorial approval) and what it never returns (media paths). It does not name explicit alternative tools, but the exclusions give meaningful usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_stabilizer_statusInspect Stabilizer StatusA
Read-onlyIdempotent

Read Warp Stabilizer presence, exposed status properties, and conservative analysis state for one clip or every video clip in the active sequence. Read-only: unknown or localized host values remain unknown rather than being reported as solved.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID. Omit to inspect every video clip in the active sequence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description adds a key behavioral guarantee: unknown or localized host values are left unknown rather than misreported as solved. This directly informs agent expectations and complements the readOnlyHint/idempotentHint annotations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences lead with the action and scope, then state the read-only/unknown-value caveat. 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.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one optional parameter, rich annotations, and an output schema, the description is complete: it identifies the subject, scope, output semantics, and conservative behavior. No important calling 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 coverage is 100% and the only parameter, node_id, is fully described ('Optional clip node ID. Omit to inspect every video clip in the active sequence.'). The description's 'one clip or every video clip' phrasing adds no meaning beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description names a specific verb ('Read'), resource ('Warp Stabilizer presence, exposed status properties, and conservative analysis state'), and scope ('one clip or every video clip in the active sequence'). This clearly distinguishes it from stabilizing/write operations like stabilize_clip.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage context: it can target a specific clip via node_id or all video clips when omitted, and it is explicitly read-only. It does not name alternative sibling tools or state when not to use it, so it stops short of a perfect 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

invert_selectionInvert SelectionA

Invert the current clip selection in the active sequence (selected become deselected and vice versa).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral detail beyond the annotations by explaining that selected clips become deselected and vice versa, and that this operates on the active sequence. It does not mention edge cases like an empty selection, but the core behavioral claim is transparent and consistent with the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is one focused sentence that front-loads the action and then clarifies the inversion semantics. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter mutation tool with an output schema available, the description covers what the operation does, where it applies, and the key behavior. Nothing essential is missing for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema coverage is 100%, so the description has no parameter burden. The baseline of 4 applies because there is nothing left undefined.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Invert), a specific resource (current clip selection in the active sequence), and explains the toggle semantics. This naturally differentiates it from sibling selection tools like set_clip_selection, select_all_clips, and 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use it: when the current clip selection should be flipped. It identifies the scope (active sequence), but does not explicitly mention exclusions or alternatives. Its use case is self-contained enough that the omission is minor.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

is_work_area_enabledIs Work Area EnabledA

Check whether the work area bar is enabled on the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the behavioral trait of 'checking' and the context of the active sequence, which is useful. However, the annotations declare readOnlyHint: false, so the description's 'check' wording does not fully resolve whether the call could have side effects; it also does not mention any return characteristics, though an output schema exists. This creates mild ambiguity but no direct contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, compact sentence that front-loads the verb and resource, with zero filler words. Every word contributes to the meaning, making it an efficiently structured description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and an output schema indicating the result shape, the description supplies the essential context: the operation is a check of the work area bar's enabled state on the active sequence. Nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% schema description coverage, so the baseline is 4 per the rubric. There are no parameters for the description to explain, and the description correctly focuses only on the operation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Check whether' followed by the resource state 'work area bar is enabled' and scopes it to 'the active sequence'. This clearly distinguishes it from sibling tools like get_work_area and set_work_area, which deal with the work area values rather than the enabled state of the bar.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended usage is implied: call this when you need to know whether the work area bar is enabled on the active sequence. However, there is no explicit guidance about when not to use it or mention of alternative predicates, leaving the routing entirely to inference from the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lift_selectionLift SelectionA

Lift (remove without closing gap) the content between sequence in/out points or selected clips.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clearly discloses that the operation removes timeline content while leaving the gap intact, which is the key behavioral trait beyond the annotations. The readOnlyHint=false and destructiveHint=false annotations are consistent with a non-destructive timeline edit, and the description adds useful detail about the resulting 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?

The description is a single, front-loaded sentence with no filler. The parenthetical definition of 'Lift' immediately clarifies the jargon and 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 zero-parameter, output-schema-bearing tool, the description covers the operation target and the key behavioral outcome. It does not explicitly mention requiring an active sequence or the precedence of selected clips over in/out points, but these are minor gaps for this simple 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?

There are no parameters, so the schema provides no operational meaning. The description compensates by specifying the target: content between sequence in/out points or selected clips. It could be slightly clearer about precedence when both are set, but it gives adequate context for a zero-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lift') with a clear resource ('content between sequence in/out points or selected clips') and defines the term with 'remove without closing gap.' This distinguishes it from siblings like extract_selection and ripple_delete, which involve closing gaps.

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 'without closing gap' implies the intended use case—preserving the gap while removing content—and contrasts with extract-type operations. However, it does not explicitly name alternatives or state when to choose this tool over them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_audio_effectsList Available Audio EffectsA
Read-onlyIdempotent

List all available audio effects in Premiere Pro. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description bears little additional burden. The only new context is 'Uses QE DOM,' which is an implementation detail rather than a behavioral disclosure such as return shape, ordering, or API quirks.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core purpose is front-loaded, and the additional QE DOM note is brief and separate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless, read-only, idempotent list operation with an output schema present, the description plus annotations is sufficient for an agent to invoke the tool correctly. No critical information about inputs or side effects is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the input schema is completely empty. No parameter documentation is needed, so the description does not need to compensate for any schema gaps; this meets the baseline for a no-parameter 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 clear verb and resource: 'List all available audio effects in Premiere Pro.' This differentiates it from sibling tools like list_available_effects or list_available_audio_transitions by explicitly scoping to audio effects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage is implied by the name and phrasing: use this when you need the full set of available audio effects. However, it does not explicitly contrast with list_available_effects or list_available_audio_transitions, so an agent gets no direct guidance on choosing between these similar siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_audio_transitionsList Available Audio TransitionsA
Read-onlyIdempotent

List all available audio transitions. Uses QE DOM and reports an unavailable or empty legacy catalog as an error rather than an assumed usable list.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent annotations, the description discloses meaningful behavior: it uses QE DOM and treats an unavailable or empty legacy catalog as an error rather than returning an assumed usable list. This is exactly the kind of edge-case behavior an agent needs to know.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise, front-loaded sentences with no filler. The main purpose comes first, and the important error-behavior detail is added efficiently in the second sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only listing tool with an output schema, the description covers the core purpose and the key failure mode. Nothing critical is missing for an agent to invoke and interpret this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the schema carries no semantic burden. The baseline of 4 applies, and the description appropriately focuses on behavior rather than parameter details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'List all available audio transitions.' It is clearly distinguished from sibling tools like list_available_transitions and list_available_audio_effects by specifying audio transitions as the exact target.

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 intended use is clear: call this tool when the agent needs the set of available audio transitions. It does not explicitly mention alternatives or exclusion criteria, but the resource scope is unambiguous enough for a zero-parameter listing tool.

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 EffectsB
Read-onlyIdempotent

List available video effects in Premiere Pro. Uses the full QE catalog when exposed; otherwise returns a verified, explicitly partial set of common effects resolved by exact name.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

yes

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

yes

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

yes

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?

yes

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

yes

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?

yes

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_available_transitionsList Available TransitionsA
Read-onlyIdempotent

List all available video transitions. Uses QE DOM. Returns a hint set on PPro 2026 where the transition registry list is empty even though by-name lookup works.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds valuable context beyond that: it uses QE DOM and warns that on PPro 2026 the transition registry list may be empty even though by-name lookup works. This is a meaningful behavioral quirk that could affect agent expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences carry the full definition: the first states the action, the second adds the important platform caveat. There is no filler, no repetition of schema or annotations, and the most critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only, idempotent tool with an output schema, this description is complete. It supplies the only non-obvious context an agent needs—the PPro 2026 registry quirk—and there are no prerequisites, parameters, or safety concerns left unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the input schema documents the empty parameter set completely. With no parameters to explain, the description cannot meaningfully add parameter-level semantics, so the zero-parameter baseline of 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?

The description states the exact action and resource: 'List all available video transitions.' By specifying 'video', it distinguishes itself from sibling tools like list_available_audio_transitions and list_available_effects. The extra 'Uses QE DOM' detail does not obscure the core purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance, and no alternative tool is named. The word 'video' implies it is not for audio transitions, but the description leaves the selection condition to inference. The PPro 2026 caveat is contextual, not directional.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_clip_effectsList Clip EffectsA
Read-onlyIdempotent

List all effects/components on a clip with their properties and current values. Essential for debugging effect issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to inspect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds that the tool returns 'all' effects/components with 'current values,' which is useful scoping, but it does not disclose any additional behavioral traits such as ordering, handling of clips with no effects, or whether disabled effects are included. This is adequate given the annotations but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core behavior is front-loaded in the first sentence, and the second sentence adds a practical purpose ('Essential for debugging effect issues') without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter read-only tool with strong annotations and an output schema, the description is largely sufficient. It clearly states what is returned and the intended debugging context. It could be slightly more complete by explicitly naming related sibling tools for alternative use cases, but that gap is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the node_id parameter is described as 'Node ID of the clip to inspect.' The tool description does not add meaning beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'List all effects/components on a clip with their properties and current values.' This clearly distinguishes the tool from siblings like list_available_effects, which lists available effects rather than effects on a clip, and get_effect_properties, which appears to target a specific effect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Essential for debugging effect issues' gives some usage context, but it does not explicitly state when to use this tool versus related siblings such as list_available_effects, get_effect_properties, or remove_effect. No exclusions or alternative routing are provided, so usage guidance is mostly implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_markersList MarkersA
Read-onlyIdempotent

List all markers on the active sequence or a specific clip

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idNoOptional clip node ID to list clip markers instead of sequence markers

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey readOnly, idempotent, and non-destructive behavior. The description adds the active-sequence-versus-clip scope, which is useful, but it does not disclose any other behavioral traits such as timing, ordering, or side effects. This is acceptable for a simple list operation but not rich context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the action, resource, and optional scope with no filler. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list operation with one optional parameter, a rich annotation set, and an output schema, the description is complete enough. Nothing critical for invoking it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the single optional node_id parameter is already fully documented. The description restates the active-sequence/clip distinction but adds no format, sintax, or edge-case information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific verb 'List' and resource 'markers', with the key scoping distinction between active sequence and a specific clip. It does not explicitly distinguish itself from close siblings like get_sequence_markers_by_type or get_clip_markers, so it misses the top level of differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly conveys the two supported contexts: active sequence markers or clip-specific markers via node_id. It does not mention when not to use it or point to alternative tools, but the intended usage is immediately understandable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_project_itemsList Project ItemsB
Read-onlyIdempotent

List all items in the project panel (clips, bins, sequences)

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_pathNoOptional bin path to list items from (e.g., 'Footage/Raw'). Lists root items if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already carry the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), and the description is consistent with them — no contradiction. The description adds useful scoping context (which item types are returned) and the root-items-if-omitted behavior is documented in the parameter schema, but little else is disclosed beyond the annotations and schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the verb and resource, with a compact parenthetical for scope. No filler, no redundancy with the title or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, idempotent tool with one well-documented optional parameter, rich annotations, and an output schema, the definition is nearly complete. The main missing piece is disambiguating overlap with get_bin_contents and search_project_items, but that gap is already captured in the usage_guidelines dimension rather than indicating a fundamental completeness failure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the sole parameter bin_path is well documented ('Optional bin path to list items from (e.g., 'Footage/Raw'). Lists root items if omitted.'). The tool description adds no parameter-level detail beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') with a clear resource ('all items in the project panel') and parenthetical scope clarification ('clips, bins, sequences'). This distinguishes it from list_sequences (sequences only) and find_project_item_by_name (single item lookup), though it does not explicitly contrast with the closely overlapping get_bin_contents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus siblings like get_bin_contents, search_project_items, or find_project_item_by_name. The bin_path parameter description explains filter behavior but provides no when-to-use or when-not-to-use information, leaving tool selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sequencesList SequencesA
Read-onlyIdempotent

List all sequences in the project

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the project-wide scope of the listing, but does not add behavioral details such as ordering or whether only top-level sequences are returned.

Agents need to know what a tool does to the world before 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 complete sentence with no filler. It states the action and scope immediately, which is ideal for a zero-parameter listing 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 simple read-only list operation with no parameters, no required inputs, and an output schema present, the description provides sufficient context. The annotations cover safety, and the scope 'in the project' is clearly specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema coverage is vacuously 100%. No parameter explanation is needed, and the description does not mislead about any inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'List all sequences in the project.' It clearly scopes the operation to sequences as opposed to tracks, clips, or project items, and distinguishes it from sibling tools like list_sequence_tracks and get_active_sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies appropriate use cases: when an agent needs the full set of sequences in the current project. However, it does not explicitly mention alternatives such as get_active_sequence for the current sequence or get_sequence_count for a count, so some routing burden is left to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sequence_tracksList Sequence TracksB
Read-onlyIdempotent

List all tracks (video and audio) in a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to restate safety. It adds useful scope by saying 'all tracks' and explicitly including video and audio, but it does not disclose details like track ordering or whether hidden, locked, or muted tracks are included.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tight sentence with no filler. The core verb and object are front-loaded, and every phrase adds relevant scope information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only listing operation with one optional parameter, safety annotations, and an output schema, the description is nearly complete. It would be slightly stronger if it helped disambiguate from structurally similar sequence- or track-related tools, but nothing essential is missing for invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully documents the only parameter, sequence_id, including that it can be an ID or name and defaults to the active sequence when omitted. The tool description adds no additional parameter meaning beyond what the input schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List'), a concrete resource ('tracks'), and a clear scope ('video and audio' and 'in a sequence'). It is easy to understand what the tool returns, but it does not explicitly distinguish itself from similar siblings such as get_sequence_structure or get_track_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance about when to prefer this tool over alternatives and does not mention exclusions or fallback behavior. The only implied context is that it operates on a sequence, which is already evident from the tool name and schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lock_trackLock TrackA

Lock or unlock a video track

ParametersJSON Schema
NameRequiredDescriptionDefault
lockedYesTrue to lock, false to unlock
track_indexYesVideo track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds no behavioral information beyond the annotations, which already indicate it's a non-read-only, non-destructive operation. It does not mention side effects like preventing edits or the scope of the operation (e.g., active sequence).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that gets directly to the point without extraneous detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and annotations, the description is minimally adequate but omits the implicit scope (active sequence) and any effect on the timeline. It could mention that locking prevents editing, but it doesn't.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully documents both parameters with descriptions for `locked` and `track_index`, so the description adds no additional semantic value. The baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (lock/unlock) and the resource (video track), distinguishing it from sibling tools like toggle_track_visibility or mute_track which affect different properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives like toggle_track_visibility. The usage is implied by the specific action, but no exclusions or comparisons are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_project_contextManage Project ContextA
Destructive

Capture, enrich, inspect, or clear a durable local Premiere project-context index. Capture stores bounded active-sequence/source metadata; enrich adds transcripts, shots, audio observations, or notes without re-analyzing unchanged sources. Never include secrets or unrelated customer data.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesCapture active context, enrich it, 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
project_idNoProject context ID returned by capture; optional for status to list projects

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/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 index is durable and local, that capture stores bounded metadata, that enrich avoids re-analyzing unchanged sources, and warns against secrets/customer data. The destructiveHint is concretely grounded by 'clear.' No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences: the first names the actions/resource, the second clarifies the two substantive actions, and the third is a one-line safety guard. 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 multi-action tool with full schema coverage, annotations, and an output schema, this is largely complete: it covers data scope, durability, enrichment behavior, and restrictions. It leaves prerequisites such as requiring an active sequence implicit, but the schema and output schema carry those details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need 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 every parameter and the action enum. The description adds conceptual meaning for records/enrich but no parameter-level facts 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 specific verbs (capture, enrich, inspect, clear) and a precise resource ('durable local Premiere project-context index'), and immediately distinguishes capture from enrich by their different effects. The resource/action combination separates it from sibling search_project_context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear context for when capture and enrich are appropriate ('without re-analyzing unchanged sources') and a data-hygiene constraint, but never explicitly says when to prefer this tool over sibling search_project_context or when status/clear should be chosen. Usage is implied by the action enum rather than stated as routing guidance.

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' queues a proxy encode in Adobe Media Encoder and returns immediately — AME renders in the background. Once it finishes, call this tool again with action 'attach' and proxy_path set to the output_path you passed here. There is no single-call create-and-attach in Premiere's ExtendScript API.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesAction to perform on proxies
item_idYesNode ID or name of the project item
proxy_pathNoPath to an existing proxy file (required for 'attach')
output_pathNoFull output path for the proxy to be rendered to (required for 'create')
preset_pathNoPath to a proxy ingest preset (.epr) for 'create'. If omitted, the first preset found in Premiere's IngestPresets/Proxy folder is used.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the annotations by disclosing that 'create' returns immediately, queues work in Adobe Media Encoder, renders in the background, and requires a follow-up 'attach' call. This is critical behavioral context that the annotations alone do not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded with the tool's core purpose, and every sentence contributes essential workflow information. 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 multi-action tool with asynchronous behavior and a required multi-step workflow, the description covers the key contextual gap: the create-then-attach sequence. Combined with the output schema and full parameter schema coverage, the agent has enough information to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents each parameter. The description adds meaningful cross-parameter semantics by explaining that the output_path from 'create' becomes the proxy_path for 'attach', which is not evident from the schema 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?

The description clearly identifies the tool's function: creating, attaching, or toggling proxies for a project item, using specific verbs and a concrete resource. It does not explicitly differentiate from sibling tools like has_proxy or detach_proxy, so it falls just short of full sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides valuable workflow guidance: it explains that 'create' is asynchronous, that a second 'attach' call is required, and that no single-call create-and-attach exists. However, it does not explicitly state when to prefer this tool over related proxy tools such as has_proxy or 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 FrameA

Get source media info for the frame at the current playhead on a specific track. Useful for match frame operations.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: video)
track_indexNoTrack index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, so they provide no positive safety signals; the description's 'Get' communicates a read-style action and adds playhead/track scoping. It does not mention prerequisites like an active sequence or behavior when no frame exists, but for a simple info-returning tool this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, with the core action front-loaded and no filler. The second sentence adds context for when the tool is useful, so every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has an output schema, and its parameters are fully documented, so the main missing piece is disambiguation from sibling tools and a clearer definition of what 'source media info' includes. This is adequate for a basic getter but not fully rich.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers both optional parameters with defaults and the track_type enum, giving 100% coverage. The description adds no parameter-level detail, which is fine because the schema already carries the full burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get source media info') and a specific resource ('frame at the current playhead on a specific track'), going well beyond a tautology. It does not explicitly differentiate from sibling tools like get_clip_at_playhead or capture_frame, but it is distinctive enough on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a use case with 'Useful for match frame operations' and gives the operational context of the current playhead and track. However, it does not state when to prefer this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_clipMove ClipC

Move a clip to a new position on the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to move
new_track_indexNoOptional new track index to move the clip to
new_start_secondsYesNew start time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only restates the basic operation and adds no behavioral context beyond the annotations, which already indicate this is a mutable, non-idempotent operation. It does not disclose whether moving a clip leaves a gap, overwrites neighboring clips, ripples the timeline, or requires any track/sequence conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single declarative sentence that is front-loaded and contains no filler. It is appropriately concise for a tool whose parameter details are already covered by the input schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a timeline mutation with many sibling editing tools, the description is too thin: it omits ripple/overwrite behavior, what happens to the clip's previous slot, and how this differs from move_clip_to_track or trim_clip. The output schema reduces the need to describe return values, but the side-effect context is still missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters node_id, new_start_seconds, and new_track_index are already documented. The description adds little beyond the phrase 'new position', which loosely maps to the start time and optional track parameters but does not clarify units, defaults, or behavior when new_track_index is omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('move'), a resource ('a clip'), and a scope ('on the timeline'), so an agent can understand the core operation. However, it does not explicitly differentiate from the sibling tool move_clip_to_track; 'new position' could refer to time, track, or both.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use move_clip versus related timeline editing tools such as move_clip_to_track, trim_clip, set_clip_start_time, or overwrite_clip. The description provides no contextual triggers, exclusions, or alternative routing, leaving tool selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_clip_to_trackMove Clip To TrackC

Move a clip to a different track. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
target_track_indexYesTarget track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a non-read-only mutation, but the description does not disclose relevant behaviors such as whether the clip's timeline position is preserved, whether target_track_index must exist, or what happens if the target track is locked. 'Uses QE DOM' is an implementation note, not behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with the primary action. However, 'Uses QE DOM' is arguably unnecessary and does not earn its place, preventing a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter mutation with an output schema, the description is minimally viable. However, it lacks usage guidance and behavioral caveats, and the presence of similarly named siblings like 'move_clip' means additional context would materially improve the agent's ability to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully describes both parameters with 100% coverage. The description adds no additional semantic meaning beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb and resource: 'Move a clip to a different track.' This distinguishes the operation from many siblings, though it does not explicitly differentiate it from the similarly named 'move_clip' tool. The phrase 'Uses QE DOM' adds little to purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives such as 'move_clip', 'add_to_timeline', or 'overwrite_clip'. The intended context is implied by the action, but there are no explicit exclusions or alternative routing instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_items_to_binMove Items To BinA

Move multiple project items to a target bin at once.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idsYesArray of node IDs or names of items to move
target_binYesName or node ID of the target bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly=false, destructive=false, idempotent=false), and the description correctly adds the batch-move semantic rather than contradicting them. It does not go further into behaviors like partial failures, invalid IDs, or whether source bins are emptied, but for this mutation tool the annotation burden is largely satisfied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that states the action, scope, destination, and batch nature with no filler. It is appropriately front-loaded and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter operation with a complete schema, an output schema, and annotations, the description is nearly sufficient. It could additionally point to 'move_item_to_bin' for single items, but nothing essential for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: item_ids and target_bin already specify accepted forms (IDs or names). The description adds only the batch/project-item framing, so the schema carries the parameter-documentation load.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific action ('Move'), a clear resource ('multiple project items'), and a destination ('target bin'), and the phrase 'at once' marks it as a batch operation. This distinguishes it from the sibling 'move_item_to_bin' without requiring an agent to open the schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly signals a batch usage context through 'multiple' and 'at once', which is enough to route many-item requests here. It does not explicitly name the singular alternative or state exclusions, but the context is not misleading.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_item_to_binMove Item To BinB

Move a project item to a different bin

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the item to move
target_binYesName or node ID of the target bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is not read-only, and the description merely restates the move operation. It adds no detail about side effects, whether the item is removed from its original bin, what happens if the target bin is invalid, or any failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler or repetition. It efficiently communicates the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter mutation, the schema and annotations cover the basics, and an output schema exists. However, the description omits guidance on when to choose this tool over move_items_to_bin and does not disclose operational side effects, leaving meaningful gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented with their types and meanings. The description adds little beyond confirming the item moves to a different bin, so it stays at the baseline for schema-heavy definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: 'Move a project item to a different bin.' It is clear and distinct from bin creation/deletion tools, though it does not explicitly distinguish itself from the sibling move_items_to_bin other than by singular phrasing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to prefer this tool over move_items_to_bin, nor any mention of prerequisites such as the item or target bin needing to exist. The description only states what the tool does, not when to use it versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_playhead_to_editMove Playhead To EditB

Move the playhead to the next or previous edit point.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNoDirection (default: next)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations indicate readOnlyHint=false, so this is understood to be a state-changing navigation operation, but the description adds no behavioral context beyond the basic action. It does not mention potential failures, side effects, or prerequisites such as an open sequence.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, front-loading the verb and target. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter navigation tool with an output schema, the description is usable as-is. However, it lacks any mention of sequence requirements or boundary behavior, which slightly reduces completeness for an agent operating autonomously.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the direction parameter is fully documented with an enum and default value. The description adds no additional parameter-level detail; it only restates 'next or previous,' which is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Move') and resource ('playhead... edit point'), clearly conveying the action. It does not explicitly differentiate itself from sibling tools like set_playhead_position or get_next_edit_point, but its 'next or previous edit point' phrasing is sufficient to understand its unique role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as get_next_edit_point or set_playhead_position. It also omits practical context like whether an active sequence is required or what happens when no edit point exists in the requested direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

multiple_undoMultiple UndoA

Unavailable: Premiere exposes no supported, observable undo-stack API for multiple scripted undo steps.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of undo steps (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a critical non-obvious behavioral fact: no supported API exists, so the tool cannot perform multiple scripted undo steps. This goes beyond the annotations, which only signal readOnly/idempotent/destructive hints and do not convey unavailability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the decisive 'Unavailable:' verdict, and no filler. Every word contributes to preventing misuse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that is unavailable, the description provides the essential context an agent needs: why it cannot be used. It stops short of naming the fallback of repeated single undo calls, but the sibling tool list and the clear unavailability statement make the definition sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents count as the number of undo steps with a default of 1, so the description adds no parameter-level semantics. Given 100% schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states that the operation is unavailable because Premiere has no supported undo-stack API for multiple scripted undo steps, which clarifies what the tool cannot do and distinguishes it from the single-step undo and redo siblings. It lacks an active verb describing an operation, but the explicit 'Unavailable' label is purposeful and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly tells an agent not to use this tool for multi-step undo and gives the technical reason. It does not explicitly name 'undo' as the alternative, but the sibling list supplies that and the unavailability message is sufficient exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mute_trackMute TrackB

Mute or unmute an audio track

ParametersJSON Schema
NameRequiredDescriptionDefault
mutedYesTrue to mute, false to unmute
track_indexYesAudio track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating, non-read-only operation. The description simply restates the action without adding context about side effects, state transitions, error conditions, or whether the track must be unlocked or present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, front-loaded sentence with no filler. It is appropriately sized for a simple state-changing tool and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with full schema coverage and an output schema, the description combined with structured data is sufficient to invoke correctly. It is only missing optional usage routing and contextual guidance, which was already penalized under usage guidelines.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%; both track_index (0-based number) and muted (boolean semantics) are already documented. The description adds no additional parameter-level meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Mute or unmute') and resource ('audio track'), so an agent knows exactly what the tool does. It doesn't explicitly differentiate from sibling audio/clip-level operations, but the 'audio track' scope disambiguates at the track level.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus related alternatives such as set_clip_volume, enable_disable_clip, or track-level lock/visibility commands. The description also omits any mention of prerequisites like requiring an active sequence or valid track index.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nest_clipsNest ClipsC

Unavailable on the legacy CEP backend: Premiere's documented createSubsequence API only creates a separate sequence and cannot safely replace the selected timeline clips with a nested-sequence reference.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the nested sequence

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal this is a non-read-only, non-idempotent, non-destructive operation. The description adds some useful context by disclosing that the legacy CEP backend is unsupported and that the underlying createSubsequence API cannot safely replace selected clips, but it still does not explain what the tool actually does on success.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, but it spends its only sentence on a limitation rather than defining the tool's behavior. Structurally it front-loads a caveat, which makes the description less useful for tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even with only one parameter and an output schema present, the description omits the core action entirely. An agent cannot determine what nest_clips does, what the output represents, or what side effects to expect, so the definition is not complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with the only parameter 'name' described as 'Name for the nested sequence'. The description adds no additional meaning beyond the schema, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never states the verb and resource directly; it only says the operation is 'Unavailable on the legacy CEP backend' and describes a limitation of Premiere's createSubsequence API. The agent must infer from the title that this tool is meant to nest selected clips, but the description itself is a caveat rather than a purpose statement.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is given about when to use nest_clips versus alternatives like create_subsequence or unnest_sequence. The backend limitation hints at platform context, but there is no when-to-use or when-not-to-use direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

normalize_loudness_fileNormalize Loudness FileA

Create a new loudness-normalized media derivative with FFmpeg, then remeasure that exact output using EBU R128. Never overwrites the input or an existing output file.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYesExisting local audio or video file
output_pathYesNew output path; must not already exist
target_lufsNoIntegrated loudness target from -70 through -5 LUFS (default: -16)
tolerance_luNoPost-render integrated-loudness tolerance (default: 1 LU)
max_true_peak_dbfsNoTrue-peak ceiling from -9 through 0 dBFS (default: -1.5)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveness and read-only behavior, and the description adds specific, valuable safety context: 'Never overwrites the input or an existing output file.' It also discloses the implementation approach (FFmpeg) and the post-measurement step, which go beyond the minimal annotation hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler. The key workflow and the most important safety constraint are front-loaded, and every phrase adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a file-creating tool with five parameters, the description, combined with full schema coverage and an output schema, provides enough context to call it correctly. It could mention the relationship to analyze_loudness, but the core workflow, safety guarantee, and tool boundaries are sufficiently clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description adds no new per-parameter meaning beyond reinforcing that output_path must not pre-exist, which is already stated in the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Create') and resource ('loudness-normalized media derivative'), and explains the two-step workflow with FFmpeg and EBU R128 remeasurement. This clearly distinguishes it from sibling tools like analyze_loudness that only measure without creating a new file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies its use case: when a new loudness-normalized derivative is needed. However, it does not explicitly state when to prefer this tool over alternatives such as analyze_loudness, nor does it provide any when-not-to-use guidance or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

open_in_sourceOpen In SourceA

Open a project item in the Source Monitor for preview and trimming.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to open

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations provide no meaningful safety or behavior signals (all hints are false), so the description carries the burden. It discloses only that the item will be opened in the Source Monitor, but does not mention that the Source Monitor's current item may be replaced, whether playback is affected, or any side effects beyond opening.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one efficient sentence that front-loads the action and destination while adding the purpose. Every word earns its place, with no padding or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with a full schema and output schema present, the description is nearly complete. It covers what the tool does and its purpose. The main missing element is explicit guidance on side effects in the Source Monitor, but this is a minor gap for such a straightforward operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully documents the single parameter (item_id) with a clear description including accepted forms ('Node ID or name'). The tool description does not add extra meaning, but none is needed given the schema's 100% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Open') with a clear resource ('a project item') and target location ('Source Monitor'), plus the intended purpose ('preview and trimming'). It is easily distinguished from sibling tools like close_source_monitor, play_source_monitor, and get_source_monitor_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool ('for preview and trimming') and clearly names the destination (Source Monitor), but it does not explicitly compare against alternatives or state when not to use it. This leaves the routing decision mostly to the agent's inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

open_projectOpen ProjectC

Open a Premiere Pro project file

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path to the .prproj file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal readOnlyHint=false and idempotentHint=false, indicating this mutates application state, but the description adds no context about the consequences: opening a project likely replaces the currently open one and may discard unsaved changes, and no error behavior for missing or invalid files is disclosed. There is no contradiction with the annotations, but the description fails to convey the operation's real-world impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler, appropriate for a simple one-parameter tool. The brevity is efficient, though it trades away behavioral context that is penalized in other dimensions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool, invocation is fully specified: one required parameter with complete schema coverage, annotations present, and an output schema available so return values need no explanation. The notable gap is the absence of side-effect disclosure (replacing the current project) for a non-readonly, non-idempotent operation, which makes the package adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — the single required parameter (path) is already documented as 'Full file path to the .prproj file'. The description merely reinforces that the resource is a project file without adding new semantic detail, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Open') and resource ('Premiere Pro project file'), making the core action unambiguous. It differentiates from project-lifecycle siblings like create_project, close_project, and save_project via the distinct verb, though it doesn't explicitly distinguish from import-style tools (import_media, import_fcp_xml) that are conceptually adjacent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to open versus create, import, or restore a project. With roughly 200 siblings including create_project, close_project, import_fcp_xml, and get_all_project_paths, the agent gets no help routing between adjacent tools, and there is no mention of prerequisites such as whether an existing project must be closed first.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

overwrite_clipOverwrite ClipC

Overwrite a project item onto validated timeline tracks and verify a new source placement at the requested time

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to add
track_indexNoVideo track index (0-based, default: 0)
start_secondsNoStart time in seconds on the timeline (default: 0)
audio_track_indexNoAudio track index (0-based, default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description says 'Overwrite a project item onto validated timeline tracks,' which is definitionally destructive to whatever occupies the target timeline range, yet annotations declare destructiveHint=false. This is an Annotation Contradiction: the tool's semantic behavior conflicts with the structured safety signal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single economical sentence with the core action front-loaded. However, 'validated timeline tracks' is vague and does not earn its place as clearly as the rest of the sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating, non-idempotent tool, the description omits key behavioral context: what happens to clips already on the track, whether track targeting is required, and when to use this over insert/append alternatives. The output schema helps with return values but cannot compensate for the missing side-effect disclosure and the contradictory destructive hint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents item_id, track_index, start_seconds, and audio_track_index. The description does not add parameter semantics beyond referring to the 'requested time,' so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (overwrite), a resource (project item), a target (validated timeline tracks), and a requested time, making the intended operation reasonably clear. It is distinguishable from siblings like overwrite_from_source and add_to_timeline, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this tool over related tools such as add_to_timeline, insert_from_source, overwrite_from_source, or replace_clip. No exclusions, prerequisites, or contextual conditions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

overwrite_from_sourceOverwrite From SourceB

Overwrite the clip from the Source Monitor at the playhead position (overwrite edit — replaces existing clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_track_indexNoTarget audio track index (default: 0)
video_track_indexNoTarget video track index (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states 'replaces existing clips,' which is destructive behavior, but the annotation destructiveHint is false. This is a direct contradiction between the description and the structured metadata, so the description actively misleads the agent about the safety profile of this tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the action, target, position, and effect. There is no filler, repetition, or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core mechanic but omits prerequisites such as requiring a loaded source clip or an open sequence, and it does not mention undo/recovery implications. The annotation contradiction further weakens the overall context, leaving the agent without reliable guidance for a mutating editing operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and both parameters (audio_track_index and video_track_index) already carry clear descriptions with defaults. The tool description adds no additional parameter meaning, so the baseline of 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Overwrite'), a specific resource ('the clip from the Source Monitor'), and a location ('at the playhead position'). It further clarifies the operation type ('overwrite edit') and its effect ('replaces existing clips'), making it identifiable among siblings like insert_from_source and overwrite_clip.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states what the tool does but gives no guidance on when to use it instead of related tools such as insert_from_source, overwrite_clip, or ripple_delete. There are no exclusions, prerequisites, or alternative conditions, so the agent must infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pingPingA

Health check — verify the CEP plugin is running and connected to Premiere Pro. Call this before other tools to confirm connectivity.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

All annotations are false and therefore uninformative (no readOnly, idempotency, or destructive signal), so the description carries the full behavioral burden. It adds useful context — the two conditions it verifies (plugin running, Premiere connection) and its role as a pre-flight check — but never states whether the call is non-mutating or what happens when connectivity is missing (error vs. returned flag). The tension with readOnlyHint: false (which hints at possible side effects) is left unresolved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with zero waste. The first front-loads the purpose ('Health check') then gives the concrete verification scope; the second adds the single piece of operational advice. Nothing repeats the schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameter-less health check with an output schema present, this is nearly complete: it covers what the tool does, what it verifies, and when to call it. The only gap is that the sprawling sibling list contains verify_premiere_connection, a likely alternate connectivity check, and the description doesn't help an agent choose between them.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and an empty schema, so the baseline of 4 applies and there is nothing for the description to elaborate. No parameter information is needed or missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Health check', 'verify') and names the exact resource: the CEP plugin running and connected to Premiere Pro. That makes the tool's function immediately clear. However, it never distinguishes itself from the sibling verify_premiere_connection, which sounds like the same connectivity check, so it misses the sibling-differentiation required for a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Call this before other tools to confirm connectivity' provides explicit, actionable when-to-use guidance with a clear trigger condition. It doesn't mention when not to use it or point to the plausibly overlapping sibling verify_premiere_connection as an alternative, so it falls short of the full when/when-not/alternatives spec.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_shot_matchPlan Shot MatchA

Compare two bounded local-media frame samples and return measured waveform/parade/saturation deltas plus coarse correction directions. Read-only planning only; it does not grade Premiere or claim that primaries alone can match the shots.

ParametersJSON Schema
NameRequiredDescriptionDefault
target_media_pathYesExisting local target video file
target_time_secondsNoTarget source time from 0 through 86400 seconds (default: 0)
reference_media_pathYesExisting local reference video file
reference_time_secondsNoReference source time from 0 through 86400 seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly claims 'Read-only planning only', but the annotations set readOnlyHint to false, which indicates the operation is not guaranteed to be read-only. This is a direct contradiction between the description and structured metadata. Although the description does add useful limitation context, the contradiction undermines trust and must be flagged.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: the first sentence states the operation and outputs, and the second adds essential scoping and limitation information. There is no filler, and every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists and the input schema fully documents all four parameters, the description provides enough context about purpose, outputs, and limitations. It is slightly incomplete because it does not name a sibling alternative, and the read-only contradiction creates a gap in behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented in the input schema. The description does not add parameter-level detail, but it does not need to; the baseline of 3 applies because the schema carries the parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Compare') and resource ('two bounded local-media frame samples'), and it states the concrete outputs: measured waveform/parade/saturation deltas and coarse correction directions. It also clarifies that the tool is planning-only and does not grade Premiere, which sets it apart from color-correction tools like color_correct or apply_lut.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: use this for read-only planning comparisons between two local frame samples, not for applying grades or grading in Premiere. It does not name an explicit alternative tool, but the stated limitations ('does not grade Premiere', 'does not claim primaries alone can match') give useful when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_silence_review_markersPlan Silence Review MarkersA
Read-onlyIdempotent

Create a bounded, non-mutating review plan that maps FFmpeg-detected source-media silences onto one known 1x timeline placement. It clips candidates to the supplied source in/out span, redacts the source path, and never adds markers, cuts clips, or changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesAbsolute path to the local source media file to analyse.
max_candidatesNoMaximum candidate ranges to return (default: 50, maximum: 200).
source_in_secondsNoSource-media in point used by the placement (default: 0).
noise_threshold_dbNoLevel at or below which audio counts as silence, in dBFS (default: -30).
source_out_secondsNoExclusive source-media out point used by the placement. Defaults to the detected media duration when available.
min_duration_secondsNoShortest run of silence to consider (default: 1.5).
timeline_start_secondsYesTimeline time where this 1x source placement begins.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, and the description adds meaningful behavioral detail beyond that: it clips candidates to the source in/out span, redacts the source path, and explicitly promises no markers, no clip cuts, and no Premiere changes. This goes well 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 dense sentences provide purpose, scope, behavioral guarantees, and parameter-relevant context with no wasted words. The non-mutating nature is front-loaded, making the tool's key trait immediately visible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With rich annotations, a complete input schema, and an output schema, the description covers the remaining critical context: it is a bounded review plan, it uses FFmpeg-detected silences, it maps to one 1x timeline placement, and it has no side effects. Nothing essential for correct selection and invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already fully documents all seven parameters. The description adds some semantic context by mentioning the source in/out span and the 1x placement, which helps relate parameters like source_in_seconds and timeline_start_seconds, but it does not need to compensate for missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Create') and resource ('bounded, non-mutating review plan') and precisely defines what the plan does: mapping FFmpeg-detected silences onto one timeline placement. It also clarifies scope ('one known 1x timeline placement') and explicitly differentiates itself from mutation tools by stating it never adds markers or changes Premiere.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly positions this as a planning-only, non-mutating operation, which tells an agent when to use it instead of mutating tools like add_marker or edit-application tools. It does not name sibling alternatives explicitly, but the exclusion of side effects provides strong contextual guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

play_source_monitorPlay Source MonitorA

Request playback of the clip in the Source Monitor. The legacy API does not provide a same-call position readback, so movement is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault
speedNoPlayback speed (1.0 = normal, 2.0 = 2x, -1.0 = reverse). Default: 1.0

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations by disclosing that the legacy API provides no same-call position readback and therefore movement is not reported as verified. This helps an agent interpret responses correctly. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with no wasted words: the first identifies the action and target, the second adds a relevant caveat. The important limitation is placed right after the core statement without excessive context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with an output schema available, the description covers the essential behavior and the key caveat about unverified movement. It does not mention prerequisites like needing a clip already open in the Source Monitor, but this is reasonably inferable from the tool name and sibling tools like open_in_source.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The parameter schema already documents the only parameter, speed, with examples and a default value, covering 100% of parameters. The description adds no extra parameter-level detail, so the schema carries the responsibility and a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Request playback') and resource ('the clip in the Source Monitor'), making the tool's purpose immediately clear. It naturally distinguishes the tool from related timeline playback tools such as play_timeline by naming the Source Monitor context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The target context (Source Monitor playback) is implied clearly, but there is no explicit guidance on when to select this tool over alternatives like play_timeline, or any prerequisite such as having a clip loaded in the Source Monitor. The usage is inferable rather than explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

play_timelinePlay TimelineA

Request playback of the active sequence timeline through QE. The legacy API does not provide a same-call playhead readback, so movement is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond the annotations by disclosing that the legacy API does not provide same-call playhead readback and that movement is not reported as verified. This helps set agent expectations about verification limitations. It does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. The core action is stated first, and the important verification caveat is provided second. It is concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, the description adequately covers purpose and the key behavioral caveat. No additional operational details are necessary for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%, so there is no parameter burden on the description. The baseline of 4 applies because no parameter documentation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Request playback') and a specific resource ('the active sequence timeline through QE'). It is clearly distinguishable from sibling tools like play_source_monitor and stop_playback, which target different resources or actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should be used to play the active sequence timeline, but it does not explicitly state when to prefer this over alternatives like play_source_monitor or set_playhead_position, nor does it mention any prerequisites such as having an active sequence open.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_brand_spotPreview Brand SpotA
Read-onlyIdempotent

Preview a brand-spot assembly from existing project items with an optional workspace-contained MOGRT overlay. Preview is local-only; it does not read or import the MOGRT file.

ParametersJSON Schema
NameRequiredDescriptionDefault
mogrt_pathNoOptional absolute .mogrt path, which must be inside approved_workspace_path.
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
motion_styleNoScale-motion style for product and brand spots; defaults to alternate.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
title_track_indexNoEmpty title-overlay video track index, default 1 and distinct from video_track_index.
video_track_indexNoEmpty destination video track index, default 0.
title_start_secondsNoMOGRT start time in seconds, default 0.4.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
approved_workspace_pathNoOperator-approved root containing mogrt_path; required whenever mogrt_path is supplied.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, and non-destructive behavior, and the description adds genuinely useful behavioral context beyond that: the operation is local-only and does not read or import the MOGRT file. This prevents an agent from assuming the MOGRT path is consumed or validated at preview time. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the first states the action and scope, and the second adds the critical local-only constraint. Every sentence earns its place and the most decision-relevant information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a 12-parameter input schema with 100% coverage and a safety profile already declared by annotations, the description is complete enough for correct invocation. The optional MOGRT path constraint and local-only behavior are surfaced in the description, while parameter defaults and edge conditions are fully handled 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 the schema fully documents all 12 parameters, including path requirements and defaults. The description adds only high-level context such as 'existing project items' and 'optional workspace-contained MOGRT overlay,' which maps loosely to asset_item_ids and mogrt_path but does not materially expand parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Preview a brand-spot assembly from existing project items with an optional workspace-contained MOGRT overlay.' It also distinguishes the tool from related behaviors by clarifying that preview is local-only and does not read or import the MOGRT file, separating it from import-like or apply-like siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description supplies clear usage context: preview operates on existing project items and takes an optional workspace-contained MOGRT overlay. It also states an explicit exclusion — preview is local-only and does not read/import the MOGRT file — which helps an agent avoid choosing it when an actual import or apply is needed. It does not explicitly name alternatives, but the local-only caveat provides meaningful selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_editorial_planPreview Editorial PlanA
Read-onlyIdempotent

Revalidate an exact server-issued editorial plan against the saved project-context revisions and return an opaque confirmation token. This tool is read-only and cannot apply the plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesUnchanged plan returned by create_editorial_plan from this running server instance.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral context by clarifying that the plan is only validated, not mutated, and that the returned token is opaque. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no fluff. The primary action and object appear first, and the read-only boundary 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.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with full schema coverage, an output schema, and informative annotations, the description is complete enough for an agent to select and invoke it correctly. It communicates the exactness requirement, the read-only nature, and the outcome 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% for the single required parameter, and the schema already explains 'plan' as the unchanged plan returned by create_editorial_plan. The tool description reinforces the idea of an exact server-issued plan but does not add new parameter-level 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('revalidate') and resource ('exact server-issued editorial plan'), and clearly states the tool's output ('opaque confirmation token'). It also draws a sharp boundary by saying it cannot apply the plan, which distinguishes it from apply-style siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: use this when you need to revalidate an exact plan against saved revisions before applying. It also states a when-not ('cannot apply the plan'), though it does not explicitly name an alternative tool such as apply_editorial_plan.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_edit_planPreview Edit PlanA

Validate and preview a compound timeline edit without changing Premiere. Returns a confirmation token required by apply_edit_plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesAn edit plan containing insert_clip and remove_clip operations (maximum 100)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description says the operation happens 'without changing Premiere', but the annotations declare readOnlyHint=false, implying the tool may modify state. This is a direct contradiction between the description and the structured annotation. The annotation also provides no safety coverage, and the description's claim is undermined.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two focused sentences convey the action, the non-mutating nature, the returned token, and the required next step. Every phrase earns its place, and the most important 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?

The description, combined with the schema and output schema, gives enough for an agent to understand the tool's role and invocation. However, the contradiction with readOnlyHint=false creates ambiguity about whether the operation truly has no side effects, which reduces overall 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 schema already documents the 'plan' parameter as an edit plan with insert_clip and remove_clip operations (maximum 100). The description adds only that the plan is a 'compound timeline edit', which is marginal extra meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the operation as 'Validate and preview a compound timeline edit without changing Premiere' and explicitly states the output is a confirmation token required by apply_edit_plan. This distinguishes it from the many sibling tools, especially apply_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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a specific workflow: call this before apply_edit_plan to obtain the required token. It provides clear sequencing context, though it does not explicitly state when not to use it or compare it to other preview-related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_motion_graphics_demoPreview Motion Graphics DemoA
Read-onlyIdempotent

Preview a contained motion-graphics demo assembly from existing project items. It never creates demo assets, imports files, creates a sequence, or changes Premiere; apply requires an exact confirmation token.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
video_track_indexNoEmpty destination video track index, default 0.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces this by enumerating what it does not do: 'never creates demo assets, imports files, creates a sequence, or changes Premiere.' This adds specific behavioral boundaries beyond the generic hints, plus the note that apply needs a confirmation token. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: the first fronts the core capability, the second packs all necessary exclusions and the apply-token caveat. No filler or redundant restating of the name/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 read-only preview tool with full schema documentation, an output schema, and safety annotations, the description provides enough context: it identifies the workflow stage (preview vs apply), the side-effect boundary, and the source of assets. Minor gap: it doesn't explicitly spell out what 'preview' produces (e.g., whether it plays in a monitor or writes a temporary file), but the output schema likely covers the return structure, so this is not a critical omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema itself documents all 7 parameters including defaults and notes like 'existing project-item node IDs' and 'empty destination sequence.' The description adds only a high-level constraint ('from existing project items,' 'never imports files') that is already implied by the schema, so it adds minimal semantic value beyond the structured fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Preview a contained motion-graphics demo assembly from existing project items,' giving a specific verb, resource, and scope. It distinguishes itself from sibling preview/apply tools by explicitly stating it 'never creates demo assets, imports files, creates a sequence, or changes Premiere' and mentions the apply confirmation token. This makes the tool's purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly frames this as a no-side-effect preview path and notes that 'apply requires an exact confirmation token,' signaling that a separate apply step is needed to commit changes. However, it doesn't explicitly name alternative preview siblings (e.g., preview_product_spot) or list conditions such as 'use when reviewing a motion graphics demo without mutating the project,' so guidance is clear but not exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

preview_product_spotPreview Product SpotA
Read-onlyIdempotent

Preview a product-spot assembly from existing project items. The eventual apply is limited to explicit empty tracks, revalidates item IDs, and reports host readback without claiming visual delivery verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesExact ID of an existing empty destination sequence. It must be active at apply time.
motion_styleNoScale-motion style for product and brand spots; defaults to alternate.
asset_item_idsYesExact existing project-item node IDs in playback order; external media paths are deliberately not imported by this workflow.
transition_nameNoTransition name; defaults to Cross Dissolve. Use none to disable transitions.
audio_track_indexNoEmpty destination audio track index, default 0.
video_track_indexNoEmpty destination video track index, default 0.
clip_duration_secondsNoPlanned spacing between asset starts; defaults to 5 seconds for a motion demo and 4 seconds for spots.
transition_duration_secondsNoTransition duration, default 0.75 seconds for demos and 0.5 seconds for spots.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite readOnlyHint=true and idempotentHint=true covering the safety profile, the description adds meaningful behavior: the eventual apply only targets explicit empty tracks, item IDs are revalidated, and the tool reports host readback without claiming visual delivery verification. This goes well 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 dense sentences front-load the action and resource, and the second sentence packs consequential constraints and caveats without fluff. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and annotations already establishing read-only/idempotent behavior, the description doesn't need to explain returns or side effects. It covers the core purpose, constraints, and an important caveat, though explicit sibling differentiation 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?

All 8 parameters are fully described in the schema (100% coverage), so the description doesn't need to compensate. It adds no new per-parameter semantics beyond the schema's already-detailed field descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Preview') and resource ('product-spot assembly') assembled from existing project items, and the read-only intent is clear. It does not explicitly distinguish itself from similarly named siblings such as preview_brand_spot or preview_motion_graphics_demo.

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 preview step before an eventual apply and notes that apply is limited to explicit empty tracks, but it never states when to choose this tool over alternatives or lists exclusions. 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.

preview_project_intakePreview Project IntakeA
Read-onlyIdempotent

Inspect a bounded Premiere project against an explicit facility intake template and return a path-redacted report plus a non-mutating organization proposal. It never changes Premiere or persists the template.

ParametersJSON Schema
NameRequiredDescriptionDefault
templateYesVersioned facility policy. Unknown fields and unsafe matching expressions are rejected by the intake engine.
max_itemsNoMaximum project items to inspect; defaults to 2000. Truncation returns an incomplete report.
include_pathsNoInclude observed media paths in findings. Defaults to false; hashes are returned instead.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and idempotentHint annotations, the description adds meaningful behavioral context: it never persists the template, returns path-redacted findings, and produces a non-mutating organization proposal. The description 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 tight sentences front-load the action and resource, then add key side-effect and output constraints without redundancy. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich annotations, fully documented schema, and output schema, the description is complete: it covers scope (bounded), behavior (non-mutating, no persistence), and output shape (report plus proposal). No critical calling 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% and each parameter is already documented, including template versioning/rejection, max_items truncation, and include_paths hash behavior. The description adds little parameter-specific meaning beyond 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?

The description uses a specific verb, 'Inspect', with a unique resource: a bounded Premiere project against an explicit facility intake template. It also names concrete outputs—a path-redacted report and non-mutating organization proposal—which distinguishes it from sibling preview_* tools like preview_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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use it: when a project must be checked against a facility intake template without modifying anything. It does not explicitly name alternative tools or exclusions, 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.

razor_all_tracksRazor All TracksA

Razor (split) all clips at the playhead position across all tracks, or at a specific time.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoWhich track types to razor (default: both)
time_secondsNoTime to razor at in seconds (uses playhead position if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-readonly operation. The description adds useful behavioral scope: all tracks are affected, and the playhead position is the default split point. It doesn't discuss edge cases like locked tracks, but with annotations present the bar is lower.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with the action and scope front-loaded, followed by the optional time variant. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-optional-parameter tool with an output schema and accurate annotations, the description plus schema is sufficient for correct invocation. It covers the operation, scope, and fallback timing behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have descriptions, so the schema carries the burden. The description's mention of playhead/time aligns with the schema but adds no new parameter detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Razor (split)') and resource ('all clips ... across all tracks'), making the scope unambiguous and distinguishing it from the single-clip split_clip sibling. The optional time/playhead behavior is also named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: use when you want to split every clip across all tracks at the playhead or a chosen time. It does not explicitly exclude cases such as splitting a single clip, so it stops short of full alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_sequence_captionsRead Sequence CaptionsA
Read-onlyIdempotent

Diagnose whether the active Premiere scripting host can enumerate caption tracks. It never treats an empty result as proof that the sequence has no captions, because most CEP builds expose caption creation but not caption reads.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence ID or name. Defaults to the active sequence.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds a crucial behavioral caveat beyond the annotations: 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. This explains potential false negatives and platform-specific behavior, which annotations like readOnlyHint and idempotentHint do not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary purpose is front-loaded, and the important caveat about empty results follows immediately. Every sentence adds distinct value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one optional parameter, strong annotations, and an output schema, the description covers the essential behavioral nuance and purpose. Nothing needed to invoke the tool correctly is missing; the output schema presumably handles return-value details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the single optional parameter, documenting that sequence_id is a sequence ID or name and defaults to the active sequence. The description itself adds no parameter-level detail, so the baseline of 3 applies: the schema carries the load and the description does not need to repeat it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it diagnoses whether the active Premiere scripting host can enumerate caption tracks. It goes beyond the title by clarifying that the tool is a capability diagnostic rather than a simple read operation. This distinguishes it from siblings like create_caption_track even without naming alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose implies that this tool should be used when you need to determine whether caption enumeration is supported, but it does not explicitly state when to use it versus alternatives or when not to use it. There are no exclusions or alternative tool references, so usage guidance is only implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_video_scopesRead Video ScopesB

Read waveform percentiles, RGB parade percentiles, saturation, and near-black/near-white RGB occupancy from one bounded decoded local-media frame. Read-only; this is a sampled analytical proxy, not Premiere's rendered scopes.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_pathYesExisting local video file
time_secondsNoSource-relative frame time from 0 through 86400 seconds (default: 0)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly states 'Read-only', but the annotations declare readOnlyHint=false, which directly contradicts the description. This is an annotation contradiction and forces a score of 1 regardless of the otherwise useful behavioral context about being a sampled analytical proxy.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two compact sentences with no filler. The core operation and data outputs are front-loaded, and the caveat about Premiere's rendered scopes is placed at the end without bloating the definition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the input source, frame bound, read-only claim, and analytical proxy caveat. With an output schema present and full parameter schema coverage, the description is largely complete for invoking the tool, though the annotation contradiction remains a notable gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the schema. The description does not add additional parameter-level semantics, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the resource (waveform percentiles, RGB parade percentiles, saturation, near-black/near-white RGB occupancy) and the specific source (one bounded decoded local-media frame). It does not explicitly differentiate from a sibling tool, but the data-specific wording makes the tool's purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context through 'from one bounded decoded local-media frame' and the caveat that this is a sampled analytical proxy, not Premiere's rendered scopes. However, it does not name alternatives or provide explicit when-to-use versus when-not-to-use guidance relative to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

redoRedoA

Redo the last undone action in Premiere Pro.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already provide the safety profile (readOnlyHint=false, destructiveHint=false), and the description adds the operation's scope. It does not disclose behavior when there is nothing to redo or whether the redo can be repeated, but for a zero-argument tool this is an acceptable baseline.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word contributes: the action, the target, and the application context are all 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?

For a tool with no parameters and an output schema present, the core behavior is sufficiently described. It lacks only a minor edge-case note about calling redo when no action has been undone, but nothing essential to selecting or invoking the tool is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty with 100% coverage, so there are no parameters for the description to explain. The baseline of 4 applies because the description does not need to compensate for undocumented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Redo') and a precise resource ('the last undone action') within Premiere Pro. It goes beyond a tautology and distinguishes itself from sibling tools like undo and multiple_undo, which operate in the opposite direction or on multiple steps.

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 'the last undone action' gives clear context: this tool is the counterpart to an undo and should be used when there is an undone action to reapply. It does not explicitly name undo/multiple_undo as alternatives or mention the no-undo-history case, 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.

refresh_mediaRefresh MediaA

Refresh a project item to pick up changes to the source file

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the item to refresh

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, so this is a mutating operation and the description carries some disclosure burden. It adds that the item's in-project state is re-synced from the source file, which is useful context. But it does not disclose side effects such as whether in-app modifications are lost or what happens when the source file is missing or offline. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One 13-word sentence that front-loads the action ('Refresh a project item') and then gives the purpose. Zero filler and no redundancy with the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with full schema coverage, an output schema, and safety annotations, the description covers what and why. The remaining gaps are minor: sibling-routing guidance (refresh vs. relink_media) and edge-case behavior for offline or missing source files. Nothing essential for a basic call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and item_id is already documented as 'Node ID or name of the item to refresh', so the schema carries the parameter meaning. The description adds only slight disambiguation by clarifying the target is a project item rather than a clip or sequence. Baseline 3 applies because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Uses a specific verb ('refresh') and resource ('project item') with a purpose clause ('to pick up changes to the source file') that goes beyond the title. This distinguishes it from nearby siblings: relink_media changes the source link, while check_offline_media only inspects status. An agent can tell what this tool does without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'to pick up changes to the source file' provides an explicit trigger condition: use when the external source file changed on disk. However, no alternatives are named and there is no when-not-to-use guidance, even though relink_media, check_offline_media, and set_offline occupy the same problem space. The boundary between refresh and relink is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_all_effectsRemove All EffectsA
Destructive

Remove ALL effects from a clip. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal destructiveness via destructiveHint=true. The description adds 'ALL' scope and an implementation note ('Uses QE DOM'), but doesn't detail side effects, undo behavior, or whether audio and video effects are both included. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with the key action front-loaded. The first sentence is highly efficient; the second adds a brief implementation hint. No redundancy, though 'Uses QE DOM' is of marginal value to an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive tool with full schema coverage, a descriptive schema, an output schema, and destructive annotations, the description provides the essential scope and target. Nothing critical is missing for correct selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema fully describes the only parameter, node_id, as 'Node ID of the clip', and schema coverage is 100%. The description reinforces the clip target but doesn't add meaningful parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Remove'), a precise scope ('ALL effects'), and a clear target ('from a clip'). This clearly distinguishes it from siblings like remove_effect and remove_effect_by_name, which target specific or named effects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies the usage scenario: use this when every effect on a clip should be removed at once. It doesn't explicitly name alternatives or state when not to use it, but the capitalized 'ALL' and the contrast with sibling names provide adequate guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_effectRemove EffectA
Destructive

Remove an effect from a clip by its index or name. Returns a capability error when the host cannot remove an individual component.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameNoName of the effect to remove (alternative to effect_index)
effect_indexNoIndex of the effect to remove (0-based). Use get_clip_properties to see effects list.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as destructive and not read-only, and the description's removal semantics agree, so there is no contradiction. It adds useful context beyond the annotations by disclosing that a capability error can occur when the host cannot remove an individual component, which helps agents interpret failures.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no filler: the purpose is front-loaded and the second sentence adds a specific error behavior. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The operation is simple, the output schema exists, and the failure mode is mentioned. However, the description does not resolve the schema's ambiguity around only node_id being required, nor does it disambiguate from remove_effect_by_name, leaving some call-validity questions to the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3 and the description is not required to re-explain parameters. The phrase 'by its index or name' adds mild framing but does not clarify whether exactly one of effect_name/effect_index is required, or what happens if both are 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?

The description clearly states the action ('Remove') and resource ('an effect from a clip') and identifies two selection modes, index or name. It does not, however, explicitly differentiate this tool from the sibling remove_effect_by_name, which also removes effects 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 Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to choose this tool versus remove_effect_by_name, remove_all_effects, or other sibling effect tools. The only related instruction, 'Use get_clip_properties to see effects list,' lives in a parameter description and addresses how to find an index, not when to invoke this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_effect_by_nameRemove Effect By NameA
Destructive

Remove all instances of a specific effect from a clip by display name. Returns a capability error when the host cannot remove individual components.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect to remove

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation risk is known. The description adds useful behavioral context: it removes all instances of a single named effect and may return a capability error when the host cannot perform component-level removal. However, it does not disclose other relevant behaviors such as not-found handling or undoability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The core action is front-loaded, and the capability-error caveat earns its place as a relevant behavioral constraint.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter destructive operation with a complete input schema, output schema, and annotations, the description is sufficiently complete. It covers scope, matching key, and a key failure mode. It stops short of full completeness because it does not explicitly situate itself against the closely related remove_effect and remove_all_effects tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter meanings are already fully documented. The description's reference to 'by display name' and 'from a clip' only reiterates what the schema already states for effect_name and node_id, adding no new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the action (remove), the target resource (a clip), and the scope ('all instances of a specific effect'). The phrase 'by display name' and 'all instances' distinguishes this from sibling tools like remove_effect and remove_all_effects without needing to open those schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided, and no alternative tools are named. The description does not help an agent choose between this and siblings such as remove_effect, remove_all_effects, or list_clip_effects.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_from_timelineRemove From TimelineB
Destructive

Remove a clip from the timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
rippleNoWhether to ripple delete (close the gap). Default: false
node_idYesNode ID of the clip to remove

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the destructive nature is covered. The description adds no extra behavioral context beyond the word 'remove,' such as whether the source project item is preserved or how gaps are handled. It does not contradict the annotations, so a mid-range score is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words. It is front-loaded and easy to parse. It loses a point because it essentially restates the title rather than adding any distinguishing detail, but for a simple tool this brevity is still effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with an output schema, full parameter descriptions, and annotations covering destructiveness, the basic invocation context is present. However, the lack of differentiation from sibling removal/ripple tools leaves an agent with ambiguity about when this is the right tool, making the definition less than fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for both parameters: node_id and ripple are each clearly documented. The description itself does not add parameter-level meaning, but the schema already carries that burden, so baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: 'Remove a clip from the timeline.' This is clear and unambiguous about the core operation. However, it does not differentiate from closely related siblings like ripple_delete or remove_selected_clips, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as ripple_delete, lift_selection, extract_selection, or remove_selected_clips. The only usage hint is the ripple parameter in the schema, but the description itself provides no context about when to choose this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_keyframeRemove KeyframeB
Destructive

Remove a keyframe at a specific time from an effect property

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds of the keyframe to remove
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description's 'Remove' is consistent with them (no contradiction). However, the description adds no behavioral context beyond the annotations: it does not disclose what happens if no keyframe exists at the exact time_seconds, whether matching is exact or nearest, or what the property becomes after removal (e.g., falls back to a static value).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single 12-word sentence front-loads the action verb and names the target resource with zero filler. It does not repeat schema content or annotation flags, and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The schema fully documents all parameters, an output schema exists, and annotations cover the destructive safety profile, so much of the burden is already carried. What's missing is differentiation from remove_keyframe_range and disclosure of time-matching edge cases, which are meaningful gaps for a destructive pointer-based operation, though the overall coverage is adequate for a minimally viable definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (node_id, effect_name, property_name, time_seconds) are already documented in the input schema. The description's phrase 'at a specific time' merely echoes the schema's time_seconds description and adds no new parameter-level meaning, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Remove') and a precise resource ('a keyframe at a specific time from an effect property'). The 'at a specific time' qualifier implicitly distinguishes this from the sibling remove_keyframe_range, which operates over a range, but it never names that sibling or the difference explicitly, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus its closest siblings remove_keyframe_range, add_keyframe, or set_keyframe_interpolation. There are no prerequisites, exclusions, or alternative routing instructions; usage context is only weakly implied by the operation name itself.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_keyframe_rangeRemove Keyframe RangeA
Destructive

Remove all keyframes in a time range from an effect property

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
end_secondsYesEnd of the range in seconds
property_nameYesDisplay name of the property
start_secondsYesStart of the range in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructiveHint=true, and the description adds the important scope of what is destroyed: all keyframes in the given time range, not the property or the clip. It does not discuss edge cases such as empty ranges or invalid properties, but given the annotations, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no filler. It front-loads the verb and resource, states the scope ('all keyframes in a time range'), and avoids repeating schema details or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, well-specified operation, the description plus schema and annotations cover the essential information: what is removed, which parameters are required, and that it is destructive. It stops short of being fully complete because it does not mention range boundary semantics (inclusive/exclusive) or navigate the agent toward the single-keyframe sibling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description adds no param-specific meaning beyond reinforcing that 'time range' maps to start_seconds/end_seconds and 'effect property' maps to effect_name/property_name, which the schema already conveys.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Remove') and states the exact target ('all keyframes in a time range from an effect property'). This clearly distinguishes it from the sibling remove_keyframe, which presumably targets a single keyframe, and from add_keyframe/get_keyframes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the time-range scope: call this when removing a span of keyframes rather than one. However, the description gives no explicit guidance about when not to use it or which sibling alternative (e.g., remove_keyframe) would be appropriate for a single keyframe.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_selected_clipsRemove Selected ClipsB
Destructive

Remove all currently selected clips from the timeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
rippleNoIf true, close the gap after removing (ripple delete). Default: false

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already supply destructiveHint=true and readOnlyHint=false, so the destructive nature is covered. The description adds useful context that the operation acts on the current selection and only on timeline clips, not project items, but it doesn't elaborate on ripple behavior or no-selection behavior beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence conveys the essential operation with no filler. Every word adds meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-optional-parameter destructive action with a rich schema and output schema, the description is adequately complete. It could be slightly stronger by naming the ripple-delete alternative or clarifying the no-selection behavior, but nothing essential for a successful call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the 'ripple' parameter is already documented with its boolean meaning and default. The description doesn't need to add parameter detail; it adds no extra semantics over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific verb ('Remove'), a resource ('clips'), a scope ('all currently selected'), and a location ('timeline'), so an agent understands the core operation. It doesn't name a sibling for contrast, but the selection-based scope distinguishes it from generic remove/delete tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance or alternatives are given. It implicitly assumes a current selection, but doesn't say to prefer this over remove_from_timeline, ripple_delete, lift_selection, or extract_selection, which are all present in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_binRename BinA

Rename a bin (folder) in the project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
bin_idYesName or node ID of the bin to rename
new_nameYesNew name for the bin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only and not idempotent, and the description aligns with that by describing a mutation. It adds modest context by explaining that a bin is a project-panel folder, but it does not disclose further behavioral details such as effects on references or naming constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the action and resource. Every word earns its place, with no wasted filler or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter rename operation, the description, schema, and annotations together provide adequate context. The description could have noted that it operates on the current project or distinguished it from rename_project_item more explicitly, but it is complete enough for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both bin_id and new_name already documented clearly. The description adds no additional parameter-level meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Rename'), a specific resource ('bin'), and clarifies that a bin is a folder in the project panel. This distinguishes it from sibling tools like rename_clip, rename_track, and rename_project_item without needing to inspect schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by specifying that this operates on bins/folders in the project panel. It does not explicitly list when not to use it or name alternatives, but the resource scoping is sufficient for a simple rename operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_clipRename ClipB

Rename a clip on the timeline. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
new_nameYesNew name for the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-idempotent operation, so the description does not need to restate that. 'Uses QE DOM' adds a small implementation detail about node addressing, but there is no disclosure of side effects, reversibility, or failure conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler, front-loaded with the core operation. The 'Uses QE DOM' note earns its place as a brief implementation caveat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-parameter mutation with annotations and an output schema, the bare minimum is present. However, the absence of any usage context or sibling routing means an agent may not know the intended scope boundary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema documents both parameters with 100% coverage. The description adds only the 'QE DOM' hint as a possible clue to node_id's namespace, but no extra semantic burden is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Rename') and scope ('a clip on the timeline'), which separates it from rename_bin, rename_project_item, and rename_track. It does not explicitly name a sibling or exclusion, so it stops short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to choose this over batch_rename_clips, rename_project_item, or other rename variants. The 'on the timeline' phrase implies scope but there is no explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_project_itemRename Project ItemA

Rename a project item in the project panel.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
new_nameYesNew name for the item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already state readOnlyHint=false and destructiveHint=false, so the mutation is known. The description adds only the 'project panel' context and gives no further behavioral detail, but nothing contradicts annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short declarative sentence with no filler; it is concise and front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-required-param rename operation with full schema coverage and an output schema, the description is nearly sufficient. The main gap is lack of sibling differentiation and behavioral caveats, which a low-complexity tool can partially absorb.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers both parameters with descriptions (100% coverage). The description introduces no additional parameter-level detail beyond 'project item' in the panel.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Rename') and resource ('project item in the project panel'), making the action clear. However, it does not explicitly distinguish itself from sibling rename tools like rename_bin, rename_clip, or rename_track.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides no explicit when-to-use guidance or exclusions. The phrase 'project panel' weakly implies the target type, but an agent must infer from the name alone that this differs from the bin/clip/track rename siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

rename_trackRename TrackA

Rename a video or audio track.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesNew track name
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the mutating but non-destructive nature is covered. The description adds no additional behavioral context about side effects, persistence, or error conditions, but it does not contradict the annotations either.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the verb and resource. There is no redundant elaboration or filler, making it appropriately sized for a simple rename operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple three-parameter tool with complete schema coverage, annotations, and an output schema, the description is mostly sufficient. It could note that the target sequence must be active or that the track must already exist, but those are minor gaps given the simplicity of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all three parameters already documented: name, track_type enum, and 0-based track_index. The description adds no new parameter-level meaning beyond mirroring the track_type enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Rename') and resource ('video or audio track'), and the video/audio qualifier directly matches the track_type enum. This clearly differentiates the tool from siblings like rename_clip, rename_bin, and rename_project_item.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'video or audio track' implies the intended use case and helps distinguish this from clip/bin renaming tools. However, it does not explicitly state prerequisites, such as needing an active sequence or resolving track_index via list_sequence_tracks, or mention when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

replace_clipReplace ClipA

Replace a clip on the timeline with a different project item, preserving position and duration

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to replace
new_item_idYesNode ID or name of the new project item to replace with

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not idempotent, and not flagged destructive. The description adds meaningful behavioral context by stating that position and duration are preserved during the replacement, which is the most important observable behavior beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the operation, the target, the replacement source, and the primary preservation guarantee. Every word earns its place, and there is no redundant filler or restating of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter mutation tool with full schema descriptions, an output schema, and annotations covering safety and idempotency, the description is complete. The operation, the object, and the key invariant are all specified; nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the input schema. The description reinforces the purpose of replacing with a different project item but adds no new parameter-level details or syntax guidance beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Replace'), identifies the resource ('clip on the timeline'), and specifies the new object ('different project item'). It also adds a key behavioral detail — preserving position and duration — which distinguishes it from related operations like replace_clip_media or overwrite_clip.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool: whenever a timeline clip should be swapped with a different project item while keeping its position and duration. However, it does not explicitly mention alternatives like replace_clip_media or overwrite_clip, nor any when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

replace_clip_mediaReplace Clip MediaA

Replace the source media of a clip on the timeline with a different project item, keeping the clip's position and duration.

ParametersJSON Schema
NameRequiredDescriptionDefault
new_item_idYesNode ID or name of the new source project item
clip_node_idYesNode ID of the timeline clip to replace media on

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already flag this as mutating (readOnlyHint false) and not destructive (destructiveHint false). The description adds useful context by stating the source media is changed while position and duration are preserved, and it does not contradict the annotations. It does not detail preservation of effects, transitions, or keyframes, but the core behavioral profile is clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence states the action, object, and invariant 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.

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 a full output schema and annotations covering safety, the description provides enough to call the tool correctly. It could be more complete by mentioning how effects or clip properties beyond position and duration are treated, but this is not essential for basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters are fully described in the schema with clear explanations: clip_node_id identifies the clip, and new_item_id identifies the replacement project item. The description adds no parameter-specific detail beyond the schema, which is acceptable given 100% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete operation—replace the source media of a timeline clip with a different project item—and adds the key preservation detail that position and duration are kept. This clearly separates it from broader replace_clip operations.

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 behavior implies use when a user wants to swap media without disturbing the clip's timeline placement, but it never names replace_clip or says when not to use this tool. With a close sibling present, the lack of explicit routing is a missed opportunity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reverse_clipReverse ClipA

Unavailable: Premiere does not expose a supported scripting API for reversing a timeline clip's playback direction.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoTrue to reverse, false for normal (default: true)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses a key behavioral trait not carried by the annotations: even if invoked, the operation is unsupported and cannot succeed. This adds meaningful context beyond readOnlyHint/destructiveHint, although it does not specify the exact error or fallback behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the critical word 'Unavailable', and contains no filler or repetition. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an unsupported operation, the most important context—that no supported scripting API exists—is present. The description lacks a suggested workaround or alternative, but given the schema already documents the parameters and the primary message is unavailability, it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides full descriptions for both node_id and reverse, so the description does not need to explain parameter semantics. The phrase 'reversing a timeline clip's playback direction' loosely maps to the reverse parameter but adds no new parameter-level detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the intended operation—reversing a timeline clip's playback direction—and immediately marks it as unavailable. It is specific enough to distinguish this operation from other clip-editing tools, though it reads as an unavailability notice rather than a callable behavior description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The statement 'Unavailable: Premiere does not expose a supported scripting API' implicitly tells an agent not to treat this as a normal callable tool. However, it does not explicitly name an alternative or explain what to do when a user requests this operation, so the guidance is mostly implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ripple_deleteRipple DeleteA
Destructive

Ripple delete a clip (removes clip and closes the gap). Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to ripple delete

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare destructiveHint=true, so the destructive nature is known. The description adds value beyond that by specifying exactly what gets destroyed ('removes clip'), what secondary effect occurs ('closes the gap'), and that it operates through QE DOM. It does not discuss reversibility or prerequisites like an active sequence, but those are minor given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler. The action is front-loaded, the parenthetical explains the ripple behavior clearly, and the QE DOM note earns its place by clarifying the parameter context. Nothing extraneous is included.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive tool with a documented input schema, an output schema, and destructiveHint=true, the description is largely complete. It states the action, the target (clip), the ripple behavior, and the DOM context. The main missing piece is explicit guidance on when to choose this over sibling edit operations, but that is already captured under usage guidelines.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single node_id parameter, so the schema already documents the parameter. The description adds meaningful context by saying 'Uses QE DOM,' indicating that node_id is a QE DOM node identifier rather than a generic project or timeline identifier. This helps the agent understand what kind of ID to supply.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Ripple delete a clip') and clarifies the exact behavior with 'removes clip and closes the gap.' This distinguishes it from similar edit operations such as simple removal or lift/extract, which do not ripple. The 'Uses QE DOM' note adds a concrete implementation detail without obscuring the purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'closes the gap' implies the intended use: delete a clip while preserving timeline continuity. However, the description does not name alternatives like remove_from_timeline, lift_selection, or extract_selection, nor does it state when not to use this tool. Usage guidance is present only by implication.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

roll_editRoll EditB

Perform a verified roll edit at the outgoing cut of a clip using the public timeline DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = roll right, negative = roll left)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already communicate that this is a mutating, non-destructive operation. The description adds that it is 'verified' and targets the outgoing cut via the public timeline DOM, but it does not explain what changes a roll edit makes to adjacent clips or what 'verified' means in terms of failure behavior. 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. It could be slightly clearer by replacing 'verified' with a concrete behavioral statement, but it is compact and to the point.

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 and annotations cover parameters and the read/destructive profile, and an output schema exists. However, the description omits the typical roll-edit semantics (e.g., that it shifts the edit point between two clips without changing total sequence duration) and does not route the agent away from related tools, so the context is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: node_id and offset_seconds already carry clear descriptions, including the sign convention for offset_seconds. The tool description adds no parameter-level information, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('perform a verified roll edit'), identifies the target ('outgoing cut of a clip'), and notes the mechanism ('public timeline DOM'). This is enough to distinguish it from sibling edit operations such as trim_clip, ripple_delete, slide_edit, and slip_edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use roll_edit instead of the many related timeline-editing siblings, and no when-not-to-use conditions. The phrase 'at the outgoing cut' hints at the applicable context, but the agent is left to infer the appropriate selection from tool naming alone.

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate the operation is not read-only and not destructive, which aligns with the description. The description does not add detail about overwriting the existing file, prompting for a save location if untitled, or any other side effects, but given the simplicity of the operation and existing annotations, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no unnecessary words. It is appropriately sized for a zero-parameter tool and is front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, the description 'Save the current Premiere Pro project' is functionally complete. An agent can invoke it correctly without additional context, and the output schema presumably describes the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description does not need to explain parameter semantics. A baseline of 4 is appropriate because there is no parameter schema 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 uses a specific verb and resource: 'Save the current Premiere Pro project.' It is clear and the word 'current' helps distinguish it from sibling tools like save_project_as, but it does not explicitly differentiate itself from similar save-related tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus save_project_as, open_project, or close_project. There is also no mention of situations like unsaved projects or whether this tool should be used before other operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_project_asSave Project AsB

Save the current project to a new location

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull file path to save the project to (e.g., '/Users/me/projects/MyProject.prproj')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide only negative hints (not read-only, not destructive, not idempotent). The description adds minimal behavioral context: it mentions 'current project' and 'new location' but does not disclose what happens to the active project after saving (e.g., whether it switches to the new path), whether an existing file at the destination is overwritten, or how this differs from a plain save. The safety profile is mostly unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant words. It states verb, object, and target efficiently, earning its place without filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema, the description covers the basic operation. However, key context is missing: there is no disambiguation from similar sibling tools, and the behavioral side effects (whether the current project is re-pointed to the new location, overwrite semantics) are not addressed. Given the tool's simplicity, a slightly richer description would make it complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single 'path' parameter is already well-documented with an example. The description's phrase 'new location' adds no meaningful semantic detail beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource ('Save the current project') and specifies the target ('to a new location'). This distinguishes it from save_project, though it does not explicitly name the alternative. Clear enough for an agent to understand the core operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool instead of save_project or export_as_project. The description does not mention any conditions, exclusions, or alternative tools, leaving the agent to infer the appropriate context from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scene_edit_detectionScene Edit DetectionB

Perform scene edit detection on the selected clips in the active sequence. Defaults to creating markers rather than cutting.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoCreate markers (default) or apply cuts to the selected clips
sensitivityNoScene-detection sensitivity (default: MediumSensitivity)
apply_cuts_to_linked_audioNoWhen applying cuts, also cut linked audio (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful default behavior: 'Defaults to creating markers rather than cutting.' This goes slightly beyond the annotations, which only indicate readOnlyHint=false and destructiveHint=false. However, it does not disclose what happens when ApplyCuts is used, such as clip modification or linked-audio behavior, beyond what the schema already states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core action and then clarifies the default behavior. Every word earns its place, and there is no redundancy with the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high schema coverage, optional parameters with defaults, and the presence of an output schema, the description is mostly adequate. The main gap is the lack of differentiation from the similarly named sibling tools such as 'detect_scene_edits' and 'detect_source_scene_changes'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already well documented. The description restates the default action in plain language but does not add new semantic detail beyond the schema. This matches the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Perform scene edit detection on the selected clips in the active sequence.' It is clear about scope and even notes the default behavior. However, it does not distinguish this tool from the similar sibling 'detect_scene_edits' or 'detect_source_scene_changes', so differentiation is incomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool operates on selected clips in the active sequence, but gives no explicit guidance about when to choose this tool over alternatives. No exclusions, prerequisites, or sibling comparisons are mentioned, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_project_contextSearch Project ContextA
Read-onlyIdempotent

Search a durable Premiere project-context index for relevant sources, timeline placements, transcript passages, shots, audio observations, and notes. Returns bounded evidence with stable IDs and revisions; it never changes Premiere.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindsNoOptional context-kind filter
queryYesNatural-language or keyword query matched against indexed evidence
project_idYesProject context ID returned by manage_project_context capture
max_resultsNoMaximum 50; default 12
sequence_idNoOptional exact sequence ID filter

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful non-obvious behavior: results are bounded, evidence has stable IDs and revisions, and the tool 'never changes Premiere.' This reinforces the non-destructive contract 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 no filler. The core action and resource are front-loaded, the evidence behavior is stated compactly, and the safety guarantee is included without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 search tool with rich annotations, full schema coverage, and an output schema, the description is nearly sufficient. The main gap is the absence of explicit guidance about when to use it versus related search/inspection tools, but that is a minor omission given the clarity of its purpose and safety profile.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All five parameters are documented in the schema, so the 100% coverage baseline applies. The description adds helpful context about what the indexed evidence contains, but it does not provide parameter-specific format, syntax, or filtering guidance beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Search'), a distinct resource ('a durable Premiere project-context index'), and enumerates the kinds of content it searches (sources, timeline placements, transcript passages, shots, audio observations, notes). It also states the outcome ('Returns bounded evidence with stable IDs and revisions'), which clearly separates it from siblings like 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: an agent should use this when it needs project-context evidence. However, the description does not explicitly state when to prefer this over search_project_items or other inspection/search siblings, and it names 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.

search_project_itemsSearch Project ItemsA
Read-onlyIdempotent

Search for project items by name, media file extension, offline status, or color label. Returns matching items with full details.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSearch query (matched against item name, case-insensitive substring match)
extensionNoFilter by file extension (e.g., 'mp4', 'wav', 'png'). Without dot.
item_typeNoFilter by item type (default: all)
color_labelNoFilter by color label index (0-15)
max_resultsNoMaximum results to return (default: 100)
offline_onlyNoIf true, only return offline/missing items

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds that matching items are returned 'with full details,' but does not disclose behavior like result ordering, pagination, or how multiple filters combine. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with no filler. The main action and filter criteria are front-loaded, and the return behavior is stated in a single clause.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full input schema, an output schema, and strong read-only/idempotent annotations, the description is nearly complete. The only meaningful gap is that filter combination semantics and differentiation from similarly named search/find siblings are left implicit, but the core invocation details are all covered elsewhere.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and all six parameters have inline descriptions, so the baseline is 3. The description loosely echoes query, extension, offline_only, and color_label, but adds no extra meaning for item_type or max_results beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Search for project items') and lists the concrete filter dimensions: name, media file extension, offline status, and color label. This makes the tool's purpose clear and distinguishes it from siblings like list_project_items, find_project_item_by_name, and get_offline_media.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: use this tool when you need to search project items by one or more of the listed criteria. However, it never names alternatives or exclusion conditions, so an agent gets no explicit guidance on when to prefer this over find_project_item_by_name or list_project_items.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_all_clipsSelect All ClipsA

Select all clips in the active sequence, or all clips on a specific track.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: both)
track_indexNoSpecific track index (optional, selects all tracks if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate non-read-only and non-destructive behavior, so the description does not need to re-state safety. It adds useful scoping context but does not disclose whether the selection replaces or extends the current selection, which is a meaningful behavioral gap for a selection tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with no filler. The primary action and both scoping modes are front-loaded, making the tool easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity selection tool, the description plus schema and annotations cover the essentials: what is selected, where it happens, and the optional track scoping. The only notable omission is replace-versus-extend selection behavior, which is minor here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents track_type and track_index well. The description reinforces the all-clips versus specific-track distinction but adds no new parameter-level detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Select all clips in the active sequence, or all clips on a specific track.' This clearly distinguishes the tool from selection-related siblings like select_clips_by_name, select_clips_in_range, and set_clip_selection by emphasizing blanket selection scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clearly describes the two invocation modes: all clips in the active sequence, or all clips on a specific track. It does not explicitly name alternatives or when-not-to-use scenarios, but the scope is obvious enough to guide an agent away from more targeted selection tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_by_colorSelect Clips By ColorB

Select all clips whose source project item has a specific color label.

ParametersJSON Schema
NameRequiredDescriptionDefault
color_indexYesLabel color index (0=Violet, 1=Iris, 2=Caribbean, 3=Lavender, 4=Cerulean, 5=Forest, 6=Rose, 7=Mango, 8=Purple, 9=Blue, 10=Teal, 11=Magenta, 12=Tan, 13=Green, 14=Brown, 15=Yellow)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that selection mutates UI state (readOnlyHint=false) without destroying data (destructiveHint=false), and the description does not contradict this. The description adds the useful nuance that the color is read from the source project item rather than the clip instance, but it does not disclose whether the selection replaces or augments the current selection — a meaningful behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence that front-loads the verb and packs the scope, criterion, and source-object nuance into one clause. No filler, redundancy, or wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with a fully documented schema and an output schema present, the description is mostly sufficient. The clear remaining gap is the replace-vs-extend selection behavior, and the total absence of orientation among the dense sibling selection-tool set makes it adequate but incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameter documentation, with the color_index description enumerating all 16 color values. The tool description's 'specific color label' aligns with the parameter but adds no detail beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Select'), a clear object ('all clips'), and a precise filter criterion ('whose source project item has a specific color label'). The color-label criterion implicitly distinguishes it from siblings like select_clips_by_name and select_all_clips, though it does not name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus the many sibling selection tools (select_clips_by_name, select_clips_in_range, select_disabled_clips, set_clip_selection, etc.). No exclusions, prerequisites, or alternative conditions are mentioned, leaving the agent to guess which selection tool fits.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_by_nameSelect Clips By NameA

Select all clips in the active sequence that match a name (substring match). Optionally filter by track type and index.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesClip name to search for (case-insensitive substring match)
track_typeNoTrack type to search (default: both)
track_indexNoSpecific track index to search (optional, searches all if omitted)
add_to_selectionNoIf true, add to existing selection instead of replacing it (default: false)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, not idempotent, and not destructive. The description adds useful scoping context (active sequence, substring matching) but does not explicitly disclose that the selection replaces the current selection by default, which is only visible in the add_to_selection parameter description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one compact sentence that front-loads the main behavior and then mentions optional filtering. Every word adds value and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a straightforward selection tool with fully documented parameters and an output schema, the description provides the essential scope (active sequence, substring match, optional filters). Nothing critical is missing for an agent to understand how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters are already documented with meaningful descriptions. The tool description summarizes but does not add significant semantic detail beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Select all clips in the active sequence that match a name.' It also specifies substring matching and optional filters, clearly distinguishing it from sibling selection tools like select_clips_by_color or select_clips_in_range.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool: when you need to select clips by name in the active sequence. However, it does not explicitly mention alternative selection tools or provide when-not-to-use guidance, leaving the comparison to siblings unstated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_clips_in_rangeSelect Clips In RangeA

Select all clips that overlap a time range in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: both)
end_secondsYesEnd of selection range in seconds
track_indexNoSpecific track index (optional)
start_secondsYesStart of selection range in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the description only needs to add context beyond those. It clarifies that selection is scoped to the active sequence and uses overlap semantics, but it does not state whether the current selection is replaced or extended, which is an important behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that states the action, object, and condition without waste. Every word contributes to understanding what the tool does.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and four adequately documented parameters, the description is sufficient for basic invocation. However, it omits usage guidance and does not explain how selection interacts with the existing selection state, nor does it mention the active-sequence prerequisite explicitly beyond the phrase 'active sequence.'

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds the useful 'overlap' concept, which clarifies that clips need not have their in-points inside the range, but it does not add syntax, inclusivity details, or interaction between track_type/track_index beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Select') with a clear resource ('clips') and a precise criterion ('overlap a time range in the active sequence'). This distinguishes it from sibling selection tools like select_clips_by_name or select_all_clips by the time-range condition, and it is not a tautology of the title.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context (active sequence, time range) but provides no guidance on when to use this tool versus alternatives such as select_clips_by_name, select_all_clips, or get_selected_clips. It also does not mention exclusions or prerequisites like requiring an active sequence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_disabled_clipsSelect Disabled ClipsA

Select all disabled clips in the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so they convey only that this is not a read-only or destructive operation. The description accurately states the core action but does not disclose side effects, such as whether the current selection is replaced or whether the operation is undoable. No contradiction exists between description and annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single eight-word sentence that front-loads the verb and resource with zero waste. Every word earns its place and no additional structuring is needed for such a simple 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 zero-parameter tool with an output schema, the description covers everything needed to invoke it: what it acts on and where. The only omission is behavioral context about how it interacts with the existing selection, which is a minor gap for a simple selection command.

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 100% schema coverage is trivially fulfilled and there is nothing the description must explain about arguments. The baseline of 4 for parameterless tools applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('select all'), a specific resource ('disabled clips'), and a clear scope ('in the active sequence'). The 'disabled' qualifier plus the active-sequence scope distinguishes it from siblings like select_all_clips, select_clips_by_name, and select_clips_in_range, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as select_all_clips or enable_disable_clip. There is no mention of prerequisites (e.g., an open sequence) or conditions that would make this the right choice among the many selection siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

select_itemSelect ItemB

Select a project item in the Project panel

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item to select

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include readOnlyHint=false, idempotentHint=false, and destructiveHint=false, but the description does not add behavioral context beyond these. It does not state that selecting an item replaces the current selection, how invalid item_id values are handled, or any side effects of the selection action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler, front-loading the action and object. It is appropriately sized for a simple one-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity selection tool with one fully documented parameter and an output schema, the description conveys the essential purpose. The main missing piece is usage guidance or clarification of selection behavior, but the tool remains understandable enough to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the item_id property is documented as 'Node ID or name of the project item to select.' The description itself adds no parameter-level detail, but with full schema coverage the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Select a project item in the Project panel.' It clearly identifies both the object type (project item) and the location (Project panel), making it distinguishable from sibling tools like select_clips_by_name or select_all_clips that operate on timeline clips.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as find_project_item_by_name, list_project_items, or set_clip_selection. There is no mention of prerequisites, exclusions, or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_active_sequenceSet Active SequenceC

Set the active sequence by name or ID

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idYesSequence name or ID to make active

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered, but the description adds no behavioral context beyond that. It does not explain what 'active' affects (e.g., downstream sequence operations), whether the change is undoable, or how name vs ID resolution behaves. No contradiction with annotations, but the description carries almost no behavioral weight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single eight-word sentence with zero filler and the core action front-loaded. It is efficient, though slightly under-specified; it could have earned a 5 by pairing the concision with a usage note.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one required parameter) and has an output schema, so the description need not explain return values. However, it lacks any context about the operational impact of setting the active sequence or how it interacts with get_active_sequence, making it merely minimally adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the schema already documents sequence_id as 'Sequence name or ID to make active'. The description's 'by name or ID' merely echoes the schema, adding no new meaning. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set'), names the resource ('the active sequence'), and states the lookup mechanism ('by name or ID'). It is distinguishable from sibling tools like get_active_sequence (read vs write) and set_sequence_settings (active state vs settings). It is clear but does not explicitly differentiate itself from closely related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives. An agent gets no help understanding whether this must precede timeline operations, or how it relates to get_active_sequence or list_sequences, despite those siblings being present in the tool list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_all_tracks_targetedSet All Tracks TargetedA

Set all tracks targeted or untargeted. Useful before insert/overwrite edits.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetedYesWhether to target (true) or untarget (false) all tracks
track_typeNoWhich track type(s) to affect (default: both)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clarifies that this is a mutating operation setting a boolean state across tracks, and annotations confirm it is not read-only or destructive. It adds context about use before edits but does not disclose details like how the 'targeted' state affects subsequent operations beyond the stated insert/overwrite workflow.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, no filler, with the core action first and the practical use case second. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter with fully documented parameters and an output schema, the description is nearly complete. It could optionally explain the role of 'targeted' in insert/overwrite edits more deeply, but an agent can correctly invoke the tool with the current information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both 'targeted' and 'track_type' documented in the input schema. The description adds no parameter-specific meaning beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('set') and resource ('all tracks') with the exact state change ('targeted or untargeted'), making the operation unambiguous. It also distinguishes itself from single-track targeting tools like set_target_track by emphasizing 'all tracks.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says this is 'useful before insert/overwrite edits,' giving a clear workflow context. It does not name alternatives or explicitly say when not to use it, but the intended timing is evident.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_anti_alias_qualitySet Anti Alias QualityA

Set the anti-alias quality on a clip's Motion effect (useful for scaled/rotated clips).

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesEnable (true) or disable (false) anti-aliasing
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a write operation (readOnlyHint=false) and not destructive. The description adds context that the change applies to the Motion effect, but it does not disclose side effects, prerequisites, or behavior when the clip lacks a Motion effect. Given the annotations, this is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that wastes no words. It states the action, the target effect, and the intended use case, with no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only two well-documented parameters, annotations covering mutation/destructiveness, and an output schema present, the description covers the essential context for correct invocation. The use case guidance further reduces ambiguity, so nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters comprehensively (node_id and enabled) with 100% coverage. The description does not add parameter-specific meaning beyond the schema, so it meets the baseline but does not improve on it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Set'), a precise target ('anti-alias quality on a clip's Motion effect'), and a practical use case ('scaled/rotated clips'). This clearly differentiates it from other effect-modification tools like set_frame_blend or set_blend_mode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical '(useful for scaled/rotated clips)' gives a clear context for when this tool is appropriate. It does not explicitly name alternatives or exclusions, but the context is specific enough for an agent to recognize its intended scenario.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_blend_modeSet Blend ModeA

Set the blend mode on a video clip. Uses the Opacity effect's Blend Mode property.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the video clip
blend_modeYesBlend mode name

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already show this is a non-read-only, non-idempotent setter; the description adds the useful behavioral detail that it mutates the Opacity effect's Blend Mode property. This tells the agent the underlying mechanism, though it does not disclose edge cases such as missing Opacity effects or whether a new effect is auto-created.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, first states the action and target, second adds implementation detail. No filler or repetition of schema fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-required-parameter setter with a full enum and an output schema, the description provides all necessary context: what is being changed, on what, and via which property. Nothing critical is missing for the agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and both node_id and blend_mode are described in the schema with type and enum values. The description does not add further parameter-level meaning beyond restating that the target is a video clip and that blend mode is being set.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and target: 'Set the blend mode on a video clip.' It further pins down the implementation to the 'Opacity effect's Blend Mode property,' which differentiates it from siblings like set_clip_opacity or generic set_effect_property.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes it clear this is the tool for changing a clip's blend mode, and the Opacity-effect detail implies an alternative path (directly manipulating effect properties), but it does not explicitly state when to choose this over set_effect_property or set_clip_opacity. No exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_anchor_pointSet Clip Anchor PointA

Set the Anchor Point property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesAnchor point X in pixels
yYesAnchor point Y in pixels
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a non-read-only, non-idempotent, non-destructive mutation, and the description does not contradict them. It adds a little context by identifying the Motion effect and Anchor Point as the exact target, but it does not disclose side effects such as overwriting the existing anchor point or how it interacts with position/scale/rotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single clear sentence with no filler or repetition of the schema. The most important information, the target property and effect, is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple three-parameter setter with a full schema and output schema: the agent knows what property is changed and what values to supply. However, the lack of usage guidance and any mention of coordinate-space or prerequisite behavior leaves minor but real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with x, y, and node_id all described in the input schema. The description adds no new parameter-level detail, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific operation ('Set the Anchor Point property') on a concrete resource ('a video clip's Motion effect'), which clearly distinguishes it from sibling transform tools like set_clip_position, set_clip_scale, and set_clip_rotation without requiring schema inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, and no mention of prerequisites such as the clip having a Motion effect. The description leaves all routing decisions to inference from the tool name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_opacitySet Clip OpacityB

Set the opacity of a video clip (0-100).

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
opacityYesOpacity value (0 = transparent, 100 = fully opaque)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a mutating, non-idempotent operation, but the description adds no behavioral detail beyond the schema's 0-100 range. There is no mention of side effects, prerequisites, or how the opacity change affects the clip beyond the obvious value assignment.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler or redundant clauses. It front-loads the action and resource immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple two-parameter setter with full schema coverage and an output schema available. The description is adequate for invoking the tool, though it lacks usage context such as when to prefer this over set_clip_properties.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already documented. The description only restates the opacity range, which adds little beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('set'), the resource ('video clip'), and the specific property ('opacity') including the valid range. This is specific enough to distinguish it from sibling tools like set_clip_properties or get_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus related tools such as set_clip_properties, set_blend_mode, or set_clip_scale. The intended context is only implied by the verb and resource.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_panSet Clip PanA

Set and read back the pan (left/right balance) on an audio clip, including Channel Volume layouts.

ParametersJSON Schema
NameRequiredDescriptionDefault
panYesPan value (-100 = full left, 0 = center, 100 = full right)
node_idYesNode ID of the audio clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already state readOnlyHint=false, so a write operation is implied. The description adds useful behavioral detail by saying the tool not only sets the pan but also reads back the result, and it explicitly mentions support for Channel Volume layouts. This goes beyond what the annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence communicates the action, target, semantics, and an important scope condition. There is no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with complete schema coverage and an output schema, the description gives enough information to invoke it correctly: what it operates on, what the pan range means, and that it returns the value after setting. Nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% since both 'pan' and 'node_id' have descriptions. The description enhances the schema by clarifying that the target is an audio clip and that Channel Volume layouts are included, which adds context not present in the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Set and read back'), a specific resource ('pan ... on an audio clip'), and adds a distinguishing scope ('including Channel Volume layouts'). This makes it clearly separable from sibling tools like set_clip_volume or set_clip_opacity even without naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the intended use obvious: this is for adjusting the left/right pan of an audio clip. It does not enumerate when not to use it or name alternative tools, but the scope is specific enough that an agent can route to it correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_positionSet Clip PositionA

Set the Position property on a video clip's Motion effect. Values are in pixels.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYesX position in pixels
yYesY position in pixels
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description is consistent with readOnlyHint=false and conveys that this is an absolute set of x/y values. However, it does not add behavioral context beyond the annotations, such as whether the position is overwritten or offset, whether the operation is reversible, or what coordinate origin is used. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One focused sentence with no filler. The operation, target property, and units are presented directly and front-loaded, making the definition easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple three-parameter setter with full schema coverage and an output schema present, this description covers the essentials. The only notable gap is the coordinate space or origin semantics for x/y, which could be relevant for precise positioning but is not stated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: x and y are already described as pixel positions and node_id as the clip's node ID. The description only restates the pixel unit and adds no meaning beyond what the input schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific operation ('Set the Position property'), the target resource ('a video clip's Motion effect'), and the unit ('pixels'). This clearly distinguishes it from sibling setters like set_clip_scale, set_clip_rotation, and set_clip_anchor_point.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the intended use—repositioning a clip via its Motion effect—but provides no explicit when/when-not guidance or alternatives. It does not mention prerequisites such as the clip needing to have a Motion effect, or what to do if a different transform property is the target.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_propertiesSet Clip PropertiesB

Set supported clip properties (opacity, scale, position, rotation). Clip speed is unsupported and fails before mutation.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleNoScale percentage (100 = original size)
speedNoUnsupported by Premiere's public scripting APIs. Supplying this returns an actionable error without mutating the clip.
node_idYesNode ID of the clip
opacityNoOpacity value (0-100)
rotationNoRotation in degrees
position_xNoHorizontal position
position_yNoVertical position

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds useful behavioral context beyond the annotations by stating that clip speed is unsupported and fails before mutation, implying the operation is safe when an unsupported parameter is supplied. However, it does not clarify whether omitted properties are preserved or reset, nor does it describe partial-update behavior or other failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It immediately states the action and resource, enumerates the supported properties, and adds the key unsupported-speed caveat in a compact second clause.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description gives enough to identify the tool and the main unsupported property, but it does not fully cover important invocation semantics for a mutation tool: whether unspecified properties remain unchanged, whether all supported properties can be set together atomically, or how this setter relates to the dedicated single-property setters. The output schema exists, but behavioral completeness is still limited.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since the input schema already documents all seven parameters with 100% coverage, the description need not repeat definitions. The description does group parameters conceptually (opacity, scale, position, rotation) and highlights the speed caveat, but it does not add meaning beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Set supported clip properties') and enumerates the affected properties: opacity, scale, position, rotation. It does not explicitly distinguish itself from sibling tools like set_clip_properties_batch or individual setters such as set_clip_opacity, so it falls short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to prefer this tool over the many related siblings, such as set_clip_opacity, set_clip_scale, or set_clip_properties_batch. It does note that speed is unsupported, but it does not direct the agent to an alternative or explain when this multi-property setter is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_properties_batchSet Clip Properties BatchA

Apply Motion/Opacity values to up to 16 clips after preflighting every target property. The handler reads each requested value back and never reports a partial batch as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYesEach item changes one or more supported opacity, Motion scale, position, or rotation values.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description adds meaningful behavioral guarantees: it preflights every target property, reads back each requested value, and never reports a partial batch as verified. This gives the agent a concrete model of validation and verification 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 tightly written sentences front-load the core action and limit, then add the key verification guarantee. There is no filler or redundant restating 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?

Given the output schema, one required parameter, and full schema coverage, the description adequately covers preflight, verification, and partial-batch behavior. It stops short of describing full failure semantics, but nothing essential for invoking the tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

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 adds the valuable 'up to 16 clips' constraint on the items array and summarizes the semantic categories (Motion/Opacity values), which the schema does not explicitly cap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Apply'), the resource ('Motion/Opacity values to up to 16 clips'), and a distinctive batch scope. It also conveys the preflight behavior, making it easy to distinguish from single-clip siblings like set_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'up to 16 clips' wording implies this is for batch updates rather than single-clip edits, but it never explicitly states when to choose this over alternatives or when not to use it. It provides clear context but no exclusions or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_rotationSet Clip RotationA

Set the Rotation property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
degreesYesRotation in degrees (0-360, can exceed for multiple rotations)
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating operation, and the description adds the useful scoping detail that the action targets the clip's Motion effect rather than an arbitrary effect. It does not disclose overwrite or keyframe behavior, but that is less critical given the low-risk annotation profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, focused sentence with no filler. The target property and context are front-loaded, and every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with complete schema coverage, annotations, and an output schema, the description is largely sufficient. The only notable gap is the absence of explicit routing to or away from more general effect/property tools, but this is a minor issue for such a narrow operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents node_id and degrees. The description adds no new parameter-level detail beyond tying the property to the Motion effect, which is enough for the baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Set'), an exact property ('Rotation'), and a precise container ('video clip's Motion effect'). This cleanly differentiates the tool from siblings like set_clip_scale, set_clip_anchor_point, and set_clip_position.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance, nor any mention of alternatives such as set_effect_property or set_clip_properties. The intended use is implied by the name and the phrase 'Motion effect,' but an agent is left to infer it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_scaleSet Clip ScaleA

Set the Scale property on a video clip's Motion effect.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleYesScale value (100 = original size, 200 = 2x, 50 = half)
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is not read-only, not idempotent, and not destructive. The description adds the context that the operation targets the Motion effect's Scale property specifically, which clarifies what is modified. It does not disclose side effects like overwriting existing scale values or behavior when no Motion effect exists, but annotations cover the major risk profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the operation and target without any filler. Every word earns its place, and it is appropriately sized for such a simple setter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a low-complexity tool with two required parameters, both fully documented in the schema, an output schema provided, and annotations covering the mutation profile. The description plus structured data is sufficient for an agent to invoke it correctly; nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with scale's meaning explicitly documented as '100 = original size, 200 = 2x, 50 = half' and node_id described as 'Node ID of the clip.' The description adds no parameter-level detail beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set the Scale property on a video clip's Motion effect.' It clearly identifies both the target property and the containing effect, which distinguishes it from sibling tools like set_uniform_scale, set_scale_width_height, and set_clip_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance, no mention of prerequisites (e.g., the clip already having a Motion effect), and no exclusions or alternatives. Among many closely related set_* tools, the agent is left to infer when this one is preferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_selectionSet Clip SelectionB

Select or deselect a clip in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
selectedYesTrue to select, false to deselect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are sparse (all false hints), so the description carries the burden of behavioral disclosure. It only restates the core action and does not reveal important behavioral traits such as whether selecting a clip clears the existing selection, whether deselecting a non-selected clip is a no-op, or what happens if no active sequence exists. The description adds little beyond the schema and annotation hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that immediately states the action and scope. There is no filler, no repetition of the tool name, and no unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with full schema coverage and an output schema, the description is minimally adequate. However, it omits side-effect behavior (clearing prior selection) and usage context relative to sibling selection tools. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with node_id and selected already clearly documented. The description's 'select or deselect' wording echoes the selected boolean semantics but does not add meaningful new meaning. Baseline 3 is appropriate because the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Select or deselect') applied to a clearly scoped resource ('a clip in the active sequence'). This distinguishes it from related selection tools like select_item, get_selected_clips, and select_clips_by_name, whose scopes or operations differ.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus the many sibling selection tools (e.g., select_all_clips, select_clips_in_range, deselect_all_clips, invert_selection). It does not mention prerequisites such as having an active sequence, nor does it explain when a simple single-clip select/deselect is or is not appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_speed_qeSet Clip Speed QeB

Unavailable: Premiere does not expose a supported scripting API for changing a timeline clip's speed.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoReverse playback direction (default: false)
speed_percentYesSpeed as percentage (100 = normal, 200 = 2x, 50 = half speed)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the key behavioral context that Premiere does not expose a supported API for this operation, which goes beyond the annotations. Still, it doesn't say whether calling the tool returns an error, is a no-op, or otherwise behaves, which is a meaningful gap given the annotations provide almost no behavioral detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with the most important information, 'Unavailable', front-loaded. Every word contributes, and it avoids repeating schema or name information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stub that reports an unsupported operation, the description conveys the essential limitation, and an output schema exists so return-value documentation isn't required. However, it stops short of telling the agent what to do instead, which would make the tool definition fully actionable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters and their meaning, with 100% coverage. The description adds no parameter-level detail, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the domain operation ('changing a timeline clip's speed') and immediately states that it is unavailable in Premiere's scripting API. However, it doesn't describe what the tool actually does when invoked or whether it returns an error, so the purpose is expressed more as a limitation than as a usable tool behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should probably not be used, but it gives no explicit when-to-use guidance and no alternative. A natural pointer to `speed_change` among the siblings would have made the fallback clear, but none is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_start_timeSet Clip Start TimeA

Set the start time (timecode offset) of a project item. This shifts where timecode begins for the source media.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
start_secondsYesNew start time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as a write operation, and the description adds the meaningful behavioral detail that the start time is a timecode offset that shifts where timecode begins for the source media. This goes beyond the schema and annotations, clarifying what actually changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the action, and the clarifying effect is given immediately. No filler or repetition of schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with an output schema and annotations, the description is largely complete: it identifies the target, the value, and the effect. The only real gap is alternative routing to sibling tools, which is already penalized under usage guidelines.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds semantic value by framing start_seconds as a timecode offset rather than just a numeric value. It does not add detail about item_id, but the schema already describes that parameter well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation (set start time/timecode offset) and the target resource (project item), and explains the effect on source-media timecode. It is clear, but it does not distinguish itself from the sibling set_start_time, so an agent cannot tell whether this is the same operation on a different scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided. With siblings such as set_start_time, set_clip_properties, and set_clip_position, the description gives no basis for choosing this tool over an alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clips_volumeSet Clips VolumeA

Set the volume (in dB) on every audio clip of a track, or on a list of clip indices. One round trip instead of one call per clip - essential for sequences with dozens of clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
volume_dbYesVolume in dB applied to every selected clip (0 = unity, max +15)
track_indexYesAudio track index (0-based)
clip_indicesNoOptional clip indices on that track. Omit to apply to all clips.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate the operation is non-readonly and non-destructive. The description adds the useful batch/round-trip efficiency context, but it does not disclose potential side effects like overwriting existing volume settings or behavior on invalid clip indices. It is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core operation and target, followed by the most important usage rationale. No filler or redundancy; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a batch setter with fully documented parameters, an output schema, and a clear use case, the description provides enough context for an agent to invoke it correctly. No critical behavioral or scoping information is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and each parameter already has a meaningful description. The tool description reinforces the track/clip-index semantics but adds no new format, constraints, or edge-case information beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the exact operation ('Set the volume in dB'), the target resource ('every audio clip of a track'), and the optional scoping ('or on a list of clip indices'). This clearly differentiates it from the singular sibling set_clip_volume by emphasizing the bulk/multi-clip behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly gives the key use case: 'One round trip instead of one call per clip - essential for sequences with dozens of clips.' This tells the agent when the bulk behavior is valuable, though it does not explicitly name the alternative for a single-clip operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_clip_volumeSet Clip VolumeA

Set an audio clip's Volume > Level in dB. Does not read or change Essential Sound Amplify automation.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the audio clip
volume_dbYesVolume in dB (0 = unity, negative = quieter, positive = louder)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a non-read-only, non-destructive operation. The description adds a useful behavioral boundary by guaranteeing it does not touch Essential Sound Amplify automation, helping agents avoid conflating it with a related parameter. It does not discuss keyframes or automation beyond that, but annotations lower the burden here.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, with the core operation front-loaded and the essential caveat following immediately. Every word earns its place; there is no redundant filler or schema repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with a fully documented schema, an output schema, and annotations, the description is largely complete. A minor gap is that it does not explicitly distinguish itself from the sibling set_clips_volume for batch or set_audio_keyframes, but the singular phrasing and parameter count make the tool usable without that clarification.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters are fully described in the input schema: node_id identifies the clip and volume_db includes units and value semantics. The description repeats the dB mention but does not add meaningful parameter information beyond what the schema already provides, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action (Set), a specific resource (an audio clip), and a specific property (Volume > Level in dB). It also distinguishes itself from read and Essential Sound operations by stating it does not read or change Essential Sound Amplify automation, which separates it from tools like get_clip_volume.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies this is for setting a singular clip's direct volume level and explicitly says it is not for reading or changing Essential Sound Amplify automation. However, it does not name sibling alternatives like set_clips_volume for batch operations, so the when-to-use guidance is good but not exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_color_labelSet Color LabelC

Set the color label on a project item or clip

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
color_indexYesLabel color index (0=Violet, 1=Iris, 2=Caribbean, 3=Lavender, 4=Cerulean, 5=Forest, 6=Rose, 7=Mango, 8=Purple, 9=Blue, 10=Teal, 11=Magenta, 12=Tan, 13=Green, 14=Brown, 15=Yellow)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description conveys only the operation and target scope, not the behavioral effects: it does not state whether an existing label is overwritten, what happens for invalid item IDs, or whether the action is reversible. With readOnlyHint=false and no positive idempotent or destructive hints, the description carries the disclosure burden and does not fully meet it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no filler and places the target scope immediately. It is efficient, though it achieves brevity by leaving usage and behavioral details out.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter write tool with fully documented input schema and an output schema present, the essential invocation details are available. However, the description does not help an agent decide between this and closely related color tools, so context is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents both parameters completely, including the full 0-15 color mapping for color_index and the Node ID/name semantics for item_id. The description adds no parameter-level information beyond the general 'project item or clip' scope, so this is baseline schema-driven coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Set') and the affected resource ('the color label' on 'a project item or clip'). It is specific enough to distinguish from the read counterpart get_color_label, though it does not explicitly differentiate from label-related siblings like set_color_value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus related alternatives such as get_color_label or set_color_value. There are no conditions, prerequisites, or exclusions, so an agent must infer the use case solely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_color_valueSet Color ValueB

Set a color value on an effect property (e.g., tint color, fill color)

ParametersJSON Schema
NameRequiredDescriptionDefault
redYesRed (0-255)
blueYesBlue (0-255)
alphaYesAlpha (0-255)
greenYesGreen (0-255)
node_idYesNode ID of the clip
property_nameYesName of the color property
component_nameYesName of the component/effect

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint=false) already mark this as a write operation, and the description is consistent with that, disclosing a mutating set of RGB+alpha values. It adds modest context via the effect-property examples but does not disclose preconditions such as whether the effect must already exist on the node or whether the prior color is fully replaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with the verb first, the target object, and parenthetical examples inine — zero wasted words. Every element earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 100% schema coverage, an existing output schema, and an accurate operation statement, an ageent can call this tool correctly. The gap is tool-routing context: with the near-identical sibling set_effect_property present, the description should clarify when the color-specific variant is appropriate rather than the general one.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 required parameters including the 0-255 ranges for red/green/blue/alpha. The description's tint/fill examples add minor context, but per the baseline rule for >80% coverage, the description does not need to compensate further.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb-resource pair ('Set a color value on an effect property') and grounds it with concrete examples ('tint color, fill color'). It is clearly about color-specific effect properties, which implicitly distinguishes it from the broader sibling set_effect_property, though it never explicitly names that alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to choose this tool over related siblings such as set_effect_property, color_correct, apply_lut, or set_color_label. No exclusions, prerequisites, or context-of-use are provided, so an agent must infer selection solely from the tool name and examples.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_effect_propertySet Effect PropertyC

Set the value of a specific effect property on a clip

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesNumber or string value to set. Use the exact JSON string reported for a MOGRT text or graphic parameter.
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect (e.g., 'Motion', 'Opacity')
property_nameYesDisplay name of the property (e.g., 'Scale', 'Position', 'Opacity')

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already convey that this is not read-only and not destructive, and the description adds no further behavioral context. It does not disclose whether existing values are overwritten, whether missing effects or properties cause errors, or how keyframed properties behave.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one concise, front-loaded sentence with no filler. It communicates the core action immediately and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

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 four required parameters and no rich annotations, the description is thin. It omits preconditions such as the effect needing to exist, how to discover valid effect/property names, and whether setting a property affects existing keyframes. The output schema helps with return values, but the invocation context is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters are documented in the schema. The description adds no additional semantic detail beyond calling it a 'specific effect property', 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 clear verb and resource: set the value of a specific effect property on a clip. It is distinguishable from apply_effect (which adds an effect) and from query tools like get_effect_properties, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus apply_effect, remove_effect, set_clip_properties, or specialized setters like set_clip_opacity and set_clip_scale. There are also no stated prerequisites, such as the effect already existing on the clip.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_footage_interpretationSet Footage InterpretationC

Set footage interpretation settings for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
frame_rateNoOverride frame rate
pixel_aspect_ratioNoPixel aspect ratio (1.0 = square pixels)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a non-read-only mutation with no destructive or idempotent guarantees, but the description adds no behavioral context beyond the schema. It does not explain whether existing interpretation settings are replaced, whether the source file is affected, or what side effects may occur.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler and front-loads the action and target. It is appropriately concise, though it sacrifices useful context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite schema and annotation coverage, the description is incomplete given the large sibling set. It lacks any mention of how this tool relates to the more specific override tools and whether it is meant as a combined or bulk alternative, leaving an agent to guess when to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameters are already well documented in the schema. The description adds no additional meaning about item_id identification, frame_rate units, or pixel_aspect_ratio semantics, so it neither compensates nor detracts.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set') and identifies the resource ('footage interpretation settings') and target ('project item'), so an agent can tell what the tool does. However, it does not differentiate this from siblings like set_override_frame_rate or set_override_pixel_aspect_ratio, which operate on the same underlying concept.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives such as set_override_frame_rate, set_override_pixel_aspect_ratio, or get_footage_interpretation. The description provides no exclusions or context that would help an agent choose among these overlapping siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_frame_blendSet Frame BlendB

Enable or disable frame blending on a clip. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesTrue to enable frame blending, false to disable
node_idYesNode ID of the clip

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not a read-only or destructive operation. The description adds that the operation toggles frame blending and is performed 'Uses QE DOM,' which is a minimal extra context. It does not disclose side effects, prerequisites, or failure modes, but for a simple boolean setter the existing annotations lower the bar.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded, stating the core action in the first sentence. The second sentence, 'Uses QE DOM,' is a compact implementation hint, though its value is limited without further explanation. Overall, it is concise and free of filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter boolean setter with a complete schema, annotations, and an output schema, the description is largely sufficient. It names the target resource and the operation. It could be more complete by mentioning clip compatibility or what 'QE DOM' implies, but those are not essential for basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage: 'enabled' is described as 'True to enable frame blending, false to disable' and 'node_id' as 'Node ID of the clip.' The description adds no additional parameter-level meaning beyond what the schema already includes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: 'Enable or disable frame blending on a clip.' This is a specific verb and resource, and 'frame blending' distinguishes it from sibling tools like set_blend_mode or set_time_interpolation. However, it does not explicitly differentiate itself from related clip-property setters beyond the resource name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as set_time_interpolation or set_clip_properties. It only states what the tool does, with no context about prerequisites, exclusions, or which scenario should route to this tool over another.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_graphics_white_luminanceSet Graphics White LuminanceA

Set the graphics white luminance value (HDR setting) for the project

ParametersJSON Schema
NameRequiredDescriptionDefault
luminanceYesWhite luminance value in nits

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint=false) but not destructive (destructiveHint=false). The description adds the useful context that it is an HDR project-level setting, but it does not disclose side effects, persistence, or any effect on currently rendered graphics. This is adequate for a simple setter but not richly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no redundant phrases or filler. It states the core action, the target resource, and the domain context efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple one-parameter setter with complete schema coverage and annotations. The description and schema together provide enough information for an agent to invoke it correctly. An output schema is also indicated, so return-value documentation is not the description's burden.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the parameter is already documented as 'White luminance value in nits'. The description's mention of 'HDR setting' adds a small amount of context, but it does not meaningfully go beyond the schema's parameter description. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set the graphics white luminance value' for the project. It clearly identifies this as a setter for an HDR project setting, and the 'set' verb distinguishes it from the sibling getter get_graphics_white_luminance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: use this tool when you need to set the graphics white luminance. However, it does not explicitly state when not to use it, nor does it mention the obvious alternative get_graphics_white_luminance for reading the current value. The intended context is clear but not fully spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_item_in_outSet Item In OutA

Set in and/or out points on a project item in the project panel (marks source range for editing).

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
in_secondsNoIn point in seconds
media_typeNoMedia type: 1=video, 2=audio, 4=all (default: 4)
out_secondsNoOut point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a mutating, non-idempotent, non-destructive operation. The description adds that it marks a source range on a project item rather than modifying media, and 'and/or' implies partial updates, but it does not disclose whether existing points are overwritten or what happens when only one point is supplied. Acceptable, but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with a useful parenthetical purpose clause; no wasted words and no repetition of the tool or title. It earns its place efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With all parameters documented in the schema and an output schema present, the description covers the core purpose and scope well. The main gaps are the lack of explicit alternative routing and detailed side-effect behavior, but these are partially mitigated by the annotations and are not critical for this low-stakes setter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description's 'in and/or out' adds meaningful partial-set semantics beyond the schema: it explicitly signals that in_seconds and out_seconds can be set independently, which the parameter descriptions alone do not fully convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Set') and a clear resource ('in/and/or out points on a project item in the project panel'), with the intent explained by 'marks source range for editing.' The 'project panel' scope distinguishes it from sequence or source-monitor in/out tools, but it never names a sibling alternative explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'in the project panel' and the parenthetical 'marks source range for editing' imply when this tool should be used, but there is no explicit when-not-to-use guidance or pointer to alternatives like set_source_in_out, set_sequence_in_out_points, or clear_item_in_out. An agent must infer the boundary from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_keyframe_interpolationSet Keyframe InterpolationC

Set the interpolation type of a keyframe (Linear, Hold, or Bezier)

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
effect_nameYesDisplay name of the effect
time_secondsYesTime in seconds of the keyframe
interpolationYesInterpolation type
property_nameYesDisplay name of the property

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, providing only a minimal safety profile (a mutating operation that is not classified as read-only or destructive). The description conveys the mutation nature but does not disclose key behavioral traits: what happens if no keyframe exists at the given time, whether the prior interpolation is overwritten, or whether the operation can fail or have side effects. It also capitalizes the enum values (Linear, Hold, Bezier) differently from the schema's lowercase enum, which could mislead an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with no filler, and the allowed values are front-loaded in the parenthetical. It earns its place, though the slight capitalization mismatch with the schema enum is a minor structural blemish.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating tool with 5 required parameters and no useful safety profile from annotations, this description is too thin. It does not mention the dependency on an existing keyframe, does not clarify the relationship to add_keyframe or set_time_interpolation, and provides no context on failure modes. The output schema covers return values, but the operational context is still incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents all five parameters. The description adds essentially no parameter meaning beyond the schema; the parenthetical repeats the interpolation values already captured by the enum. Baseline 3 is appropriate since the schema carries the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('set') and a specific resource ('interpolation type of a keyframe'), with the parenthetical enumerating the three allowed values. It is fully clear what the tool does, and the mention of 'keyframe' implicitly distinguishes it from the sibling set_time_interpolation, but it does not explicitly draw that contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as add_keyframe or set_time_interpolation. No prerequisites are stated (e.g., that a keyframe must already exist at time_seconds), no exclusions, and no alternative routing. The intended use is only weakly implied by the verb 'set'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_metadataSet MetadataA

Replace project metadata XML on a project item and verify the exact readback. Partial field/value writes are intentionally rejected because Premiere requires a complete Project Metadata XML payload.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueNoLegacy partial-write argument. It is no longer executed; read projectMetadata first, update the complete XML, then supply metadata_xml and updated_fields.
item_idYesNode ID or name of the project item
field_nameNoLegacy partial-write argument. It is no longer executed because it cannot form a valid Project Metadata XML payload; use metadata_xml and updated_fields instead.
metadata_xmlNoComplete Project Metadata XML previously read from get_metadata, with the intended field values applied.
updated_fieldsNoExact Project Metadata field paths changed in metadata_xml (for example, Column.Intrinsic.Description).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond what readOnlyHint=false and idempotentHint=false already disclose, the description reveals two behavioral traits: post-write readback verification and intentional rejection of partial payloads with the Premiere requirement as rationale. The schema additionally discloses that legacy arguments value and field_name are accepted but 'no longer executed.' No statement contradicts the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero waste: the first states the core operation and readback verification, the second justifies the full-payload constraint with the underlying Premiere requirement. The action is front-loaded and every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, rich per-parameter documentation, and annotations covering the safety profile, the description covers the core behavior, the readback verification, and the critical full-XML constraint. A minor gap: consequences of a readback mismatch (rollback vs error) are not stated, but this is non-essential because the output schema carries the return contract.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and eah parameter is documented (including deprecation notes for value and field_name), so the baseline of 3 applies even without parameter details in the description. The description's 'complete Project Metadata XML payload' and 'partial field/value writes' roughly map to metadata_xml and the legacy args, but it 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 opens with a specific verb+resource ('Replace project metadata XML on a project item') and adds a distinguishing behavioral trait ('verify the exact readback'). By scoping to complete Project Metadata XML and explicitly rejecting partial writes, it differentiates itself from metadata siblings like set_xmp_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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: partial field/value writes are intentionally rejected and a complete XML payload is required, so an agent knows the correct invocation shape. The schema parameter descriptions reinforce the workflow (read projectMetadata first, update the complete XML, then supply metadata_xml and updated_fields), but the description itself does not name sibling alternatives or state when to prefer this tool over metadata-adjacent tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_offlineSet OfflineA

Set a project item offline, or ask Premiere to refresh it back online when offline is false.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
offlineNotrue to take media offline (default); false to refresh an existing offline item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as non-read-only and non-destructive, so the description correctly describes a state-changing operation. It adds useful behavioral context by explaining that offline=false triggers a refresh-to-online workflow, which is more than the annotations alone provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence covers both operational modes and the conditional behavior. It is front-loaded with the primary action and wastes no words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with an output schema, the description is sufficiently complete to invoke correctly. The only slight gap is not addressing how it relates to adjacent commands like relink_media or check_offline_media, but this does not block correct use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both item_id and offline already documented. The description essentially restates the schema's offline semantics ('refresh it back online when offline is false') without adding new parameter-level detail, so it earns the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: 'Set a project item offline', and also covers the inverse behavior for offline=false. It distinguishes this tool from refresh/relink siblings by focusing on the offline state toggle rather than media relinking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear conditional guidance: use it to take an item offline, or pass offline=false to ask Premiere to refresh it back online. It does not explicitly name alternative tools such as refresh_media or relink_media, so it falls just short of full sibling differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_override_frame_rateSet Override Frame RateA

Override the frame rate of a project item (useful for image sequences or misinterpreted media)

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
frame_rateYesFrame rate to set (e.g., 23.976, 24, 29.97, 30, 60)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already signal mutation (readOnlyHint=false), and the description's 'Override' verb is consistent with that, so there is no contradiction. The description adds minor behavioral context — the override applies at the project-item level and addresses mis-interpreted media. However, it doesn't disclose whether calling it again replaces the existing override, whether the override can be reset to the native rate, or what side effects occur on sequences referencing the item.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the action front-loaded and a compact parenthetical use case. Every word earns its place; there is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 2-parameter setter with fully documented schema and an output schema present, the description is largely complete. The only meaningful gap is the absence of guidance on how to revert an override back to the native frame rate, which an agent might need when correcting a mistake. This is minor given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: item_id is documented as 'Node ID or name of the project item' and frame_rate includes example values (23.976, 24, 29.97, 30, 60). The description adds the purpose context but no additional parameter-level meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Override the frame rate of a project item') and adds a concrete use case ('useful for image sequences or misinterpreted media'). The 'project item' scope implicitly distinguishes it from set_sequence_frame_rate, which targets sequences. However, it doesn't explicitly differentiate itself from closely related setters like set_override_pixel_aspect_ratio or set_footage_interpretation, leaving some differentiation to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical 'useful for image sequences or misinterpreted media' implies the intended scenario: correcting items whose detected frame rate is wrong. But it doesn't name alternatives (e.g., set_footage_interpretation, set_sequence_frame_rate) or state when NOT to use this tool, so an agent must infer the boundary from the sibling list rather than from explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_override_pixel_aspect_ratioSet Override Pixel Aspect RatioA

Override the pixel aspect ratio of a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
numeratorYesPAR numerator (e.g., 1 for square pixels)
denominatorYesPAR denominator (e.g., 1 for square pixels)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, covering the mutation and non-destructive safety profile. The description adds little beyond the word 'override', which implies replacing the current PAR, but it does not disclose side effects, requirements, or reversibility. This is adequate with annotations, not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence states the action and the resource with no filler or repetition. Every word contributes to the purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple three-parameter setter with fully described schema parameters and an output schema, the one-sentence description is sufficient for correct invocation. Explicit guidance about alternatives is absent but is not required for the basic call; it is adequately complete given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter has a meaningful description: item_id identifies the target, numerator and denominator define the ratio. The tool description does not add parameter-level semantics beyond what the schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Override') and names the exact resource ('pixel aspect ratio of a project item'). It clearly distinguishes from siblings like set_sequence_pixel_aspect_ratio by targeting project items rather than sequences, and from set_override_frame_rate by naming a different property.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear scope by specifying 'project item', so an agent can infer this is for item-level PAR rather than sequence-level PAR. It does not explicitly name alternatives or provide when-not-to-use conditions, but the resource target is clear enough for basic routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_playhead_positionSet Playhead PositionA

Set the playhead (CTI) position in the active sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
time_secondsYesTime position in seconds to move the playhead to

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that this is not read-only and not destructive, so the description does not need to repeat that. The description adds the active-sequence scoping, but does not disclose additional behavioral details such as what happens when no sequence is active, whether the operation is undoable, or any side effects beyond moving the playhead. With annotation coverage present, this is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately names the action, target, and scope. It includes the useful CTI clarification without unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, low-complexity tool with an output schema and relevant annotations, the description is complete enough. The active-sequence scope and the schema's parameter documentation give an agent everything needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, time_seconds, has a complete schema description ('Time position in seconds to move the playhead to') with 100% coverage. The main description adds no additional parameter insight, so the schema carries the semantic weight, which matches the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set') with a clear resource ('playhead (CTI) position') and scope ('active sequence'). It is immediately distinguishable from sibling tools like get_playhead_position and move_playhead_to_edit, since it targets arbitrary time positioning rather than reading or moving to edit points.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool operates on the currently active sequence, which gives some usage context, but it does not explicitly state when to use this tool over siblings such as move_playhead_to_edit or get_playhead_position, nor does it mention prerequisites like having a sequence open and active.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_poster_frameSet Poster FrameA

Set the poster frame (thumbnail) for a project item at a specific time.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
time_secondsYesTime in seconds for the poster frame

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish this is a write operation (readOnlyHint=false, destructiveHint=false). The description adds 'thumbnail' context and the time qualifier, but does not disclose overwrite behavior, persistence, or failure semantics. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the verb and object, with no filler or redundant explanation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter mutation with full schema coverage, annotations, and an output schema, the description is sufficient to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are already fully documented. The description does not add meaningful format or constraint details beyond restating that the frame is set at a specific time.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description names the exact operation ('Set'), the resource ('poster frame (thumbnail) for a project item'), and a qualifier ('at a specific time'), making it distinct from frame export/capture siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly states the context for use: a project item and a specific time. It does not explicitly name alternatives or exclusions, but the intended use is clear enough for an agent to select it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_item_audio_channel_mappingSet Project Item Audio Channel MappingC

Map one output audio channel of a project item to a source channel using Premiere's documented AudioChannelMapping API.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesProject item node ID or exact name
channel_indexYesZero-based output channel index to configure
source_channel_indexYesZero-based source channel index to map

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are all false hints, so they do not establish a meaningful safety profile, and the description must carry the burden. It does not disclose whether repeated calls replace or append mappings, whether invalid channel indices error, whether the change affects all instances of the item, or whether the operation is reversible. 'Map' implies a configuration mutation but nothing about consequences.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with the action verb and resource up front, making it easy to scan. The reference to 'Premiere's documented AudioChannelMapping API' adds a little specificity but is not redundant enough to hurt clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter tool with fully described schema fields, the essential call shape is understandable. However, an agent still lacks guidance on when to use this versus other audio tools and what side effects to expect, so the description is minimally viable but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters clearly, including 'Zero-based output channel index to configure' and 'Zero-based source channel index to map,' so schema description coverage is 100%. The description adds conceptual direction but no additional parameter-level detail, matching the baseline for fully schema-documented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation ('Map one output audio channel... to a source channel') and a specific resource ('a project item' via the AudioChannelMapping API), so an agent can tell it performs channel mapping. It does not explicitly contrast itself with sibling tools, but the resource and verb are distinctive enough among the audio-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool instead of related audio tools like adjust_audio_levels, apply_audio_effect, or set_sequence_audio_settings. No prerequisites, preconditions, or exclusions are given; the only contextual hint is the tool name and the generic 'map' operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_panel_metadataSet Project Panel MetadataA

Set the project panel metadata/column configuration from XML and verify that Premiere reads back the exact XML

ParametersJSON Schema
NameRequiredDescriptionDefault
metadata_xmlYesXML string containing the project panel metadata configuration

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-idempotent operation, and the description adds the notable behavior that it verifies the XML round-trip by having Premiere read back the exact XML. It could disclose more about overwriting existing configuration or failure behavior, but the verification detail goes beyond both the schema and annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the action front-loaded and no filler. Every clause ('from XML' and 'verify that Premiere reads back the exact XML') adds necessary behavioral information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an output schema and annotations, the description covers purpose, input form, and verification behavior. It does not specify the expected XML schema or mismatch consequences, but those are not essential for selecting the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter is fully documented in the schema with 100% coverage, and the description merely restates the XML aspect without adding format, escaping, or example details. The schema carries the load here; the description adds no new parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Set') and resource ('project panel metadata/column configuration'), and it adds a distinguishing verification behavior ('verify that Premiere reads back the exact XML'). This clearly separates it from sibling tools like get_project_panel_metadata.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The operation is clear enough that an agent can infer when to use it, but it does not explicitly state when to prefer it over alternatives such as get_project_panel_metadata or set_metadata. It provides implied usage rather than explicit routing or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_project_scratch_diskSet Project Scratch DiskB

Set the project's scratch disk paths for captured video, audio, and previews.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_previewsNoPath for audio previews
captured_audioNoPath for captured audio
captured_videoNoPath for captured video
video_previewsNoPath for video previews

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description conveys only the basic mutation intent. It does not add behavioral context beyond what the verb 'set' already implies, such as whether unspecified paths are left unchanged, whether paths must already exist, or whether this overwrites existing project settings. Annotations provide no positive safety information, so the description carries the burden and does not meet it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every phrase maps to the tool's actual purpose, and it is appropriately sized for the simplicity of the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter with fully documented parameters, the description is nearly sufficient. However, it leaves out important behavioral details such as the effect of omitting parameters, whether existing scratch disk paths are replaced, and how this differs from set_scratch_disk_path. These gaps prevent it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all four parameters with clear path descriptions, so schema coverage is 100%. The description adds only a high-level grouping of paths into captured video/audio and previews, which does not materially improve on the schema's per-parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb and resource: it sets the project's scratch disk paths for captured video, audio, and previews. It is unambiguous about what the tool operates on, though it does not explicitly distinguish itself from the similarly named sibling set_scratch_disk_path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided for when to use this tool instead of related alternatives, especially set_scratch_disk_path or get_project_scratch_disks. It also does not clarify whether it partially updates or fully replaces scratch disk settings, which is essential for safe usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scale_to_frame_sizeSet Scale To Frame SizeA

Enable 'Scale to Frame Size' on a project item so it fills the sequence frame

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating non-destructive operation, and the description adds that it enables a specific property with a fill-frame effect. However, it does not disclose side effects, reversibility, or what happens to existing scale values, which is relevant given idempotentHint is false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence that front-loads the verb and setting. Every phrase contributes meaning and there is no redundant or boilerplate text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, non-destructive toggle operation with an output schema and annotations, the description is nearly complete: it identifies the target and the result. It would be stronger with a brief note on how it differs from manual scale adjustment siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the only parameter item_id is already documented as 'Node ID or name of the project item'. The description adds no additional parameter-level detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific operation ('Enable Scale to Frame Size'), a specific resource ('a project item'), and the intended outcome ('fills the sequence frame'). It is not a tautology of the title, but it does not explicitly contrast itself with similar scale-related siblings such as set_clip_scale or set_scale_width_height.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose clause implies the tool should be used when a project item needs to fill the sequence frame, but there is no explicit when-to-use or when-not-to-use guidance. It does not mention alternatives among the scale-related sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scale_width_heightSet Scale Width HeightA

Set independent Scale Width and Scale Height on a clip (requires Uniform Scale to be OFF).

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
scale_widthYesScale width percentage
scale_heightYesScale height percentage

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that this is not read-only, so the mutation aspect is covered. The description adds the important Uniform Scale precondition, but does not disclose what happens if the precondition is unmet or other side effects of the operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that gets straight to the point. It includes the essential precondition without any filler, making it highly efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

All required parameters are documented, the key precondition is stated, and an output schema exists. The only notable omission is guidance on what occurs when Uniform Scale is enabled or how this differs behaviorally from set_clip_scale, but this is a minor gap for a simple setter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully describes all three parameters with 100% coverage, so the schema does the heavy lifting. The description adds no additional meaning about ranges, constraints, or interpretation beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the operation: set independent Scale Width and Scale Height on a clip. The qualifier 'independent' and the Uniform Scale requirement help distinguish it from related operations like set_uniform_scale or set_clip_scale, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear prerequisite: 'requires Uniform Scale to be OFF'. However, it does not explicitly explain when to choose this tool over related siblings such as set_clip_scale or set_uniform_scale, leaving usage conditions largely implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_scratch_disk_pathSet Scratch Disk PathA

Set the scratch disk path for a specific media type

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull directory path for the scratch disk
scratch_disk_typeYesType: 'capturedVideo', 'capturedAudio', 'videoPreview', 'audioPreview', 'autoSave', 'ccLibraries'

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate this is a mutation (readOnlyHint false) but not destructive or idempotent. The description adds no behavioral context such as whether the path must already exist, whether the change persists, whether a restart/reload is required, or how it interacts with existing scratch disk settings.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, focused sentence that states the operation and its scope with no filler. It is front-loaded and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter setter with a complete schema and output schema, the core invoke details are covered. However, the description does not clarify the relationship with set_project_scratch_disk or disclose side effects, leaving the agent to infer routing and behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both `path` and `scratch_disk_type` already documented. The description does not add extra meaning beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Set the scratch disk path for a specific media type'. It clearly identifies the tool's scope and distinguishes it from the sibling set_project_scratch_disk by emphasizing per-media-type targeting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'for a specific media type' implies the intended use and contrasts with set_project_scratch_disk, but the description does not explicitly say when to choose this tool over that alternative or what the setting affects project-level versus application-level.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_audio_settingsSet Sequence Audio SettingsA

Change audio settings of the active sequence (sample rate, channel type).

ParametersJSON Schema
NameRequiredDescriptionDefault
sample_rateNoAudio sample rate (e.g., 44100, 48000, 96000)
channel_typeNoChannel type: 0=Mono, 1=Stereo, 2=5.1, 3=Multichannel

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-idempotent operation. The description adds the useful scope 'active sequence' but does not disclose whether omitted parameters are left unchanged or whether changing these settings has side effects. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with the verb and object first, followed by a compact parenthetical of affected parameters. It contains no redundant words and is easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-property setter, the description, full parameter schema, and output schema provide enough information to make a correct call. It could be stronger by explicitly noting that parameters are optional and independent, but there is no major gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both sample_rate and channel_type are already documented with examples and value mappings. The description merely restates the parameter names and adds no new semantic detail, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Change') and a specific resource ('audio settings of the active sequence'). It clearly distinguishes this from sibling set_sequence_settings by narrowing scope to audio parameters, and the parenthetical lists the affected fields.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'audio settings of the active sequence' establishes a clear condition for use: this tool applies when modifying the active sequence's audio settings. It does not explicitly mention alternatives or exclusions, so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_display_formatSet Sequence Display FormatA

Set the timecode display format for the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
audio_display_formatNoAudio: 0=Audio Samples, 1=Milliseconds
video_display_formatNoVideo: 0=24 Timecode, 1=25 Timecode, 2=29.97 Drop-frame, 3=29.97 Non-drop-frame, 4=30 Timecode, 5=50 Timecode, 6=59.94 Drop-frame, 7=59.94 Non-drop-frame, 8=60 Timecode, 9=Frames, 10=Feet+Frames 16mm, 11=Feet+Frames 35mm

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a non-destructive mutation (readOnlyHint=false, destructiveHint=false). The description adds that it applies to the active sequence, which is useful. However, it doesn't disclose whether both parameters are independent, if changes are immediate, or if there are any side effects. With annotations covering safety, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One precise sentence with no filler. The action and target are front-loaded, making it immediately understandable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple setter with two clearly documented parameters, the description suffices. Output schema exists, so return values don't need explanation. The main gap is not mentioning that both parameters are optional or the exact effect on the active sequence, but overall it's complete for agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% – each parameter has detailed enumerations (e.g., video_display_format lists 12 values). The description adds no extra meaning beyond pointing to the active sequence, so it doesn't compensate beyond the schema baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: set the display format for the active sequence. It's clearly distinct from siblings like set_sequence_settings or set_sequence_frame_rate. The mention of 'timecode display format' is slightly narrow but the parameter descriptions clarify audio/video formats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like set_sequence_settings or set_sequence_frame_rate. Doesn't mention that it only affects the active sequence or that it's a display-only setting, leaving the agent to infer context from the description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_field_typeSet Sequence Field TypeA

Set the field order of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
field_typeYes0=No Fields (Progressive), 1=Upper Field First, 2=Lower Field First

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that the operation modifies the active sequence, which is useful scope beyond the annotations. However, it does not mention behavior such as requiring an open sequence, how the change is applied, or whether any existing sequence properties are affected besides field order. With annotations present but not covering these details, the description adds modest context only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no filler or redundant phrasing. It front-loads the action and target, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter setter with complete schema coverage and an output schema, this description is largely sufficient: it identifies the target and the operation. The main missing piece is usage guidance relative to sibling setting tools, but this does not prevent correct invocation when the schema is available.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the field_type parameter is already well-described with explicit values for 0, 1, and 2. The description adds no parameter-level meaning beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb and resource: set the field order of the active sequence. This uniquely identifies the operation among siblings like set_sequence_frame_rate and set_sequence_resolution, so an agent can distinguish it without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives like set_sequence_settings, nor are prerequisites mentioned, such as needing an active sequence. The 'active sequence' wording implies context, but it does not explicitly route the agent toward or away from any sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_frame_rateSet Sequence Frame RateB

Change the frame rate of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
frame_rateYesNew frame rate (e.g., 23.976, 24, 25, 29.97, 30, 50, 59.94, 60)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutation (readOnlyHint=false). The description adds that the target is the active sequence, which is useful, but it does not disclose potential effects on existing clips or timeline behavior. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter mutation with a complete schema and output schema, the description is mostly adequate. The main gap is the absence of sibling differentiation, but that is more of a usage-guidance issue than a completeness issue.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter frame_rate is fully documented in the schema with descriptive examples. The description adds no additional semantic meaning beyond what the schema already provides, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Change') and a clear resource ('frame rate of the active sequence'). It clearly identifies what the tool operates on, though it does not distinguish itself from similar siblings like set_override_frame_rate or set_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 guidance is given about when to use this tool versus alternatives such as set_override_frame_rate or set_sequence_settings. The description implies a use case but provides no exclusions or comparison to related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_in_out_pointsSet Sequence In Out PointsA

Set the sequence in and out points (for export range, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsYesIn-point in seconds
out_secondsYesOut-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint false), so the description does not need to establish that. It adds minor context by explaining the purpose of setting in/out points, but does not describe side effects such as overwriting existing points or whether the change is undoable. This is adequate but not detailed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states what the tool does and includes a useful parenthetical purpose. It avoids redundancy with the schema, though the main clause closely mirrors the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with clear annotations and full schema coverage, the description is reasonably complete. It gives the core purpose and relies on the schema for parameter details. It could be improved by mentioning the relationship to get/clear in/out points or describing validation rules, but nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover both parameters ('In-point in seconds', 'Out-point in seconds') at 100%, so the description does not need to add much. The tool description adds no extra constraint information, such as in_seconds needing to be earlier than out_seconds, which the schema also omits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Set') on a specific resource ('sequence in and out points') and adds context about the use case ('for export range, etc.'). It is clear enough to distinguish from get/clear variants, though it does not explicitly differentiate from related range tools like set_work_area.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical hints that this tool is used for defining an export range, which implies one common scenario. However, it provides no explicit guidance about when to prefer this over alternatives such as set_work_area or clear_sequence_in_out, and does not mention any prerequisites or constraints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_pixel_aspect_ratioSet Sequence Pixel Aspect RatioB

Change the pixel aspect ratio of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
ratioYesPixel aspect ratio string (for example '1.0' for square pixels or '1.4222' for 16:9 DV).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations only indicate non-readOnly and non-idempotent behavior, and the description merely restates the mutation without adding detail about valid ratio formats, validation, or side effects. With minimal annotation coverage, the description carries the burden and does not disclose much beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single direct sentence with no redundant wording. The essential scope (active sequence) is front-loaded and every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has one required parameter, and an output schema exists, so the invocation data is present. However, for a mutating operation, the description lacks guidance on acceptable values and potential effects on the sequence, making it adequate but thin.

Complex tools with many parameters or behaviors need more documentation. Simple tools need 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 the sole parameter, including an example format. The description adds no additional 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?

The description clearly states the action ('Change') and the resource ('pixel aspect ratio of the active sequence'). It is unambiguous and aligns with the title, though it does not explicitly differentiate from the sibling set_override_pixel_aspect_ratio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool operates on the active sequence, but it does not explicitly state when to use this tool versus alternatives like set_override_pixel_aspect_ratio. No exclusions or conditions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_resolutionSet Sequence ResolutionA

Change the resolution (frame size) of the active sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthYesWidth in pixels
heightYesHeight in pixels

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag this as a non-read-only, non-destructive, non-idempotent mutation; the description adds the scope context that the active sequence is the target. It does not disclose potential side effects such as whether existing clip frame sizes are altered or whether the change is reversible, but the annotation profile lowers the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. It communicates the operation, target, and attribute without redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, both parameters are required and fully described, annotations cover the mutation/safety profile, and an output schema is present. The description is concise enough that nothing essential is missing for invoking it, though it could benefit from notes about limitations or side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: width and height are each documented as pixel dimensions. The description adds 'frame size' as a synonym for resolution but provides no additional parameter semantics beyond the schema, so it stays at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Change'), a specific target ('the active sequence'), and a precise resource ('resolution (frame size)'). This distinguishes it from sibling tools that set frame rate, pixel aspect ratio, display format, or broader sequence settings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The verb 'Change' plus 'of the active sequence' makes the primary use case clear, so usage is implied rather than explicit. However, it provides no guidance to choose this over set_sequence_settings or set_sequence_pixel_aspect_ratio, nor any exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_sequence_settingsSet Sequence SettingsA

Modify and read back sequence frame-size settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNoFrame width in pixels
heightNoFrame height in pixels
sequence_idNoSequence name or ID. Uses active sequence if omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the useful 'read back' behavior, which is not captured by the annotations and tells the agent that the tool returns the updated settings rather than just mutating them. It does not fully explain what happens when width or height is omitted, but the core write-and-return behavior is disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the verb, target, and return behavior with no wasted words. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with three fully described optional parameters and an output schema, the description is largely sufficient. The main gap is the lack of explicit differentiation from 'set_sequence_resolution', but invocation details are otherwise well covered by the schema and the read-back note.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents all three parameters with 100% coverage, so the description does not need to repeat them. It adds no deeper semantics, such as what happens if only one dimension is provided, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the operation ('Modify and read back') and the target resource ('sequence frame-size settings'), so an agent knows what the tool acts on. It is not a 5 because it does not distinguish itself from the closely related sibling 'set_sequence_resolution', which may overlap in purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to prefer this tool over alternatives such as 'get_sequence_settings' for read-only access or 'set_sequence_resolution' for changing resolution. The agent must infer usage context from the name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_source_in_outSet Source In OutA

Set in and/or out points on the clip currently open in the Source Monitor.

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsNoIn point in seconds (optional)
out_secondsNoOut point in seconds (optional)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false hints and provide no behavioral detail, so the description carries the burden of indicating mutation. It does clarify that this is a state-changing operation on the Source Monitor clip and that one or both points may be set via 'and/or'. It does not disclose behavior when no clip is open or whether unspecified points are preserved, but for a simple setter this is a moderate gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the action and target, with no filler or redundant restating of the title. Every word contributes to the meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with fully documented inputs and an output schema, the description is largely sufficient. The only meaningful omission is edge-case behavior such as what happens when no clip is open in the Source Monitor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both in_seconds and out_seconds having descriptions and optionality already specified. The description adds minimal semantic value with 'and/or', but the schema already handles the parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete action ('set') and a specific resource ('in/out points on the clip currently open in the Source Monitor'). It clearly distinguishes this from sequence-level in/out tools like set_sequence_in_out_points and project-item in/out tools like set_item_in_out.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear context and prerequisite: the target is the clip open in the Source Monitor, not the timeline or a project item. It does not explicitly name alternatives or exclusions, but the intended use case is unambiguous given the Source Monitor qualifier.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_start_timeSet Start TimeB

Set the start time (timecode offset) for a project item

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
start_secondsYesStart time in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the bar for added behavioral context is lower. The description adds some useful context by specifying 'timecode offset' and restricting the target to 'project item', but it does not mention overwrite behavior, side effects, or preconditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with the verb and object front-loaded, and the clarifying 'timecode offset' phrase is included without redundancy. It contains no unnecessary words or repeated schema content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with full schema coverage, annotations, and an output schema, the description is nearly adequate. However, it lacks sibling guidance, especially versus set_clip_start_time, and gives no indication of valid ranges or overwrite semantics, so an agent might select it incorrectly or call it with invalid values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by clarifying that start time means 'timecode offset', a nuance not present in the schema's 'Start time in seconds' description. No other parameter-level detail is added, hence not a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a concrete action ('Set') and a specific resource ('start time (timecode offset)' for a 'project item'). However, it does not explicitly distinguish itself from similarly named siblings like set_clip_start_time, so it stops short of the differentiating clarity needed for a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus set_clip_start_time, set_playhead_position, or other timing-related siblings. The description only restates the core function and gives no prerequisites, exclusions, or alternative selection hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_target_trackSet Target TrackA

Set a track as targeted (active for insert/overwrite edits). Only one video and one audio track can be targeted at a time.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetedYesWhether to target (true) or untarget (false) the track
track_typeYesTrack type
track_indexYesTrack index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the description carries the burden of behavioral context. It adds two genuinely useful traits: the functional consequence (active for insert/overwrite edits) and the exclusivity constraint (one video + one audio maximum). This goes beyond what any annotation or schema field states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero filler. The first sentence front-loads the operation and defines its meaning; the second adds the binding constraint. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-param setter with an output schema and annotations intact, the description is nearly complete. The return value is covered by the output schema, and the key runtime constraint is disclosed. The only minor gap is that it doesn't explicitly state that targeting a new video track implicitly untargets the previously targeted one, though the stated constraint makes this inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds value by enriching the meaning of the 'targeted' parameter — clarifying that setting it true makes the track active for insert/overwrite edits — and by giving the two targeted parameters operational context through the one-per-type rule. This exceeds the schema's terse 'Whether to target (true) or untarget (false) the track'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Set) and resource (track) with a precise semantic state: 'targeted (active for insert/overwrite edits)'. The parenthetical defines what 'targeted' means, and the singular 'a track' plus the one-per-type constraint implicitly distinguish it from siblings like set_all_tracks_targeted.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear operational context — 'Only one video and one audio track can be targeted at a time' — which implies when to use targeted=false (before targeting a new track of the same type). However, it never explicitly names alternatives or states when-not-to-use it versus set_all_tracks_targeted, so usage guidance remains implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_time_interpolationSet Time InterpolationB

Set time interpolation type for a clip (Frame Sampling, Frame Blending, Optical Flow). Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
interpolation_typeYes0 = Frame Sampling, 1 = Frame Blending, 2 = Optical Flow

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate that this is a mutating, non-idempotent operation, so the description is not solely responsible for that disclosure. It adds the 'Uses QE DOM' implementation detail, which provides some context beyond annotations, but it does not describe side effects, prerequisites, or consequences of changing the interpolation type.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that leads with the action and resource, then lists the valid values and the QE DOM context. Every word earns its place with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity, the required parameters, full schema coverage, output schema, and annotations, the description provides enough for a correct call in most cases. The main gap is that 'QE DOM' is left unexplained and no guidance is given for ambiguous sibling tools, but this does not block basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description mostly repeats the enum values already documented in the schema and adds no additional format, syntax, or usage nuance for node_id or interpolation_type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Set') and resource ('time interpolation type for a clip'), and it enumerates the three accepted modes. However, it does not explicitly distinguish this from the sibling tool 'set_frame_blend', which overlaps conceptually with the 'Frame Blending' option.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided. The mention of 'Uses QE DOM' hints at a technical constraint, but there is no direction about preferring this tool over set_frame_blend or any other interpolation-related sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_transcode_on_ingestSet Transcode On IngestB

Enable or disable transcoding on ingest for the project

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledYesTrue to enable transcode on ingest, false to disable

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating operation (readOnlyHint=false), so the description adds little behavioral context. It does not disclose whether the setting affects only future ingests, whether existing media is retranscoded, or any other side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no filler or redundancy. The verb, resource, and scope are front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-boolean project setting, the description, schema, and annotations together are nearly sufficient. However, it omits useful context about the effect scope (e.g., whether it applies only to future ingests) and when to turn the setting on or off.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes the single 'enabled' parameter with 100% coverage ('True to enable transcode on ingest, false to disable'). The description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Enable or disable'), the resource ('transcoding on ingest'), and the scope ('for the project'). It does not explicitly differentiate from related sibling tools like manage_proxies, but the 'on ingest' qualifier makes the intent unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. An agent must infer usage entirely from the tool name and one-line description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_uniform_scaleSet Uniform ScaleA

Toggle uniform scale on a clip's Motion effect. When enabled, Scale Width and Scale Height are linked.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
uniformYestrue for uniform (linked), false for non-uniform (independent width/height)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description clarifies that the operation targets the Motion effect and that enabling uniform mode links width and height, which goes beyond the readOnly/destructive hints. It does not discuss side effects on existing scale values or keyframes, but for a simple boolean setter the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, no filler, with the core action front-loaded. Every word contributes to the tool's purpose or effect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with an output schema and clear annotations, the description and schema together provide enough information to invoke the tool correctly. It does not explicitly disambiguate from set_scale_width_height, but this is not essential to making the call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameters are already documented: node_id identifies the clip and uniform expresses linked versus independent scale. The description echoes the linked/independent concept but adds little semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: toggling uniform scale on a clip's Motion effect. It also explains the observable behavior — Scale Width and Scale Height become linked — which distinguishes it from value-setting siblings like set_scale_width_height.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the description: use this when you want to link or unlink a clip's scale dimensions. However, it gives no explicit when-to-use guidance and does not mention alternatives such as set_scale_width_height or set_clip_scale.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setup_duckingSetup DuckingA

Build a verified Volume > Level keyframe curve for one audio clip. Ducking-window times are relative to that clip's start; overlapping or out-of-range windows are rejected before any keyframe write.

ParametersJSON Schema
NameRequiredDescriptionDefault
base_dbNoNormal clip level in dB (defaults to 0).
node_idYesTimeline audio-clip node ID.
fade_secondsNoFade length on each side of a window in seconds (defaults to 0.2).
ducking_windowsYesNon-overlapping windows during which this clip should be quieter.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral detail beyond the annotations: it states that windows are relative to the clip start and that overlapping or out-of-range windows are rejected before any keyframe write. Since annotations are all false and provide no safety profile, this validation-before-write disclosure is valuable, though it does not discuss overwriting existing keyframes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler: the first sentence front-loads the action and resource, and the second states the key timing and validation constraints. 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 full schema parameter coverage and an output schema present, the description supplies the missing behavioral context: single-clip scope, relative window times, and pre-write validation. It is sufficient for an agent to invoke the tool correctly, though a note about interaction with existing keyframes would round it out.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters are already documented in the schema. The description adds little parameter-level meaning beyond reinforcing that window times are relative to clip start, which the schema already states. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb, 'Build,' and names the precise resource: a 'verified Volume > Level keyframe curve for one audio clip.' The one-clip ducking scope distinguishes it clearly from sibling volume/keyframe tools like set_clip_volume or add_audio_keyframes, even though no sibling is explicitly named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly communicates the intended use case: setting up ducking automation on a single audio clip, with windows relative to that clip's start. It does not explicitly name alternatives or give when-not-to-use guidance, but the scope and validation constraints give an agent enough context to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_work_areaSet Work AreaB

Set the work area (bar) in and out points

ParametersJSON Schema
NameRequiredDescriptionDefault
in_secondsYesWork area in-point in seconds
out_secondsYesWork area out-point in seconds

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, leaving the description to carry the behavioral burden. It states that it modifies the work area bar but does not disclose side effects, prerequisites (e.g., requires an active sequence), validation rules (e.g., in_seconds < out_seconds), or whether the work area becomes enabled. With minimal annotations, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, direct sentence with no filler. The action and object are front-loaded, and every word contributes to the meaning. This is an appropriately minimal description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter setter with an output schema, the description is functional but incomplete. It doesn't mention whether the target is the active sequence, whether the work area must be enabled first, or what the return value represents. Since related tools exist (e.g., is_work_area_enabled), these omissions could lead to misuse.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for both parameters ('Work area in-point in seconds', 'Work area out-point in seconds'). The description merely repeats the parameter names and adds no extra constraints, units, or ordering information. Baseline 3 applies because the schema already fully documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('set'), resource ('work area (bar)'), and the exact attributes (in and out points). It clearly distinguishes this from related tools like set_sequence_in_out_points or set_source_in_out by naming the work area specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided for when to use this tool versus alternatives such as get_work_area, set_sequence_in_out_points, set_item_in_out, or clear_sequence_in_out. There are no exclusions, alternatives, or context cues to help an agent choose this tool correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_workspaceSet WorkspaceA

Switch to a specific workspace layout (e.g., 'Editing', 'Color', 'Audio', 'Effects', 'Graphics')

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the workspace to activate (use get_workspaces to see available options)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a write operation (readOnlyHint=false), so the description's 'Switch' is consistent but not a major new disclosure. It adds useful framing that this changes a UI workspace layout rather than project media, but it does not describe side effects, persistence, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence, front-loaded with the action, with examples in a parenthetical. No filler or redundancy; every part of the description earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, low-complexity tool with an output schema, the description plus schema is sufficient for correct invocation. The get_workspaces pointer covers value discovery, and the examples further reduce ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already tells the caller to use get_workspaces to see available names. The description adds value by listing concrete example values, which partially compensates for the lack of an enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Switch') and a clear resource ('workspace layout'), then gives concrete examples ('Editing', 'Color', 'Audio', 'Effects', 'Graphics'). This clearly distinguishes it from siblings like get_workspaces (reading vs changing state) and from the many unrelated set_* tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by the verb 'Switch', and the schema's parameter description points to get_workspaces for valid options. However, the description itself does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_xmp_metadataSet Xmp MetadataA

Merge a raw XMP XML patch into a project item's existing XMP metadata without removing unrelated fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesNode ID or name of the project item
xmp_xmlYesWell-formed XMP XML containing only the fields to add or replace

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context by explaining that unrelated fields are preserved, which is important for a write operation. However, it does not disclose what happens on invalid XML, whether the operation is atomic, or how conflicting fields are resolved. Annotations are minimal, so the description carries much of the burden and only partially covers it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, tightly worded sentence that front-loads the core action and the most important behavioral guarantee. No filler, repetition, or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity, the description covers the essential semantics well, and the presence of an output schema reduces the need to explain return values. It could be slightly more complete by naming related tools or clarifying expected input format, but nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both item_id and xmp_xml already described in the input schema. The description reinforces that xmp_xml is a patch containing only fields to add or replace, but it adds little beyond what the schema already states.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Merge') and resource ('a project item's existing XMP metadata'), and clarifies the key scoping constraint: it applies a raw XMP XML patch without removing unrelated fields. This clearly distinguishes it from similar metadata tools like get_xmp_metadata or set_metadata.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the use case clear: update a subset of XMP fields while preserving existing metadata. It does not explicitly name alternative tools or state when not to use it, but the merge semantics provide enough context to infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_zero_pointSet Zero PointA

Set the starting timecode (zero point) of a sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
sequence_idNoSequence name or ID. Uses active sequence if omitted.
start_secondsYesStart time in seconds for the timecode origin

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate a mutating, non-idempotent operation, and the description adds semantic context by explaining 'zero point' as the starting timecode. It does not disclose additional side effects such as how existing markers, clips, or sequence timecode display might be affected, but the core behavioral meaning is clear and does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

single, tightly-worded sentence that front-loads the action and object. There is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-required-parameter tool with full schema coverage and an output schema, the description is mostly complete. The main gap is lack of differentiation from set_start_time, but an agent can still correctly invoke the tool based on the provided information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents start_seconds and sequence_id well. The description does not add significant meaning beyond the schema, though it reinforces that start_seconds defines the timecode origin.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Set the starting timecode (zero point) of a sequence.' It clearly defines the concept of zero point, making the tool's purpose understandable. However, it does not explicitly distinguish itself from the sibling set_start_time, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: this tool sets the sequence's timecode origin. It does not state when to use it instead of set_start_time or set_sequence_in_out_points, and provides no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

slide_editSlide EditC

Perform a verified slide edit on a clip using adjacent clips from the public timeline DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = slide right, negative = slide left)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating, non-idempotent operation, but the description adds little beyond that. It does not clarify what 'verified' means, whether adjacent clips are modified, whether the change is destructive to source clips, or whether the operation relies on any hidden state in the 'public timeline DOM.' These are meaningful behavioral gaps for a tool that edits the timeline.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, compact sentence with the main action front-loaded. However, the phrases 'verified slide edit' and 'public timeline DOM' introduce jargon that is not explained, slightly reducing clarity despite the concise structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although the tool has an output schema and only two parameters, the description is not fully complete for reliable invocation. It leaves key terms ('verified', 'public timeline DOM') undefined, does not explain what happens to adjacent clips, and offers no route to alternative tools when this operation is not appropriate. An agent would need external domain knowledge to use it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the two parameters are already documented in the input schema. The description adds no extra parameter meaning, but since the schema already explains node_id and offset_seconds with positive/negative direction semantics, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Perform') and a specific editing operation ('verified slide edit') on a clip. It also hints at the mechanism ('using adjacent clips'), which helps distinguish slide editing from related trim operations like roll or slip edits, though it does not explicitly name those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to choose this tool over sibling tools such as slip_edit, roll_edit, or move_clip. The phrase 'slide edit' implies a known editing concept, but the description does not explain the conditions or context in which this tool is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

slip_editSlip EditB

Perform a verified slip edit on a clip using public source in/out properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
offset_secondsYesOffset in seconds (positive = slip forward in source, negative = slip backward)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide no meaningful behavior coverage (readOnlyHint=false is the only signal), so the description carries the burden. It does not disclose what 'verified' means, what side effects occur, what happens to the clip's source in/out and timeline position, or how failures are surfaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler. Every phrase ('verified slip edit', 'public source in/out properties') contributes to identifying the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema and fully documented parameters, the core invocation is covered. However, for a mutating operation with empty behavioral annotations, the description should explain what verification happens, what prerequisites apply, and how the edit affects the clip; these gaps leave the context only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%: node_id and offset_seconds are each documented, with offset_seconds already explaining positive/negative direction. The description adds only the general slip-edit framing, so it meets the baseline without significantly enhancing parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Perform a verified slip edit on a clip') and names the operand (a clip) plus the mechanism ('using public source in/out properties'). It clearly identifies the tool's function, though it does not explicitly contrast it with sibling edit operations like roll_edit or slide_edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use slip_edit instead of the many related edit tools, nor are any conditions or exclusions stated. The phrase 'using public source in/out properties' hints at an eligibility constraint but never explains what makes a clip eligible.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

speed_changeSpeed ChangeA

Unavailable: Premiere does not expose a supported scripting API for changing a timeline clip's speed.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip
reverseNoReverse playback direction (default: false)
speed_percentYesSpeed as percentage (100 = normal, 200 = double, 50 = half)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the single most important behavioral fact — the operation is not supported — which the annotations cannot express (they only signal readOnly=false, destructive=false, idempotent=false). This honestly prevents an agent from attempting a futile call, though it stops short of stating what happens on invocation (error vs. no-op).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with zero filler, front-loaded with the decisive word 'Unavailable' and the reason behind it. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stub tool, the unavailability notice is the essential content and it is present. However, it omits the runtime failure behavior and names no fallback tool, so an agent must either risk invoking it or scan the large sibling list to find the working speed-change path.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all three parameters (node_id, speed_percent, reverse), so per rubric the baseline is 3. Since the tool is unavailable, parameter details are largely moot, and the description adds no parameter-level information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the intended operation precisely (changing a timeline clip's speed) and immediately declares it unsupported by Premiere's scripting API. This is specific and clearly distinguishes the tool's nature from working siblings, though it describes what the tool cannot do rather than its actual runtime behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool or what to use instead. The sibling list contains obvious working alternatives for speed manipulation (set_clip_speed_qe, reverse_clip, set_time_interpolation, get_clip_speed), but the description does not point to any of them, leaving the agent to discover the routing on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

split_clipSplit ClipA

Split every clip on one track that spans a timeline time, then verify both resulting boundaries. Requires QE DOM; effect-keyframe redistribution remains unverified.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_typeNoTrack type (default: video)
track_indexNoTrack index (0-based, default: 0)
time_secondsYesTimeline time in seconds where clips on the selected track will split

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it discloses a prerequisite (QE DOM), a post-condition (verify both resulting boundaries), and a known limitation (effect-keyframe redistribution remains unverified). This gives the agent important expectations without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: the first front-loads the core action and scope, the second adds prerequisite and caveat. 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 simple 3-parameter tool with an output schema and annotations, the description covers the action, scope, prerequisite, verification step, and limitation. 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 all parameters. The description reinforces the track-selection intent but does not add new parameter-level meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('split'), a precise resource ('every clip on one track that spans a timeline time'), and a follow-up verification step. This clearly differentiates it from broader split tools like razor_all_tracks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'one track' scope implies when to use it, and 'Requires QE DOM' states a prerequisite. However, it does not explicitly name alternatives or say when not to use it, so the agent must infer the distinction from sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stabilize_clipStabilize ClipB

Apply the Warp Stabilizer effect to a clip for video stabilization. Uses QE DOM.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoStabilization method (default: 'Subspace Warp')
node_idYesNode ID of the clip to stabilize
smoothnessNoStabilization smoothness percentage (default: 50). Higher = smoother but more cropping.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description only needs to add value beyond that. It adds the 'Uses QE DOM' implementation note, which hints that the effect is applied through a non-standard API path and that node_id is a QE DOM identifier. However, it does not disclose that Warp Stabilizer triggers a potentially lengthy analysis pass or that the clip's effect stack is modified, leaving notable behavioral traits unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero filler, and the core action is front-loaded in the first sentence. The second sentence, 'Uses QE DOM.', is a terse fragment that earns its place as an implementation qualifier but is less informative than a fully formed statement would be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The burden is lowered by the presence of an output schema, full parameter documentation, and annotations, but meaningful context is still missing: no warning about Warp Stabilizer's analysis time, no prerequisite that node_id refer to a valid video clip, and no pointer to the sibling get_qe_clip_info as a source for the QE DOM node id. The tool is minimally invocable with one required parameter, but the operative context is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents method (enum plus default 'Subspace Warp'), node_id, and smoothness (default 50 with the cropping trade-off). The description itself adds no parameter-level detail; the 'Uses QE DOM' statement only weakly disambiguates node_id as a QE DOM-specific identifier. With full schema coverage, the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Apply'), a specific resource ('the Warp Stabilizer effect'), a target ('a clip'), and the purpose ('video stabilization'), which makes the tool's function clear and distinguishes it from the generic sibling apply_effect. However, it does not explicitly name overlapping siblings or state scope boundaries, so it stops just short of full 5-level differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as apply_effect, color_correct, set_time_interpolation, or reverse_clip, all of which also operate on clips. There are also no stated prerequisites (e.g., the clip must be a video clip with motion) or exclusions, so the agent must infer selection logic from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_batch_encodeStart Batch EncodeA

Start encoding all items in the Adobe Media Encoder render queue

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations are all false/default and provide little safety context, so the description carries the disclosure burden. It only names the action and target, omitting whether encoding starts asynchronously, whether the queue is cleared, or what side effects occur.

Agents need to know what a tool does to the world before 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 11-word sentence that states the action and the target with no filler. It is front-loaded and every word contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter action with an output schema, the description is minimally viable, but it omits practical context: it does not mention prerequisites (items must already be in the render queue) or the natural follow-up (e.g., checking status with get_render_queue_status).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema fully covers this by having an empty properties object. The description adds the useful scoping detail 'all items', which is sufficient; no parameter-level clarification is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Start encoding') and a precise resource ('all items in the Adobe Media Encoder render queue'), making the tool's action unambiguous and distinct from single-item encode siblings like encode_project_item or encode_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. The description does not mention that this is the batch option, nor does it route to single-item or status-checking tools such as encode_project_item or get_render_queue_status.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stop_playbackStop PlaybackA

Request that active-sequence timeline playback stop through QE. The legacy API does not provide a same-call playhead readback, so stopped state is not reported as verified.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations: it discloses that the API has no same-call playhead readback, so stopped state is not verified. This is important because 'stop' could otherwise imply a confirmed state change. It also notes the operation goes through QE, which is useful implementation 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 sentences, front-loaded with the core action, and no filler. The second sentence adds a valuable behavioral caveat without redundancy. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema present, the description is complete. It covers the action, the scope ('active-sequence'), the execution path ('through QE'), and the important verification limitation. An agent has enough information to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema already covers all parameter information. The description does not need to add parameter-level detail. Since there are no parameters, the baseline of 4 applies: no compensation is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action: stop active-sequence timeline playback through QE. It names the exact resource ('active-sequence timeline playback') and the verb 'stop', leaving no ambiguity about the tool's function. It also implicitly distinguishes itself from sibling play_timeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: this is the tool for stopping playback of the active sequence, and it says the operation is only a 'request,' not a guaranteed or verified transition. It does not explicitly name alternatives or exclusion criteria, but the context is unambiguous enough for an agent to know when to call it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

toggle_track_visibilityToggle Track VisibilityC

Toggle a video track's visibility (eye icon)

ParametersJSON Schema
NameRequiredDescriptionDefault
visibleYesTrue to show, false to hide
track_indexYesVideo track index (0-based)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the bar is lower. The description adds only the '(eye icon)' UI mapping and discloses nothing about consequences: no behavior for an invalid or audio track_index, no note that visibility is explicitly set rather than flipped, and no mention of interaction with locked tracks. No contradiction with annotations, but minimal added behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single verb-first sentence with zero filler, which is appropriately brief for a simple 2-parameter tool. It is slightly over-terse: a few extra words clarifying that the boolean sets state explicitly rather than toggling would have resolved the central ambiguity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple tool whose schema fully documents both required parameters and whose output schema exists, so return-value explanation is not needed. The notable gaps are the unaddressed toggle-versus-set semantics and undefined behavior for non-video track indices, but nothing critical is missing for basic correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: 'visible' is documented as 'True to show, false to hide' and 'track_index' as 'Video track index (0-based)'. The description itself contributes no parameter detail, so the baseline 3 applies; the schema does the necessary work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Toggle') and resource ('video track's visibility') and anchors it to the UI eye icon, which helps distinguish it from siblings like mute_track (audio) and lock_track (lock state). However, the verb 'toggle' slightly misrepresents actual behavior: the required 'visible' boolean sets an explicit target state ('True to show, false to hide') rather than flipping the current state, so the semantics are a set operation, not a toggle.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. With closely related siblings such as mute_track, lock_track, enable_disable_clip, and batch_enable_disable, an agent gets no criteria for choosing track-level visibility over those options. The use case is only implied by the subject matter, with no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trim_clipTrim ClipA

Trim exactly one source in/out point and verify the corresponding visible timeline edge. Refuses retimed clips and, by default, trims that would leave effect keyframes outside the visible clip.

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the clip to trim
new_in_secondsNoNew source in-point in seconds (relative to the clip's source media). Specify exactly one edit point.
keyframe_policyNoHow to handle effect keyframes beyond the trimmed visible range: reject (default) leaves the timeline unchanged; preserve explicitly keeps them and reports their count.
new_out_secondsNoNew source out-point in seconds (relative to the clip's source media). Specify exactly one edit point.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behaviors beyond the minimal annotations: it refuses retimed clips and, by default, rejects trims that would push effect keyframes outside the visible clip, while the preserve policy explicitly keeps them and reports count. No contradiction with readOnlyHint=false or 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load the core action and then list the important exceptions. No filler or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's core behavior, constraints, and keyframe handling, and an output schema exists for return values. Minor gaps like prerequisites (e.g., an active sequence) are not stated, but the description is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline of 3 applies. The description reinforces the 'exactly one edit point' rule and adds context about keyframe policy behavior, but does not substantially enrich parameter meaning 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 uses a specific verb and resource ('Trim exactly one source in/out point') and clarifies the effect on the visible timeline edge. It is distinct from trimming-related siblings by emphasizing source in/out points, though it does not explicitly name or contrast a sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus related operations like roll_edit, slide_edit, or ripple_delete. The refusals for retimed clips and keyframe overflow are constraints, not decision rules for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

undoUndoB

Undo the last action in Premiere Pro

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of times to undo (default: 1)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only restates the core action and adds no behavioral context beyond what the title/name already says. Annotations provide only negative hints (not read-only, not idempotent, not destructive), leaving the description to carry the burden; it does not mention behavior when there is no undo history, effects on project state, or whether count triggers multiple sequential undos.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundant content. Every word contributes to the basic purpose, making it appropriately sized for such a simple 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?

Given the tool's low complexity, an optional count parameter, and an output schema, the description is minimally adequate for basic invocation. However, it does not clarify the relationship with 'multiple_undo', what happens when the undo history is empty, or whether the count parameter is meant to replace the sibling 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?

The schema fully documents the only parameter ('count' with default 1), so schema_description_coverage is 100% and the baseline is 3. The description adds no parameter information beyond the schema, and the singular phrase 'the last action' mildly undercuts the count parameter's ability to undo multiple steps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and object ('Undo the last action') and names the target application ('Premiere Pro'), so it is clear what the tool does. It does not, however, differentiate itself from the sibling tool 'multiple_undo', especially since this tool also accepts a count parameter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'redo' or 'multiple_undo'. It also does not mention whether count should be used for batch undo or when it would be better to call another sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unnest_sequenceUnnest SequenceA

Unnest a nested sequence on the timeline, replacing it with the contents of the nested sequence

ParametersJSON Schema
NameRequiredDescriptionDefault
node_idYesNode ID of the nested sequence clip on the timeline to unnest

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the key behavioral outcome: the nested sequence clip is replaced by its contents. It also scopes the operation to the timeline. While annotations are sparse, the description does not go into reversibility/undo behavior or project-level side effects, so it is strong but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence that front-loads the action and clearly states the replacement behavior. Every word earns its place, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, has one fully documented parameter, and an output schema exists. The description sufficiently communicates the operation and its observable effect on the timeline; no additional context is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, node_id, is already fully described in the schema as the Node ID of the nested sequence clip to unnest. The tool description does not add extra parameter guidance, but schema coverage is 100%, so the baseline applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Unnest') and identifies the exact resource ('a nested sequence on the timeline') and the resulting behavior ('replacing it with the contents of the nested sequence'). This makes it easy to distinguish from the inverse sibling tool nest_clips and related sequence tools like duplicate_sequence or delete_sequence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is clear from the operation itself: when a nested sequence clip should be flattened into its contents on the timeline. However, the description does not explicitly say when not to use it or mention alternatives such as nest_clips for the inverse operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_markerUpdate MarkerB

Update an existing marker's properties

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name
colorNoNew color index
commentsNoNew comments
time_secondsYesTime position of the marker to update

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, idempotentHint=false, and destructiveHint=false. The description adds little behavioral context beyond what the title and annotations convey; it does not mention failure behavior, whether only provided properties are updated, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundancy. It earns its place by clarifying 'existing' and 'properties,' though it could provide slightly more useful context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple update operation, the input schema covers parameters and the output schema exists. The description is sufficient for basic invocation, though it could benefit from noting that only specified properties are updated and what happens if no marker is found at the given time.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents each parameter, including time_seconds as the identifying position. The description adds no additional parameter context, which is acceptable given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('update') with a clear resource ('existing marker') and scope ('properties'), making it easy to distinguish from siblings like add_marker, delete_marker, and list_markers. It accurately conveys that this tool modifies, rather than creates or removes, a marker.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives such as add_marker, delete_marker, or list_markers. It only weakly implies usage through the word 'existing' but does not state conditions, exclusions, or alternative scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_cmx3600_edlValidate Cmx3600 EdlA

Validate a local CMX 3600 EDL's supported event grammar, timecodes, durations, duplicate event IDs, record overlaps, and record gaps before user-assisted Premiere interchange.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .edl file
frame_rateNoCMX timecode rate: 24, 25, 29.97, 30, 50, 59.94, or 60 (default: 24)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the description does not need to restate safety. The description adds useful detail about what validations are performed, but it does not disclose potential side effects, whether the file is modified, or what constitutes a failed validation. Since readOnlyHint=false leaves mutation ambiguous, more explicit disclosure would strengthen this dimension.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, information-dense sentence front-loads the action and resource, then lists the validation criteria compactly. Every phrase contributes meaning with no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers what is validated and when it should run, and an output schema exists so return-value details are unnecessary. The only minor gap is not distinguishing this tool from inspect_cmx3600_edl or compare_cmx3600_edls explicitly, but the validation-focused framing largely covers that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters effectively. The description reinforces that the file is local and CMX 3600-specific, but it does not add new meaning about path or frame_rate beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Validate') and identifies the exact resource ('local CMX 3600 EDL'), then enumerates concrete validation targets: event grammar, timecodes, durations, duplicate event IDs, record overlaps, and record gaps. This sharply distinguishes it from sibling tools like inspect_cmx3600_edl and compare_cmx3600_edls.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'before user-assisted Premiere interchange' gives clear context for when the tool should be used. It does not name alternative/sibling tools or explicitly state when not to use it, but the usage context is unambiguous enough for an agent to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_export_presetValidate Export PresetB

Validate that an Adobe Media Encoder .epr preset exists and ask the active Premiere sequence which output extension it produces

ParametersJSON Schema
NameRequiredDescriptionDefault
preset_pathYesFull path to an Adobe Media Encoder export preset (.epr)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The phrase 'validate ... exists and ask' suggests a non-destructive, query-like operation, and it surfaces the dependency on the active Premiere sequence. But annotations provide no readOnlyHint safety signal, and the description does not address failure cases such as a missing preset or no active sequence, leaving some behavioral ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no filler and front-loads the primary validation action. It is slightly awkward in the 'ask the active Premiere sequence which output extension it produces' phrasing, so it is not perfectly polished, but it remains appropriately compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with an output schema, the description covers the two core behaviors and names the active-sequence dependency. Still, it does not clearly state whether the output extension belongs to the preset or the sequence, and it omits explicit preconditions like requiring an open Premiere project or active sequence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, preset_path, is already fully documented in the schema with the same '.epr' and 'Full path' details. The description restates the type of preset but adds no additional meaning beyond the schema, so it earns the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool's action: validate that an Adobe Media Encoder .epr preset exists and determine the output extension via the active Premiere sequence. It is specific enough to be distinguished from siblings like get_export_file_extension or get_encoder_presets, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied rather than explicit: an agent can infer this is for checking an export preset before encoding, and that an active sequence is involved. However, there is no explicit statement of when to use this over alternatives like get_export_file_extension or get_encoder_presets, and no when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_project_for_exportValidate Project For ExportA
Read-onlyIdempotent

Run a non-mutating export readiness audit for an active or named sequence. It reports blocking offline media, empty timelines, inaccessible preset/output paths, duration, and optional timeline gaps without queuing an export.

ParametersJSON Schema
NameRequiredDescriptionDefault
check_gapsNoReport gaps on populated tracks as warnings (defaults to true).
output_pathNoOptional intended delivery path; its parent folder is checked.
preset_pathNoOptional .epr preset path to check.
sequence_idNoSequence ID or name. Defaults to the active sequence.
require_non_empty_timelineNoTreat an empty sequence as a blocking error (defaults to true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to re-establish safety. It does add useful context about what the audit reports and that no export is queued, but the behavioral disclosure beyond annotations is modest. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core purpose and then lists the checks in an organized way. Every clause adds information, 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 validation/audit tool with full parameter documentation, a rich output schema, and annotations covering safety and idempotence, the description provides sufficient context. It names the target resource, describes the scope of checks, and explicitly clarifies the non-export behavior, so an agent has what it 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 parameters are already well documented. The description adds high-level alignment with some parameters (preset paths, output paths, optional gaps), but it does not go beyond the schema in meaningfully clarifying 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?

The description states a specific verb ('Run a non-mutating export readiness audit') and a resource ('an active or named sequence'), and it clearly lists what the tool reports. It is readily distinguishable from export-related siblings because it explicitly emphasizes readiness checking and that no export is queued.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: before exporting, to check if a sequence is ready. It also communicates what it does not do ('without queuing an export'), which helps avoid confusion with export_sequence or add_to_render_queue. However, it does not explicitly name alternative sibling tools such as validate_export_preset or inspect_edit_readiness.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_delivery_fileVerify Delivery FileA

Verify that an exported delivery is a non-empty regular file and calculate a SHA-256 or SHA-512 checksum; optionally compare expected size and checksum

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYesFull path to the exported delivery file
expected_checksumNoOptional expected hexadecimal checksum to compare
checksum_algorithmNoChecksum algorithm (default: sha256)
minimum_size_bytesNoMinimum acceptable file size in bytes (default: 1)
expected_size_bytesNoOptional exact expected file size in bytes

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds concrete behavioral detail beyond annotations: it states the file must be non-empty and a regular file, that a checksum is calculated, and that expected size/checksum may be compared. Annotations do not claim read-only, and the description doesn't contradict them; it simply doesn't discuss side effects, but the verification semantics are clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One well-structured sentence that front-loads the core purpose and packs in the essential behaviors without redundancy. Every clause adds information needed to understand or invoke the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 100% schema parameter coverage and an output schema present, the description covers the full verification behavior: file type/size check, checksum calculation, and optional comparisons. No critical information needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so this dimension starts at baseline 3. The description adds extra meaning by tying parameters to the verification workflow: expected_size_bytes and expected_checksum are for optional comparison, checksum_algorithm selects SHA-256/SHA-512, and minimum_size_bytes corresponds to the non-empty file check. This goes beyond the schema's field-level descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Verify') and a specific resource ('exported delivery'), and spells out the exact checks performed: non-empty regular file, SHA-256/SHA-512 checksum, and optional size/checksum comparison. This makes it clearly distinguishable from sibling validation tools such as validate_export_preset or verify_fcpxml_media_references.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The use case is clear: verify a delivery file after export, optionally checking against expected values. It doesn't explicitly name when-not-to-use or list alternatives, but the action and resource are specific enough that an agent can select it over related validation and export tools without ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_fcpxml_media_referencesVerify Fcpxml Media ReferencesA

Verify FCPXML file:// media references only inside caller-approved existing roots. References outside those roots are never statted or exposed as local paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesExisting local .fcpxml or .xml file
allowed_rootsYesOne to sixteen existing absolute roots that may be inspected

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

A3.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds a meaningful behavioral guarantee beyond annotations: references outside the approved roots are 'never statted or exposed as local paths.' This is a critical safety property not visible in the annotations or schema, and it directly informs an agent's trust and usage decisions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The primary purpose is front-loaded, and the crucial safety constraint appears in the second sentence without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema, fully described parameters, and a concise yet precise description of its scope and safety behavior, nothing essential is missing for an agent to invoke it correctly. The description plus schema and annotations form a complete contract.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters thoroughly. The description adds the notion of 'caller-approved' roots and clarifies the verification boundary, but it does not substantially extend the schema's parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Verify'), the resource ('FCPXML file:// media references'), and the specific scope constraint ('only inside caller-approved existing roots'). It is clear but does not explicitly differentiate from nearby siblings such as inspect_fcpxml_interchange or verify_delivery_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to choose this tool over alternatives, nor does it mention exclusions or prerequisites beyond what the schema already covers. The intended use case is implied by the name and description, but not articulated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_premiere_connectionVerify Premiere ConnectionB

Run a safe, read-only first-run check. It proves that this MCP server, the selected Premiere bridge, an active project, and an active sequence are connected without returning project names, paths, or media details.

ParametersJSON Schema
NameRequiredDescriptionDefault
backendNoBridge to check. Defaults to CEP. This check never falls back to a different bridge.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesWhether the tool completed successfully.
dataNoTool-specific result data when ok is true.
toolYesThe registered MCP tool name.
errorNoFailure detail when ok is false.

TDQS

B3.4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly asserts the operation is 'safe, read-only,' while the annotations set readOnlyHint=false, signaling that the tool is not flagged as read-only and may modify state. An agent receives contradictory signals about whether invoking this check has side effects, which is an annotation contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed sentences with zero filler: purpose is front-loaded, followed by scope (what the check proves) and a privacy guarantee (what it does not return). 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 simple single-parameter check tool that has an output schema, the description adequately conveys what is verified and what is deliberately withheld. The one notable gap is that the read-only safety claim conflicts with the annotation metadata, which an agent must reconcile before trusting the check's side-effect profile.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales 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 backend parameter already documents the cep/uxp enum, the CEP default, and the no-fallback behavior. The description's reference to 'the selected Premiere bridge' adds framing but no new meaning, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: run a first-run check that proves the connection chain from MCP server through the selected Premiere bridge to an active project and sequence. The explicit guarantee about returning no project names, paths, or media details differentiates it from connectivity siblings like ping or get_bridge_telemetry.

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 'first-run check' provides implied usage context (run this before relying on other Premiere tools), but the description never names alternatives or states when not to use it. Routing decisions against siblings like ping or get_premiere_state are 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv1.14.5
    • Addeddetect_beats
    • Addeddetect_motion_peaks
    • Addedinspect_stabilizer_status
    • Addedplan_shot_match
    • Addedread_video_scopes
  2. 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"
        +}
  3. 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"
  4. 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."
  5. 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."
  6. 1 tool updatev1.9.2
    • Addedverify_premiere_connection
  7. 3 tool updatesv1.8.0
    • Addeddetect_silence
    • Removedevaluate_expression
    • Removedexecute_extendscript
  8. 236 tool updatesv1.4.0
    • Changedadd_adjustment_layer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_audio_keyframes2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / keyframes / items
        Added value: +{
        +  "additionalProperties": {},
        +  "properties": {
        +    "level_db": {
        +      "description": "Audio level in dB",
        +      "type": "number"
        +    },
        +    "time_seconds": {
        +      "description": "Time in seconds relative to clip start",
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "time_seconds",
        +    "level_db"
        +  ],
        +  "type": "object"
        +}
    • Changedadd_custom_metadata_field1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_keyframe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_marker_to_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_text_overlay2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedInput schema / properties / caption_format / enum
        Previous value: -[
        -  "subtitle",
        -  "608",
        -  "708",
        -  "teletext"
        -]New value: +[
        +  "608",
        +  "708",
        +  "subtitle",
        +  "teletext"
        +]
    • Changedadd_to_render_queue1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_to_timeline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_tracks1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_transition1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadd_transition_to_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedadjust_audio_levels1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedapply_audio_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedapply_edit_plan
    • Changedapply_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedapply_lut1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedattach_custom_property1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedauto_reframe_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_add_transitions1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_apply_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_enable_disable1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedbatch_rename_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcapture_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedclear_item_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedclear_sequence_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedclose_project
    • Changedclose_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcolor_correct1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedconsolidate_and_transfer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedconsolidate_duplicates
    • Changedcopy_effect_values1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcopy_effects_between_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_bars_and_tone1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_caption_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedcreate_project
    • Changedcreate_sequence2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedInput schema / properties / preset_path / description
        Previous value: -"Optional path to a sequence preset file (.sqpreset). Uses default if omitted."New value: +"Optional path to a sequence preset file (.sqpreset). If omitted, a default preset is discovered from the Premiere installation (override with PREMIERE_DEFAULT_SEQUENCE_PRESET)."
    • Changedcreate_sequence_from_clips2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedcreate_sequence_from_preset1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_smart_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_subclip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedcreate_subsequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_multiple_project_items2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changeddelete_preview_files1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddelete_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changeddetach_proxy1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedduplicate_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedduplicate_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedenable_disable_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedencode_file1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedencode_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedevaluate_expression1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexecute_extendscript1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_aaf1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_as_fcp_xml1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_as_project1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_omf1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedexport_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedfind_items_by_media_path1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedfind_project_item_by_name
    • Changedfreeze_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_active_sequence
    • Addedget_advanced_feature_support
    • Addedget_av_feature_support
    • Changedget_bin_contents1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_bridge_telemetry
    • Addedget_capabilities
    • Changedget_clip_adjustment_layer1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_at_playhead1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_clip_at_position
    • Changedget_clip_links1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_markers1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_clip_speed1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_color_label1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_color_space1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_effect_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_encoder_presets1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_export_file_extension1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_footage_interpretation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_full_clip_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_full_sequence_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_item_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_keyframes1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_linked_items1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_mogrt_component1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_next_edit_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_project_info
    • Changedget_project_item_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_qe_clip_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_selected_clips
    • Changedget_sequence_markers_by_type1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedget_sequence_settings
    • Changedget_sequence_structure1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_timeline_gaps1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_timeline_summary1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_track_info1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_used_media_report1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_value_at_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_xmp_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedhas_proxy1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedimport_ae_comps
    • Changedimport_fcp_xml1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_folder1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_image_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_media2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / file_paths / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedimport_mogrt1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_mogrt_from_library1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedimport_sequences2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / sequence_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedinsert_from_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedinspect_dom_object1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedinspect_project_item_av_metadata
    • Addedinspect_project_recovery
    • Addedinspect_sequence_av_settings
    • Changedlist_clip_effects1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedlist_markers1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedlist_project_items
    • Addedlist_sequence_tracks
    • Addedlist_sequences
    • Changedlock_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmanage_proxies1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmatch_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_clip_to_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_item_to_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmove_items_to_bin2 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedInput schema / properties / item_ids / items
        Added value: +{
        +  "type": "string"
        +}
    • Changedmove_playhead_to_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmultiple_undo1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedmute_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changednest_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedopen_in_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedopen_project
    • Changedoverwrite_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedoverwrite_from_source1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedplay_source_monitor1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedpreview_edit_plan
    • Changedrazor_all_tracks1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedrefresh_media
    • Changedrelink_media1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_all_effects1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_effect1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_effect_by_name1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_from_timeline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_keyframe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_keyframe_range1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedremove_selected_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_bin1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_project_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedrename_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreplace_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreplace_clip_media1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedreverse_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedripple_delete1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedroll_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedsave_project
    • Addedsave_project_as
    • Changedsearch_project_items1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_all_clips1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_by_color1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_by_name1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_clips_in_range1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedselect_item1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_active_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_all_tracks_targeted1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_anti_alias_quality1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_blend_mode1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_anchor_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_opacity1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_pan1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_position1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_properties1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_rotation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_scale1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_selection1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_speed_qe1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_start_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_clip_volume1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_color_label1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_color_value1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_effect_property1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_footage_interpretation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_frame_blend1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_graphics_white_luminance1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_item_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_keyframe_interpolation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_offline1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_override_frame_rate1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_override_pixel_aspect_ratio1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_playhead_position1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_poster_frame1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedset_project_item_audio_channel_mapping
    • Changedset_project_panel_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_project_scratch_disk1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scale_to_frame_size1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scale_width_height1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_scratch_disk_path1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_audio_settings1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_display_format1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_field_type1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_frame_rate1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_in_out_points1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_pixel_aspect_ratio1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_resolution1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_sequence_settings1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_source_in_out1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_start_time1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_target_track1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_time_interpolation1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_transcode_on_ingest1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_uniform_scale1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_work_area1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_workspace1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_xmp_metadata1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedset_zero_point1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedslide_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedslip_edit1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedspeed_change1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedsplit_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedstabilize_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedtoggle_track_visibility1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedtrim_clip1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedundo
    • Changedunnest_sequence1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedupdate_marker1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Addedvalidate_export_preset
    • Addedverify_delivery_file
  9. 32 tool updatesv1.1.5
    • Addedadd_custom_metadata_field
    • Addedapply_effect
    • Addedcheck_offline_media
    • Addedcreate_bars_and_tone
    • Addedcreate_bin
    • Addedcreate_sequence
    • Addeddelete_bin
    • Addeddetach_proxy
    • Addedfind_items_by_media_path
    • Removedget_clip_at_position
    • Addedget_insertion_bin
    • Addedget_item_info
    • Addedget_project_panel_metadata
    • Addedhas_proxy
    • Addedimport_fcp_xml
    • Addedimport_media
    • Addedmove_item_to_bin
    • Addedrelink_media
    • Addedrename_bin
    • Addedselect_item
    • Addedset_active_sequence
    • Addedset_graphics_white_luminance
    • Addedset_override_frame_rate
    • Addedset_override_pixel_aspect_ratio
    • Addedset_project_panel_metadata
    • Addedset_scale_to_frame_size
    • Addedset_scratch_disk_path
    • Addedset_start_time
    • Addedset_transcode_on_ingest
    • Addedslide_edit
    • Addedslip_edit
    • Addedstart_batch_encode
  10. 20 tool updatesv1.1.5
    • Addedapply_audio_effect
    • Removedapply_effect
    • Removedcreate_sequence
    • Removeddelete_bin
    • Removeddetach_proxy
    • Addedget_clip_at_position
    • Addedget_clip_properties
    • Addedget_graphics_white_luminance
    • Removedget_item_info
    • Removedget_sequence_settings
    • Addedimport_folder
    • Addedimport_sequences
    • Removedrename_bin
    • Removedselect_item
    • Addedset_offline
    • Removedset_project_panel_metadata
    • Addedset_sequence_in_out_points
    • Removedset_start_time
    • Removedslide_edit
    • Removedslip_edit
  11. 47 tool updatesv1.1.5
    • Removedadd_custom_metadata_field
    • Changedadd_text_overlay3 fields changed
      • addedInput schema / properties / caption_format
        Added value: +{
        +  "description": "Caption format (default: subtitle)",
        +  "enum": [
        +    "subtitle",
        +    "608",
        +    "708",
        +    "teletext"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / properties / font_size
        Removed value: -{
        -  "description": "Font size (default: 60)",
        -  "type": "number"
        -}
      • removedInput schema / properties / track_index
        Removed value: -{
        -  "description": "Video track index to place the text on (default: topmost track)",
        -  "type": "number"
        -}
    • Removedapply_audio_effect
    • Removedcheck_offline_media
    • Removedclose_project
    • Removedconsolidate_duplicates
    • Removedcreate_bars_and_tone
    • Removedcreate_bin
    • Removedcreate_project
    • Removedfind_items_by_media_path
    • Removedfind_project_item_by_name
    • Removedget_active_sequence
    • Removedget_clip_at_position
    • Removedget_clip_properties
    • Changedget_encoder_presets1 field changed
      • changedInput schema / properties / format / description
        Previous value: -"Format name to list presets for (e.g., 'H.264', 'QuickTime', 'MPEG2'). Leave empty to list formats."New value: +"Filter to presets whose name or format bucket matches this (e.g. 'H.264', 'ProRes', 'Proxy'). Omit to list all."
    • Removedget_graphics_white_luminance
    • Removedget_insertion_bin
    • Removedget_project_info
    • Removedget_project_panel_metadata
    • Removedget_selected_clips
    • Removedhas_proxy
    • Removedimport_ae_comps
    • Removedimport_fcp_xml
    • Removedimport_folder
    • Removedimport_media
    • Removedimport_sequences
    • Removedlist_project_items
    • Removedlist_sequence_tracks
    • Removedlist_sequences
    • Changedmanage_proxies3 fields changed
      • addedInput schema / properties / output_path
        Added value: +{
        +  "description": "Full output path for the proxy to be rendered to (required for 'create')",
        +  "type": "string"
        +}
      • addedInput schema / properties / preset_path
        Added value: +{
        +  "description": "Path to a proxy ingest preset (.epr) for 'create'. If omitted, the first preset found in Premiere's IngestPresets/Proxy folder is used.",
        +  "type": "string"
        +}
      • changedInput schema / properties / proxy_path / description
        Previous value: -"Path to proxy file (required for 'attach' action)"New value: +"Path to an existing proxy file (required for 'attach')"
    • Removedmove_item_to_bin
    • Removedopen_project
    • Removedrefresh_media
    • Removedrelink_media
    • Removedsave_project
    • Removedsave_project_as
    • Removedset_active_sequence
    • Removedset_graphics_white_luminance
    • Removedset_offline
    • Removedset_override_frame_rate
    • Removedset_override_pixel_aspect_ratio
    • Removedset_scale_to_frame_size
    • Removedset_scratch_disk_path
    • Removedset_sequence_in_out_points
    • Removedset_transcode_on_ingest
    • Removedstart_batch_encode
    • Removedundo
  12. 266 tool updatesv1.1.1
    • First observedadd_adjustment_layer
    • First observedadd_audio_keyframes
    • First observedadd_custom_metadata_field
    • First observedadd_keyframe
    • First observedadd_marker
    • First observedadd_marker_to_project_item
    • First observedadd_text_overlay
    • First observedadd_to_render_queue
    • First observedadd_to_timeline
    • First observedadd_track
    • First observedadd_tracks
    • First observedadd_transition
    • First observedadd_transition_to_clip
    • First observedadjust_audio_levels
    • First observedapply_audio_effect
    • First observedapply_effect
    • First observedapply_lut
    • First observedattach_custom_property
    • First observedauto_reframe_sequence
    • First observedbatch_add_transitions
    • First observedbatch_apply_effect
    • First observedbatch_enable_disable
    • First observedbatch_rename_clips
    • First observedcapture_frame
    • First observedcheck_offline_media
    • First observedclear_item_in_out
    • First observedclear_sequence_in_out
    • First observedclose_all_source_clips
    • First observedclose_project
    • First observedclose_sequence
    • First observedclose_source_monitor
    • First observedcolor_correct
    • First observedconsolidate_and_transfer
    • First observedconsolidate_duplicates
    • First observedcopy_effect_values
    • First observedcopy_effects_between_clips
    • First observedcreate_bars_and_tone
    • First observedcreate_bin
    • First observedcreate_caption_track
    • First observedcreate_project
    • First observedcreate_sequence
    • First observedcreate_sequence_from_clips
    • First observedcreate_sequence_from_preset
    • First observedcreate_smart_bin
    • First observedcreate_subclip
    • First observedcreate_subsequence
    • First observeddelete_bin
    • First observeddelete_marker
    • First observeddelete_multiple_project_items
    • First observeddelete_preview_files
    • First observeddelete_project_item
    • First observeddelete_sequence
    • First observeddelete_track
    • First observeddeselect_all_clips
    • First observeddetach_proxy
    • First observedduplicate_clip
    • First observedduplicate_sequence
    • First observedenable_disable_clip
    • First observedencode_file
    • First observedencode_project_item
    • First observedevaluate_expression
    • First observedexecute_extendscript
    • First observedexport_aaf
    • First observedexport_as_fcp_xml
    • First observedexport_as_project
    • First observedexport_frame
    • First observedexport_omf
    • First observedexport_sequence
    • First observedextract_selection
    • First observedfind_items_by_media_path
    • First observedfind_project_item_by_name
    • First observedfreeze_frame
    • First observedget_active_sequence
    • First observedget_all_project_paths
    • First observedget_bin_contents
    • First observedget_clip_adjustment_layer
    • First observedget_clip_at_playhead
    • First observedget_clip_at_position
    • First observedget_clip_links
    • First observedget_clip_markers
    • First observedget_clip_properties
    • First observedget_clip_speed
    • First observedget_color_label
    • First observedget_color_space
    • First observedget_duplicate_media
    • First observedget_effect_properties
    • First observedget_encoder_presets
    • First observedget_export_file_extension
    • First observedget_footage_interpretation
    • First observedget_full_clip_info
    • First observedget_full_project_overview
    • First observedget_full_sequence_info
    • First observedget_graphics_white_luminance
    • First observedget_insertion_bin
    • First observedget_item_info
    • First observedget_keyframes
    • First observedget_linked_items
    • First observedget_metadata
    • First observedget_mogrt_component
    • First observedget_next_edit_point
    • First observedget_offline_media
    • First observedget_playhead_position
    • First observedget_premiere_state
    • First observedget_project_info
    • First observedget_project_item_info
    • First observedget_project_panel_metadata
    • First observedget_project_scratch_disks
    • First observedget_qe_clip_info
    • First observedget_render_queue_status
    • First observedget_selected_clips
    • First observedget_sequence_count
    • First observedget_sequence_in_out_points
    • First observedget_sequence_markers_by_type
    • First observedget_sequence_settings
    • First observedget_sequence_structure
    • First observedget_source_monitor_info
    • First observedget_source_monitor_position
    • First observedget_target_tracks
    • First observedget_timeline_gaps
    • First observedget_timeline_summary
    • First observedget_total_clip_count
    • First observedget_track_info
    • First observedget_unused_media
    • First observedget_used_media_report
    • First observedget_value_at_time
    • First observedget_version_info
    • First observedget_work_area
    • First observedget_workspaces
    • First observedget_xmp_metadata
    • First observedhas_proxy
    • First observedimport_ae_comps
    • First observedimport_fcp_xml
    • First observedimport_folder
    • First observedimport_image_sequence
    • First observedimport_media
    • First observedimport_mogrt
    • First observedimport_mogrt_from_library
    • First observedimport_sequences
    • First observedinsert_from_source
    • First observedinspect_dom_object
    • First observedinvert_selection
    • First observedis_work_area_enabled
    • First observedlift_selection
    • First observedlink_selection
    • First observedlist_available_audio_effects
    • First observedlist_available_audio_transitions
    • First observedlist_available_effects
    • First observedlist_available_transitions
    • First observedlist_clip_effects
    • First observedlist_markers
    • First observedlist_project_items
    • First observedlist_sequence_tracks
    • First observedlist_sequences
    • First observedlock_track
    • First observedmanage_proxies
    • First observedmatch_frame
    • First observedmove_clip
    • First observedmove_clip_to_track
    • First observedmove_item_to_bin
    • First observedmove_items_to_bin
    • First observedmove_playhead_to_edit
    • First observedmultiple_undo
    • First observedmute_track
    • First observednest_clips
    • First observedopen_in_source
    • First observedopen_project
    • First observedoverwrite_clip
    • First observedoverwrite_from_source
    • First observedping
    • First observedplay_source_monitor
    • First observedplay_timeline
    • First observedrazor_all_tracks
    • First observedredo
    • First observedrefresh_media
    • First observedrelink_media
    • First observedremove_all_effects
    • First observedremove_effect
    • First observedremove_effect_by_name
    • First observedremove_from_timeline
    • First observedremove_keyframe
    • First observedremove_keyframe_range
    • First observedremove_selected_clips
    • First observedrename_bin
    • First observedrename_clip
    • First observedrename_project_item
    • First observedrename_track
    • First observedreplace_clip
    • First observedreplace_clip_media
    • First observedreverse_clip
    • First observedripple_delete
    • First observedroll_edit
    • First observedsave_project
    • First observedsave_project_as
    • First observedscene_edit_detection
    • First observedsearch_project_items
    • First observedselect_all_clips
    • First observedselect_clips_by_color
    • First observedselect_clips_by_name
    • First observedselect_clips_in_range
    • First observedselect_disabled_clips
    • First observedselect_item
    • First observedset_active_sequence
    • First observedset_all_tracks_targeted
    • First observedset_anti_alias_quality
    • First observedset_blend_mode
    • First observedset_clip_anchor_point
    • First observedset_clip_opacity
    • First observedset_clip_pan
    • First observedset_clip_position
    • First observedset_clip_properties
    • First observedset_clip_rotation
    • First observedset_clip_scale
    • First observedset_clip_selection
    • First observedset_clip_speed_qe
    • First observedset_clip_start_time
    • First observedset_clip_volume
    • First observedset_color_label
    • First observedset_color_value
    • First observedset_effect_property
    • First observedset_footage_interpretation
    • First observedset_frame_blend
    • First observedset_graphics_white_luminance
    • First observedset_item_in_out
    • First observedset_keyframe_interpolation
    • First observedset_metadata
    • First observedset_offline
    • First observedset_override_frame_rate
    • First observedset_override_pixel_aspect_ratio
    • First observedset_playhead_position
    • First observedset_poster_frame
    • First observedset_project_panel_metadata
    • First observedset_project_scratch_disk
    • First observedset_scale_to_frame_size
    • First observedset_scale_width_height
    • First observedset_scratch_disk_path
    • First observedset_sequence_audio_settings
    • First observedset_sequence_display_format
    • First observedset_sequence_field_type
    • First observedset_sequence_frame_rate
    • First observedset_sequence_in_out_points
    • First observedset_sequence_pixel_aspect_ratio
    • First observedset_sequence_resolution
    • First observedset_sequence_settings
    • First observedset_source_in_out
    • First observedset_start_time
    • First observedset_target_track
    • First observedset_time_interpolation
    • First observedset_transcode_on_ingest
    • First observedset_uniform_scale
    • First observedset_work_area
    • First observedset_workspace
    • First observedset_xmp_metadata
    • First observedset_zero_point
    • First observedslide_edit
    • First observedslip_edit
    • First observedspeed_change
    • First observedsplit_clip
    • First observedstabilize_clip
    • First observedstart_batch_encode
    • First observedstop_playback
    • First observedtoggle_track_visibility
    • First observedtrim_clip
    • First observedundo
    • First observedunlink_selection
    • First observedunnest_sequence
    • First observedupdate_marker

TDQS

B3/5.0
Disambiguation2/5

With 319 tools, there are many overlapping clusters: get_clip_properties, get_qe_clip_info, and get_full_clip_info all retrieve clip details, while get_sequence_structure, get_full_sequence_info, and get_timeline_summary describe the same timeline state. An agent will frequently struggle to choose the canonical tool for a task.

Naming Consistency3/5

The set consistently uses snake_case and mostly verb_noun names, but retrieval verbs are used interchangeably: get, list, read, inspect, and find all mean similar things. Near-duplicate names like add_track/add_tracks and set_clip_properties/set_clip_opacity further weaken the pattern.

Tool Count1/5

319 tools is an extreme count for a single MCP server and will overwhelm an agent's tool-selection space. Even for a complex application like Premiere Pro, many tools are unavailable stubs, convenience wrappers, or overlapping getters that could be consolidated into a smaller, curated surface.

Completeness4/5

The domain coverage is genuinely deep: project items, bins, sequences, tracks, clips, effects, markers, audio, export, QC, and context indexing are all well represented. Minor dead-ends remain for unsupported operations such as speed change, reverse, nest, AAF export, and text overlays, though most include workarounds or capability reports.

Maintenance

ActivityActive
ResponsivenessResponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/leancoderkavy/premiere-pro-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server