Skip to main content
Glama

Kinocut is a free, open-source video editing MCP server and AI agent workflow engine (plus Python client and kino CLI) that lets AI agents trim, caption, repurpose, and quality-gate local video media with typed tools and Video Receipts — not invented FFmpeg flags.

Table of contents


Related MCP server: video-editor

What is Kinocut?

TL;DR: Kinocut is a free, local-first video editing MCP server (plus Python client and kino CLI) so AI agents can trim, caption, repurpose, and quality-gate media with typed tools and Video Receipts — not invented FFmpeg flags.

Kinocut is a free, open-source Model Context Protocol (MCP) server, Python library, and kino CLI that gives AI agents a guardrailed local video-editing surface. It wraps FFmpeg (and optional Hyperframes / Whisper extras) with typed tools, preflight validation, Video Receipt provenance, and quality/release checkpoints so agent-produced media can be inspected before publish.

Also known as

kino (CLI); formerly mcp-video / mcp_video

Latest published release

Official PyPI version · GitHub release

Product site

kinocut.dev

PyPI

kinocut

MCP Registry

io.github.KyaniteLabs/kinocut

Source

GitHub (canonical code, issues, PRs, CI, and releases) · Forgejo (private, maintainers only; downstream mirror, automated sync cutover pending verification)

License

Apache-2.0

Runs on

Your machine (macOS, Linux, Windows) — FFmpeg required on PATH

Not

A hosted cloud editor, credit-metered SaaS, or untyped FFmpeg shell wrapper

Best-fit searches: video editing MCP server · AI agent video editing · FFmpeg MCP · Claude Code video tools · Cursor MCP video · Shorts/Reels automation · local AI video workflow · guardrailed agentic media.

Machine-readable brief for agents and crawlers: llms.txt · extended agent guide · site: kinocut.dev/llms.txt.

See It Work

Tell the agent what you want in plain language:

"Trim this interview to the strongest 45 seconds, add burned captions, make it vertical, and quality-check it before export."

Kinocut turns that into typed, guardrailed tool calls - no FFmpeg flags to guess, no silently broken exports:

from kinocut import Client
video = Client()

clip = video.trim("interview.mp4", start="00:02:15", duration="00:00:45")
video.ai_transcribe(clip.output_path, output_srt="captions.srt")
captioned = video.subtitles(clip.output_path, subtitle_file="captions.srt")
short = video.resize(captioned.output_path, aspect_ratio="9:16")
video.release_checkpoint(short.output_path)  # thumbnail + quality gate before you publish

Primary job: turn a local interview or podcast into captioned vertical clips with a Video Receipt agents can re-run and humans can approve.

Three things people use it for

  • Repurposing — one recording into captioned Shorts, Reels, and TikTok packages with manifests and review artifacts.

  • Podcast & interview cuts — find the strongest segment, normalize audio, add chapters, and export.

  • Agent-driven media in CI — repeatable, reviewable edits from Claude Code, Cursor, Codex-style clients, or scripts.

Paths: Install matrix · Golden path · Prompts · Tutorial · Compare · When to recommend

Status and releases

Surface

Version / tip

What it means

PyPI / npm checkpoint

1.16.1 (2026-10-05)

Last recorded publication checkpoint; consult the registries for the latest version. Install with pip install kinocut.

GitHub latest release / MCP Registry

1.16.1

GitHub release and the initial publication job's canonical registry read confirm 1.16.1; subsequent local registry reads timed out. The live website was last verified at 1.16.0; its 1.16.1 update is prepared, not deployed. Final owner acceptance and fleet rollout remain separate.

This source version

1.16.1 · 203 MCP / 177 CLI

Maintenance fixes described below; publication is tracked separately in docs/public_claims.json.

Next public release

TBD

Human residuals (directories, launch posts) stay gated; further bumps need a new go-ahead.

Install from PyPI for the stable package, including the optional object-matte extra. Clone master when you want local development changes beyond the published package; see docs/PRODUCT_MATTE.md for the published object-matte workflow.

What's in 1.16.1

Version 1.16.1 repairs macOS render cleanup and faststart publication, C2PA and model-cache staging, FFmpeg 8.1 filter discovery, and audio preservation in shader/upscale reconstruction. It retains 203 MCP tools / 177 CLI commands and pairs with mcp-video==1.6.16. See maintenance release notes for verification and remaining platform/model acceptance limits.

What's in 1.16.0

Published 2026-10-02: 203 MCP tools / 177 CLI commands; mcp-video==1.6.15 installs kinocut==1.16.0. Operator parity, bounded quality/resource controls and canonical ownership repair are described in release notes. The live site shows 1.16.0 (verified 2026-10-05). Shared mobile/web processing, fleet rollout, MCPB Desktop acceptance and final cross-surface owner acceptance remain separate gates.

What's in 1.15.2

Kinocut 1.15.2 ships the verified sound line and an adversarial-hardened engine. Sound mastering now preserves stereo through the measured mastering chain with real caption-speech distance profiles, and sound-qa-asr fails closed without a real recognition request. Four guarded local Revideo operations join the public surface with rendered-format validation, and release-checkpoint passes the MCP release gate through from the CLI. Hardening from the adversarial audit: the MCP handshake reports the real kinocut version, a central guard rejects outputs that alias an operation's inputs, and oversized error echoes are truncated. Surface grows to 201 MCP tools / 173 CLI commands — the mcp-video==1.6.13 shim installs kinocut==1.15.2.

What's in 1.15.1

Kinocut 1.15.1 is a maintenance release on top of 1.15.0: the mcp-video compatibility shim 1.6.12 carries the registry ownership marker, the legacy io.github.KyaniteLabs/mcp-video registry entry was republished so directory listings (Glama, PulseMCP) point at living metadata (#469), and the object-matte engine now streams decode with scratch-directory caps — bounded memory on large inputs (#414). Surface stays 196 MCP / 167 CLI — no new public tool name.

What's in 1.15.0

Kinocut 1.15.0 (2026-08-19) was the Windows/diagnostics release: first-class Windows support and honest diagnostics on top of 1.14.x (same 360 dual-cam assembly and performance surface), driven by a community bug report. Surface stays 196 MCP / 167 CLI — no new public tool name.

  • Honest MCP startup failures — kino --mcp keeps the "requires the 'mcp' package" hint only when mcp is genuinely absent; every other server-tree import failure now prints its real cause (filesystem paths redacted, markup-safe) and exits non-zero. Reported in #445.

  • doctor verifies the MCP server import — new required mcp-server-import check imports the same server tree --mcp uses, so kino doctor can no longer report OK while MCP mode is broken.

  • First-class Windows support — portable projectstore file locking (#446, landed with credit) makes kino --mcp importable on Windows; lock errors follow a contention-only contract; kino --help no longer crashes on legacy cp1252 consoles; and a windows-latest CI smoke job (lint, import checks, kino doctor, public-surface tests) guards the platform on every change.

  • 360 dual-cam assembly — any stitched equirect MP4 (Insta360, Ricoh Theta, GoPro MAX, DJI Osmo 360, …) → reviewable 360_assembly_plan (desk / table / front_back, split / switch / PiP / single) → approve → FFmpeg v360 render. MCP: video_intent goal= + video_review_decide. Python: Client.propose_360_assembly / decide_360_assembly / render_360_assembly. Raw .insv / .360 rejected. Director is a plug (local first; cloud opt-in). Not an optimized-AI claim. Guide: docs/360_ASSEMBLY.md.

  • Faster 360 and import path — single-pass split/PiP/switch filter_complex (source audio kept); sampled quality-gate analyze window; SHA-256 path/mtime cache; merge can skip re-probe when infos= is supplied; batched 360 storyboard stills; lazy mcp_video / CLI / Client.search_tools; doctor skips npx --yes unless Hyperframes is already on PATH.

  • Lazy public import — import kinocut no longer eagerly loads Client/engines (PEP 562). from kinocut import Client and kinocut.Client is mcp_video.Client still hold.

  • Ship-seam honesty — CLI/Client repurpose default --min-score 80; shorts-package fail-closed unless --allow-fail; candidate durable MCP video_repurpose applies min_score before job success.

  • Compatibility window — mcp-video==1.6.11 installs kinocut==1.15.0. mcp_video imports, MCP_VIDEO_* env vars, ~/.mcp-video data, mcp-video:// resources, and legacy receipt keys remain supported on the 1.14.x+ line. The prior pair was mcp-video==1.6.10 → kinocut==1.14.1.

Also already on the published line from 1.13.x:

  • Intent-verb surface — video_intent / intent (~10 verbs) to dry-run plans without silent media mutations

  • Watching guardrail floor — video_review_run / video_review_decide (blackdetect/LUFS + first-15s inspection)

  • B-roll proposals, ES-first caption translation, still/plate editor, cutfile-render, metric-qc

  • Agent workflow engine, dedicated video rescue, layered compositing, Hyperframes, Shorts/Reels repurposing

  • Counts at the 1.15.0 release — 196 MCP tools and 167 CLI commands

Full notes: CHANGELOG.md · published 1.16.1 on PyPI

Published quality and plain-file audio contracts are documented in quality evidence, audio mixing and projectstore lifecycle. See Unreleased for future local changes beyond the published package.

Beyond 1.16.1 (draft / gated)

The published compatibility installer mcp-video==1.6.16 pins kinocut==1.16.1. Fleet upgrade and running-process verification instructions are in docs/FLEET_UPGRADE.md.

The 2026-10-05 publication checkpoint is 1.16.1. Draft/gated work stays out of release claims until publication is verified. Live directory submissions and launch posts remain operator/human residual (docs/HUMAN_GATES.md) and are not claimed complete.

Staged and Gated Surfaces

While the core FFmpeg editing, 360 assembly, workflow engine, still/plate editing, AI-video review/salvage, and thin sound join are integrated on the published 1.16.x line, the following surfaces remain gated, partial, or unreleased:

  • Desktop MCPB Packaging: The unsigned staged package (mcpb/) is labeled user-configured-local-access. It requires local Node/Python/Kinocut/FFmpeg, is not a sandbox, and is distinct from future native-runtime work. See docs/MCPB.md.

  • Sonic World Audio (kinocut_sound): The shipped public boundary remains the thin S12 join; S13 packages and host joins exist as deeper internals. The historical July S14 receipt records two synthetic hardware classes, while the later August rerun records Apple Silicon and an explicit external_host_unavailable x86 residual. Its 64 clips of 0.15 seconds prove bounded plumbing, not a full episode and not human listening approval.

  • Trusted Execution Kernel: The protected-timeline trusted execution kernel is post-program/gated and does not execute without the named upstream contract and human gating (docs/plans/2026-07-09-kinocut-trusted-execution-layer.md).

  • Generative Plans and Local Caption Speech: Generative spend-cap and legacy TTS candidate records remain non-executable plans. An installed eSpeak NG engine can render real EN/ES stock caption speech through a hashed sound_voice_batch request and retain audio for mixing. Caption speech does not translate text or promise neural voice quality. No generation adapter exists; credentials or discovery alone do not establish execution.

  • Product / object matte: Catalog and shop cutouts on the existing hyperframes-remove-background command (--model birefnet-general, optional extra kinocut[object-matte]). Default remains people. Not a new MCP/CLI name. Published in 1.16.1, first shipped in 1.15.1 (streaming decode + scratch caps, #414); the ONNX extra installs via kinocut[object-matte]. Guide: docs/PRODUCT_MATTE.md.

Product checklist: ROADMAP.md.

Agent Workflow Engine

Agents can plan, validate, render, recover, and prove a multi-step local video job from a single JSON job-spec — through MCP (video_workflow_*), the CLI (workflow-*), or the Python client (Client.workflow_*) — with receipts strong enough for another agent or a human to trust before and after a render. Ops are a small allowlist (probe | trim | resize | convert | crop | merge | add_text | composite_layers | burn_in) mapped 1:1 to the same vetted engine functions the individual tools use; media references are symbolic and workspace-confined; everything fails closed.

{
  "schema_version": 1,
  "name": "captioned-vertical-short",
  "sources": { "hero": { "path": "input/hero.mp4" } },
  "steps": [
    { "id": "trim-hero", "op": "trim", "inputs": { "src": "@sources.hero" },
      "params": { "start": 0, "duration": 6 }, "output": "@work/hero_trim.mp4" },
    { "id": "vertical", "op": "resize", "inputs": { "src": "@work/hero_trim.mp4" },
      "params": { "width": 1080, "height": 1920 }, "output": "@work/hero_vertical.mp4" },
    { "id": "caption", "op": "add_text", "inputs": { "src": "@work/hero_vertical.mp4" },
      "params": { "text": "Watch this", "position": "bottom-center" }, "output": "@outputs.master" }
  ],
  "outputs": { "master": { "path": "output/final.mp4" } }
}
kino workflow-validate --spec job.json    # cheap structural gate, no render
kino workflow-plan     --spec job.json --save-plan plan.json     # dry-run op graph + hashes
kino workflow-render   --spec job.json --save-receipt receipt.json   # execute + provenance receipt
kino workflow-inspect  --receipt receipt.json    # read-only integrity re-check

The render receipt records per-step input/output hashes, a resume cursor, and a cleanup manifest, all with workspace-relative paths:

{
  "receipt_kind": "workflow",
  "versions": { "mcp_video": "1.13.2", "ffmpeg": "8.1" },
  "spec_hash": "sha256:be2f3a9b...",
  "steps": [
    { "id": "trim-hero", "op": "trim", "status": "completed",
      "input_hashes": { "src": "sha256:3b976d49..." },
      "output": "work/be2f3a9b-2effedb3/mcp_video_hero_trim.mp4", "output_hash": "sha256:00727499..." },
    { "id": "caption", "op": "add_text", "status": "completed",
      "output": "output/final.mp4", "output_hash": "sha256:8633ad2a..." }
  ],
  "cleanup_manifest": { "cleaned": true, "policy": "clean-on-success" },
  "resume_cursor": { "last_completed_step": "caption", "next_step": null },
  "status": "completed",
  "render_determinism_scope": "spec/input/output hashes are deterministic; rendered bytes may vary across FFmpeg builds"
}

--all-variants emits N distinct outputs from one declaration, and --resume continues a job that failed with its intermediates kept (fail-closed on a changed spec). Full schema, @ref grammar, variants, resume, and cleanup are in docs/WORKFLOWS.md; a runnable spec is in examples/workflows/.

Governed AI-video review

In Kinocut, a contract-first path is provided for agent-edited media that must stay attributable and reviewable:

  1. Ingest the source into a private content-addressed project (video_ingest / video-ingest)

  2. Preflight + temporal inspection on the stored asset (video_preflight, video_inspect_temporal)

  3. Verdict + acceptance with exact human evidence (video_verdict, video_acceptance_eval)

  4. Bounded derivatives only — audio-preserving body swap or allowlisted salvage recipes (video_body_swap, video_salvage), each with lineage and a fresh non-approved review slot

There is no force/bypass flag. Analyzer output alone cannot approve. Stale, aliased, or protected inputs fail closed. Operating guide: docs/AI_VIDEO_REVIEW_AND_SALVAGE.md. These surfaces are fully integrated in the published 1.15.x line — see Status and releases.

Dedicated Video Rescue

For "fix this clip" requests where the story and timeline must remain unchanged, use the review-first rescue pipeline. Plan and inspect the diagnosis, approve only safe repair IDs, render, then inspect the verified package. The source stays immutable; master and universal sharing copy are always verified; optional captions remain sidecars. See docs/RESCUE.md for CLI, MCP, Python, cancellation, resume, and stable errors.

Layered Compositing

composite-layers / video_composite_layers adds a spec-driven ordered layer stack for agents that need more than two-shot overlay primitives. It supports image, video, and solid layers; normal alpha compositing; per-layer opacity; x/y placement; transform sizing; timing windows; and mask/matte alpha sources — plus full-canvas and positioned blend modes (multiply, screen, overlay, darken, lighten) and rotation with a new pivot reference point. Dry-run plans and deterministic layer_plan v2 receipts capture source, filtergraph, and output hashes.

kino composite-layers --spec layers.json --dry-run --save-layer-plan layer-plan.json
kino composite-layers --spec layers.json -o out.mp4 --save-layer-plan layer-plan.json

Use composite-layers when an agent needs a planned stack of overlays, mattes, lower thirds, blurback plates or platform variants reviewed before rendering. Non-normal blends support opacity and start/duration windows in two geometries: full-canvas at {0,0} without explicit sizing, or a positioned rectangle with both positive integer width and height and an integral nonnegative in-canvas position. RGB blending avoids applying color arithmetic to subsampled chroma planes. Scale, rotation/pivot, mask/matte, fractional positions and out-of-canvas rectangles remain deferred and fail closed with unsupported_blend_geometry. Video layers and masks begin playback at the declared layer start. Keep sources and masks inside the spec directory, placing the spec in a common parent of its media. Output remains video-only.

360 dual-cam assembly

Any stitched equirect 360 MP4 (Insta360, Ricoh Theta, GoPro MAX, DJI, …) can become a two-cam 16:9 or 9:16 edit without a new tool name. Export from the camera app first — Kinocut does not stitch .insv or GoPro .360.

from kinocut import Client

video = Client()
plan = video.propose_360_assembly("x4-export.mp4", goal="desk 360 split 9:16")
approved = video.decide_360_assembly(plan, "approve")
video.render_360_assembly(approved, "desk-split.mp4")

Agents: video_intent with a 360/desk/table goal and source=, then video_review_decide. Full contract: docs/360_ASSEMBLY.md.

Still / Image Editing

Kinocut treats multi-still packages as first-class media — plan → receipt → fail-closed gate, same safety posture as video rescue. Requires pip install "kinocut[image]"; run kino doctor to verify the image stack.

Workflow: establish a hero plate → edit beats toward it → match shared WB/exposure → grade (optional signal LUT) → cohesion gate.

# Image analysis: extract colors, generate palettes, analyze products
kino image-extract-colors product.jpg -n 8
kino image-generate-palette scene.png --harmony triadic
kino image-analyze-product listing.jpg --use-ai

# Still/plate editing: match package to hero, grade, gate
kino still-match --hero establish.png --inputs beat1.png beat2.png --output-dir out/matched
kino still-grade --inputs out/matched/*.png --hero establish.png --output-dir out/graded
kino still-gate  --inputs out/graded/*.png --output-dir out/gate

# Establish-locked edit with plan/receipt (dry-run first)
kino image-edit --source beat.png --reference establish.png \
  --intent "match establish world and light" --output-dir out/edit --dry-run

# Or run the full pipeline in one shot
kino still-package --establish establish.png --beats beat1.png beat2.png --output-dir out/pkg
from kinocut import Client

c = Client()
c.still_match(hero="establish.png", inputs=["a.png", "b.png"], output_dir="out/m")
c.still_gate(inputs=["out/m/a_matched.png", "out/m/b_matched.png"], output_dir="out/g")

still-gate fails closed on luma spread and shadow green/cyan metrics; every tool writes a JSON receipt with hashes and gains. Paid generative backends stay off by default (prefer=edit, allow_paid_gen=false). Full guide: docs/STILL_PLATES.md.

Public Discovery

Kinocut is built to be findable and citable by both search engines and AI answer engines:

  • Canonical product URL: https://kinocut.dev/

  • GitHub README + llms.txt with entity facts, install commands, and safety rules

  • Official MCP Registry record under io.github.KyaniteLabs/kinocut

  • FAQ answers in this README and docs/faq.md (answer-first, versioned claims)

Kinocut vs raw FFmpeg (and vs cloud editors)

Kinocut

Raw FFmpeg in agent shell

Typical cloud editor API

Interface

Typed MCP / Python / CLI

Free-form flags

Hosted HTTP API

Preflight

Guardrails before render

Agent invents flags

Vendor-specific

Provenance

Video Receipts + hashes

Ad-hoc logs

Vendor dashboard

Media location

Local-first

Local

Upload required

Core cost

Free (Apache-2.0)

Free

Often metered

Why It Exists

AI agents can write FFmpeg commands, but they should not have to guess flags, parse brittle stderr, or silently publish broken media. Kinocut gives agents typed operations, inspectable tool metadata, structured results, preflight guardrails, and quality checkpoints so a video workflow can be automated and reviewed without turning into shell-command roulette.

Use it when you want an AI assistant to:

  • trim, merge, resize, crop, rotate, transcode, or export video;

  • add text, subtitles, watermarks, overlays, filters, fades, effects, and transitions;

  • extract audio, normalize audio, synthesize audio, add generated audio, or create waveforms;

  • detect scenes, make thumbnails, generate storyboards, compare quality, and create release checkpoints;

  • match, grade, and gate still packages with establish-locked color cohesion, or analyze product images for colors and palettes;

  • scaffold cinematic projects, read STYLE_/NEG_ blocks, parse storyboard tables, and expand shot prompts;

  • create new Hyperframes projects, inspect rendered layouts, capture websites, generate local speech, remove backgrounds, and post-process the result with FFmpeg tools;

  • repurpose one source video into vertical, horizontal, and square local delivery packages with manifests and review artifacts;

  • drive repeatable media workflows from Claude Code, Cursor, Codex-style clients, scripts, or CI.

Installation

Prerequisite: FFmpeg must be installed and available on PATH.

# macOS
brew install ffmpeg

# Ubuntu/Debian
sudo apt install ffmpeg

Run without a global install:

uvx --from kinocut kino doctor

Or install with pip:

pip install kinocut
kino doctor

For Claude Desktop-style MCPB installs, Kinocut includes a staged local package at mcpb/ and a local build script:

python3 scripts/build-mcpb.py

This unsigned user-configured-local-access package launches an existing Python environment with the exact Kinocut version and still requires local Node, FFmpeg, and ffprobe. It is not a sandbox. Native self-contained bundles remain separate future work. See docs/MCPB.md.

Optional C2PA signing for final MP4 exports is available when c2patool and a manifest/signer are configured. Signing is off by default and only reports signed after a verification read succeeds. See docs/C2PA_PROVENANCE.md.

Hyperframes tools additionally need Node.js 22+ and a resolvable Hyperframes CLI. Install/pin Hyperframes in the active Node package layout, add hyperframes to PATH, or set MCP_VIDEO_HYPERFRAMES_COMMAND.

Which extra do I need?

The core install covers all FFmpeg editing tools. Optional features ship as extras — install only what you use:

You want

Install

Approx. extra size

Speech-to-text subtitles (Whisper)

pip install "kinocut[transcribe]"

~1 GB (torch)

Image analysis (colors, layout, contrast)

pip install "kinocut[image]"

~50 MB

Vocal/instrument stem separation

pip install "kinocut[stems]"

~2 GB (torch + demucs)

AI upscaling

pip install "kinocut[upscale]"

~2 GB (Python ≤3.12)

Procedural audio/music tools

pip install "kinocut[audio]"

~30 MB (numpy)

Everything AI

pip install "kinocut[ai]"

several GB

Mix freely, e.g. pip install "kinocut[transcribe,image]". Run kino doctor afterward — it reports exactly which features are available and what is missing.

Upgrading from mcp-video

Kinocut preserves the original surface during the rename window. Existing installs can upgrade without changing code:

pip install --upgrade 'mcp-video==1.6.16'
pip install --force-reinstall --no-deps 'kinocut==1.16.1'
mcp-video doctor

Older shim installer records can delete the shared executable during an upgrade, even when dependency checks pass. The canonical reinstall restores ownership; use the intended release pin and preserve configured extras in locked deployments. See fleet migration instructions for the pinned sequence.

Published mcp-video==1.6.16 is a metadata-only compatibility installer for kinocut==1.16.1. The mcp_video import, mcp-video command, MCP_VIDEO_* environment variables, ~/.mcp-video data directory, mcp-video:// resource URIs, and existing receipt keys remain supported on the 1.14.x+ line. New integrations should use kinocut, from kinocut import Client, and the kino command.

En español

Kinocut es un servidor MCP de edición de video para agentes de IA. La última versión publicada es 1.16.1 (pip install kinocut, 203 herramientas MCP / 177 CLI). Incluye ensamblaje 360 de dual-cam desde un MP4 equirectangular ya stitched (no .insv), import perezoso PEP 562 y el mismo surface FFmpeg tipado para recortar, unir, subtitular, mezclar audio, efectos y reutilizar contenido (Shorts, Reels, TikTok), motor de flujos (workflow) con recibos verificables, rescate de video, revisión AI-video gobernada y barreras de seguridad antes de renderizar. Programas humanos residuales (directorios, lanzamiento) no se reclaman completos.

Requisito: FFmpeg instalado y disponible en el PATH.

# macOS
brew install ffmpeg

# Ubuntu/Debian
sudo apt install ffmpeg

# Instalación y diagnóstico
pip install kinocut
kino doctor

Para Claude Code:

claude mcp add kinocut -- uvx --from kinocut kino --mcp

kino doctor informa qué funciones están disponibles y qué falta instalar. La documentación completa está en inglés; los mensajes de error principales son bilingües.

Quick Start

Golden path (60 seconds)

Prove the install works before wiring an agent host:

pip install -e .          # or: pip install kinocut
kino doctor               # required checks must pass
python scripts/golden_path.py

Success criteria and failure recovery: docs/GOLDEN_PATH.md.
Shareable pack (receipt + quality + media): python scripts/generate_golden_pack.py → demo/golden-pack/.

Try the receipt-backed proof first

From a clone of this repo, run the smallest confidence workflow before wiring an agent host:

uv run --no-project --with kinocut python workflows/05-confidence-baseline/workflow.py
uv run --no-project --with kinocut python workflows/benchmarks/run_confidence_benchmark.py

The workflow generates a tiny source clip, creates a checked vertical video, runs quality/release checkpoint steps, and writes workflows/05-confidence-baseline/output/video_receipt.json.

Proof notes live in docs/proofs/. Public marketing claims (version, tool counts, URLs) live in docs/public_claims.json and are CI-guarded.

Claude Code

claude mcp add kinocut -- uvx --from kinocut kino --mcp

Claude Desktop

{
  "mcpServers": {
    "kinocut": {
      "command": "uvx",
      "args": ["--from", "kinocut", "kino", "--mcp"]
    }
  }
}

Cursor

{
  "mcpServers": {
    "kinocut": {
      "command": "uvx",
      "args": ["--from", "kinocut", "kino", "--mcp"]
    }
  }
}

Then ask your agent:

Trim this interview into a 45-second vertical clip, add burned captions, normalize the audio, make a thumbnail, and create a release checkpoint before export.

Agent Skill

Kinocut includes a public agent skill at skills/kinocut/SKILL.md. Use $kinocut in compatible agent hosts when you want the agent to choose between the MCP server, CLI, and Python client while preserving the inspect, edit, verify, and human-review workflow.

For path-based short-form packages from current tools only (no invented commands, no external publish), see skills/kinocut-repurpose/SKILL.md. That skill is an explicit marketing seed; the durable kernel-backed repurposing product is still on the trusted-execution roadmap.

Python Client

from kinocut import Client

editor = Client()

clip = editor.trim("interview.mp4", start="00:02:15", duration="00:00:45")
caption_file = "captions.srt"
editor.ai_transcribe(clip.output_path, output_srt=caption_file)
captioned = editor.subtitles(clip.output_path, subtitle_file=caption_file)
vertical = editor.resize(captioned.output_path, aspect_ratio="9:16")
checkpoint = editor.release_checkpoint(vertical.output_path)

print(checkpoint["thumbnail"])
print(checkpoint["storyboard"])

CLI

kino info interview.mp4
kino trim interview.mp4 -s 00:02:15 -d 45
kino video-ai-transcribe clip.mp4 --output captions.srt
kino subtitles clip.mp4 captions.srt
kino resize clip.mp4 --aspect-ratio 9:16
kino video-quality-check clip.mp4
kino repurpose clip.mp4 --platforms youtube-shorts instagram-reel tiktok
kino image-extract-colors product.jpg
kino still-package --establish hero.png --beats shot1.png shot2.png --output-dir out/stills

What Agents Can Do

Workflow

Example prompt

Social clips

"Turn this landscape recording into a captioned TikTok and YouTube Short."

Podcast production

"Find the strongest segment, trim it, normalize audio, add chapters, and export."

Product demos

"Create a short launch video from screenshots, title cards, and voiceover."

Cinematic planning

"Create a style pack and storyboard, then render shot prompts for generation."

Quality review

"Compare these two exports, make thumbnails, and flag visual or audio problems."

Batch automation

"Convert this folder of clips to web-ready MP4 with consistent loudness."

Code-created video

"Scaffold a Hyperframes composition, inspect it, render it, then add subtitles and a watermark."

Local repurposing

"Turn this master clip into Shorts, Reels, TikTok, and YouTube assets with thumbnails and a manifest."

Video rescue

"Diagnose this damaged clip, propose only safe repairs, render an approved package, and verify the receipt."

Governed review (dev tip)

"Ingest this export into a project, run preflight and temporal inspection, write a verdict, and salvage only the broken region."

MCP Tools

Published 1.16.1 registers 203 MCP tools and 177 CLI commands (the matching development checkout has the same surface at release). The table summarizes core categories — search_tools discovers the exact operation without loading every description.

Category

Count

Highlights

Core video editing

32

trim, merge, resize, crop, rotate, convert, overlays, subtitles, export, cleanup, templates, merge-compatibility guardrails

Project-backed inspection

3

content-addressed ingest, unified preflight, temporal evidence packages

Governed AI-video

4

exact-asset verdicts, acceptance evaluation, audio-preserving body swaps, lineage-bound salvage

Agent workflow engine

4

validate, plan, render, resume, inspect multi-step jobs with provenance receipts

Dedicated rescue

3

diagnose, approve, render, verify, quarantine, and resume local content-preserving repairs

Post-rescue planning

8

semantic timelines/query, EDLs, visual transforms, restoration, composition, autopilot, explicit egress

Cinematic creation

4

project scaffold, style-pack parsing, storyboard parsing, shot prompt expansion

AI-assisted media

11

transcription, scene detection, upscaling, stem separation, silence removal, color grading

Hyperframes

18

init, preview, render, snapshots, inspect, catalog, website capture, local TTS, transcription, background removal, diagnostics, benchmark, post-process

Revideo

4

materialize the pinned bridge, install locked dependencies, render a project, or run the complete local job with a verified receipt

Repurposing

2

dry-run manifests, platform-ready variants, thumbnails, storyboards, release checkpoints

Procedural audio

7

synthesize, compose, presets, effects, sequences, generated audio, spatial audio, mix-parameter guardrails

Visual effects

8

vignette, glow, noise, scanlines, chromatic aberration, luma key, mask, shape mask, bounded filter parameters

Transitions

3

glitch, morph, pixelate

Layout and motion

6

grid, picture-in-picture, split-screen, animated text, counters, progress bars, auto-chapters, layout mismatch warnings

Analysis

8

scene detection, thumbnail, preview, storyboard, quality compare, metadata, waveform, release checkpoint

Image analysis

3

extract colors, generate palettes, analyze product images

Still / plate editing

5

still-match, still-grade, still-gate, image-edit, still-package — establish-locked color match with cohesion gate

Discovery

1

search_tools

from kinocut import Client

editor = Client()
matches = editor.search_tools("subtitle")
print(matches["tools"])

Full reference: docs/TOOLS.md

Agent-Safe Workflow

For autonomous agents, the intended path is inspect, edit, verify, then ask a human to review release artifacts:

from kinocut import Client

client = Client()

print(client.inspect("trim"))

result = client.pipeline(
    [
        {"op": "trim", "input": "source.mp4", "start": "00:01:00", "duration": "00:00:45"},
        {"op": "add_text", "text": "Launch clip", "position": "top-center"},
        {"op": "normalize_audio"},
        {"op": "resize", "aspect_ratio": "9:16"},
        {"op": "export", "quality": "high"},
        {"op": "release_checkpoint"},
    ],
    output_path="final-short.mp4",
)

Safety contract:

  • Media-producing calls return structured results with output paths.

  • High-risk edit paths now run preflight guardrails before FFmpeg execution: filter bounds, merge compatibility, audio mix volume/timing, overlay/watermark/chroma opacity and similarity, animated text timing/overflow, and grid/split-screen mismatch warnings.

  • Analysis and discovery calls return structured JSON reports.

  • Tool discovery is available through search_tools() and Client.inspect().

  • Unexpected keyword errors are converted into actionable MCPVideoError guidance.

  • Do not publish agent-generated video without video_quality_check, video_release_checkpoint, and human visual/audio inspection.

  • For governed AI-video derivatives, require stored identities, active human decision evidence, and a fresh review slot after every salvage or body-swap — never raw FFmpeg workarounds labeled as governed.

Changelog

1.16.1 (2026-10-05):

  • Maintenance fixes: macOS render cleanup (live process supervisor, zombie-tolerant quiescence) and MOV/MP4 faststart preservation for descriptor-anchored outputs.

  • C2PA signing and object-matte/FSRCNN model downloads now publish through owned staging files only after verification.

  • FFmpeg 8.1 filter discovery; source-audio preservation in GPU shader and Real-ESRGAN reconstruction; typed errors for shader/upscale probe failures.

  • Surface stays 203 MCP / 177 CLI; mcp-video==1.6.16 installs kinocut==1.16.1.

1.16.0 (2026-10-02):

  • Operator-route parity across MCP/CLI/Python (audio mixing, ducking/HLS, motion receipts, 360 intent/review controls, operation estimates); persisted MCP repurpose quality/checkpoint policy.

  • Bounded input hardening (CLI plan/review JSON size and nesting caps, explicit JSON booleans, duplicate-key rejection).

  • Added Client.record_motion_acceptance, temporal motion_coherence evidence, opt-in Anthropic keyframe review, structured FFmpeg dependency advisories, and Gemini CLI setup examples.

  • Surface grows to 203 MCP / 177 CLI; mcp-video==1.6.15 installs kinocut==1.16.0.

1.15.3 (2026-09-25):

  • Publication release: PyPI and npm verified 2026-09-30; mcp-video==1.6.14 installs kinocut==1.15.3. Surface stays 201 MCP / 173 CLI.

1.15.2 (2026-09-24):

  • Verified stereo sound mastering through the measured mastering chain (#523/#525/#526); real caption speech processed with distance profiles; sound-qa-asr fails closed without a real recognition request (#432).

  • Guarded local Revideo operations exposed on the public surface with rendered-format validation (#508); release-checkpoint passes through the MCP release gate from the CLI.

  • Adversarial hardening: the MCP handshake reports the real kinocut version (F1), a central self-overwrite guard rejects outputs aliasing inputs (F2), error echoes truncate oversized values (F4).

  • Absolute trim-end semantics preserved (#493); Windows drive paths keep their prefix (#496); empty/blank ASS caption tracks fail closed instead of rendering empty output.

  • Surface grows to 201 MCP / 173 CLI; mcp-video==1.6.13 installs kinocut==1.15.2.

1.15.1 (2026-08-31):

  • Registry ownership: mcp-video shim 1.6.12 + legacy registry republish (#469).

  • Object-matte streaming decode with scratch caps (#414).

  • mcp-video==1.6.12 installs kinocut==1.15.1.

1.15.0 (2026-08-19):

  • Honest MCP startup failures — kino --mcp reports real import causes; paths redacted, markup-safe (#448, from #445).

  • doctor mcp-server-import check — required core check; doctor can't say OK while --mcp is broken (#449).

  • First-class Windows support — portable projectstore file locking (#446), contention-only lock contract, UTF-8 stdio, windows-latest smoke job.

  • Community-driven release — @gerardoscaglia-creator credited in Contributing and the CHANGELOG acknowledgements.

  • mcp-video==1.6.11 installs kinocut==1.15.0.

1.14.1 (2026-08-13):

  • Patch on 1.14.0: pyright NoReturn on rescue cancel so GitHub Lint stays green. Same 360 + perf surface.

  • mcp-video==1.6.10 installs kinocut==1.14.1.

1.14.0 (2026-08-13):

  • Published 360 dual-cam assembly from a stitched equirect MP4 (camera-agnostic; not X4-only) via video_intent / Client.propose_360_assembly — still 196 MCP / 167 CLI.

  • Landed the performance committee top-10: single-pass 360 filter_complex (audio kept), sampled QC, lazy imports, SHA cache, batched storyboard stills.

  • mcp-video==1.6.9 installs kinocut==1.14.0.

1.13.0 (2026-08-07):

  • Added Intent-verb surface (video_intent / intent), Watching guardrail floor (video_review_run / video_review_decide), B-roll proposals (video_propose_broll), Caption translation ES-first (video_translate_captions), and Trusted execution (TE) quality-of-life additions.

  • Expanded published surface to 196 MCP tools and 167 CLI commands (fully synchronized across standard, test, and client interfaces).

  • Hardened path validation for caption translation, brand kit, and OTIO exports.

1.12.0 (2026-08-07):

  • Added Still/plate editor surface (still-match, still-grade, still-gate, image-edit, still-package) with fail-closed cohesion gating.

1.11.x (2026-07-24):

  • Added thin kinocut_sound S12 public join adapters (sound-capabilities, sound-plan-validate, sound-mix-render, etc.).

  • Post-theme security hardening to prevent absolute host-path leaks and ensure all discovered operations have fail-closed invoke paths.

See CHANGELOG.md for full historical release notes, or view the GitHub Releases page.

FAQ

What is Kinocut?

Kinocut is a free, open-source MCP server, Python library, and kino CLI for AI-agent video editing. It wraps FFmpeg (and optional Hyperframes/Whisper extras) with preflight guardrails, Video Receipts, and quality checkpoints. It was formerly named mcp-video.

How do I install it?

brew install ffmpeg   # or apt install ffmpeg
pip install kinocut
kino doctor
claude mcp add kinocut -- uvx --from kinocut kino --mcp

Is it free and local-first?

Yes. Apache-2.0, runs on your machine, no Kinocut account or API key required for the core surface, and media is not uploaded to a Kinocut cloud.

Local compute and storage still have costs. Optional providers and the host agent can charge separately, and prompts or tool results can reach the host's model provider. Local execution alone does not establish zero data egress.

Which agents work with it?

Any MCP-compatible client that can run a local stdio server (Claude Code, Cursor, Windsurf, Cline, and similar). You can also use the Python client or CLI without an agent.

How many tools are there?

Published 1.16.1 provides 203 MCP tools / 177 CLI commands. This branch has the same registered surface at release. Query the installed server's tool schemas for exact parameters. 360 assembly still reuses video_intent and video_review_decide.

Can Kinocut edit Insta360 X4 360 video?

Yes — from a stitched 360 MP4, not .insv. Propose a 360_assembly_plan, approve it, then render split/switch/PiP/single. Works for other stitched equirect cameras too. See docs/360_ASSEMBLY.md.

Was it called mcp-video?

Yes. The current published mcp-video==1.6.16 installs kinocut==1.16.1; the historical mcp-video==1.6.11 installed kinocut==1.15.0. Compatibility imports, CLI name, env vars, data dir, resource URIs, and receipt keys remain supported on the 1.14.x+ line.

Can Kinocut turn an Insta360 X4 file into a two-cam edit?

Yes: export a stitched 360 MP4, then propose → approve → render. .insv is rejected. This shipped in 1.14.1 and remains in published 1.16.1.

How is Kinocut different?

Unlike raw FFmpeg scripts or unguarded agent shells, Kinocut validates tools and emits receipts.

Is Kinocut production software?

Treat the README status and release tags as source of truth for maturity. Validate against your own requirements before production use.

More answers: docs/faq.md · on-site FAQ: kinocut.dev/#faq

Documentation

Testing

Development verification lives in docs/TESTING.md. Keep public-surface, media workflow, and security checks current when changing tool behavior.

Development

git clone https://github.com/KyaniteLabs/kinocut.git
cd kinocut
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest tests/ -v -m "not slow and not hyperframes"

Community

Community deploys

Operators who want a public MCP URL without opening home-router ports can study the community Apache-2.0 reference stack that puts Kinocut + Hyperframes behind Tailscale Funnel, Caddy, and Google OAuth (mcp-auth-proxy): hyperframes-selfhost (not affiliated with KyaniteLabs; evaluate security for your threat model).

License

Apache 2.0. See LICENSE.

Built with FFmpeg, Hyperframes, and the Model Context Protocol.


Part of KyaniteLabs

More from KyaniteLabs. Related projects:

  • Epoch — time-estimation MCP server (PERT) for AI agents

  • DialectOS — Spanish dialect localization MCP server & CLI

  • checkyourself — local-first production-readiness checks for AI-built code

→ More at kyanitelabs.tech


If Kinocut is useful to you, star or watch it on GitHub — it helps other agent builders find it. If it saved you real editing hours: ko-fi.com/kyanitelabs.

Built by Simon Gonzalez De Cruz — available for Forward-Deployed / Applied-AI engineering and contract work via the public profile links above.

Who it's for

  • Primary: AI agent builders, Claude Code/Cursor users, and local media operators

  • Use when you need to edit, caption, repurpose, and quality-gate video with typed FFmpeg tools

  • Skip if you need a hosted cloud editor or untyped FFmpeg shell

Status

  • Maintained as of 2026 on the default branch

  • Prefer release tags when pinning dependencies

  • Report issues on the canonical GitHub repository

Agent surface

  • Coding agents: read this README first, then repo docs/AGENTS.md if present

  • Prefer machine-readable briefs (llms.txt) when the repo ships one

  • MCP or skill entrypoints are documented in-repo when applicable

Contributing

Issues and PRs are welcome on GitHub. Keep public docs free of secrets and machine-local paths.

Contributors

Kinocut improves in public, and outside contributions shape it — 1.15.0's diagnostics fixes trace directly to one excellent bug report. Reports with reproduction steps and a real traceback are contributions, and contributors are credited by name in the CHANGELOG acknowledgements and the release notes.

  • @gerardoscaglia-creator — his Windows MCP-mode investigation (#445) exposed both diagnostics gaps fixed in 1.15.0, and his portable file-locking fix (#446) landed in 1.15.0 with credit. Thank you.

  • @pedropaav-art — Windows filter-option path escaping (#458), merged 2026-08-18, shipped in 1.15.0.

  • @linhaixin45-cmyk — kino doctor Python-version floor with a visible install hint (#459), merged 2026-08-18, shipped in 1.15.0.

  • @WohaibHasan — absolute trim-end handling (#493), Windows drive preservation (#496), and portable UTF-8 CLI test capture (#498).

  • @betsmayank — first merged external fix: Hyperframes init no longer hangs under MCP without a TTY (#361).

  • @austinwmson and @ismailkattakath — external reports that closed real gaps: remotion_still runtime props (#306) and the self-host Funnel + OAuth reference stack (#432).

  • @Dodothereal and @OyaAIProd (account no longer exists) — early external PRs (ASS PlayRes for vertical burns #378, SafeSkill badges).

Cross-platform architecture and current support evidence: platform parity. Web/mobile shared processing and native clients are not implemented in this release.

Available Tools

203 tools
audio_composeBInspect

Layer multiple audio tracks with volume mixing.

Mix multiple WAV files together with individual volume control.

Args: tracks: List of track configs with: - file: Absolute path to WAV file - volume: Volume multiplier 0-1 - start: Start time offset in seconds - loop: Whether to loop the track (default false) duration: Total output duration in seconds. output_path: Absolute path for the output WAV file.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
tracksYes
durationYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full burden. It usefully documents the input shape and that the return is a dict with success/output_path, but it never states overwrite behavior for an existing output_path, error/failure semantics, or any sample-rate/channel constraints on mixing.

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

Conciseness4/5

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

Front-loaded with the core action, then Args/Returns blocks that are easy to scan. The first two sentences restate each other slightly ('layer multiple tracks with volume mixing' vs 'mix multiple WAV files with individual volume control'), which is the only 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?

An output schema exists so return details need not be repeated, and the parameter documentation is thorough despite 0% schema coverage. The remaining gap is behavioral: with no annotations on a write tool that produces a file, overwrite and failure behavior should be stated.

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 0% and the tracks item schema defines no properties, so the description is the sole source of field semantics. It fully compensates by naming file (absolute WAV path), volume (0-1 multiplier), start (seconds offset), loop (default false), plus duration and output_path. It loses a point for not stating volume's default or whether duration must cover track starts plus lengths.

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

Purpose4/5

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

The description opens with a specific verb+resource pair ('Layer multiple audio tracks with volume mixing') and clarifies the concrete form ('Mix multiple WAV files together with individual volume control'). It is easy to tell apart from synthesis tools like audio_synthesize or effect tools like audio_effects, though it never explicitly names a sibling to route against.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites (do the source WAVs need to exist? same sample rate?), and no mention of alternatives such as audio_sequence or video_mix_audio. The agent must infer the appropriate context entirely.

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

audio_effectsBInspect

Apply audio effects chain to a WAV file.

Process audio through a chain of effects like reverb, filtering, normalization.

Args: input_path: Absolute path to input WAV file. output_path: Absolute path for output WAV file. effects: List of effect configs with: - type: "lowpass", "reverb", "normalize", "fade" - Additional params per effect type

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
effectsYes
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses the write to output_path and the return shape (success status and output_path), which is genuine context, but says nothing about overwrite behavior, supported sample rates/format limits, permission requirements, or failure modes.

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

Conciseness4/5

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

Front-loaded purpose followed by clean Args/Returns sections that make it easy to scan. The second sentence ('Process audio through a chain of effects like reverb, filtering, normalization') largely restates the first and is the one redundant element.

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

Completeness3/5

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

An output schema exists so return values needn't be explained, and parameter coverage from the description is good. However, for a three-parameter mutation tool with zero annotations and zero schema coverage, the absence of any usage or side-effect guidance leaves clear gaps an agent must guess around.

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 0%, so the description must compensate, and it does: it clarifies both paths are absolute and WAV-specific, and describes effects as a list of configs with a type field enumerating valid values (lowpass, reverb, normalize, fade). It stops short of spelling out the additional per-effect parameters, keeping it from 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?

States a specific verb+resource: applying an effects chain to a WAV file, and enumerates concrete effects (reverb, filtering, normalization). It's clear what the tool does, but it does not distinguish itself from audio-adjacent siblings such as video_filter, audio_preset, or video_normalize_audio, leaving differentiation to inference.

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

Usage Guidelines2/5

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

Offers no when-to-use, when-not-to-use, or alternative-tool guidance. A caller cannot tell from the text whether to reach for audio_effects versus audio_compose, audio_sequence, or video_normalize_audio. Only implied usage from the purpose statement is available.

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

audio_presetAInspect

Generate preset sound design elements.

Pre-configured sound effects for common use cases. No external audio files needed.

Available presets:

  • UI: ui-blip, ui-click, ui-tap, ui-whoosh-up, ui-whoosh-down

  • Ambient: drone-low, drone-mid, drone-tech

  • Notifications: chime-success, chime-error, chime-notification

  • Data: typing, scan, processing, data-flow

Args: preset: Preset name from the list above. output_path: Absolute path for the output WAV file. pitch: Pitch variation (low, mid, high). Default mid. duration: Override default duration (seconds). intensity: Effect intensity 0-1. Default 0.5.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
pitchNomid
presetYes
durationNo
intensityNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose the return shape ('Dict with success status and output_path') and that output goes to a WAV path, which is useful. But it omits side-effect detail such as what happens when output_path is null, whether an existing file is overwritten, and any permission or duration limits.

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

Conciseness4/5

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

Front-loaded with the purpose, then a compact preset catalogue and arg list. The preset enumeration is long but earns its place because the schema exposes no enum for preset. Slightly verbose formatting but no filler sentences.

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

Completeness4/5

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

With an output schema present, the description need not detail return values, and it covers all parameters well. The remaining gap is behavioral edge cases (default behavior when output_path is null, overwrite semantics) and any routing guidance versus the many sibling audio tools.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate, and it does: it enumerates all valid preset values, defines pitch as low/mid/high (an enum the schema lacks), explains duration as a seconds override, gives intensity's 0-1 range and default 0.5, and specifies output_path as an absolute WAV path. All five parameters are meaningfully documented.

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

Purpose4/5

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

States a specific verb+resource ('Generate preset sound design elements') and clarifies with 'pre-configured sound effects for common use cases.' It is clearly distinct from a general synthesizer, but it never names or contrasts against siblings like audio_synthesize or audio_compose, so differentiation is left implicit.

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

Usage Guidelines3/5

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

The preset categories (UI, Ambient, Notifications, Data) imply when the tool is useful, and 'No external audio files needed' hints at its convenience. However, there is no explicit when-to-use/when-not guidance and no mention of the alternative audio-generation tools an agent should compare against.

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

audio_sequenceBInspect

Compose multiple audio events into a timed sequence.

Creates a layered audio track from multiple timed sound events.

Args: sequence: List of audio events, each with: - type: "tone", "preset", or "whoosh" - at: Start time in seconds - duration: Event duration in seconds - freq/frequency: For tones (Hz) - name: For presets (preset name) - volume: 0-1 amplitude - waveform: For tones (sine, square, etc.) output_path: Absolute path for the output WAV file.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequenceYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full behavioral burden. It does disclose the output type (WAV file), that output_path must be absolute, and that the call returns a success dict, which is useful. However it omits side effects (does it overwrite an existing file?), any length or rate constraints, and permission requirements.

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

Conciseness4/5

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

Front-loaded purpose sentence followed by a structured Args/Returns block; every line maps to a real parameter or return value. The second sentence rephrases the first with little added information, which is minor 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?

For a two-parameter composition tool with an output schema, the parameter documentation is thorough and the return description, while redundant with the output schema, is harmless. The main gap is the absence of selection guidance against the many audio-related siblings.

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

Parameters4/5

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

Schema description coverage is 0% and the sequence items are untyped (additionalProperties: true), so the description must compensate — and it does, enumerating item fields (type in tone/preset/whoosh, at, duration, freq, name, volume, waveform). It stops short of documenting value ranges or defaults beyond volume 0-1, and output_path format is only qualified as 'absolute'.

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

Purpose4/5

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

States a specific verb+resource: 'Compose multiple audio events into a timed sequence,' with a clarifying restatement about layering timed sound events. It is distinguishable from generative siblings like audio_synthesize or audio_preset, but it never explicitly contrasts itself with audio_compose, which sounds nearly identical.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of alternatives, despite nearby siblings such as audio_compose, audio_synthesize, and video_mix_audio that an agent could easily confuse with this one.

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

audio_synthesizeAInspect

Generate audio procedurally using synthesis.

Creates WAV files from scratch using mathematical waveforms. No external audio files needed. Supports envelopes, reverb, filtering, and fade effects.

Args: output_path: Absolute path for the output WAV file. waveform: Waveform type (sine, square, sawtooth, triangle, noise). Default sine. frequency: Base frequency in Hz. Default 440 (A4 note). duration: Duration in seconds. Default 1.0. volume: Amplitude 0-1. Default 0.5. effects: Optional effects dict with keys: - envelope: {"attack", "decay", "sustain", "release"} in seconds - fade_in: Fade in duration in seconds - fade_out: Fade out duration in seconds - reverb: {"room_size", "damping", "wet_level"} - lowpass: Cutoff frequency in Hz

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
volumeNo
effectsNo
durationNo
waveformNosine
frequencyNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose the generation approach (procedural waveforms, self-contained) and enumerates the effect processing chain, which is genuine behavioral context. However, it omits key operational facts for a file-writing tool: whether an existing file at output_path is overwritten, and what happens when the optional output_path is omitted (schema default is null).

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?

Well front-loaded: the opening two sentences establish purpose before the Args block, and the Args/Returns structure is scannable. Minor waste in the near-duplicate first two sentences and a Returns line that partly restates the output schema, but overall efficient.

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

Completeness4/5

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

An output schema exists, so the Returns section is largely redundant, and the parameter surface is fully covered. The remaining gap is the null-default output_path semantics for a mutating file operation with no annotations to fall back on, but the description is otherwise complete enough to invoke the tool correctly.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate entirely, and it does: every one of the 6 parameters is documented with type/format/units and defaults (Hz for frequency, seconds for duration, 0-1 amplitude for volume, waveform names). It goes further by detailing the nested effects keys (ADSR envelope, fade_in/fade_out, reverb room_size/damping/wet_level, lowpass cutoff) that the schema leaves as an opaque additionalProperties object.

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

Purpose4/5

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

The description gives a concrete verb+resource ('Generate audio procedurally', 'Creates WAV files from scratch using mathematical waveforms') and clarifies the key differentiator from input-consuming siblings: no external audio files are needed. It never names a specific sibling (e.g. audio_compose, audio_sequence, hyperframes_tts) to sharpen the contrast, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied through 'No external audio files needed,' which suggests this is the choice when you have no source audio, but no explicit when-to-use or when-not-to-use statement is given. With dozens of audio siblings (audio_compose, audio_sequence, audio_effects, sound_voice_batch), a routing sentence would have been valuable.

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

effect_chromatic_aberrationBInspect

Apply chromatic aberration - RGB channel separation.

Creates a trendy RGB split effect popular in tech/glitch aesthetics.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Pixel offset amount. Default 2.0. angle: Separation direction in degrees. Default 0 (horizontal).

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
angleNo
intensityNo
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It confirms the effect writes to a separate output_path (implying a non-destructive transform) and returns a success status, but says nothing about overwrite behavior, permission needs, performance cost, or whether the input is modified. The Returns statement largely duplicates the existing output schema.

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

Conciseness4/5

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

Front-loaded with the effect and its purpose, then a tidy Args/Returns structure. The 'trendy ... tech/glitch aesthetics' line is flavor rather than functional, and the Args block partly echoes the schema, but nothing is bloated.

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

Completeness3/5

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

Given an output schema exists, the return description is unnecessary, and parameter coverage is handled. However, for a mutation tool with no annotations, it omits the when-to-use routing among many similar glitch/effect siblings and any behavioral caveats, leaving it only minimally complete.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it does: it defines input/output as absolute paths, intensity as 'pixel offset amount' with a default of 2.0, and angle as 'separation direction in degrees' with a default of 0 (horizontal). The default restatements add little, but the semantic meanings of intensity and angle go beyond the bare schema titles.

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

Purpose4/5

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

States a specific verb+resource ('Apply chromatic aberration - RGB channel separation') and even clarifies the aesthetic it produces. It is not differentiated from near-identical siblings like glitch_rgb_shift, glitch_cmyk_split, or effect_scanlines, so an agent cannot tell which effect tool to pick 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 on when to use this vs the many sibling glitch/effect tools, and no preconditions, exclusions, or context triggers. It only describes the visual result, leaving the agent to infer selection entirely on its own.

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

effect_glowBInspect

Apply bloom/glow effect for highlights.

Creates a soft glow around bright areas of the video.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Glow strength 0-1. Default 0.5. radius: Blur radius in pixels. Default 10. threshold: Brightness threshold 0-1. Default 0.7.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
radiusNo
intensityNo
thresholdNo
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full load, and it does disclose the return shape ('Dict with success status and output_path') and that the effect is a render to a separate output path (implying the input is not mutated). It does not state overwrite behavior, permission needs, or whether output_path must be pre-existing.

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

Conciseness4/5

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

Front-loaded one-line summary followed by a clarifying sentence, then compact Args/Returns blocks. Slightly verbose but every line earns its place; no filler.

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

Completeness4/5

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

For a 5-parameter effect with zero schema descriptions and no annotations, the description supplies the parameter constraints and return shape an agent needs. An output schema exists, so the Returns block is redundant but harmless; missing behavioral notes on overwrite/validation keep it short of complete.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does: it documents all five parameters, adds unit semantics ('Blur radius in pixels'), numeric ranges ('Glow strength 0-1', 'Brightness threshold 0-1'), and defaults. Only the path parameters are described minimally as 'Absolute path'.

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

Purpose4/5

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

States a specific verb and resource ('Apply bloom/glow effect') and clarifies the visual intent with 'Creates a soft glow around bright areas of the video.' This clearly distinguishes it from named siblings like effect_vignette or effect_noise, though it never explicitly references 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 guidance, no prerequisites, and no routing to adjacent tools (e.g., video_filter, still_grade). The agent must infer relevance purely from the effect name, leaving selection against ~150 siblings unguided.

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

effect_noiseAInspect

Apply film grain or digital noise.

Adds texture noise to video for vintage or lo-fi aesthetics.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Noise amount 0-1. Default 0.05. mode: Noise type (film, digital, color). Default film. animated: Whether noise changes per frame. Default true.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNofilm
animatedNo
intensityNo
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses that the tool mutates a video into an output_path and returns a success dict, but says nothing about permissions, reversibility, overwrite behavior, or rate/processing constraints. It is factual but thin on behavioral traits.

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

Conciseness4/5

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

Purpose and aesthetic framing are front-loaded in two short sentences, followed by a clean Args/Returns block. Every line earns its place, though the docstring formatting is slightly heavier than strictly needed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 parameters are covered and an output schema exists so return values are already specified. What remains missing is minor operational context (input format expectations, whether output is overwritten), but for a single-effect transform tool this is close to complete.

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

Parameters5/5

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

Schema description coverage is 0% – the schema only carries titles like 'Mode' and 'Animated'. The description compensates fully by documenting all five params: meaning, the 0-1 intensity range and 0.05 default, the mode values (film, digital, color), and what 'animated' does.

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

Purpose4/5

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

The description gives a specific verb+resource ('Apply film grain or digital noise') and adds a use-case framing ('vintage or lo-fi aesthetics'). It distinguishes itself from other effect/glitch siblings implicitly through the effect type, but never names an alternative or scope boundary.

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

Usage Guidelines3/5

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

It supplies context for why one would use it ('vintage or lo-fi aesthetics'), which implies usage, but there is no explicit when-to-use vs when-not, no mention of prerequisites, and no comparison to sibling effects like effect_scanlines or glitch_*.

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

effect_scanlinesBInspect

Apply CRT-style scanlines overlay.

Simulates old CRT monitor scanline effect with optional flicker.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. line_height: Pixels per scanline. Default 2. opacity: Line opacity 0-1. Default 0.3. flicker: Brightness variation 0-1. Default 0.1.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
flickerNo
opacityNo
input_pathYes
line_heightNo
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but provides minimal behavioral context. It describes the visual effect and mentions flicker as optional, which is useful. However, it doesn't disclose whether this overwrites the output file, the expected output format, performance characteristics, or processing requirements. The return statement is generic.

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

Conciseness4/5

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

The description is front-loaded with the core purpose, followed by a brief behavioral detail and then a clean Args/Returns structure. It's efficient and every sentence earns its place, though the 'Simulates...' sentence is somewhat redundant with the first.

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

Completeness3/5

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

Given no annotations, a 5-parameter tool, and a 0% schema description coverage, the description does a decent job of documenting parameters but leaves significant gaps: no behavioral transparency about file handling, processing requirements, or error conditions. It mentions the return as a dict with success and output_path, but the output schema already exists so that's redundant. It's 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 0%, so the description must compensate. It describes all five parameters: input_path/output_path as absolute paths, line_height as pixels per scanline with default 2, opacity as 0-1 with default 0.3, and flicker as 0-1 with default 0.1. This adds essential semantic meaning not present in the title-only schema. However, it doesn't specify valid ranges for line_height or format constraints for paths.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Apply CRT-style scanlines overlay.' It clearly describes a video-effect tool that simulates old CRT monitor scanline effects. This is distinct from sibling effects like effect_noise or effect_vignette and from glitch_scanline_jitter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 usage guidelines are provided. The description doesn't indicate when to use this tool vs alternatives like glitch_scanline_jitter or other glitch effects, 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.

effect_vignetteBInspect

Apply vignette effect - darkened edges.

Creates a darkened border effect that draws attention to the center of the frame.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. intensity: Darkness amount 0-1. Default 0.5. radius: Vignette radius 0-1 (1 = edge of frame). Default 0.8. smoothness: Edge softness 0-1. Default 0.5.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
radiusNo
intensityNo
input_pathYes
smoothnessNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses the visual effect, numeric ranges/defaults, and that an output video is produced, but it does not state permissions needed, overwrite behavior, whether output_path is optional, or other operational side effects.

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

Conciseness4/5

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

Front-loads the effect name and visual result, then uses structured Args/Returns sections. It is efficient and readable, with only slight redundancy between the opening line and the following sentence.

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

Completeness3/5

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

For a video-effect mutation tool with no annotations, the description covers the core visual behavior and all parameters. However, it omits usage context and operational details such as output overwrite semantics, and its Returns section is unnecessary because an output schema exists.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. It documents all five parameters meaningfully, including the 0-1 ranges and defaults for intensity, radius, and smoothness, which substantially exceeds the bare schema.

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

Purpose4/5

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

States a specific verb and visual effect: 'Apply vignette effect - darkened edges' and explains the darkened border intent. It is clear what the tool does, but it does not distinguish itself from sibling effects such as effect_glow, effect_noise, or effect_scanlines.

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

Usage Guidelines2/5

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

Provides no guidance on when to use this effect versus alternatives, nor any prerequisites, exclusions, or creative contexts. Usage is only implied by the effect description.

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

glitch_cmyk_splitAInspect

Apply CMYK split glitch effect.

Shifts RGB channels at 90-degree intervals to simulate four-plate offset print registration errors.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. amount: Shift distance in pixels. Default 8. angle: Base angle in degrees. Default 0. noise: Per-frame noise amplitude (0-1). Default 0.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
angleNo
noiseNo
amountNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses the return shape ('Dict with success status and output_path') and parameter defaults/units, but omits side effects such as file overwrite behavior, permissions, or what happens when output_path is omitted. This is minimally transparent but insufficient for a write/effect tool.

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

Conciseness4/5

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

The description is front-loaded with the effect and mechanism, then structured into Args and Returns sections. Given the 0% schema coverage, the parameter list earns its place, though the Returns section slightly duplicates the output 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?

An output schema exists, so the return value explanation is not strictly needed. The description covers parameter semantics well but lacks usage guidance versus sibling glitch effects and does not clarify optional output_path behavior, leaving gaps for correct invocation in a crowded toolset.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. It documents all five parameters with meaning, units, and defaults: input_path, output_path, amount in pixels, angle in degrees, and noise amplitude range 0-1. It does not clarify that output_path is optional with a null default, preventing a perfect score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 effect resource: 'Apply CMYK split glitch effect,' then explains the mechanism as shifting RGB channels at 90-degree intervals to simulate print registration errors. This distinguishes it from generic glitch siblings by naming the precise effect and its visual intent.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus alternatives such as glitch_rgb_shift, glitch_scanline_jitter, or transition_glitch. The effect description implies a use case, but the agent is left to infer selection criteria 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.

glitch_datamoshingBInspect

Apply datamoshing glitch effect.

Simulates P-frame corruption where displacement drifts across frames then periodically resets, mimicking real datamosh artifacts.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. drift: Max displacement drift in pixels. Default 20. iframe_interval: Frame interval for displacement resets. Default 30.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
driftNo
input_pathYes
output_pathNo
iframe_intervalNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses the artifact mechanism (drifting displacement that resets at intervals) and the return shape, but omits key behavioral facts: what happens when output_path is omitted (schema default is null), whether an existing output file is overwritten, and the required input format. Partial disclosure.

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

Conciseness4/5

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

Front-loads the effect and its mechanism in the first two lines, then cleanly separates Args and Returns. The Args block is slightly verbose given the schema already lists the parameters, but every line carries usable semantics.

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

Completeness3/5

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

An output schema exists, so return values needn't be spelled out (the description does so anyway). The critical gap is behavioral: output_path defaults to null with no explanation of where the result then goes, which is material for correct invocation of a rendering 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?

Schema description coverage is 0%, yet the description documents all four parameters, including units ('max displacement drift in pixels'), defaults (20, 30), and the expected absolute-path format for both paths. This meaningfully compensates for the bare schema, though it doesn't clarify the null-default behavior of output_path.

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

Purpose4/5

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

Names a specific effect (datamoshing glitch) and the underlying mechanism (P-frame corruption with periodic displacement resets), which distinguishes it from generic glitch siblings like glitch_rgb_shift or glitch_scanline_jitter. However, it never explicitly contrasts itself against those siblings, so an agent must infer the distinction from the mechanism 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 on when to choose this tool over the many adjacent glitch/transition siblings (transition_glitch, glitch_macroblocking, glitch_turbulent_displacement). It describes what the effect looks like but not the context, prerequisites, or constraints under which an agent should invoke it.

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

glitch_depth_splattingBInspect

Apply depth-based point splatting effect (requires Node.js + GPU).

Extracts pseudo-depth from luminance and renders the image as scattered points, creating a 3D particle-like appearance.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. depth_scale: Depth extraction intensity. Default 1.0. spread: Point spread distance in pixels. Default 10.0. point_size: Size of each splatted point. Default 3.0. threshold: Depth cutoff threshold (0-1). Default 0.5.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
spreadNo
thresholdNo
input_pathYes
point_sizeNo
depth_scaleNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses a hard environment requirement (Node.js + GPU), the processing mechanism, and the output shape, but says nothing about reversibility, error conditions, performance cost, or what happens with invalid parameters.

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

Conciseness4/5

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

Front-loads the effect and its prerequisite, then mechanism, then args, then return shape in a clean scannable structure. The formatting is slightly verbose but every line carries 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 six-parameter effect tool with no annotations, the parameter and output coverage is adequate and an output schema exists so return values needn't be detailed. The definition remains thin on usage context and behavioral edge cases, leaving gaps an agent would want filled.

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 0%, so the description must compensate, and it does: all six parameters are documented with meaning and the four tunables include defaults plus added range info ('threshold (0-1)'). It stops short of explaining interaction between depth_scale, spread, and point_size, but coverage is substantially better than the bare schema.

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

Purpose4/5

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

States a specific verb and resource ('Apply depth-based point splatting effect') and explains the mechanism (pseudo-depth from luminance rendered as scattered points). An agent can distinguish this from generic siblings like glitch_point_cloud or effect_glow, though it doesn't explicitly contrast itself with those alternatives.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance or named alternatives within the large glitch_*/effect_* family. The only contextual cue is the prerequisite '(requires Node.js + GPU)', which is a constraint rather than usage selection advice.

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

glitch_digital_feedbackAInspect

Apply digital feedback glitch effect (requires Node.js + GPU).

Iterative frame feedback with scale/rotation transform. Each frame blends with a scaled+rotated version of the previous output, creating ghostly trails and recursive visual patterns.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. feedback_mix: Blend between current and feedback (0-1). Default 0.5. scale: UV scale for previous frame. Default 1.0. rotation: Rotation in degrees. Default 0.0. decay: Ghost trail opacity (0-1). Default 0.9.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
decayNo
scaleNo
rotationNo
input_pathYes
output_pathNo
feedback_mixNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the Node.js + GPU runtime requirement and the processing mechanism, which is genuinely useful, but says nothing about whether it overwrites output, permission needs, or write behavior beyond the implicit 'output_path'.

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

Conciseness4/5

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

Front-loaded purpose, then a compact mechanism paragraph, then a clean Args/Returns block. Every part is relevant, with only mild redundancy in the Returns line duplicating the output 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 moderately complex effect tool, it covers the mechanism, runtime requirements, and all six parameters with defaults. It doesn't clarify that output_path is optional/nullable or give sibling routing, but since an output schema exists, return values need not be explained 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?

Schema description coverage is 0%, so the description must compensate, and it largely does: it gives ranges and units for feedback_mix (0-1), scale (UV scale for previous frame), rotation (degrees), and decay (ghost trail opacity), plus defaults. Only input_path/output_path are near-restatements of the field names.

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

Purpose4/5

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

States a specific verb+resource ('Apply digital feedback glitch effect') and explains the distinguishing mechanism (iterative frame feedback with scale/rotation transforms producing ghost trails). This clearly separates it from sibling glitch effects like glitch_rgb_shift or glitch_scanline_jitter, though it never names an alternative explicitly.

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

Usage Guidelines3/5

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

The parenthetical 'requires Node.js + GPU' is a useful environment prerequisite, but there is no guidance on when to choose this effect over the many sibling glitch tools or transitions. Usage is only implied by the effect name.

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

glitch_macroblockingBInspect

Apply macroblocking glitch effect.

Simulates codec artifacting by downscaling/upscaling to create blocky pixelation combined with color posterization.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. block_size: Block size in pixels. Default 16. intensity: Blend with original (0-1). Default 0.7. color_reduction: Color level reduction (0-1). Default 0.3.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
intensityNo
block_sizeNo
input_pathYes
output_pathNo
color_reductionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does add real behavioral context: it describes the underlying operation (codec artifacting simulation) and gives defaults for all effect parameters. However it omits key operational facts for a file-writing mutation tool – that it writes a new video (does it overwrite? is input preserved?), and what happens when the optional output_path defaults to null.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, followed by a compact technical explanation and a clean Args/Returns block. Slight redundancy in restating defaults that also appear in the schema, but overall it is tight and well organized.

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

Completeness3/5

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

An output schema exists, so the Returns line is largely redundant and the description need not explain return values. The parameter coverage is good, but for a 5-param file-transforming tool with zero annotations, the absence of any usage/routing guidance or file-write semantics leaves a noticeable gap.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does: it documents all five parameters, adds units (block_size in pixels), value ranges (0-1 for intensity and color_reduction), and the default for each. The one gap is that output_path's null default behavior is not explained.

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

Purpose4/5

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

States a specific verb and effect ('Apply macroblocking glitch effect') and explains the mechanism (downscale/upscale pixelation plus posterization), so the agent knows exactly what visual result to expect. It does not, however, distinguish itself from the many glitch_* siblings (glitch_rgb_shift, glitch_scanline_jitter, transition_pixelate), so selection among them requires external knowledge.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no named alternative among the numerous sibling glitch/pixelate effects. Usage is only implied by the word 'effect'. An agent cannot tell from this text why it would pick macroblocking over transition_pixelate or glitch_rgb_shift.

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

glitch_point_cloudCInspect

Apply point cloud rendering effect (requires Node.js + GPU).

Samples the image as scattered points arranged in a 3D-rotated grid, with depth-based displacement creating a volumetric look.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. density: Point sampling density (0-1). Default 0.5. point_size: Size of each point. Default 2.0. rotation: 3D rotation angle in degrees. Default 0.0. depth: Depth displacement intensity. Default 1.0.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNo
densityNo
rotationNo
input_pathYes
point_sizeNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It notes the requirement for Node.js + GPU but doesn't disclose whether the operation is destructive, what happens to the input file, whether it's reversible, or any rate limits or permissions needed. For a mutation tool with no annotation coverage, 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.

Conciseness4/5

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

The description is well-structured with a clear purpose statement, visual explanation, and parameter list. It's concise and front-loaded, though the 'Args' and 'Returns' sections are somewhat boilerplate. Every sentence serves a purpose.

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 output schema present, the description needn't explain return values in detail, but it does mention 'Dict with success status and output_path', which is helpful. However, for a mutation tool with no annotations, it should disclose more about behavioral traits (e.g., whether it modifies the input, error handling, GPU memory usage). The description is adequate but incomplete for its 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 0%, so the description must compensate. It documents all six parameters (input_path, output_path, density, point_size, rotation, depth) with brief explanations and defaults, which is helpful. However, the descriptions are minimal (e.g., 'Point sampling density (0-1)') and don't add much depth beyond what's inferable from parameter names. Baseline 3 is appropriate given the coverage gap is partially addressed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 effect ('point cloud rendering effect') and explains what it does visually ('samples the image as scattered points arranged in a 3D-rotated grid, with depth-based displacement'). This is clear, but it doesn't explicitly differentiate from siblings like glitch_depth_splatting or glitch_turbulent_displacement, which may share similar visual characteristics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 mentions 'requires Node.js + GPU' as a prerequisite, but provides no guidance on when to use this tool versus alternatives (e.g., glitch_depth_splatting, glitch_turbulent_displacement) or in what scenarios it's appropriate. There's no explicit when-to-use or when-not-to-use information.

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

glitch_rgb_shiftBInspect

Apply RGB channel shift glitch effect.

Shifts red and blue channels in opposite directions for a chromatic split look. Optionally adds per-frame noise for a jittery feel.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. amount: Shift distance in pixels. Default 10.0. angle: Shift direction in degrees. Default 0 (horizontal). noise: Per-frame noise amplitude (0-1). Default 0.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
angleNo
noiseNo
amountNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the behavioral burden. It discloses the core transformation and that a dict with success/output_path is returned, but it does not mention overwrite behavior, codec handling, permissions, or what happens when output_path is omitted.

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

Conciseness4/5

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

Front-loads the effect summary, then separates Args and Returns cleanly. It is appropriately sized for five parameters, though the blank-line formatting is slightly loose.

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

Completeness3/5

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

The description covers the effect and parameter semantics well, and an output schema exists so return details are less critical. However, for a mutation tool with no annotations, it leaves usage context, output_path optionality, and side-effect behavior unstated.

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

Parameters4/5

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

With 0% schema description coverage, the description usefully documents all five parameters, including units (pixels for amount, degrees for angle), defaults, and the 0-1 noise range. It misses that output_path is optional/nullable in the schema, but otherwise compensates well for the undocumented schema.

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

Purpose4/5

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

States a specific verb and effect: 'Apply RGB channel shift glitch effect,' then explains red/blue channel separation. It clearly identifies the operation, though it does not explicitly differentiate itself from similar sibling effects such as glitch_cmyk_split.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no alternatives are named. The description only says the effect can optionally add noise, leaving the agent to infer when this tool is appropriate versus other glitch or effect tools.

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

glitch_scanline_jitterBInspect

Apply scanline jitter glitch effect.

Displaces random horizontal rows of pixels for a CRT malfunction look.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. jitter_amount: Max horizontal displacement in pixels. Default 15. frequency: Fraction of rows affected (0-1). Default 0.3. speed: Animation speed multiplier. Default 5. row_height: Height of each jitter band in pixels. Default 4.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
speedNo
frequencyNo
input_pathYes
row_heightNo
output_pathNo
jitter_amountNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the behavioral burden. It does disclose the effect semantics (random displacement, CRT look, animated) and implies a file-to-file transform, but never covers overwrite behavior, permissions, reversibility, or processing cost. The "Returns" line is redundant given an output schema exists.

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

Conciseness4/5

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

Front-loads the purpose in the first sentence, then cleanly separates Args and Returns. Efficient overall, though the Returns sentence adds little beyond the existing output 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?

For a 6-parameter effect tool with an output schema, parameter and return coverage are adequate, but the absence of any annotation or usage context leaves the definition short on when/when-not guidance in a very crowded sibling set. It is minimum-viable rather than complete.

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

Parameters4/5

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

Schema description coverage is 0%, so the description properly compensates: it documents all six parameters with meaning, defaults, and units (jitter_amount in pixels default 15, frequency fraction 0-1 default 0.3, speed multiplier default 5, row_height in pixels default 4). The only gap is output_path behavior (nullable/default) is not explained.

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

Purpose4/5

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

States a specific verb and resource ("Apply scanline jitter glitch effect") and elaborates with the mechanism ("displaces random horizontal rows of pixels for a CRT malfunction look"). Clear on its own, but it never differentiates from heavily overlapping siblings like effect_scanlines, glitch_screen_tearing, or glitch_vhs_tracking.

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

Usage Guidelines2/5

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

There is no when-to-use, when-not-to-use, or alternative-selection guidance at all. In a sibling space packed with other glitch effects, an agent gets no help deciding between this and, say, glitch_rgb_shift or effect_scanlines.

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

glitch_screen_tearingBInspect

Apply screen tearing glitch effect.

Creates horizontal tear bands at varying Y positions that shift left/right over time.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. tear_count: Number of tear bands. Default 5. offset_range: Max horizontal offset in pixels. Default 80. speed: Animation speed. Default 3.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
speedNo
input_pathYes
tear_countNo
output_pathNo
offset_rangeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It does disclose the visual behavior (tear bands at varying Y positions shifting over time) and implies a file-to-file transformation via input/output paths plus a success/output_path return. However it omits whether the source is modified, overwrite semantics, required permissions, or performance characteristics.

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

Conciseness4/5

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

Front-loaded with the effect summary before the structured Args/Returns block, and every line is informative. Slightly verbose in restating defaults that the schema already carries, but overall tight and well organized.

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

Completeness4/5

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

An output schema exists, so the return-value line is a bonus rather than a necessity. Combined with full parameter documentation and a clear effect description, the definition is nearly complete; the missing piece is routing guidance among the many sibling glitch effects.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it does: all five parameters are documented with meaning and defaults (tear_count 'Number of tear bands', offset_range 'Max horizontal offset in pixels', speed 'Animation speed'). Only minor gaps remain, e.g. units/valid ranges and behavior of the optional output_path.

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

Purpose4/5

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

The description states a specific verb and resource ('Apply screen tearing glitch effect') and even explains the visual mechanism (horizontal tear bands shifting left/right over time). It clearly distinguishes itself from non-glitch siblings, but does not differentiate from the many other glitch_* siblings (glitch_rgb_shift, glitch_scanline_jitter, glitch_vhs_tracking, etc.).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 effect versus the other glitch tools or any other alternative, and no prerequisites or exclusions are stated. Usage is only implied by the tool name and the effect description.

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

glitch_slit_scanAInspect

Apply slit-scan temporal displacement effect (requires Node.js + GPU).

Each row/column of the output is sampled from a different past frame, creating a time-smeared effect reminiscent of slit-scan photography.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. depth: Number of past frames to use (1-120). Default 30. direction: 0=top-bottom, 1=bottom-top, 2=left-right, 3=right-left. Default 0.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNo
directionNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full behavioral burden. It usefully discloses the runtime prerequisite (Node.js + GPU) and that it returns a dict with success status and output_path, but it omits what happens when output_path is left at its null default, overwrite behavior, and any performance/processing-time 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?

Front-loaded with the effect name and mechanism, then a compact Args/Returns block. Every line adds usable information; 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.

Completeness4/5

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

For a 4-parameter GPU effect tool with an output schema present (so return values need not be re-explained), the definition covers purpose, environment requirement, and every parameter. The one notable gap is the behavior of the null-defaulted output_path, which the agent still has to guess at.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate, and it does: it names all four parameters, gives an absolute-path requirement for input/output, supplies the depth range (1-120) with default 30, and decodes direction as a 0-3 enum with labels and default. This is information the schema does not carry.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 effect ('Apply slit-scan temporal displacement effect') and then explains the mechanism ('each row/column sampled from a different past frame'), which cleanly separates it from the many neighboring glitch_* tools such as glitch_scanline_jitter or glitch_rgb_shift.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 visual intent and a hard prerequisite ('requires Node.js + GPU'), which implies when the tool is appropriate, but it never states when to choose it over siblings like transition_glitch or glitch_turbulent_displacement, nor any exclusion criteria.

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

glitch_turbulent_displacementAInspect

Apply turbulent displacement glitch effect.

Uses layered sin/cos expressions at different frequencies to approximate fractal Brownian motion noise for organic-looking displacement.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. amount: Displacement magnitude in pixels. Default 20. scale: Base noise frequency. Default 0.01. speed: Animation speed. Default 1. octaves: Number of noise octaves (1-5). Default 3.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleNo
speedNo
amountNo
octavesNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the noise algorithm and that the return is a dict with success status and output_path, but says nothing about whether existing files are overwritten, what happens when output_path is omitted (it is nullable with default null), error modes, or performance cost. Useful context, but key behavioral gaps remain.

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

Conciseness5/5

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

Front-loaded with the effect name, then a brief technical rationale, then a clean Args/Returns block. Every line earns its place; no 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 6-param tool with zero schema descriptions and no annotations, the description covers all parameters, the technique, and the return shape. The main omissions are the nullable output_path behavior and any error/overwrite semantics.

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 0%, so the description must compensate, and it does: it explains input_path/output_path as absolute paths, gives amount in pixels, scale as base noise frequency, speed as animation speed, and constrains octaves to 1-5, all with defaults. It only omits the semantics of the optional/nullable output_path.

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

Purpose4/5

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

States a specific verb and effect ('Apply turbulent displacement glitch effect') and even explains the underlying technique (layered sin/cos approximating fBm noise), which is enough to distinguish it from glitch siblings like glitch_rgb_shift or glitch_scanline_jitter. It never explicitly names or contrasts those siblings, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no routing to or away from the many alternative glitch/effect tools. The agent must infer the use case purely from the effect name.

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

glitch_vhs_trackingBInspect

Apply VHS tracking error glitch effect.

Simulates VHS tape tracking problems with color bleed, rolling bands, and analog noise.

Args: input_path: Absolute path to input video. output_path: Absolute path for output video. tracking: Tracking error intensity (0-1). Default 0.5. noise_amount: VHS noise intensity (0-1). Default 0.03. color_bleed: Red channel shift in pixels. Default 3. roll_speed: Vertical roll speed. Default 2.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
trackingNo
input_pathYes
roll_speedNo
color_bleedNo
output_pathNo
noise_amountNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose the return shape ("Dict with success status and output_path") and the nature of the visual effect. However, it omits operational traits an agent would want for a video mutation: re-encode behavior, supported input formats, processing cost, and what happens when output_path is omitted (null default).

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

Conciseness4/5

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

Front-loaded with the effect statement, then a compact Args/Returns block with no redundant prose. The extra sensory sentence about the effect is short and earns its place, though the Returns line is somewhat redundant given an output schema exists.

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

Completeness4/5

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

For a 6-parameter effect tool with an output schema present, the description covers purpose, all parameters, and return shape, so an agent can call it correctly. The absence of any behavioral/permission/performance context is the main remaining gap, partly excused by the existing output schema.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does: all six parameters are named with meaning, units, and defaults (tracking 0-1, noise_amount 0-1, color_bleed in pixels, roll_speed). The only gap is the semantics of output_path being optional/null, which is not explained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 effect ("Apply VHS tracking error glitch effect") and elaborates with concrete visual traits (color bleed, rolling bands, analog noise), which cleanly separates it from sibling glitch tools like glitch_rgb_shift or glitch_scanline_jitter. It does not explicitly name those siblings, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no statement of when to choose this tool over the many other glitch/effect siblings, no prerequisites, and no exclusions. The reader must infer applicability from the effect name alone.

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

hyperframes_add_blockCInspect

Install a block from the Hyperframes catalog.

Args: project_path: Absolute path to the Hyperframes project directory. block_name: Registry item name (e.g. claude-code-window, shader-wipe).

ParametersJSON Schema
NameRequiredDescriptionDefault
block_nameYes
no_clipboardNo
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden for a mutation tool. It does not say that files are written into the project, whether existing files are overwritten, whether the project must be initialized, or what happens when block_name is not in the catalog. Only the bare action is disclosed.

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

Conciseness4/5

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

Front-loaded purpose followed by a compact Args block; there is little waste. The formatting is slightly boilerplate ('Args:' list) but each line carries information.

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 filesystem-mutating tool with no annotations, the description omits prerequisites, overwrite behavior, error conditions, and the meaning of the optional no_clipboard flag. The existence of an output schema excuses it from explaining return values, but the behavioral gaps remain significant.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It usefully documents 2 of 3 parameters (project_path as absolute directory, block_name with concrete examples like claude-code-window). The third parameter, no_clipboard, is left unexplained in both the schema and the description, so compensation is partial.

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

Purpose4/5

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

States a specific verb and resource: 'Install a block from the Hyperframes catalog.' An agent knows this adds a catalog block to a project. However, it does no sibling differentiation — nothing distinguishes it from hyperframes_catalog, hyperframes_init, or hyperframes_render in the Hyperframes family.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites (does the project need hyperframes_init first?), and no pointer to hyperframes_catalog for discovering valid block names. Usage is only implied by the verb 'install'.

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

hyperframes_benchmarkCInspect

Benchmark Hyperframes render speed and file size.

ParametersJSON Schema
NameRequiredDescriptionDefault
runsNo
json_outputNo
output_pathNo
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It does not disclose that benchmarking likely performs repeated renders (costly, possibly minutes), whether it writes files to output_path, or whether it mutates the project. Only the high-level intent is stated.

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 states the tool's purpose immediately. It is arguably too terse rather than padded.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but with no annotations, 0% parameter coverage, and no usage context, the definition is thin for a four-parameter tool that presumably runs repeated renders. Key operational context is missing.

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

Parameters2/5

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

Schema description coverage is 0% for all four parameters. The description mentions speed and file size but says nothing about runs, json_output, output_path, or project_path, leaving every parameter's meaning and format to inference from its name 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 names a specific verb (benchmark) and resource (Hyperframes render), plus the measured dimensions (speed, file size), so an agent can tell it is a measurement tool rather than a renderer. However, it does not differentiate itself from the sibling video_benchmark_run, which sounds like it does the same thing for a different pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 run this benchmark, what state the project must be in, or how it relates to video_benchmark_run. The agent must infer that this applies only to Hyperframes projects.

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

hyperframes_captureCInspect

Capture a website as editable Hyperframes components.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
outputNo
timeout_msNo
skip_assetsNo
max_screenshotsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing beyond the fact that the result is 'editable.' It does not say whether the tool fetches the live site, whether it writes files to disk (the 'output' param implies this), whether network access or credentials are needed, or how long a capture typically takes.

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

Conciseness3/5

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

It is a single front-loaded sentence with zero filler, which is structurally clean. But for a five-parameter tool with no annotations, this level of brevity crosses from concise into under-specified.

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

Completeness2/5

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

An output schema exists, so return values need not be described, but the rest of the context is thin: five undocumented parameters, no annotations, and no usage framing. An agent could not reliably call this tool beyond supplying a URL.

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

Parameters2/5

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

Schema description coverage is 0% across five parameters, so the description must compensate and it does not. Only 'url' is implied by 'a website'; output, timeout_ms, skip_assets, and max_screenshots are entirely unexplained in both schema and description, leaving their meaning and expected values to inference.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 ('Capture') and resource ('a website') and names the output artifact ('editable Hyperframes components'), which distinguishes it from pure-render siblings like hyperframes_render. However, it gives no differentiation from near-neighbors such as hyperframes_snapshot, hyperframes_still, or hyperframes_inspect, leaving the agent to guess which capture-like tool applies.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of any alternative among the many hyperframes_* siblings. The agent is told what the tool does but not the conditions under which it should be preferred over snapshot, still, or preview.

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

hyperframes_catalogCInspect

Browse Hyperframes catalog blocks/components.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNo
item_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It says only that the tool browses the catalog; it does not disclose pagination, filtering behavior, permissions, rate limits, or whether the operation is read-only.

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

Conciseness3/5

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

The description is a single front-loaded sentence with no wasted words. However, it is under-specified for a tool with two optional filters, so its concision comes at the cost of useful detail.

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

Completeness2/5

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

An output schema exists, so return values need not be described. Still, with no annotations and no parameter documentation, the description omits how to use the tag and item_type filters and gives no behavioral context for browsing the catalog.

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

Parameters1/5

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

The schema has two parameters ('tag' and 'item_type') with 0% description coverage, and the description does not explain either one. 'Blocks/components' loosely gestures at item type but does not define values or clarify how 'tag' filters the catalog.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Browse') and resource ('Hyperframes catalog blocks/components'), so the basic purpose is clear. It does not differentiate from sibling tools such as hyperframes_compositions or hyperframes_info, which prevents a 5.

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

Usage Guidelines2/5

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

Provides no explicit when-to-use, when-not-to-use, or alternative guidance. The imperative 'Browse' implies a read operation but does not help an agent choose between this catalog tool and related hyperframes tools.

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

hyperframes_compositionsCInspect

List compositions in a Hyperframes project.

Args: project_path: Absolute path to the Hyperframes project directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It doesn't indicate whether the list is recursive, whether it requires the project to be initialized, error behavior for invalid paths, sorting, or pagination. The single line about args adds nothing behavioral.

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?

Very short and front-loaded with the action and resource. The Args block is somewhat redundant with the schema, but it adds the absolute-path clarification, so it 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?

Output schema exists, so return values needn't be described. However, for a listing tool with no annotations, the description lacks essential context such as prerequisites (initialized project) and the nature of the returned list, leaving gaps an agent would want filled.

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

Parameters3/5

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

Schema description coverage is 0%, but the description explains project_path as an absolute path to the Hyperframes project directory, partially compensating for the empty schema title. With only one parameter and no format details or examples, this meets the baseline but goes no 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?

States a specific verb (list) and resource (compositions) scoped to a Hyperframes project, which an agent can distinguish from siblings like hyperframes_info or hyperframes_catalog. It does not, however, say how compositions differ from those other Hyperframes artifacts, leaving mild ambiguity about what exactly is returned.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance, and no mention of alternatives such as hyperframes_catalog or hyperframes_info. The agent must infer from the name alone whether this is the right listing tool.

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

hyperframes_doctorBInspect

Run Hyperframes environment diagnostics.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full behavioral burden. It does not disclose whether the tool is read-only or has side effects, what environment aspects it inspects (binaries, config, credentials, versions), whether it requires auth, or how failures are reported. The presence of an output schema covers return shape but not behavioral characteristics.

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

Conciseness4/5

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

A single front-loaded sentence with no padding or redundancy. It is efficient, though the sparseness reflects under-specification rather than tight editing.

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 means return values need not be described, and zero params keeps the surface small. However, with no annotations and no indication of when to run it or what it verifies, the definition is only minimally complete for a diagnostics entry point in a large tool family.

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

Parameters4/5

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

The tool takes zero parameters, so there are no parameter semantics for the description to explain. Baseline of 4 applies.

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

Purpose4/5

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

States a specific verb ('Run') and resource ('Hyperframes environment diagnostics'), which is clear enough that an agent knows it checks the Hyperframes environment. It does not explicitly differentiate itself from nearby siblings such as hyperframes_validate, hyperframes_info, or hyperframes_preflight, but the 'environment diagnostics' framing is distinct.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no naming of alternatives. An agent cannot tell from the description whether this should be run before rendering, after a failure, or as a general health check versus hyperframes_validate or hyperframes_preflight.

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

hyperframes_infoCInspect

Print Hyperframes project metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. 'Print' implies a read-only operation, but it does not state permissions, side effects, rate limits, or whether the output is purely informational. The presence of an output schema reduces the need to explain return values, but behavioral context remains 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 wasted words. It is appropriately sized for a simple metadata tool.

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

Completeness2/5

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

For a tool with one required parameter, no annotations, and 0% schema description coverage, the description is incomplete. It omits when to use the tool, what kind of metadata is printed, and any parameter expectations, leaving the agent with insufficient context beyond the bare purpose.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not mention the required 'project_path' parameter at all. It does not explain the expected path format, whether it must point to a Hyperframes project directory, or any constraints. The parameter name is somewhat self-explanatory, but the description adds no meaningful 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 uses a specific verb ('Print') and resource ('Hyperframes project metadata'), making the basic action clear. It distinguishes itself from generic video metadata tools by specifying Hyperframes, though it does not differentiate from sibling tools like hyperframes_inspect or hyperframes_catalog.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 hyperframes_inspect, hyperframes_catalog, or video_read_metadata. Usage is only implied by 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.

hyperframes_initBInspect

Scaffold a new Hyperframes project.

Args: name: Project name. output_dir: Directory to create the project in. Defaults to current directory. template: Project template (blank, warm-grain, swiss-grid). Default blank. video: Optional source video for project bootstrap. audio: Optional source audio for project bootstrap. skip_transcribe: Skip Whisper transcription during media bootstrap. model: Whisper model for transcription. language: Language code for transcription. tailwind: Add Tailwind CSS browser-runtime support. resolution: Hyperframes canvas resolution preset.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
audioNo
modelNo
videoNo
languageNo
tailwindNo
templateNoblank
output_dirNo
resolutionNo
skip_transcribeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It does disclose useful behavior: defaults for output_dir/template, that transcription happens during media bootstrap and can be skipped, and that media can seed the project. It does not say whether an existing directory is overwritten, what files are produced, or what permissions are needed.

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

Conciseness3/5

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

The one-line purpose is correctly front-loaded, but the body is a flat docstring arg dump that mirrors the schema field-by-field without grouping or prioritization. It is not padded, but it is not tight either.

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

Completeness3/5

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

For a 10-parameter mutating scaffold tool with no annotations, the description covers parameter meaning adequately and an output schema exists so return values need no explanation. It is still missing preconditions (existing directory handling, required media formats) and any routing context against the sibling initializers.

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 0%, so the description must compensate, and it largely does: every one of the 10 parameters gets a plain-language meaning, template enumerates its three valid values (blank, warm-grain, swiss-grid), and defaults are restated for output_dir, template, and the media fields. Only 'resolution preset' and the Whisper model choices remain underspecified.

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

Purpose4/5

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

States a specific verb and resource: 'Scaffold a new Hyperframes project.' An agent can immediately tell this creates project scaffolding. It does not, however, differentiate itself from close siblings like video_init_project or video_project_create, so it stops short of a 5.

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

Usage Guidelines2/5

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

There is no when-to-use guidance and no mention of the alternatives in a sibling list that contains at least two other project-initialization tools (video_init_project, video_project_create). The description never says when this should be preferred over those.

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

hyperframes_inspectCInspect

Inspect rendered composition layout for overflow and visual issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
atNo
strictNo
samplesNo
toleranceNo
max_issuesNo
timeout_msNo
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. 'Inspect' implies read-only, but the description does not disclose whether it triggers a render, requires an existing rendered composition, its side effects, or how results are produced. With 7 params and no annotation safety profile, 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.

Conciseness4/5

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

A single front-loaded sentence with no filler. It is efficient, though arguably too terse given the parameter complexity; still, it wastes no words.

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

Completeness2/5

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

Output schema exists, so return values need not be explained. However, with no annotations and 0% parameter coverage, the definition omits usage context, behavioral traits, and parameter meaning, leaving the agent under-equipped to invoke the tool correctly.

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

Parameters1/5

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

Schema description coverage is 0% for 7 parameters. The description names no parameters and gives no meaning for 'at', 'strict', 'samples', 'tolerance', 'max_issues', 'timeout_ms', or 'project_path'. It does not compensate for the complete lack of schema documentation.

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

Purpose4/5

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

States a specific verb ('Inspect') and resource ('rendered composition layout') and names the issue types ('overflow and visual issues'). It does not differentiate from siblings like hyperframes_validate or hyperframes_snapshot, so it stops short of a 5.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no mention of alternative tools. The agent must infer from the name that this is for post-render layout inspection.

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

hyperframes_previewCInspect

Launch Hyperframes preview studio for live preview.

Args: project_path: Absolute path to the Hyperframes project directory. port: Port for the preview server (default 3002).

ParametersJSON Schema
NameRequiredDescriptionDefault
portNo
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. 'Launch ... for live preview' implies a long-running server process, but nothing is said about whether the call blocks, what it returns (URL?), how the server is stopped, or any port-conflict behavior.

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

Conciseness4/5

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

One-sentence purpose followed by a two-item arg list; front-loaded and free of filler. The Args block duplicates the schema somewhat but stays short.

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

Completeness2/5

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

An output schema exists, so return values need not be described. But for a server-launching tool with no annotations, the description omits lifecycle essentials: blocking behavior, server URL, and how to terminate the preview.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It does add real meaning: project_path must be an absolute path to a Hyperframes project directory, and port defaults to 3002. However, it omits valid port ranges or what happens on conflicts.

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

Purpose4/5

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

States a specific verb and resource: launching the Hyperframes preview studio for live preview. It's clear this is the Hyperframes-local preview server launcher, but it does not explicitly distinguish itself from near siblings such as video_preview, video_template_preview, or hyperframes_snapshot.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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, prerequisites, or alternatives are given. An agent cannot tell from the description when to prefer this over video_preview or hyperframes_still.

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

hyperframes_remove_backgroundAInspect

Cut a person or a product out of a still or video.

Default model u2net_human_seg is people-only (talking heads). For products, packaging, jewelry, bottles, ceramics, or any non-person object, pass model="birefnet-general" (requires pip install "kinocut[object-matte]"). Never falls through to the people model. Call info=True with no input to list models and cache without downloading. Guide: docs/PRODUCT_MATTE.md.

ParametersJSON Schema
NameRequiredDescriptionDefault
infoNo
modelNo
deviceNoauto
qualityNobalanced
input_pathNo
output_pathNo
mask_intervalNo
equipment_overlayNo
background_output_pathNo
fail_if_equipment_on_subjectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the hidden install dependency (kinocut[object-matte]), the no-silent-fallback behavior ("Never falls through to the people model"), and that info=True lists models without downloading (a side-effect-free probe). It does not describe how device/quality/mask_interval change runtime behavior or resource cost, so it is not complete.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, followed by the model-selection caveat and the info probe, with no filler. The model/install sentence is densely packed (install requirement embedded in parentheses), which is slightly compressed but still readable.

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

Completeness3/5

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

An output schema exists, so return values need no explanation, and the safety/selection story is covered. However, with 10 parameters at 0% schema coverage and no annotations, an agent still cannot reason about mask_interval, device, quality, or the equipment-overlay/failure flags that materially affect output. Minimum viable rather than complete.

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

Parameters2/5

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

Schema description coverage is 0% across 10 parameters, so the description must compensate, and it only clarifies two of them (model, info). device, quality, input_path, output_path, mask_interval, equipment_overlay, background_output_path, and fail_if_equipment_on_subject remain entirely unexplained in both schema and prose. Partial compensation, substantial gap.

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

Purpose4/5

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

States a specific operation and scope: "Cut a person or a product out of a still or video." That is unambiguous about verb and resource, and it implicitly separates itself from keying/masking siblings by naming person/product cutouts. It stops short of naming an alternative tool (e.g. video_chroma_key) explicitly, so it falls just short of 5.

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

Usage Guidelines5/5

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

Explicitly routes the caller: default u2net_human_seg is people-only, and products/packaging/jewelry/bottles/ceramics require model="birefnet-general". It also tells the agent how to enumerate options (info=True with no input) and where the extended guide lives. The when-to-use-which-model condition is fully spelled out.

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

hyperframes_renderBInspect

Render a Hyperframes composition to video.

Args: project_path: Absolute path to the Hyperframes project directory. output_path: Where to save the video. Auto-generated if omitted. fps: Frame rate (24, 30, 60). width: Output width in pixels. height: Output height in pixels. quality: Render quality (draft, standard, high). Default standard. format: Output format (mp4, webm, mov, png-sequence). Default mp4. resolution: Hyperframes resolution preset (landscape, portrait, landscape-4k, portrait-4k, 1080p, 4k, uhd). composition: Specific composition file to render instead of index.html. workers: Parallel render workers (number or 'auto'). Default auto. crf: Override encoder CRF (lower = better quality). variables: Inline JSON object/string with runtime data for the composition. variables_file: Path to a JSON file with runtime data for the composition.

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNo
fpsNo
gpuNo
hdrNo
sdrNo
quietNo
widthNo
dockerNo
formatNo
heightNo
strictNo
qualityNo
workersNo
variablesNo
resolutionNo
strict_allNo
browser_gpuNo
compositionNo
output_pathNo
project_pathYes
video_bitrateNo
no_browser_gpuNo
variables_fileNo
strict_variablesNo
max_concurrent_rendersNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does disclose useful behavior: output_path is auto-generated if omitted, and it supplies defaults not present in the schema (quality=standard, format=mp4, workers=auto). However it says nothing about side effects (overwriting existing files), resource/GPU needs, blocking behavior, or failure modes, which are significant for a 25-param render tool.

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

Conciseness4/5

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

The purpose sentence is front-loaded and the Args list is a compact, scannable format appropriate to a 25-parameter tool. Most lines earn their place with default values or value ranges, though the trailing whitespace and lack of grouping for the boolean flags are minor inefficiencies.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and the core render parameters are covered. But for a tool with 1 required and 24 optional parameters and zero schema descriptions, the unexplained GPU/strict/docker/quiet flags leave the definition insufficiently complete to call it confidently.

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

Parameters3/5

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

Schema coverage is 0%, so the description must compensate. It documents roughly half the parameters with meaningful value ranges (fps 24/30/60; quality draft/standard/high; format mp4/webm/mov/png-sequence; resolution presets; 'crf: lower = better quality'), which is genuinely useful. But about a dozen parameters (gpu, hdr, sdr, quiet, docker, strict, strict_all, browser_gpu, no_browser_gpu, video_bitrate, strict_variables, max_concurrent_renders) are left entirely unexplained.

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

Purpose4/5

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

The lead sentence states a specific verb and resource: 'Render a Hyperframes composition to video.' That clearly identifies the operation and its output artifact, distinguishing it from still/preview siblings. It stops short of explicitly contrasting with revideo_render or video_workflow_render, so it is clear but not sibling-differentiating.

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

Usage Guidelines2/5

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

There is no when-to-use guidance and no mention of alternatives such as hyperframes_preview or revideo_render. The description only lists arguments; an agent cannot infer when this render path is preferred over the other render tools in the sibling set.

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

hyperframes_snapshotCInspect

Capture key frames as PNG screenshots for visual verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
atNo
framesNo
variablesNo
timeout_msNo
project_pathYes
variables_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It states that frames are captured as PNG screenshots, but does not disclose side effects (e.g., whether files are written, where they are saved), permissions required, or how frame selection behaves. Only the most basic operation is described.

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

Conciseness4/5

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

The description is a single front-loaded sentence with no wasted words. However, for a 6-parameter tool with no other documentation, the extreme brevity leaves essential information absent, keeping it from a perfect score.

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 presence of an output schema means return values need not be explained, but the description still lacks parameter meanings, side effects, and prerequisites for a tool with 6 parameters and no annotations. It is insufficiently complete for correct invocation.

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

Parameters1/5

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

Schema description coverage is 0% across 6 parameters, so the description must compensate. It mentions no parameters and gives no meaning for 'at', 'frames', 'variables', 'timeout_ms', 'project_path', or 'variables_file'. 'Key frames' vaguely relates to the 'frames' parameter but provides no actionable semantics.

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

Purpose4/5

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

States a specific verb ('Capture') and resource ('key frames as PNG screenshots') with a stated purpose ('for visual verification'). Clear, but does not differentiate from siblings like hyperframes_capture, hyperframes_still, or hyperframes_preview, so it falls short of a 5.

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

Usage Guidelines2/5

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

The phrase 'for visual verification' hints at a context, but there is no explicit guidance on when to use this tool versus alternatives, no exclusions, and no prerequisites. The agent must infer usage entirely.

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

hyperframes_stillBInspect

Render a single frame as image from a Hyperframes composition.

Args: project_path: Absolute path to the Hyperframes project directory. output_path: Where to save the image. Auto-generated if omitted. frame: Frame number to render (default 0). variables: Inline JSON object/string with runtime data for the composition. variables_file: Path to a JSON file with runtime data for the composition.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameNo
variablesNo
output_pathNo
project_pathYes
variables_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral-disclosure burden. It states that a single frame is rendered and that output_path is auto-generated if omitted, but it does not disclose output format, overwrite behavior, permissions, error conditions, or any side effects of writing the image.

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

Conciseness5/5

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

The description is front-loaded with the core purpose in one sentence, followed by a compact Args list. Every line contributes directly to invocation understanding, with no filler.

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

Completeness3/5

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

The tool has five parameters, no annotations, no schema descriptions, and an output schema. The description adequately documents parameters, but without annotations it should also provide usage and behavioral context, such as when to choose this over hyperframes_snapshot or what happens on invalid frames/output paths.

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 0%, so the description must supply parameter meaning, and it does so for all five parameters. It explains project_path as an absolute directory, output_path behavior, frame defaulting to 0, and the inline/file variants for runtime variables; it only misses precedence between variables and variables_file.

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

Purpose4/5

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

The description gives a specific verb and resource: rendering a single frame as an image from a Hyperframes composition. It clearly differentiates from a full render by saying 'single frame as image,' but it does not explicitly position itself against sibling tools such as hyperframes_snapshot, hyperframes_render, or hyperframes_capture.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus alternatives. The description only documents arguments and does not mention when a single-frame render is appropriate, nor when to prefer hyperframes_render, hyperframes_snapshot, or other frame-extraction siblings.

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

hyperframes_to_mcpvideoAInspect

Render a Hyperframes composition and post-process with mcp-video in one step.

Args: project_path: Absolute path to the Hyperframes project directory. post_process: List of post-processing operations, each with 'op' and 'params' keys. Example: [{"op": "resize", "params": {"aspect_ratio": "9:16"}}] output_path: Where to save the final output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathNo
post_processYes
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior2/5

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

No annotations, so the description carries the full burden. It discloses only that output_path is auto-generated if omitted; it omits permissions, side effects, whether existing output is overwritten, and runtime/rate-limit behavior for a render pipeline.

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

Conciseness5/5

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

Front-loaded one-sentence purpose followed by a compact Args block; the single example is useful and no sentence is wasted.

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

Completeness3/5

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

Output schema covers return values, and parameters are well documented, but for a pipeline tool with an open-ended post_process array, the description never enumerates valid operations or their required params, leaving a meaningful gap for correct invocation.

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

Parameters5/5

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

Schema description coverage is 0%, but the description compensates by defining all three parameters: project_path as absolute project directory, post_process as a list of op/params objects with a concrete example, and output_path as the save location with a default. This adds substantial meaning beyond bare schema titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Render') and resource ('Hyperframes composition') plus 'post-process with mcp-video', and the 'in one step' phrasing distinguishes it from separate render and post-process siblings.

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

Usage Guidelines3/5

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

The 'in one step' phrasing implies using this when combined render+post-process is desired, but it names no alternatives (e.g., hyperframes_render plus separate post-processing) and gives no explicit when-not guidance.

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

hyperframes_transcribeCInspect

Transcribe audio/video to word-level timestamps or import transcripts.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNo
languageNo
input_pathYes
project_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses output granularity ('word-level timestamps') and a dual import mode, but omits permissions, supported formats, whether files are written, and other operational 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?

A single sentence, front-loaded with the core action and covering the secondary import mode without filler. It is appropriately sized for a tool definition.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but with no annotations and zero schema parameter descriptions, the definition leaves too much unspecified for reliable invocation. Usage context and parameter meaning are missing.

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

Parameters1/5

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

Schema description coverage is 0% across four parameters. The description only loosely implies an input path via 'audio/video' and does not explain model, language, or project_path at all, leaving most parameters undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 ('Transcribe') and resource ('audio/video') and states the output granularity ('word-level timestamps'). It also covers an import mode, but does not differentiate the tool from similar siblings such as video_ai_transcribe or video_generate_subtitles.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no alternatives named. The two modes are mentioned, but the description does not help an agent choose this tool over sibling transcription or subtitle tools.

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

hyperframes_ttsCInspect

Generate speech audio or list available Hyperframes local TTS voices.

ParametersJSON Schema
NameRequiredDescriptionDefault
speedNo
voiceNo
languageNo
list_voicesNo
output_pathNo
text_or_fileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It mentions 'local TTS' but does not disclose output file behavior, permissions, voice availability, speed limits, or whether text_or_file reads from disk, leaving significant behavioral gaps for a generation tool.

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

Conciseness4/5

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

It is a single, front-loaded sentence with no wasted words. The two modes are packed in efficiently, though the extreme terseness leaves much unsaid.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. Still, with no annotations, 6 parameters, and 0% schema coverage, the description is not complete enough to guide correct invocation of the tool's parameters or to distinguish its usage from many sibling audio tools.

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

Parameters1/5

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

There are 6 parameters with 0% schema description coverage, and the description does not explain any of them. It implies a list_voices mode but adds no meaning for speed, voice, language, output_path, or text_or_file.

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

Purpose4/5

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

The description gives a specific verb and resource: 'Generate speech audio' and 'list available Hyperframes local TTS voices.' It clearly identifies the tool's two modes, but it does not explicitly differentiate this from sibling TTS/audio tools such as audio_synthesize or sound_voice_batch.

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

Usage Guidelines3/5

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

The two modes imply usage: set list_voices to list voices, otherwise generate speech. However, the description does not state when to use this tool versus sibling audio/TTS tools, nor does it provide exclusions or prerequisites.

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

hyperframes_validateBInspect

Validate a Hyperframes project for rendering readiness.

Args: project_path: Absolute path to the Hyperframes project directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It never says whether validation is read-only, whether it can modify the project, what 'rendering readiness' actually checks, or how failures surface (exception vs. report). Only the output schema partially covers the last point.

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

Conciseness4/5

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

Front-loaded one-line purpose followed by a brief args note; nothing is wasted. The 'Args:' block formatting is slightly heavy for a single parameter but not harmful.

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

Completeness3/5

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

An output schema exists, so return values need not be explained, and the single parameter is covered. What is missing is the behavioral contract: whether this is a safe read-only check, what constitutes failure, and how it relates to the other Hyperframes diagnostic 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?

Schema coverage is 0%, so the description must compensate, and it does: it clarifies the single parameter is an 'Absolute path' to the project 'directory'. That is meaningfully more than the bare 'Project Path' string title 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 states a specific verb and resource ('Validate a Hyperframes project') plus the goal ('for rendering readiness'), so the agent knows what the tool does. It does not, however, distinguish itself from close siblings such as hyperframes_doctor, hyperframes_inspect, or video_preflight, leaving the boundary implicit.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of alternatives in a sibling set that contains several near-duplicate validation/preflight tools. The agent must guess whether this or hyperframes_doctor is the right entry point.

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

image_analyze_productBInspect

Analyze a product image or video frame — extract colors and optionally generate AI description.

Extracts dominant colors from an image. Optionally uses Claude Vision to generate a natural language description of the product.

Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. use_ai: If True, use Claude Vision to generate a description (requires ANTHROPIC_API_KEY). n_colors: Number of dominant colors to extract (default 5).

ParametersJSON Schema
NameRequiredDescriptionDefault
use_aiNo
n_colorsNo
image_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description must carry the behavioral load. It usefully discloses that use_ai requires ANTHROPIC_API_KEY and that video inputs yield a representative frame, which is real value beyond the schema. It stops short of describing cost, latency, failure modes, or how the AI description is produced.

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 header sentence is front-loaded and the Args block is well organized. There is minor redundancy between the opening line and the first body paragraph, but overall it is efficient and 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?

An output schema exists, so return values need not be explained, and the description covers the key operational facts: input types, the optional AI path, its credential requirement, and the color count. Only sibling differentiation and richer behavioral context (cost, failure handling) are 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 0%, so the description is the only source of parameter meaning. It documents all three parameters — image_path (absolute path, video triggers frame extraction), use_ai (Claude Vision + API key requirement), and n_colors (default 5) — compensating well for the empty 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 gives a specific verb and resource ('Analyze a product image or video frame — extract colors and optionally generate AI description'), and the args block clarifies the dual mode (colors vs. AI description). It is clear but does not explicitly distinguish itself from close siblings like image_extract_colors or image_generate_palette.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no statement of when to prefer this over image_extract_colors/image_generate_palette, and no exclusions. The only contextual cue is implicit — that the path may point to a video file, in which case a frame is extracted.

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

image_editAInspect

Establish-locked still match with plan/receipt (intent is audit metadata).

v1 pixel path is free establish mean-RGB match only; intent is required metadata and does not select pixel ops. Opted-in paid generation requests still fail because no paid still-generation adapter exists. Dry-run returns a plan without mutating pixels.

Args: source: Absolute source still path. reference: Absolute establish/reference still path. intent: Required audit text (what the agent meant); not a NL pixel director. output_dir: Absolute output directory. prefer: 'edit' (default) or 'gen'. allow_paid_gen: Explicit paid generative permission (default False). dry_run: Plan only when True.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYes
preferNoedit
sourceYes
dry_runNo
referenceYes
output_dirYes
allow_paid_genNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose meaningful behavior: v1 pixel path is a free mean-RGB match only, 'intent' is required metadata that does not select pixel operations, paid generation always fails, and dry-run returns a plan without mutating pixels. It stops short of permissions/auth needs and rate or cost behavior, but the mutation and failure semantics are genuinely informative.

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

Conciseness3/5

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

The Args block is well-structured, but the prose preamble is dense jargon and mildly redundant (the metadata-only nature of 'intent' is stated twice), and the critical scoping fact is buried behind a confusing first clause. It is serviceable but not cleanly 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?

Because an output schema exists, return values need not be explained, and the description covers behavior, all parameters, dry-run, and the paid-generation limitation. The main remaining gap is sibling differentiation from still_match/still_grade, which an agent needs for correct tool selection.

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 0%, so the description must compensate, and the Args block documents all seven parameters with added meaning: 'intent' is audit text and not a NL pixel director, 'prefer' accepts 'edit'/'gen', 'allow_paid_gen' is explicit paid permission defaulting False, and 'dry_run' means plan-only. This adds real semantics beyond bare parameter names.

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 opening 'Establish-locked still match with plan/receipt' is a jargon-heavy noun phrase rather than a clear verb+resource, though the body does clarify it performs a free mean-RGB match of a source still against a reference. It never distinguishes itself from siblings like still_match, still_grade, or still_package, so an agent cannot route confidently.

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

Usage Guidelines3/5

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

Usage is only implied: the description notes that paid generation requests fail (no adapter), that 'prefer' defaults to 'edit', and that dry_run plans without mutating. It gives no explicit when-to-use/when-not guidance or named alternative tools, leaving the agent to infer context.

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

image_extract_colorsAInspect

Extract dominant colors from an image or video frame.

Uses K-means clustering to find the most prominent colors. Returns hex codes, RGB values, CSS color names, and percentage coverage.

Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. n_colors: Number of dominant colors to extract (1-20, default 5).

ParametersJSON Schema
NameRequiredDescriptionDefault
n_colorsNo
image_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden but discloses the algorithm (K-means), the return format (hex, RGB, CSS names, percentage coverage), and video handling. It does not state permissions or explicitly confirm read-only behavior, but for an extraction tool this is solid 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 front-loaded with purpose, then algorithm and return details, then a clean Args section. Every sentence adds useful information 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?

The tool is simple (2 parameters, read-only extraction) and the description covers purpose, parameters, return values, and video frame handling. With no annotations and an output schema present, this is sufficient 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.

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate, and it does: image_path is documented as an absolute path with video behavior, and n_colors as 1–20 with default 5. This fully covers both 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 states a specific verb and resource—extract dominant colors—and clarifies it works on images or video frames. It does not explicitly distinguish itself from siblings like image_generate_palette or video_extract_frame, so it lands at 4.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 only implied usage is the action itself, leaving the agent to infer context.

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

image_generate_paletteAInspect

Generate a color harmony palette from an image or video frame.

Extracts the dominant color and generates harmonious colors based on color theory (complementary, analogous, triadic, split_complementary).

Args: image_path: Absolute path to the image or video file. If video, extracts a representative frame. harmony: Harmony type (complementary, analogous, triadic, split_complementary). n_colors: Number of dominant colors to base palette on (default 5).

ParametersJSON Schema
NameRequiredDescriptionDefault
harmonyNocomplementary
n_colorsNo
image_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that video input triggers representative-frame extraction and enumerates the harmony strategies, but it never states whether anything is written to disk, whether it is non-destructive, or what triggers failure.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, followed by mechanism and an Args block. The Args repetition is justified given the empty schema, so almost every sentence earns its place.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and the description covers all three params for a tool with 0% schema coverage. The remaining gap is behavioral: no annotation coverage and no statement about side effects or permissions.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate, and it does: it documents all three parameters, including the enum-like harmony values (which the schema lacks) and the n_colors default. The video handling of image_path adds meaning beyond the bare schema 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?

States a specific verb and resource ('Generate a color harmony palette') plus the source ('from an image or video frame'), which distinguishes it from extract-only siblings like image_extract_colors. It never names a sibling explicitly, but the purpose is unambiguous.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no alternatives named. The description explains what the tool does but never tells the agent when to pick it over image_extract_colors or a grading tool.

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

revideo_installCInspect

Install the exact locked Revideo dependencies for a materialized project.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeoutNo
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full disclosure burden. It implies a mutation that writes dependencies to disk and likely requires network access and time (the 300s default timeout hints at this), but none of the side effects, permissions, or failure behavior are described.

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

Conciseness4/5

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

A single tight sentence with the action front-loaded and no filler. It is well-sized, though it leaves little room for the guidance an agent would need.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but for an install/mutation tool with zero annotations and 0% parameter documentation the description omits critical context (network/auth requirements, duration, idempotency, where dependencies are installed).

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

Parameters2/5

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

Schema description coverage is 0% for both parameters. The description hints that project_dir refers to a materialized project but gives no format or path semantics, and it says nothing about the timeout parameter's meaning beyond the schema default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Install) and resource (the exact locked Revideo dependencies), plus a scope qualifier (for a materialized project) that ties it to the revideo_materialize sibling. It is distinguishable from revideo_render, but does not explicitly name or contrast with any 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 explicit when-to-use guidance, no prerequisites, and no named alternatives among revideo_materialize/revideo_render. The 'for a materialized project' phrase implies it follows materialization, but a reader must infer this rather than being told.

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

revideo_materializeCInspect

Materialize Kinocut's pinned Revideo project for a validated job.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobYes
destYes
scene_sourceNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full disclosure burden. It hints at one precondition ('validated job') but says nothing about whether materialization is idempotent, whether it overwrites existing files at 'dest', what permissions or pinned state are required, or what side effects occur on disk. For a mutation-style tool 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.

Conciseness4/5

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

A single front-loaded sentence with no filler or repetition. It is efficiently written; the shortfall is under-specification rather than verbosity, so it scores well on structure without reaching the top of the scale.

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?

With an output schema present, return values need not be described, but the input side is badly under-covered: a nested object parameter, a required destination string, and an optional scene source are all undocumented while annotations are absent. The description does not supply enough for an agent to call this correctly on the first attempt.

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

Parameters2/5

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

Schema description coverage is 0% across three parameters, so the schema contributes nothing. The description only gestures at 'job' (the validated job) and possibly 'scene_source' ('pinned Revideo project'); the required 'dest' parameter is never explained, and 'job' is a free-form nested object with additionalProperties allowed and no documented shape.

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 names a verb ('Materialize') and a resource ('Kinocut's pinned Revideo project'), which is more than a tautology, but 'materialize' is unexplained domain jargon — the agent cannot tell whether it scaffolds files, copies assets, or hydrates a project. It also gives no basis for choosing it over siblings revideo_render, revideo_render_job, or revideo_install, all of which sit in the same namespace.

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

Usage Guidelines2/5

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

The phrase 'for a validated job' implies a prerequisite state, but there is no explicit when-to-use, when-not-to-use, or named alternative. An agent has no way to know whether this precedes or replaces revideo_render_job. No exclusions or sequencing guidance is offered.

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

revideo_renderCInspect

Render and atomically publish a verified local Revideo artifact.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeoutNo
output_pathYes
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. 'Atomically publish' usefully signals atomic output writing and 'verified' implies a gating check, but nothing is said about permissions, whether output_path is overwritten, timeout behavior, or what happens on failure.

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

Conciseness4/5

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

It is a single, front-loaded sentence with no filler, and the core verb leads. It is efficient, though terseness here borders on under-specification rather than tight conciseness.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but with zero parameter descriptions, no annotations, and no prerequisites stated for a mutation/render tool, the definition is too thin 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.

Parameters1/5

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

Schema description coverage is 0% and the description adds no parameter meaning at all: it never mentions project_dir, output_path, or timeout. For a 3-parameter tool with undocumented fields, the description fails to compensate for the schema gap.

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

Purpose3/5

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

It gives a specific verb (render/publish) and resource (a local Revideo artifact), so the basic operation is identifiable. However, it does not distinguish itself from close siblings like revideo_render_job or video_workflow_render, and the modifier 'verified local' is ambiguous about what is actually being processed.

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

Usage Guidelines2/5

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

The description offers no when-to-use guidance, no prerequisites, and never names an alternative tool. The word 'verified' hints that some verification step must precede it, but this is left unexplained rather than stated as a condition.

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

revideo_render_jobCInspect

Materialize, install, render, and verify one local Revideo job.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobYes
work_dirNo
output_pathYes
scene_sourceNo
render_timeoutNo
install_timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations exist, so the description carries the full behavioral burden. It names the four stages, which is useful, but says nothing about side effects: whether output_path is overwritten, whether install requires network access, what happens on timeout, or whether the operation is idempotent. For a heavy multi-stage job runner 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.

Conciseness4/5

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

A single front-loaded sentence with the verb chain first and the scope qualifier last. Zero waste, though it is arguably under-specified rather than concise for a pipeline of this complexity.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but this is a complex nested-parameter, six-argument, multi-stage tool with no annotations and no documented parameters. The description lists the stages but leaves prerequisites, failure behavior, and argument meaning entirely unaddressed.

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

Parameters1/5

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

Schema description coverage is 0% across six parameters, so the description must compensate and does not. It adds no meaning to job, work_dir, output_path, scene_source, render_timeout, or install_timeout beyond repeating the word 'job' and the scope adjective 'local'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 compound verb chain (materialize, install, render, verify) against a specific resource (one local Revideo job). This implicitly distinguishes it from the single-stage siblings revideo_materialize, revideo_install, and revideo_render, though it never explicitly says it is the end-to-end orchestrator of those three.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 presence of near-identical siblings (revideo_materialize, revideo_install, revideo_render) makes the choice genuinely ambiguous, and the description offers no rule for selecting this pipeline over the individual steps.

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

search_toolsAInspect

Find registered MCP tools by name, keyword, or a supported task phrase.

Returns JSON {success, query, count, tools:[{name, description, required_params}]}. Use to find the right tool for a task without reading every description. Pass query with a term such as blur, resize, subtitle, audio, or trim, or a task such as "remove filler words", "resume render", or "keep face in frame". Exact names rank first. Discovery describes contracts, not installed backend availability.

Args: query: Search term — e.g. "blur", "resize", "subtitle", "audio", "trim".

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the return payload shape, the ranking rule ('Exact names rank first'), and the important caveat that discovery reports contracts rather than installed backend availability. It omits whether the search is read-only (implied) or any performance/rate characteristics, keeping it short of a 5.

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

Conciseness4/5

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

Front-loaded with purpose, then return shape, then usage, then the ranking rule and caveat — every sentence earns its place except the trailing 'Args:' block, which largely restates the single schema parameter. Overall efficient and well-ordered.

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

Completeness4/5

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

An output schema exists, so explaining the return payload is technically redundant but harmless. For a one-parameter discovery tool the description is complete enough to call correctly; the only gap is deeper query-matching semantics.

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 0%, so the description must compensate, and it does: it defines query as a name, keyword, or supported task phrase, gives five term examples and three phrase examples, and notes that exact names rank first. It stops short of documenting matching semantics (substring vs fuzzy, case handling).

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

Purpose5/5

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

States a specific verb (Find) and resource (registered MCP tools) with the accepted query modes (name, keyword, task phrase). This is clearly the meta-discovery tool, instantly distinguishable from every operational sibling like video_trim or video_resize.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 says to use it 'to find the right tool for a task without reading every description' and supplies concrete example queries ('blur', 'resize', 'remove filler words', 'resume render'). It gives strong when-to-use context but never states when not to use it or names an alternative discovery path.

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

shorts_packageBInspect

Package approved platform renders from a saved plan. Never posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
overwriteNo
allow_failNo
candidate_idYes
package_rootNo
plan_path_or_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

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

With no annotations the description carries the full burden, and it does disclose one genuinely useful side-effect fact: it never posts. Beyond that, it says nothing about permission requirements, whether overwrite is destructive, what 'packaging' actually produces, or idempotency, which matters for a 5-param tool with a mutable output.

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

Conciseness4/5

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

Two tight sentences with the action front-loaded and the safety qualifier appended; every clause earns its place. It is perhaps overly terse given the unaddressed parameters, but the structure itself is clean.

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

Completeness2/5

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

An output schema means return values need not be explained, but for a 5-parameter packaging tool with no annotations and 0% parameter coverage, the description leaves too much unspecified: no parameter guidance, no usage context, and no detail on what packaging produces or its side effects.

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

Parameters2/5

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

Schema description coverage is 0% across five parameters, and the description names none of them. plan_path_or_dir is only obliquely gestured at via 'saved plan', while candidate_id, overwrite, allow_fail, and package_root are entirely unelaborated in both schema and description, so the gap is not compensated.

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

Purpose4/5

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

States a specific verb and resource ('package approved platform renders') plus the source ('from a saved plan'), which is clear enough to separate it from the shorts_render/shorts_review siblings. The closing 'Never posts' also distinguishes it from any publish tool. It lacks explicit sibling naming, so it stops short of a 5.

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

Usage Guidelines3/5

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

'from a saved plan' and 'approved renders' imply a late workflow stage, and 'Never posts' implies it is not the publishing step. However, there is no explicit when-to-use, no prerequisites, and no routing among close alternatives like shorts_render, shorts_review, video_review_package, or still_package.

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

shorts_plan_showBInspect

Load a saved shorts plan and return source-free proposals for review.

ParametersJSON Schema
NameRequiredDescriptionDefault
plan_path_or_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses that the returned proposals are 'source-free' (a non-obvious output trait) and 'Load' implies a read-only operation, but it says nothing about failure behavior when the plan path is invalid or what the proposals contain structurally.

Agents need to know what a tool does to the world before 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 and return content come first. Every clause earns its place.

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

Completeness3/5

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

An output schema exists, so return values need not be spelled out, and the description does convey the load-and-review intent. However, for a tool whose only parameter is completely undocumented in both schema and description, the definition leaves a meaningful gap in how to invoke it.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the single parameter and it does not. The parameter is named plan_path_or_dir, signaling it accepts either a file or a directory, yet the description never mentions path/directory semantics, accepted formats, or defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Load) and resource (a saved shorts plan) plus the nature of the return ('source-free proposals for review'), so an agent can tell what it does. It does not explicitly distinguish itself from siblings like shorts_review or shorts_package, which handle adjacent stages of the same workflow.

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

Usage Guidelines3/5

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

The phrase 'for review' implies this is the step before acting on a plan, giving implicit usage context. There is no explicit when-to-use, when-not-to-use, or routing to alternatives such as shorts_review or shorts_package, so an agent must infer placement in the pipeline.

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

shorts_renderCInspect

Render platform drafts for an approved candidate from a saved plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathNo
candidate_idYes
plan_path_or_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It says only that it renders drafts and does not disclose side effects, permissions, overwrite behavior, or output characteristics beyond the existence of an output schema.

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

Conciseness5/5

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

A single front-loaded sentence with no filler or repetition. It is appropriately sized for the amount of information it chooses to convey.

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 zero schema description coverage, no annotations, and three parameters, the description is incomplete. It omits parameter meaning, required inputs, and usage context, leaving the agent with little to invoke the tool correctly beyond the name and a high-level intent.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must explain the three parameters. It indirectly suggests 'saved plan' for plan_path_or_dir and 'approved candidate' for candidate_id, but gives no format, path semantics, or any mention of the optional output_path parameter.

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

Purpose4/5

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

States a specific verb (Render) and resource (platform drafts) with workflow qualifiers ('approved candidate', 'saved plan'). It is clear enough to distinguish from many generic video tools, but does not differentiate from sibling render tools like video_workflow_render or hyperframes_render.

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

Usage Guidelines2/5

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

No explicit when-to-use, when-not-to-use, or alternative tools are named. The phrase 'for an approved candidate from a saved plan' implies a prerequisite but provides no actionable routing guidance among the many render siblings.

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

shorts_reviewCInspect

Append one human review decision to a saved shorts plan (source-free).

ParametersJSON Schema
NameRequiredDescriptionDefault
decisionYes
candidate_idYes
evidence_refNo
plan_path_or_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. 'Append' implies additive mutation, but it does not say whether re-reviewing the same candidate_id overwrites, duplicates, or errors, nor what permissions or side effects are involved. '(source-free)' hints at a constraint but is never explained.

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

Conciseness4/5

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

A single tight sentence that front-loads the action. The only waste is the cryptic '(source-free)' parenthetical, which adds words without adding meaning.

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 no annotations, four undocumented parameters, and only a one-line description, this is under-specified. The presence of an output schema relieves some return-value burden, but nothing explains prerequisites, duplicate handling, or parameter meaning.

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

Parameters2/5

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

Schema description coverage is 0% across four parameters, so the description must compensate and it does not mention any parameter. The ambiguous 'decision' field (anyOf string/object) and 'evidence_ref' are left entirely unexplained, and 'plan_path_or_dir' accepts either a file or directory with no guidance.

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

Purpose4/5

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

States a specific verb and resource: appending a human review decision to a saved shorts plan. That distinguishes it reasonably from siblings like shorts_plan_show, shorts_render, and shorts_package. The parenthetical '(source-free)' is unexplained jargon and does not help the agent understand the action.

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

Usage Guidelines2/5

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

There is no indication of when to use this versus shorts_plan_show, video_review_decide, or video_review_decision, all of which plausibly overlap. The only implicit cue is that a 'saved shorts plan' must already exist, which is not stated as a prerequisite.

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

shot_prompt_renderBInspect

Expand one storyboard shot into prompt and negative_prompt strings.

Args: project_path: Absolute path to a project directory containing style.md and storyboard.md. shot: Shot id or 1-based row number from storyboard.md.

ParametersJSON Schema
NameRequiredDescriptionDefault
shotYes
project_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does disclose the output artifacts (prompt and negative_prompt strings) and the prerequisite that project_path must contain style.md and storyboard.md, which is genuinely useful. However, it says nothing about whether it is a pure read/compute operation, what happens with an invalid shot id, or any auth/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?

Front-loaded one-line purpose followed by a compact Args block. No filler sentences; every line earns its place.

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

Completeness3/5

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

An output schema exists, so return values need not be explained, and both parameters are covered. What is missing is behavioral context (idempotency, failure modes, side effects) that no annotation supplies, leaving the agent under-informed about a mutation-free but state-dependent operation.

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 0%, so the description must compensate, and it largely does: project_path is defined as an absolute path to a directory containing style.md and storyboard.md, and shot is defined as a shot id or 1-based row number from storyboard.md. Both parameters gain meaning beyond the bare string types in the schema.

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

Purpose4/5

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

States a specific verb+resource: 'Expand one storyboard shot into prompt and negative_prompt strings.' This is clearly distinguishable from storyboard_read or style_pack_read, which read rather than render. It stops short of explicitly naming sibling alternatives, so it does not reach 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 implies a workflow context (a project dir with style.md and storyboard.md must already exist), but gives no explicit when-to-use, when-not-to-use, or pointer to alternatives like storyboard_read. Usage is left entirely to inference.

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

sound_capabilitiesAInspect

Discover the bounded public sound operation set (local-first, JSON-safe).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the behavioral burden. It adds 'local-first' and 'JSON-safe' as useful traits, but does not state that this is read-only, what authentication if any is needed, or any other runtime behavior beyond those two attributes.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no redundant or filler content. It is appropriately sized for a simple discovery 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?

An output schema exists, so return values need not be explained in the description. For a zero-parameter discovery tool, the description is mostly complete, though it could say more about what the sound operation set covers or when to call it.

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

Parameters4/5

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

The tool takes zero parameters, and the schema has 100% description coverage. Per the rubric, a zero-parameter tool has a baseline of 4; there are no parameter semantics needing further 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 names a specific verb ('Discover') and resource ('bounded public sound operation set'), so the tool's basic function is clear. It implicitly distinguishes itself from video-focused capability tools by scoping to sound, but it does not explicitly name alternatives or clarify what the operation set contains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 siblings like search_tools or video_capabilities. The description implies discovery use but gives no context, prerequisites, or exclusions.

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

sound_master_renderDInspect

Retain a two-pass master only after measuring final audio against its policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes
project_rootYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It mentions a two-pass process and conditional retention, but omits critical behavior: whether it writes files, what permissions are needed, whether it is destructive or reversible, and what output to expect. This is thin for a mutation/render tool.

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 single sentence is short but cryptically structured, starting with 'Retain' rather than a clear action like 'Render'. It is concise yet not front-loaded with the tool's primary operation, making it harder to parse quickly.

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

Completeness1/5

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

Given no annotations, 0% schema description coverage, a nested request object, and two required parameters, the description is far too sparse. Although an output schema exists (reducing the need to explain returns), the description does not explain inputs, prerequisites, or side effects.

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

Parameters1/5

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

Schema description coverage is 0% and there are two required parameters ('request' object and 'project_root' string). The description says nothing about what 'request' should contain or what 'project_root' refers to, leaving both completely undocumented in the text.

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 does not state a clear action verb for the tool named 'render'; instead it says 'Retain a two-pass master only after measuring final audio against its policy.' An agent cannot easily tell that this tool renders audio, nor how it differs from siblings like sound_mix_render or sound_qa_loudness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 sound_mix_render or sound_qa_loudness. The conditional phrase 'only after measuring...' hints at a prerequisite but does not name tools or situations for selection.

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

sound_mix_renderCInspect

Assemble supplied WAVs into a new ZIP; omit both arguments for a labelled demo.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestNo
project_rootNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, yet it never explains what the render does to inputs, where/if the ZIP is written, whether it overwrites, or what permissions are needed. The only behavioral note is the demo fallback, which leaves the mutation side opaque.

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

Conciseness4/5

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

A single tight sentence with the core action front-loaded and the demo caveat in a semicolon clause. No filler, though its brevity comes at the cost of the missing parameter/behavioral detail.

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

Completeness2/5

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

An output schema exists so return values needn't be described, but with zero annotations and a 0%-documented opaque request object, the description leaves out how to build the request payload and what the render actually produces or writes.

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

Parameters2/5

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

Schema description coverage is 0% and the 'request' parameter is an opaque free-form object (additionalProperties: true). The description only hints that 'request' carries the supplied WAVs and that both args are optional for demo mode; 'project_root' is never explained, so the agent cannot confidently construct a call.

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

Purpose4/5

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

The verb+resource are concrete: 'Assemble supplied WAVs into a new ZIP' tells the agent it takes WAV inputs and produces a ZIP output. It does not, however, distinguish itself from acoustically similar siblings like sound_master_render or audio_compose.

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

Usage Guidelines3/5

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

It provides one concrete invocation hint ('omit both arguments for a labelled demo') but gives no when-to-use context relative to sibling audio mix/render tools, and no conditions for when this is the wrong choice.

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

sound_plan_validateCInspect

Validate a SoundPlan payload (or a built-in minimal plan when omitted).

ParametersJSON Schema
NameRequiredDescriptionDefault
planNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full disclosure burden, and it says almost nothing: it does not state whether validation is read-only, what it checks for, whether it throws or returns a verdict, or whether it mutates any state. The output schema exists, so return structure is excused, but the behavior itself is undisclosed.

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

Conciseness4/5

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

One sentence with no filler and the action front-loaded. It is arguably too terse given how much behavior is left unexplained, but there is no wasted wording to trim.

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?

A validation tool whose entire description is a single clause leaves an agent unable to predict outcomes: no mention of failure modes, severity, or what a valid plan requires. With no annotations and an undocumented parameter, more context is needed even though the output schema covers return values.

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

Parameters3/5

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

Schema coverage is 0% and the single 'plan' parameter has no schema description. The description partially compensates by explaining the omitted case ('a built-in minimal plan when omitted'), which is real information the schema's default:null does not convey, but it never describes the expected payload shape.

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

Purpose4/5

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

Clear verb+resource: it validates a 'SoundPlan payload'. The resource is distinct from the other sound_* siblings (capabilities, voice_batch, mix_render, qa_*), so an agent can place it. It stops short of a 5 because 'SoundPlan' is a domain term never defined and the tool is not contrasted with any other validator.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no statement of prerequisites, and no reference to an alternative tool. The only usage signal is the parenthetical about omitting the payload, which describes one call mode rather than 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.

sound_qa_asrCInspect

Recognize supplied local audio and compare it with a reference script.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes
project_rootYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It says 'local audio' (implying file-path input, not URLs) and that a comparison against a script occurs, but discloses nothing about output shape, failure modes, required formats, or permissions.

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 well-formed sentence with the operation front-loaded and zero padding. Its brevity is efficient, though part of the reason it is short is that it omits needed detail.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. However, with an opaque anyOf 'request' parameter, zero schema coverage, and no annotations, an agent cannot determine what to pass or what behavioral constraints apply; the definition is too thin for this tool's complexity.

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

Parameters2/5

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

Schema description coverage is 0% and neither parameter is described. 'request' is an opaque anyOf(object|string) and 'project_root' is unexplained; the description only vaguely implies that audio and a reference script are involved, without mapping them to parameters.

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

Purpose4/5

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

States a specific verb pair (recognize + compare) and resource (local audio vs reference script), which is enough to distinguish it from siblings like sound_qa_loudness or hyperframes_transcribe. It stops short of naming a sibling or clarifying the ASR/QA framing explicitly, but the purpose is recoverable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 the many other audio/transcription siblings (hyperframes_transcribe, video_ai_transcribe, sound_qa_loudness). No prerequisites, no exclusions, no alternative routing.

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

sound_qa_loudnessCInspect

Measure hashed local audio against its policy; omit inputs for a labelled demo.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestNo
project_rootNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It hints that inputs are optional and that a "labelled demo" is produced when omitted, which is useful, but it never explains what "policy" governs, what loudness thresholds apply, or what the operation is validated against.

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 compact sentence with no filler, and the core action is front-loaded. It is efficient, though the brevity contributes to the ambiguity rather than resolving it.

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

Completeness2/5

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

An output schema exists, so return values need not be described. However, for a tool with two wholly undocumented parameters and no annotations, the description is far too thin to tell an agent how to invoke it correctly.

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

Parameters2/5

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

Schema description coverage is 0% and both parameters (request, project_root) are completely undocumented in the schema. The description mentions omitting inputs but never explains what the request object or project_root are for, so it fails to compensate for the coverage gap.

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 gives a verb ("Measure") and a resource ("hashed local audio"), but "against its policy" is opaque jargon that leaves the actual measurement target ambiguous. It does not distinguish this tool from the many sibling QA/audio tools (e.g. sound_qa_asr, sound_master_render, video_audio_waveform), so an agent cannot reliably pick it out of the 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 only usage hint is the edge case "omit inputs for a labelled demo," which tells the agent what happens when nothing is supplied. There is no guidance on when to choose this over sibling QA or mixing tools, nor any prerequisites stated.

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

sound_voice_batchDInspect

Retain local caption speech from a request, or run the synthetic plan demo.

ParametersJSON Schema
NameRequiredDescriptionDefault
planNo
requestNo
project_rootNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not state whether the tool writes files, requires authentication, has side effects, handles batching, or what 'retain' implies operationally; the single ambiguous sentence is inadequate.

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 very short, but its brevity reflects under-specification rather than efficient communication. The single sentence is confusing and front-loads an obscure term instead of actionable information.

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

Completeness1/5

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

Although an output schema exists (so return values need not be explained), the description leaves almost everything else missing: no purpose clarity, no usage context, no parameter meanings, and no behavioral traits for a tool with three optional parameters and no annotations.

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

Parameters1/5

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

Schema description coverage is 0% for three parameters (plan, request, project_root), and the description adds no meaningful semantics. It mentions 'request' and 'plan' only as English words without tying them to the parameters, and never mentions project_root.

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 is vague and ambiguous, using obscure phrases like 'Retain local caption speech' and 'run the synthetic plan demo' that do not clearly state the tool's core function. It fails to distinguish this batch sound/voice tool from its many siblings such as sound_mix_render or video_batch.

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?

There is no guidance on when to use this tool versus alternatives. The 'or' hints at two possible modes but gives no conditions or prerequisites for choosing either, leaving the agent with no routing information.

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

still_gateAInspect

Fail-closed cohesion gate for a still package + contact sheet.

Checks luma spread and shadow green/cyan wash. Returns passed=false with named metric/frame failures when the package fails.

Args: inputs: Absolute still paths in the package. output_dir: Absolute directory for receipt and contact sheet.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputsYes
output_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden and does well: it declares 'fail-closed', names the specific metrics checked (luma spread, shadow green/cyan wash), and states the failure contract (passed=false with named metric/frame failures). It also discloses that an output_dir receives a receipt and contact sheet, which is genuine behavioral context. Missing: whether inputs are mutated, permissions required, or performance/rate characteristics.

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

Conciseness5/5

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

The failure contract is front-loaded in the first sentence, the specific checks follow, and the Args block is terse and relevant. No sentence is wasted.

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

Completeness4/5

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

For a two-parameter validation gate with an output schema (which handles return shape) and no annotations, this is largely complete: it explains the failure contract, checked metrics, and the artifact written. It could still say what constitutes a pass and whether inputs must be pre-graded, but the essentials are 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?

Schema description coverage is 0%, so the description must compensate. It documents both parameters with format and intent: inputs as absolute still paths forming the package, output_dir as the absolute directory receiving the receipt and contact sheet. This is meaningful, but it doesn't clarify ordering, minimum count, or accepted image formats for inputs.

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

Purpose4/5

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

States a specific verb and resource: a fail-closed cohesion gate that checks luma spread and shadow green/cyan wash on a still package. It clearly distinguishes itself from siblings like still_grade or still_match by framing itself as a validation gate rather than a transformation. It falls short of a 5 only because 'cohesion gate' and 'still package' are somewhat internal jargon not fully anchored to a sibling it is not.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 (validating a package before acceptance) and mentions failure semantics, but it never states when to reach for this tool versus still_match, still_grade, or still_package. A reader can infer it is a pre-acceptance check, but no explicit when/when-not guidance or alternative is named.

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

still_gradeBInspect

Grade stills in order correct→match→look; optional 3D LUT applied last.

Signal mode marks the LUT as signal-alignment (not film cosplay) and records near-black/near-white preservation deltas.

Args: inputs: Absolute still paths. output_dir: Absolute output directory. hero: Optional hero still for match stage. lut_path: Optional absolute .cube/.3dl path applied last. signal_mode: Treat LUT as signal alignment.

ParametersJSON Schema
NameRequiredDescriptionDefault
heroNo
inputsYes
lut_pathNo
output_dirYes
signal_modeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

No annotations exist, so the description carries the full behavioral burden. It usefully discloses that the LUT is applied last and that signal_mode marks the LUT as signal-alignment and records near-black/near-white deltas, but it never states that files are written, whether output is destructive, or what preconditions (e.g., existing output_dir) are required.

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

Conciseness4/5

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

Front-loaded with the pipeline stage order, then the signal_mode caveat, then a clean args list. Every line carries information; no padding or restatement of the tool name.

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

Completeness4/5

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

An output schema exists, so return values need not be explained. For a no-annotation write tool the description covers pipeline order, key behaviors, and all params adequately, though it omits file side effects and overwrite semantics.

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 0%, so the description must supply all parameter meaning. It lists all five params with usable context (absolute paths, hero for match stage, .cube/.3dl applied last, signal_mode semantics), genuinely compensating for the empty schema — though 'hero still for match stage' is somewhat circular.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (grade) and resource (stills) plus the pipeline order correct→match→look, which is more than the bare name conveys. It doesn't explicitly contrast itself with siblings like still_match or still_gate, but the pipeline framing makes its scope inferable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 guidance is given, and no alternatives are named despite the presence of still_match, still_gate, and still_package as siblings. The agent must infer from the pipeline description that this is the full grader versus stage-specific tools.

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

still_matchAInspect

Match a package of stills to a hero plate with one shared WB/exposure gain.

Does not overwrite sources. Writes matched stills + JSON receipt under output_dir. Per-frame auto-WB is disabled (shared gains only).

Args: hero: Absolute path to the hero/establish still. inputs: Absolute paths to package stills. output_dir: Absolute directory for outputs and receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
heroYes
inputsYes
output_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it states sources are not overwritten (non-destructive), that matched stills plus a JSON receipt are written under output_dir, and that per-frame auto-WB is disabled so only shared gains apply. It stops short of error behavior or any permission/dependency notes.

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

Conciseness5/5

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

Front-loaded purpose sentence, followed by two short behavioral constraints, then a compact Args block. The Args section is not mere repetition of the schema because it adds the 'absolute path' semantics, so every line earns its place.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and the required fields, write behavior, and non-destructive guarantee are covered. What remains unaddressed is failure/error handling and any environment or permission assumptions for a file-writing tool.

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

Parameters5/5

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

Schema description coverage is 0%, yet the Args block documents all three parameters with real meaning: hero is the absolute path to the hero/establish still, inputs are absolute paths to the package stills, and output_dir is the absolute directory for outputs and receipt. This fully compensates for the empty schema descriptions.

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

Purpose5/5

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

States a specific verb and resource ('Match a package of stills to a hero plate') plus the exact mechanism ('one shared WB/exposure gain'). This clearly distinguishes it from nearby siblings like still_grade, still_gate, and still_package. An agent can identify the operation without opening the schema.

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

Usage Guidelines3/5

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

The scenario is implied by the purpose statement (color-matching a stills package to a hero plate), which is enough to infer when it applies. However, it never names an alternative or exclusion among the still_* siblings, nor states prerequisites, so routing is left to inference.

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

still_packageAInspect

Multi-still package workflow: edit beats → match → grade → cohesion gate.

Args: establish: Absolute establish/hero still. beats: Absolute beat still paths. output_dir: Absolute package output directory. dry_run: When True, return planned graph only. apply_grade: Run ordered grade after match (default True). lut_path: Optional LUT path for grade look stage. signal_mode: Signal-alignment LUT mode.

ParametersJSON Schema
NameRequiredDescriptionDefault
beatsYes
dry_runNo
lut_pathNo
establishYes
output_dirYes
apply_gradeNo
signal_modeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden and does disclose meaningful behavior: the ordered workflow steps, that dry_run returns only a planned graph, and that grading runs by default (apply_grade default True). However it never states that the tool writes files into output_dir (a mutation with side effects), nor anything about permissions, failure modes, or what the cohesion gate does when it fails.

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 pipeline summary is front-loaded in the first line, with parameter documentation following in a clean, conventional Args block. Every line is relevant and there is no filler, though the Args block is purely descriptive rather than adding deeper meaning to each field.

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

Completeness3/5

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

An output schema exists, so return values need not be explained. For a seven-parameter composite workflow with zero annotations, the description covers the flow and every parameter but leaves the cohesion gate's semantics, failure behavior, and the tool's write side effects unaddressed, which is a notable gap at this complexity level.

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 0%, so the schema provides no field-level guidance, yet the description documents all seven parameters, including that establish/beats/output_dir must be absolute paths and what dry_run, apply_grade, lut_path, and signal_mode control. The only weakness is that signal_mode is described only as 'Signal-alignment LUT mode' without clarifying the boolean semantics or its interaction with lut_path.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 resource ('Multi-still package workflow') and the concrete pipeline it runs ('edit beats → match → grade → cohesion gate'), which maps cleanly onto the sibling tools still_match, still_grade, and still_gate. An agent can tell this is the composite orchestrator rather than any single step, though the description never explicitly says it supersedes those siblings.

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

Usage Guidelines3/5

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

Usage is only implied: the pipeline order suggests this tool runs the whole match/grade/gate sequence in one call, so an agent can infer it's for packaged multi-still output. There is no explicit when-to-use, when-not-to-use, or instruction to prefer this over calling still_match/still_grade/still_gate individually, and no prerequisites are named.

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

storyboard_readBInspect

Read a PUSHING CREATION storyboard table from storyboard.md or a project directory.

Args: path: Absolute path to storyboard.md or to a project directory containing storyboard.md.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full disclosure burden. It implies a read-only operation by naming it 'Read', but does not state what happens on a missing/invalid path, whether any file is created or modified, or what format the table must be in.

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

Conciseness4/5

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

One sentence plus a compact Args block, front-loaded with the action and resource. No filler, though the 'PUSHING CREATION' branding adds no navigational value.

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

Completeness3/5

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

An output schema exists, so return values need not be explained, and the single parameter is well covered. However, with no annotations and no usage guidance, an agent lacks enough context to confidently pick this over the storyboard-related siblings.

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

Parameters4/5

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

Schema coverage is 0% (the single 'path' param has no schema description), so the description must compensate, and it does: it specifies the argument is an absolute path and accepts either storyboard.md itself or a project directory containing it.

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

Purpose4/5

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

States a specific verb+resource: reading a storyboard table from storyboard.md. It is clear what the tool returns conceptually, though it never distinguishes itself from the sibling video_storyboard, which could plausibly be confused with it.

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

Usage Guidelines2/5

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

The description explains the two accepted path forms but gives no guidance on when to use this tool versus video_storyboard or other project-reading tools, and no prerequisites or exclusions are stated.

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

style_pack_readBInspect

Read STYLE_ and NEG_ blocks from a style.md file or project directory.

Args: path: Absolute path to style.md or to a project directory containing style.md.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that the path may be either a style.md file or a directory containing one, which is real behavioral value. However it says nothing about error behavior for missing files, what happens when blocks are absent, or any other operational trait.

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 lines, front-loaded with the action and resource, and the argument note follows. The 'Args:' formatting is slightly boilerplate but nothing is wasted or redundant.

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

Completeness3/5

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

An output schema exists, so return structure need not be explained. The gap is that the description never clarifies what STYLE_ and NEG_ blocks are or how the tool behaves when the file is missing or malformed, which matters for a single-purpose reader with no annotations.

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 0%, so the description must compensate, and it does: it explains that 'path' is an absolute path to either style.md directly or a project directory containing it. That dual-acceptance semantic is not derivable from the bare string schema.

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

Purpose4/5

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

Specific verb ('Read') plus the exact resource ('STYLE_ and NEG_ blocks' from 'style.md'), which tells an agent precisely what content it gets back. It is not confused with siblings like storyboard_read, 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 Guidelines2/5

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

There is no statement of when to use this versus alternatives, no prerequisites, and no exclusions. The usage is only implied by the domain (loading a style pack), leaving the agent to infer context.

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

transition_glitchBInspect

Apply glitch transition between two video clips.

Args: clip1_path: Absolute path to first video clip. clip2_path: Absolute path to second video clip. output_path: Absolute path for output video. duration: Transition duration in seconds (default 0.5). intensity: Glitch intensity 0-1 (default 0.3).

ParametersJSON Schema
NameRequiredDescriptionDefault
durationNo
intensityNo
clip1_pathYes
clip2_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, yet it only restates parameter meanings. It does not say whether the operation mutates inputs, whether output_path is required or auto-generated, what codec/format the result uses, or how clip1/clip2 are joined (full clips or overlapping frames).

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

Conciseness4/5

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

The purpose sentence is front-loaded and the Args block is compact and scannable, with no filler. The only minor inefficiency is that the Args list duplicates the schema's parameter names rather than adding deeper meaning.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and all input parameters receive at least a line of documentation. The remaining gap is behavioral/operational context (when to choose this transition, how the two clips are combined, what happens when output_path is null), which is noticeable but not fatal for a straightforward transition 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?

Schema description coverage is 0%, but the description compensates by documenting all five parameters, including the intensity range (0-1) and default values for duration and intensity that the schema shows only as bare defaults. It stops short of a 5 because the nullable output_path is described as a plain 'Absolute path for output,' leaving its default-null auto-generation behavior unexplained.

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

Purpose4/5

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

States a specific verb and resource: 'Apply glitch transition between two video clips,' which is clear enough to distinguish from the sibling transition_pixelate and transition_morph. However, it does not explicitly contrast itself with those alternatives or explain what makes a 'glitch' transition distinct from the neighboring glitch_* effect tools, so differentiation relies on the name alone.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no preconditions (e.g., both clips must share resolution/framerate), and never names an alternative such as transition_pixelate. An agent must infer entirely from the tool name and its own context when this transition is the right pick.

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

transition_morphCInspect

Apply morph transition between two video clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
durationNo
mesh_sizeNo
clip1_pathYes
clip2_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, but it only states the basic action. It does not disclose output handling, overwrite behavior, permission requirements, or what the morph transition does to the clips beyond the surface-level operation.

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 single sentence is front-loaded and free of wasted words. It is structurally clean, though its extreme brevity leaves much unsaid for a five-parameter video-processing tool.

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

Completeness2/5

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

With no annotations, 0% schema description coverage, and five parameters, the description is too thin for the tool's complexity. The existence of an output schema means return values need not be explained, but usage context, parameter semantics, and basic behavioral expectations are still missing.

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

Parameters1/5

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

Schema description coverage is 0% across five parameters, including required clip paths and output path plus optional duration and mesh_size. The description mentions 'two video clips' but does not explain any parameter's meaning, defaults, or expected values, so it fails to compensate for the missing schema documentation.

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

Purpose4/5

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

States a specific verb ('Apply') and resource ('morph transition between two video clips'), making the operation clear. It does not explicitly distinguish itself from sibling transition tools such as transition_glitch or transition_pixelate, so it stops short of the highest clarity tier.

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

Usage Guidelines2/5

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

Provides no when-to-use guidance, no prerequisites, and no comparison to alternative transition tools. The agent can infer only that it is for morph transitions, but nothing tells it when to choose this over transition_glitch or transition_pixelate.

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

transition_pixelateCInspect

Apply pixelate transition between two video clips.

ParametersJSON Schema
NameRequiredDescriptionDefault
durationNo
clip1_pathYes
clip2_pathYes
pixel_sizeNo
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It says nothing about whether the output file is overwritten, whether both clips must match resolution/framerate, what codecs are required, or how duration/pixel_size affect the result. For a mutation tool that writes an output file, this is a substantial gap.

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

Conciseness4/5

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

A single front-loaded sentence with zero filler. It is efficient, though its brevity is partly the cause of the missing detail rather than a deliberate tradeoff.

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

Completeness2/5

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

An output schema exists so return values need not be described, but with no annotations, five undocumented parameters, and no behavioral notes, an agent lacks what it needs to call this mutation tool correctly and safely.

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

Parameters1/5

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

Schema description coverage is 0% across five parameters, and the description mentions none of them. Nothing explains what clip1_path vs clip2_path ordering means, what units duration is in, what pixel_size controls, or the default values, so the description fails to compensate for the schema gap.

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

Purpose4/5

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

The description states a specific verb and resource ("Apply pixelate transition") and names the two-clip scope, which distinguishes it from siblings like transition_glitch and transition_morph by naming the effect variant. It is clear but does not explicitly point at those siblings as 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 statement of when to use this transition versus transition_glitch or transition_morph, no prerequisites (clip formats, resolutions, duration constraints), and no exclusions. Usage must be inferred entirely from the name.

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

video_acceptance_evalCInspect

Evaluate exact-spec verdict and defect evidence without approving anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_dirYes
verdict_idsYes
acceptance_spec_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses one trait (it does not approve / is non-mutating), but says nothing about permissions required, whether it writes any artifacts, what happens when a verdict fails the spec, or whether recalculation is needed between calls.

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

Conciseness3/5

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

It is a single tight sentence with zero padding and the scope constraint is front-loaded, which is good. But it errs toward under-specification rather than conciseness — the brevity leaves core concepts undefined.

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

Completeness2/5

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

An output schema exists, so return values need no explanation, but with no annotations, 0% parameter documentation, and heavy domain jargon, the description is not complete enough for an agent to confidently select and invoke this tool among many similarly named verdict/review/QC siblings.

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

Parameters2/5

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

Schema description coverage is 0% for three required parameters, so the description must compensate and largely does not. Only loose hints exist ('exact-spec' vaguely maps to acceptance_spec_id, 'verdict' to verdict_ids); project_dir and the expected ID formats are entirely unexplained.

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 names an action (evaluate) and objects (exact-spec verdict, defect evidence) and adds the important constraint 'without approving anything,' so an agent can infer it is a non-approving review step. However, 'exact-spec verdict' is jargon that is never defined, and the tool is not differentiated from nearby siblings such as video_verdict, video_review_decide, or video_publish_gate.

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

Usage Guidelines2/5

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

There is no explicit when-to-use, when-not-to-use, or alternative-tool guidance. The phrase 'without approving anything' weakly implies this is a pre-approval check, but the agent is not told what to do after receiving the evaluation or which sibling to call to actually approve or reject.

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

video_add_audioAdd or mix video audioA
Destructive
Inspect

Add, replace, or mix an audio track into an existing video and render a new output file. Returns JSON {success, output_path}. Use to score or re-voice a video; source video and audio are read only. Pass video_path as the source video and audio_path as the audio file; set mix to combine or false to replace.

ParametersJSON Schema
NameRequiredDescriptionDefault
mixNoTrue mixes the new audio with existing video audio; false replaces the original audio track.
volumeNoAudio gain from 0.0 to 2.0, where 1.0 preserves original loudness.
fade_inNoNon-negative fade-in duration in seconds applied to the inserted audio.
fade_outNoNon-negative fade-out duration in seconds applied near the inserted audio end.
audio_pathYesAbsolute path to an existing local audio file such as MP3, WAV, M4A, or AAC.
start_timeNoOptional start offset in seconds where the inserted audio begins.
video_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
duration_policyNoHow to reconcile audio and video length: keep_video (default, preserves the full video/outro), pad_audio, loop_audio, trim_audio, or shortest (may trim the outro).keep_video

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false. The description adds genuine context beyond them by confirming inputs are read only and that a new output file is rendered, but it does not call out the overwrite risk of a supplied output_path (that only 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?

Three tight sentences: purpose and return value first, then the use case, then the key parameter mapping. No filler and no redundancy, and the most decision-relevant facts are front-loaded.

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

Completeness4/5

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

An output schema exists, so return values need not be re-explained, and the annotations carry the safety profile for this mutation tool. Combined with full schema coverage, the description is complete enough for correct invocation, though it could name alternatives to be fully self-sufficient.

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

Parameters3/5

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

With 100% schema description coverage, the schema already documents all nine parameters in detail. The description restates the video_path/audio_path mapping and the mix flag, adding marginal value beyond the schema, so the baseline of 3 applies.

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

Purpose4/5

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

The description states a specific verb set (add, replace, or mix) operating on a specific resource (an audio track into an existing video) and notes it renders a new output file. This is clearly distinguished from read-only siblings, but it does not differentiate itself from close cousins like video_mix_audio or video_add_generated_audio, which an agent selecting a tool would need.

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

Usage Guidelines3/5

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

"Use to score or re-voice a video" gives one concrete use case and the mix-vs-replace choice is framed, which implies usage. However, there is no explicit when-not guidance and no mention of the closest alternatives (video_mix_audio, video_add_generated_audio), so routing is left partly to inference.

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

video_add_generated_audioBInspect

Add procedurally generated audio to a video.

One-shot convenience function to generate and add audio to video.

Args: input_path: Absolute path to input video. audio_config: Configuration dict with: - drone: {"frequency", "volume"} for background tone - events: List of timed sound events output_path: Absolute path for output video.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_pathYes
audio_configYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the burden, and it partially does: it reveals the operation writes to a separate output_path (non-destructive to input) and returns a success status. However it omits overwrite behavior, failure modes, performance/cost characteristics, and permission needs, leaving significant behavioral gaps for a generation+write operation.

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

Conciseness4/5

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

Front-loads the purpose in the first two lines, then uses compact Args/Returns sections with no filler. Slightly repetitive between the opening sentence and the 'one-shot' line, but overall tight and well-organized.

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

Completeness3/5

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

An output schema exists, so return values need not be re-explained, and the description covers the three top-level params adequately. But for a tool with a nested, 0%-documented audio_config, the description leaves the events structure under-specified, so an agent cannot fully construct the config from the definition 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 0% (bare properties), so the description must compensate and partly does: it documents that both paths are absolute, and that audio_config holds a 'drone' with frequency/volume and an 'events' list of timed sounds. However the per-event format is left undefined, so the nested config remains only partially specified.

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

Purpose4/5

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

States a specific verb+resource ('Add procedurally generated audio to a video') and clarifies the key differentiator versus siblings by calling itself a 'one-shot convenience function to generate and add audio.' This implies it combines synthesis and attachment, contrasting with a bare add-existing-audio sibling, though it never names that sibling explicitly.

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

Usage Guidelines3/5

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

'One-shot convenience function' implies when to reach for it (generate plus attach in a single call), but it never names alternatives like video_add_audio or audio_synthesize, nor states exclusions. 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.

video_add_textAInspect

Overlay text on a video (titles, captions, watermarks). Returns JSON {success, output_path}. Use to burn a single text element into a video. Pass input_path as the source video, text with the string to draw, and position/size/color to style it; output_path is auto-named when omitted.

Args: input_path: Absolute path to the input video. text: Text to overlay. position: Position on screen. Named (top-left, top-center, etc.), pixel" " {"x": 100, "y": 50}, or percentage {"x_pct": 0.5, "y_pct": 0.5}. font: Path to font file. Uses system default if omitted. size: Font size in pixels. color: Text color (CSS color name or hex). shadow: Add text shadow for readability. start_time: When the text appears (seconds). Null = always visible. duration: How long text is visible (seconds). Requires start_time. output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow).

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNo
fontNo
sizeNo
textYes
colorNowhite
presetNo
shadowNo
durationNo
positionNotop-center
input_pathYes
start_timeNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It usefully discloses the return shape ({success, output_path}), that output is auto-named, that the font falls back to a system default, and that start_time/duration control visibility. It does not cover overwrite behavior, permission needs, or whether the source is re-encoded by default (only implied via crf/preset).

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

Conciseness4/5

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

Front-loads purpose, then return shape, then usage, then the argument list. The arg block is long but every line earns its place given zero schema coverage. Minor verbosity in the passing prose, but well-structured and appropriately sized.

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

Completeness4/5

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

For a 12-parameter mutation tool with no annotations, the definition documents all parameters, the visibility-timing interaction, and encoding controls. Return values are covered by the description even though an output schema exists (slight redundancy). The remaining gap is selection guidance against its many text/subtitle siblings.

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

Parameters5/5

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

Schema description coverage is 0% across 12 parameters, and the description compensates fully: it documents all 12 args, including the three accepted position formats (named/pixel/percentage objects), the start_time/duration dependency, the crf range (0-51), and valid preset values. This is exactly the kind of enrichment the empty schema requires.

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

Purpose4/5

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

States a specific verb and resource ("Overlay text on a video") with examples of the use case (titles, captions, watermarks). The phrase "burn a single text element" implicitly distinguishes it from the plural sibling video_add_texts, but it never names that sibling explicitly, so an agent must infer the split.

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

Usage Guidelines3/5

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

"Use to burn a single text element into a video" gives a clear context but no exclusions or named alternatives. With siblings like video_add_texts, video_subtitles, video_watermark, and video_text_animated, the description leaves the agent to infer when this single-element tool is preferred over those.

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

video_add_textsAInspect

Overlay multiple text elements on a video in a single FFmpeg pass.

Returns JSON {success, output_path}. Use when one video needs several captions at once. Pass input_path as the source video and texts as a list of overlay dicts (text plus optional position/size/color/timing).

Args: input_path: Absolute path to the input video. texts: List of text overlay dicts. Each dict may contain: - text (str, required) - position (str|dict, default "center") - font (str, optional) - size (int, default 48) - color (str, default "white") - shadow (bool, default True) - start_time (float, optional) - duration (float, optional) output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow). auto_layout: Automatically distribute vertically stacked texts at the same named position. Default True.

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNo
textsYes
presetNo
input_pathYes
auto_layoutNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses the single FFmpeg pass, return shape {success, output_path}, auto-generated output_path, and auto_layout stacking behavior, but omits permissions, overwrite/destructive behavior, error handling, and supported formats.

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

Conciseness4/5

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

Front-loads purpose, return, and usage before a structured Args section, which is appropriately sized for 0% schema coverage. It repeats some parameter information in prose and includes return details already covered by the output schema, but it is not bloated.

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

Completeness4/5

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

For a 6-parameter tool with a nested object, no annotations, and 0% schema coverage, the description is nearly complete: all parameters and nested fields are documented. Missing behavioral details such as overwrite behavior, supported codecs, and an explicit sibling alternative keep it from 5.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate fully. It documents all six parameters and every nested texts dict field with types, defaults, and requirements, leaving no ambiguity for the caller.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Overlay multiple text elements on a video'), scopes it to a single FFmpeg pass, and adds 'Use when one video needs several captions at once,' which clearly distinguishes it from the singular sibling video_add_text.

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

Usage Guidelines4/5

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

Gives an explicit selection condition ('Use when one video needs several captions at once'), so an agent knows when this tool is appropriate. It does not name the alternative (video_add_text) or state when not to use it, 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.

video_ai_color_gradeAInspect

Apply a color grade to a video — by LUT file, style preset, or reference video.

Args: input_path: Video file to grade. output_path: Where to write the graded video. reference_path: Optional reference video — when given, the video's color balance is adjusted to match the reference (overrides style). style: Style preset. One of: auto (gentle contrast lift), warm, cool, vintage, cinematic, dramatic, noir (high contrast, desaturated). lut_path: Optional .cube/.3dl LUT file applied with FFmpeg lut3d — overrides both reference and style for professional grading looks.

ParametersJSON Schema
NameRequiredDescriptionDefault
styleNoauto
lut_pathNo
input_pathYes
output_pathYes
reference_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it names the underlying FFmpeg lut3d filter, spells out the override chain among the three grading modes, and characterizes each style preset. It omits anything about re-encoding, overwrite behavior, or required permissions, keeping it short of a 5.

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

Conciseness5/5

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

Front-loads the one-line purpose, then presents parameters in a compact Args block where each entry earns its place. 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?

An output schema exists, so return values need not be described, and all five parameters are covered with mode interactions. The remaining gap is operational context — overwrite behavior, encoding cost, or failure modes — which is minor for a straightforward transform.

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

Parameters5/5

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

Schema description coverage is 0%, so the description is the only source of parameter meaning, and it documents all five parameters — including the accepted LUT formats (.cube/.3dl) and the full style enum with per-value descriptions (e.g. noir = high contrast, desaturated). Nothing an agent needs to supply is left unexplained.

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

Purpose4/5

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

States a specific verb and resource ('apply a color grade to a video') and enumerates the three mechanisms (LUT, style preset, reference video), which is far more informative than the bare name. It does not explicitly contrast itself with nearby siblings like video_filter or still_grade, so it stops short of a 5.

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

Usage Guidelines4/5

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

The description establishes clear precedence rules — reference overrides style, LUT overrides both reference and style — which is exactly the guidance an agent needs to pick parameters. It never says when to reach for this tool versus an alternative such as video_filter, so no explicit when-not guidance exists.

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

video_ai_remove_silenceCInspect

Remove silent sections from video.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
keep_marginNo
output_pathYes
silence_thresholdNo
min_silence_durationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It reveals only the basic operation and omits critical details such as whether the output is a new file, how margins or thresholds affect results, permission requirements, or reversibility.

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

Conciseness3/5

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

Extremely concise, a single sentence with no wasted words, and the action is front-loaded. However, it is so brief that it fails to carry necessary context, making the conciseness less effective.

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

Completeness1/5

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

Given five parameters with no schema descriptions, no annotations, and a non-trivial operation, the description is far too sparse. It provides no parameter semantics, no behavioral details, and no usage guidance, leaving the agent poorly equipped to call the tool correctly.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not mention any of the five parameters (input_path, output_path, keep_margin, silence_threshold, min_silence_duration). An agent gets no semantic guidance beyond parameter names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Remove') and resource ('silent sections from video'), clearly conveying the core action. It does not differentiate from sibling tools like video_trim or video_ai_scene_detect, so it falls short of a 5.

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

Usage Guidelines2/5

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

Offers no guidance on when to use this tool versus alternatives, nor any conditions, prerequisites, or exclusions. The description merely restates the operation without usage context.

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

video_ai_scene_detectCInspect

Detect scene changes in video.

ParametersJSON Schema
NameRequiredDescriptionDefault
use_aiNo
thresholdNo
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden and largely fails: it does not explain what 'use_ai' toggles, how detection differs with it, whether the operation is read-only, or what output it produces. The one sentence restates the purpose only.

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

Conciseness3/5

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

A single front-loaded sentence with no bloat, which is structurally fine. But it is terse to the point of under-specification rather than genuinely economical.

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

Completeness2/5

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

An output schema exists so return values needn't be described, but with zero annotation coverage, 0% parameter documentation, and two behavior-affecting parameters (use_ai, threshold) unexplained, 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.

Parameters1/5

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

Schema description coverage is 0%, and the description mentions none of the three parameters. The meaning of 'use_ai' (AI-based vs classic detection) and 'threshold' (default 0.3) is undocumented anywhere, which is a serious gap for a tool with tunable behavior.

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

Purpose3/5

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

States a specific verb and resource ('detect scene changes in video'), so the basic function is legible. However, it offers no differentiation from the near-identical sibling video_detect_scenes, nor from video_find_moments or video_inspect_temporal, leaving the agent unable to tell which one to pick.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, no prerequisites, and no mention of the input_path requirement. The 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.

video_ai_stem_separationCInspect

Separate audio into stems using Demucs.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNohtdemucs
stemsNo
input_pathYes
output_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden, and it discloses almost nothing beyond the algorithm name: not whether the source is a video or audio file, whether processing is local or remote, expected runtime, or whether output_dir is overwritten. 'Demucs' hints at a neural separation step, but that is the only behavioral 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?

One front-loaded sentence with no filler; it is efficient. It is under-specified rather than bloated, which is the description's deficiency in other dimensions rather than a structure problem.

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

Completeness1/5

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

For a 4-parameter mutation-style tool with zero annotation and zero schema-description coverage, a single eight-word sentence leaves critical gaps. Although an output schema exists to describe returns, the description does not cover inputs, behavior, or usage, making it inadequate for correct invocation.

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

Parameters1/5

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

Schema coverage is 0% and the description mentions none of the four parameters. The purpose-built fields (model, stems, input_path, output_dir) are undocumented anywhere, so an agent cannot know what 'stems' expects or which model values are valid.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Separate') and resource ('audio into stems') and names the underlying engine (Demucs), which is enough to distinguish it from sibling audio tools like video_normalize_audio or video_mix_audio. It stops short of explicitly contrasting itself with the other AI audio siblings, so it is clear but not separable at a glance from every 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?

There is no indication of when to reach for this tool versus related siblings such as video_extract_audio or video_ai_remove_silence, nor any prerequisite (source must already contain an audio track). The agent gets a purpose but no routing guidance.

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

video_ai_transcribeCInspect

Transcribe speech to text using Whisper.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNobase
languageNo
input_pathYes
output_srtNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but says nothing about behavior: whether SRT output is produced by default, whether language is auto-detected, what happens when output_srt is omitted, model-size tradeoffs, or runtime/accuracy implications. Whisper is named, which hints at implementation but not at behavior.

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

Conciseness4/5

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

A single tight sentence with the verb front-loaded and zero filler. It is efficient, though the brevity comes at the cost of the missing details noted elsewhere.

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?

Four parameters, zero schema descriptions, and no annotations, so the description is the only source of behavioral and parameter context — and it supplies almost none. An output schema exists, so return values need not be explained, but the call-time semantics are severely under-covered.

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

Parameters2/5

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

Schema description coverage is 0% across 4 parameters (input_path, model, language, output_srt), so the description must compensate and does not. Naming 'Whisper' loosely gestures at the model parameter but provides no meaning for language handling or SRT output path.

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

Purpose4/5

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

States a specific verb+resource ('Transcribe speech to text') plus the underlying engine ('Whisper'), so the operation is unambiguous. However it offers no differentiation from adjacent siblings such as hyperframes_transcribe, video_generate_subtitles, or video_subtitles, leaving the agent to guess which transcription path applies.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance and no mention of alternatives, despite several competing transcription/subtitle tools in the sibling list. The agent gets no routing signal beyond the tool name.

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

video_ai_upscaleCInspect

Upscale video using AI super-resolution.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNorealesrgan
scaleNo
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the operation and says nothing about overwrite behavior, compute cost, model selection effects, scale behavior, permissions, or side effects.

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

Conciseness4/5

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

It is a single front-loaded sentence with no wasted words. However, its extreme brevity comes at the cost of required detail rather than being optimally structured information.

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

Completeness1/5

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

For a tool with 4 parameters, 0% schema description coverage, no annotations, and many transform-oriented siblings, the description is far too thin. Even with an output schema present, the input semantics and operational behavior are not adequately covered.

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

Parameters1/5

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

Schema description coverage is 0% and there are 4 parameters, including model and scale. The description does not mention input_path, output_path, model, or scale, so it adds no semantic meaning beyond the bare schema.

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

Purpose4/5

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

States a specific verb, resource, and method: upscale video using AI super-resolution. It is clear enough to distinguish from generic video transforms, but does not name or contrast with relevant siblings such as video_resize or video_convert.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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, prerequisites, or alternatives. It does not tell an agent when to choose this over video_resize, video_convert, or other quality/transform tools.

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

video_analyzeAInspect

Comprehensive video analysis — transcript, metadata, scenes, audio, quality, chapters, colors.

Accepts a local file path or an HTTP/HTTPS URL. Direct video URLs (e.g. https://example.com/clip.mp4) are downloaded automatically. Streaming-platform URLs (YouTube, Vimeo, TikTok, Twitter/X, Instagram, Twitch, …) require yt-dlp (pip install yt-dlp). Each sub-analysis is independent so one failure will not abort the others.

Args: input_path: Local path or HTTP/HTTPS URL to the video. whisper_model: Whisper model size (tiny, base, small, medium, large, turbo). language: Language code for transcription (auto-detect if None). scene_threshold: Scene change sensitivity 0.0-1.0. include_transcript: Run speech-to-text via Whisper (requires openai-whisper). include_scenes: Detect scene changes and boundaries. include_audio: Analyse audio waveform, peaks, and silence regions. include_quality: Run visual quality check. include_chapters: Auto-generate chapter markers from scene changes. include_colors: Extract dominant colors and extended metadata. output_srt: Optional path to write SRT subtitle file. output_txt: Optional path to write plain-text transcript. output_md: Optional path to write Markdown transcript with timestamps. output_json: Optional path to write full JSON transcript data.

ParametersJSON Schema
NameRequiredDescriptionDefault
languageNo
output_mdNo
input_pathYes
output_srtNo
output_txtNo
output_jsonNo
include_audioNo
whisper_modelNobase
include_colorsNo
include_scenesNo
include_qualityNo
scene_thresholdNo
include_chaptersNo
include_transcriptNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses automatic URL downloading, the yt-dlp dependency for streaming hosts, the openai-whisper requirement for transcription, and — importantly — that each sub-analysis is independent so one failure will not abort the others. It omits cost/runtime characteristics and file-size limits, which is a minor gap for a heavy 14-param tool.

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

Conciseness4/5

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

The behavioral caveats are front-loaded before the Args block, and the Args entries are one-line and scannable with no filler. It is long, but the length is justified by 14 undocumented parameters, so nothing meaningful is wasted.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and the description covers all parameters plus the failure-isolation and dependency behavior. It could go one step further on runtime/cost or handling of very large or unsupported inputs, but for a tool of this complexity it is close to complete.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate entirely, and it does: every one of the 14 parameters is explained, including whisper_model size options, language auto-detect, the 0.0-1.0 range of scene_threshold, the meaning of each include_* toggle, and what each output_* path receives. This is exactly the value-add expected when the schema is bare.

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

Purpose4/5

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

The opening line gives a specific verb (analyze) plus the full scope of the resource (transcript, metadata, scenes, audio, quality, chapters, colors), so an agent knows this is the all-in-one analysis tool. It stops short of naming the sibling it supersedes (e.g. video_ai_transcribe, video_detect_scenes, video_info), leaving differentiation to inference from the sub-analysis list.

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

Usage Guidelines3/5

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

It gives real prerequisites — local path vs HTTP/HTTPS URL, automatic download of direct URLs, and yt-dlp required for streaming platforms — which is useful pre-call context. However, it never says when to pick this over narrower siblings like video_ai_transcribe or video_detect_scenes, so the usage decision is only implied.

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

video_apply_maskBInspect

Apply an image mask to a video with edge feathering.

Args: input_path: Absolute path to the input video. mask_path: Absolute path to the mask image (white = visible, black = transparent). feather: Feather/blur amount at mask edges in pixels (default 5). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
featherNo
mask_pathYes
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses mask color semantics (white = visible, black = transparent), the feather default, and output path auto-generation. However, it omits permissions, overwrite behavior, format constraints, and other side effects that an agent might need.

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

Conciseness4/5

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

Front-loads the purpose in one sentence, then a compact Args block. Every line adds needed semantics given the schema lacks descriptions, and there is no wasted text.

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

Completeness4/5

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

For a simple transform tool with an output schema (so return values need not be explained), the description covers purpose and all parameters. The lack of annotations and absence of usage guidance leaves some behavioral context thin, but the description is largely sufficient for correct invocation.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must document parameters. It meaningfully covers all four: input_path as absolute video path, mask_path with color meaning, feather with units and default, and output_path with auto-generation. It could add slightly more detail (e.g., accepted formats), but it compensates well for the bare schema.

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

Purpose4/5

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

States a specific verb ('Apply') and resource ('image mask to a video') with a key modifier ('edge feathering'). It does not explicitly differentiate from siblings like video_shape_mask or video_chroma_key, but the resource and operation are clear enough to identify the tool.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. It does not mention when to prefer it over video_shape_mask, video_luma_key, or other masking tools, nor does it state any preconditions or exclusions.

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

video_audio_bedAInspect

Mix a looped music bed under a voice source with ducking and loudness normalization.

The voice drives sidechain ducking and loudness normalization. A deterministic AudioBedReceipt is returned, and output duration stays locked to the voice source.

Args: voice_source: Video/audio whose existing audio (voice/dialog) drives ducking and sets output duration. music_path: Background music or ambience to mix underneath; looped when shorter than the voice. output_path: Absolute path for the rendered output file. loop: Loop the music bed when it is shorter than the voice. Default True. loop_crossfade: Crossfade seconds between loop iterations. Default 1.5. fade_in: Output fade-in seconds. Default 0.0. fade_out: Output fade-out seconds. Default 2.2. target_lufs: Loudness normalization target in LUFS. Default -16.0. duck_threshold: Sidechain level above which ducking engages. Default 0.02. duck_ratio: Compression ratio applied while voice plays. Default 5.0. duck_attack: Duck attack in milliseconds. Default 25.0. duck_release: Duck release in milliseconds. Default 450.0. music_volume: Base music level before ducking. Default 1.0. save_receipt: Optional absolute path to write the AudioBedReceipt JSON.

Returns: Dict with success status, output_path, output_duration, ducking_engaged, warnings, elapsed_ms, and the structured receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
loopNo
fade_inNo
fade_outNo
duck_ratioNo
music_pathYes
duck_attackNo
output_pathYes
target_lufsNo
duck_releaseNo
music_volumeNo
save_receiptNo
voice_sourceYes
duck_thresholdNo
loop_crossfadeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses that the output duration is locked to the voice source, that the receipt is deterministic, and that music is looped when short. It omits failure modes and whether the voice source's own audio is preserved in the output, which a mutating render tool should ideally state.

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

Conciseness4/5

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

Front-loaded purpose sentence, then behavior, then args, then returns – a sensible order with no filler prose. The Returns block partially duplicates the output schema, which is the one place a sentence is not strictly earning its place.

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

Completeness5/5

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

For a 14-parameter render tool with no annotations and 0% schema coverage, the description supplies everything an agent needs: semantics for every argument, default values, unit conventions, and the key output invariant (duration locked to voice). The output schema covers return shape, so the extra Returns prose is harmless redundancy rather than a gap.

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

Parameters5/5

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

Schema description coverage is 0% across 14 parameters, and the Args block compensates fully: every parameter gets a meaning, and the numeric ones get units (LUFS, milliseconds, seconds) and defaults (target_lufs -16.0, duck_release 450 ms, fade_out 2.2). This is exactly the compensation a 0%-coverage schema requires.

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

Purpose4/5

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

The first sentence states a specific verb (mix) and resource (looped music bed under a voice source) plus the two defining behaviors: ducking and loudness normalization. That distinguishes it from generic siblings like video_mix_audio or video_add_audio, though it never names an alternative explicitly, so the differentiation is inferential rather than stated.

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

Usage Guidelines3/5

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

The description explains mechanics (voice drives ducking, duration locked to voice) but never says when to pick this over video_duck_audio, video_mix_audio, video_normalize_audio, or video_add_audio, nor any prerequisite (e.g., ffmpeg availability, source format constraints). Usage is implied by capability rather than stated.

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

video_audiogram_planDInspect

Audiogram + chapter mark plan (TE.4).

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNo
heightNo
audio_pathYes
chapter_marksNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden, and it discloses nothing: not whether it writes files, produces a render, requires audio decoding, or has side effects. The parenthetical '(TE.4)' conveys no usable behavior.

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?

It is short, but it is under-specified rather than concise; the single fragment fails to front-load purpose. Brevity here reflects missing content, not efficiency.

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

Completeness1/5

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

For a tool producing a 'plan' with 4 parameters, an output schema, and no annotations, the description is inadequate. It leaves the agent unable to know inputs, outputs, or side effects.

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

Parameters1/5

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

Schema description coverage is 0% for 4 parameters. The description references 'chapter mark' but doesn't explain the chapter_marks array format, units (seconds?), or what width/height control. It adds no meaning beyond the bare schema titles.

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 'Audiogram + chapter mark plan (TE.4)' is a fragment restating the tool name plus an unexplained code. It doesn't state a clear verb or what the output is beyond the title, and the reference 'TE.4' is opaque. An agent cannot confidently distinguish this from sibling planning tools like video_punch_zoom_plan or video_timeline_edit_plan 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 Guidelines1/5

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

No indication of when to use this tool vs alternatives is given. With dozens of sibling '*_plan' tools, the agent has no guidance on selecting this one.

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

video_audio_spatialCInspect

Apply 3D spatial audio positioning.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNohrtf
positionsYes
input_pathYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.1/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full behavioral burden. It says nothing about whether it overwrites files, what permissions are needed, how the output is written, or what the method and positions actually do.

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 single sentence is concise and front-loaded, but it is under-specified rather than appropriately sized. It lacks the information needed to make the tool usable, so brevity here reflects omission rather than efficient structure.

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

Completeness1/5

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

Although an output schema exists, the input side is completely undocumented and the description does not compensate. With four parameters, three required, and no annotations or schema descriptions, the definition is inadequate for correct invocation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description adds no meaning for any of the four parameters. It does not explain method, positions format, or the roles of input_path and output_path.

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

Purpose4/5

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

States a specific verb and resource: 'Apply 3D spatial audio positioning.' An agent can tell it is about spatial audio processing, but the description does not differentiate it from sibling audio tools such as video_mix_audio, audio_effects, or video_duck_audio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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. It does not mention prerequisites, supported formats, or conditions that select this tool over other audio-processing siblings.

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

video_audio_waveformBInspect

Extract audio waveform data (peaks and silence regions).

Args: input_path: Absolute path to the input video/audio file. bins: Number of time segments to analyze (default 50).

ParametersJSON Schema
NameRequiredDescriptionDefault
binsNo
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It implies a read-only analysis by naming the extracted data, but never states that it is non-destructive, whether it is CPU-heavy for long files, or any limits on bins. The output schema exists, which reduces the need to explain return values, but basic behavioral traits remain undisclosed.

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

Conciseness4/5

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

One purpose sentence followed by a compact Args block — front-loaded and free of filler. The arg lines are terse but every element earns its place; nothing is padded.

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 read tool with an output schema, the description covers purpose and both arguments adequately. It is short of complete because it omits any when-to-use routing and any note on supported input formats or expected cost, which matters in this large sibling set.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does: it documents both parameters, specifying that input_path is an absolute path to a video/audio file and that bins is the number of time segments (default 50). This adds real meaning beyond the bare schema types, though it doesn't explain the tradeoff of increasing bins.

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

Purpose4/5

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

The description gives a specific verb and resource — 'Extract audio waveform data (peaks and silence regions)' — which is clearly distinguishable from unrelated siblings like video_trim or video_merge. It does not, however, contrast itself with nearby analysis siblings such as video_analyze or video_audio_spatial, so the differentiation is only implicit.

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

Usage Guidelines2/5

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

There is no statement of when to reach for this tool versus alternatives in a 100+ sibling namespace. No prerequisites (e.g., that the file must contain an audio track) and no exclusions are mentioned; the agent must infer usage entirely from the name and purpose phrase.

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

video_auto_chaptersBInspect

Auto-detect scene changes and create chapters.

Analyzes video for scene cuts and returns chapter timestamps.

Args: input_path: Absolute path to input video. threshold: Scene detection threshold 0-1. Default 0.3.

Returns: List of (timestamp, description) chapter tuples.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNo
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses the analysis-and-return model but not whether chapters are written to the source file or returned only, what permissions/paths are required, processing cost, or failure modes. For a media-processing tool with zero annotation coverage this is a notable 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?

Front-loaded with the core action, then compact Args/Returns sections. Every sentence is short and functional, with no filler.

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

Completeness3/5

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

An output schema exists and the Args fully cover the two parameters, so the core is complete. However, with no annotations and no guidance on when to prefer this over the sibling detection tools, an agent still lacks the routing information needed to call the right 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?

Schema coverage is 0%, so the description must compensate, and it does: input_path is described as an absolute path, and threshold is given a 0-1 range with a default of 0.3. The range and default detail add real meaning beyond the bare schema titles, though the practical effect of the threshold value is not explained.

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

Purpose4/5

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

States a specific verb+resource: 'Auto-detect scene changes and create chapters' with the added note that it analyzes video for cuts and returns timestamps. Clear on its own, but it does not distinguish itself from close siblings like video_detect_scenes or video_ai_scene_detect, leaving the agent unsure which detection tool to pick.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no mention of alternatives despite several scene-detection siblings existing (video_detect_scenes, video_ai_scene_detect). The agent must infer usage entirely from the purpose statement.

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

video_batchAInspect

Apply the same operation to multiple video files.

Args: inputs: List of absolute paths to input video files. operation: Operation (trim, resize, convert, filter, blur, color_grade," " watermark, speed, fade, normalize_audio). params: Parameters for the operation. output_dir: Directory for output files. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputsYes
paramsNo
operationYes
output_dirNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose one behavioral trait beyond the schema: output_dir is auto-generated if omitted. However it says nothing about overwrite behavior, error handling when one file fails, whether processing is sequential or parallel, or whether it requires specific permissions — notable gaps for a batch mutation tool.

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

Conciseness4/5

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

Front-loaded one-line summary followed by a compact Args block; every line carries information. Slightly docstring-formatted rather than prose, but no wasted sentences.

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

Completeness4/5

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

An output schema exists so return values need not be described, and the description covers all parameters plus the operation vocabulary. Remaining gaps are edge-case behavior (partial failure, overwrite) rather than anything blocking correct invocation.

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

Parameters4/5

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

Schema coverage is 0%, so the description must compensate, and it largely does: all four params are explained, inputs is clarified as absolute paths, and critically the operation param's eleven accepted values (trim, resize, convert, filter, blur, color_grade, watermark, speed, fade, normalize_audio) are enumerated — information absent from the schema, which defines operation as a bare string.

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

Purpose4/5

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

States a specific verb+resource+scope: 'Apply the same operation to multiple video files', which cleanly distinguishes it from the many single-file siblings (video_trim, video_resize, video_convert). It doesn't explicitly name a sibling, but the batch semantics are 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 batch framing implies when to use it (many files, one shared operation), but there is no explicit when-not guidance, no statement about whether mixed operations per file are possible, and no pointer to the single-file equivalents. Usage is inferable rather than stated.

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

video_benchmark_runBInspect

Run the AI-video benchmark corpus against host capabilities.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full disclosure burden. It implies a diagnostic probe against the host, but says nothing about side effects, resource consumption, runtime, or whether results are persisted. For a benchmark tool that likely executes real workloads, this is a meaningful omission.

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 economical sentence with no filler, and the action is front-loaded. It is arguably under-specified rather than verbose, so it does not earn a 5 but wastes no 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?

An output schema exists, so return values need not be explained, and with zero parameters the input side is trivially complete. Still, the description leaves the agent without any guidance on when this benchmark is appropriate or what it affects on the host, which is thin for a tool with no annotation coverage.

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

Parameters4/5

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

The tool takes zero parameters, so the baseline is 4; there is no parameter meaning that needs documenting. Nothing in the description misleads about inputs.

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

Purpose4/5

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

The description gives a specific verb ('Run') and resource ('AI-video benchmark corpus') plus the object being measured ('host capabilities'), so an agent knows this executes a benchmark. It does not, however, distinguish itself from the very similar sibling hyperframes_benchmark, which is the main gap between a 4 and 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 statement of when to run this benchmark versus alternatives (e.g. hyperframes_benchmark or video_capabilities), no prerequisites, and no note about cost or duration. The agent must infer the trigger condition entirely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_body_swapCInspect

Replace video while preserving approved audio with explicit duration policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
output_pathYes
project_dirYes
audio_sourceYes
video_sourceYes
duration_policyNo
authorization_decision_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It hints at a duration policy and preserving approved audio, but does not state what gets replaced or destroyed, whether the output overwrites anything, what authorization_decision_ids represent, or what permissions are required. For a mutation tool with zero annotation coverage, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence with no filler, and it front-loads the action and the key constraint (preserve approved audio). The problem is under-specification rather than verbosity, so conciseness itself is strong.

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 6 parameters, no annotations, and 0% schema description coverage, the description omits nearly all behavioral and parameter context an agent would need. Output schema exists, so return values need not be explained, but the remaining gaps—duration policy semantics, authorization IDs, required inputs—make it materially incomplete for a replacement operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 6 parameters and 0% description coverage, so the description should compensate. It mentions duration_policy by name and implies audio/video sources, but gives no format, allowed values, or meaning for duration_policy, authorization_decision_ids, project_dir, or output_path. The description adds only minimal meaning beyond the bare 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?

"Replace video while preserving approved audio" gives a clear verb (replace) and resource (video), and the audio-preservation qualifier hints at a body-swap operation. However, it never names or contrasts with any sibling tool such as video_merge, video_edit, or video_add_audio, and terms like "approved audio" and "body swap" are left undefined. This is a clear purpose but with no 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 when-to-use guidance, no conditions for choosing it over alternatives, and no prerequisites or exclusions. Usage is only implicit from the verb "replace." An agent must infer all routing decisions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_brand_kitCInspect

Save or load a brand kit / style profile JSON.

ParametersJSON Schema
NameRequiredDescriptionDefault
kitNo
pathYes
actionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing: no overwrite/destructive semantics for save, no error behavior for load, no file format or validation rules. Only the bare notion of persistence is conveyed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence with no filler, front-loaded on the core purpose. It is arguably too terse for the information it needs to carry, but nothing in it is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but for a 3-parameter tool with zero schema documentation and no annotations, the definition omits action values, path semantics, kit structure, and save-overwrite behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description compensates only marginally — it implies the two 'action' values (save/load) but never names them, and says nothing about what 'path' refers to or what shape the 'kit' object must take.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a clear verb pair ('save or load') and resource ('brand kit / style profile JSON'), so an agent can tell what the tool manipulates. It does not, however, distinguish it from related siblings such as style_pack_read or image_generate_palette, and the two modes are not separated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 save versus load, which action value selects which mode, or what alternatives exist (e.g. style_pack_read for reading style data). The agent must infer everything from the verb pair.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_capabilitiesAInspect

Probe host capabilities (ffmpeg, whisper, c2pa) and return a capability report.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. 'Probe' and 'return a capability report' imply a safe, likely read-only inspection, but it does not state whether probing executes the binaries, how long it may take, or whether anything is written 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?

A single front-loaded sentence with zero waste; the probed components are named inline rather than padded into extra sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value detail is not needed, and with no parameters the surface is small. The description is nearly complete for this tool, only missing any note about cost or runtime of the probe.

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 of 4 applies. The description appropriately adds no param prose because there is nothing to parameterize.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Probe') and resource ('host capabilities') and enumerates exactly what is probed (ffmpeg, whisper, c2pa), so an agent knows the scope precisely. It does not name or contrast itself against any sibling, but the capability-probing function is distinct enough in this fleet.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: an agent would use this to check host tool availability before running pipelines. There is no explicit when-to-use, prerequisites, or relationship to siblings like video_preflight or hyperframes_doctor that might overlap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_chroma_keyAInspect

Remove a solid color background (green screen / chroma key).

Args: input_path: Absolute path to the input video. color: Color to make transparent in hex format (default green: 0x00FF00). similarity: How similar colors need to be to be keyed out (0.0-1.0, default 0.01). blend: How much to blend the keyed color (default 0.0). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
blendNo
colorNo0x00FF00
input_pathYes
similarityNo
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It adds useful semantics for similarity/blend keying, but does not disclose whether the output preserves alpha, what container/codec is produced, whether the input is overwritten, or any permission/processing constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose sentence followed by a compact Args list; each line earns its place. Slightly list-heavy but there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter keying tool with no annotations but a present output schema, the description covers every parameter and the core operation. The main remaining gap is output alpha/format behavior, which is the practical question an agent calls this tool to answer.

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 0%, so the description must compensate, and it does: it documents all five parameters, adding format ('hex format'), range ('0.0-1.0'), and default ('green: 0x00FF00') details beyond the bare schema. It stops short of explaining blend units or how output_path auto-generation works.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Remove a solid color background') and disambiguates the technique via '(green screen / chroma key)'. It does not, however, distinguish itself from close siblings like video_luma_key or hyperframes_remove_background, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the parenthetical 'green screen / chroma key'. There is no explicit when-to-use statement or guidance on choosing this over video_luma_key, apply_mask, or hyperframes_remove_background for background removal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_cleanupAInspect

Delete intermediate video files after a workflow.

Useful for multi-step pipelines that leave temporary outputs. Files in keep are preserved even if listed in files.

Args: files: List of absolute paths to delete. keep: List of absolute paths to preserve (optional).

ParametersJSON Schema
NameRequiredDescriptionDefault
keepNo
filesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral burden. It discloses the destructive nature ('Delete') and a valuable precedence rule ('Files in keep are preserved even if listed in files'), which is more than the schema conveys. But it omits irreversibility, behavior on missing paths, required permissions, or error handling for what is an unrecoverable operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the destructive action, followed by use context and the precedence rule, so a reader gets the critical information first. The Args block partly duplicates the schema, but with 0% schema coverage it earns its place rather than being padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the tool has low complexity (2 flat params). Purpose, use case, and both parameters are covered. The remaining gap is the absence of any annotation or statement about safety/reversibility for a destructive operation.

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 0%, so the description must compensate, and it does: both params are documented (files = absolute paths to delete, keep = absolute paths to preserve, optional). It also adds meaning beyond the schema via the keep-over-files precedence rule. Only minor syntax details (e.g., missing-path handling) are absent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Delete intermediate video files') with an explicit scope ('after a workflow'). No sibling tool performs deletion, so it is unambiguous against the large surrounding library. An agent can identify the operation immediately.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the use context clearly ('multi-step pipelines that leave temporary outputs'), which tells the agent when this tool is appropriate. However, it offers no explicit when-not guidance or alternatives, and no mention of prerequisites such as files existing or permissions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_compare_qualityBInspect

Compare video quality between original and processed versions.

Args: original_path: Absolute path to the original/reference video. distorted_path: Absolute path to the processed/distorted video. metrics: Metrics to compute (default: ['psnr', 'ssim']).

ParametersJSON Schema
NameRequiredDescriptionDefault
metricsNo
original_pathYes
distorted_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It implies a read-only comparison but never states whether it decodes full videos (cost/latency), what permissions or codecs are required, or how large inputs are handled. Only the metric default is disclosed, which is parameter information rather than 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?

The purpose sentence is front-loaded and each arg line earns its place by supplying semantics the schema lacks. The Args block format is slightly verbose but not padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and all three parameters are covered. What is missing is the valid metric vocabulary and any routing guidance against the several sibling quality tools, which matters given how crowded this namespace is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description is the only source of parameter meaning, and it delivers: it identifies original_path as the reference and distorted_path as the processed input, and gives the metrics default as ['psnr', 'ssim']. It does not enumerate the full set of accepted metric names, which keeps it from 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?

States a specific verb+resource ('compare video quality') and clarifies the two operands are original vs processed versions, which is enough for an agent to distinguish it from single-input siblings like video_quality_check. It does not explicitly name any sibling or contrast with them, 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 never says when to use this rather than video_quality_check, video_metric_qc, or video_qc_vision, all of which live in the same quality-assessment space. There is no prerequisite or exclusion guidance; the agent must infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_composite_layersAInspect

Composite ordered image/video layers from a JSON spec.

Supports explicit straight/premultiplied input alpha, opacity, positioning, transforms, timing windows, masks/mattes, allowlisted blend modes, rotation, and effect-noise routes to named layer/mask/mask-edge streams. Emits a deterministic layer-plan receipt; unsupported routes fail closed. File sources and masks must resolve inside the spec's directory.

Args: spec_path: Path to a composite-layers JSON spec. output_path: Optional destination media path. save_layer_plan: Optional JSON path for the resolved layer-plan receipt. dry_run: Validate and emit the layer plan without rendering media.

ParametersJSON Schema
NameRequiredDescriptionDefault
dry_runNo
spec_pathYes
output_pathNo
save_layer_planNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does substantial work: it discloses a fail-closed failure mode for unsupported routes, a deterministic layer-plan receipt, and a path-confinement constraint ('File sources and masks must resolve inside the spec's directory'). It stops short of permissions or resource/performance notes, but the behavioral disclosure is strong for an unannotated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in the first sentence, followed by a dense but organized capabilities sentence and a well-structured Args block. It is somewhat feature-dense in the middle, but every sentence carries information relevant to invoking the tool correctly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return-value explanation is unnecessary, and the description still flags the layer-plan receipt. For a spec-driven mutation/render tool with no annotations, it covers failure behavior, path constraints, and all parameters, leaving only minor gaps around permissions and rendering performance.

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 0%, so the description must compensate, and it does: the Args block gives meaning to all four parameters, notably clarifying dry_run as 'Validate and emit the layer plan without rendering media' and distinguishing save_layer_plan as the resolved layer-plan receipt path. This adds real semantics beyond the bare schema titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: 'Composite ordered image/video layers from a JSON spec,' which clearly identifies the operation. It is distinguishable from generic siblings like video_overlay or video_merge by emphasizing ordered layers driven by a spec file, though it does not explicitly name a sibling it is not.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 usage via a JSON spec but gives no explicit when-to-use guidance, no prerequisites, and no comparison against the many overlapping compositing/overlay siblings (video_overlay, video_merge, video_apply_mask). An agent must infer when this is the right tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_composition_planCInspect

Build source-backed manifests, selections, compositions, previews, and checks.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral disclosure burden. 'Source-backed' hints at inputs but the description does not say whether the tool reads, writes, mutates state, requires permissions, or produces 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 concise sentence with the verb front-loaded, which is efficient. The noun list is not wasteful, though it lacks the structure that would make the scope clearer.

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 nested, undocumented request object and no annotations, the description is far too thin to guide invocation. Although an output schema exists and need not be described, the input side is completely unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single required parameter 'request' is a nested object with 0% schema description coverage, and the description does not explain its structure or contents. The nouns listed (manifests, selections, etc.) are not mapped to input fields, leaving parameter semantics entirely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a verb ('Build') and lists artifact types (manifests, selections, compositions, previews, checks), so the general domain is clear. However, the list is vague jargon and does not differentiate this tool from many planning siblings such as video_workflow_plan, video_generative_plan, or video_timeline_edit_plan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, prerequisites, or explicit alternatives are provided. An agent must infer usage entirely from the 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.

video_convertConvert video formatA
Destructive
Inspect

Transcode a video into a different container or codec (mp4, webm, gif, mov, ...). Returns JSON {success, output_path}. Use for format conversion; prefer video_export for delivery presets. Pass input_path as the source video and format as the target container; long renders stream MCP progress.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoTarget output format: mp4, webm, gif, mov, hevc, av1, or prores.mp4
qualityNoEncoding quality preset: low, medium, high, or ultra.high
two_passNo
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
target_bitrateNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, but the description adds beyond them: the JSON return shape, that long renders stream MCP progress, and the input/output path conventions. Together these tell the agent the operation is a slow, potentially-overwriting write that emits progress. 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?

Four tightly packed sentences: purpose and formats first, then return shape, then the sibling routing rule, then parameter and progress notes. Every clause earns its place and the important routing info 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?

With rich annotations (destructive/idempotent hints), a partially documented schema, and an output schema, the description covers what's missing: when to use vs video_export, the return contract, and progress behavior. Nothing an agent needs to call it correctly is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 67% and the description only clarifies input_path (source) and format (target container), which the schema already documents. two_pass and target_bitrate remain undocumented in both places, so the description adds marginal value over 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 (transcode) plus the resource (video) and the targets it can produce (container/codec, with format examples). Explicitly distinguishes itself from video_export, so an agent can pick between them without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a positive routing rule ("Use for format conversion") and an explicit alternative ("prefer video_export for delivery presets"). The condition that selects each tool is stated, not implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_cost_ledgerBInspect

Sum known USD cost events by category for the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden, and it does convey that this is a read-only aggregation over "known" events (implying it only reflects already-recorded costs, not projected ones). It does not state permissions, whether it mutates anything, or what happens when no events exist, so it is only partially transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler or redundancy. It is efficient, though arguably so terse that it omits context an agent would need.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the tool has only one trivial string parameter. Still, with no annotations and no usage guidance, the definition leaves the agent without enough to confidently decide when this tool applies versus estimate-oriented siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single required parameter (project_dir) is undocumented in the schema. The phrase "for the project" loosely signals that the parameter identifies a project, but gives no hint about format, path expectations, or whether the directory must already exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ("Sum"), a specific resource (USD cost events), and a grouping scope ("by category for the project"), which is enough to distinguish it from rendering/editing siblings like video_estimate_operation. It stops short of explicitly contrasting itself with any sibling, so it lands at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to reach for this tool, what prerequisite state it needs (e.g., a project with recorded cost events), or which alternatives to prefer when only estimates rather than actuals are wanted. Usage is left entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_create_from_imagesBInspect

Create a video from a sequence of images.

Args: images: List of absolute paths to image files (in order). output_path: Where to save the output video. Auto-generated if omitted. fps: Frames per second for the output video (default 30.0).

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNo
imagesYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It mentions that output_path is auto-generated if omitted and that fps defaults to 30.0, but it omits important traits such as overwrite behavior, supported image formats, error conditions, and whether the operation is reversible. These gaps are significant for a creation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with the core action, followed by a clean argument list. Every sentence serves a purpose, though the argument list could be slightly more compact. It avoids unnecessary repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-parameter creation tool with an output schema, the description covers the parameters and basic defaults. However, it lacks usage context, error behavior, and input constraints. It is minimally adequate but has clear gaps given the absence of annotations.

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 0%, so the description must compensate, and it does: it explains that images are absolute paths in order, output_path is where to save and auto-generated if omitted, and fps defaults to 30.0. It does not specify image format constraints or output video format, but it adds substantial meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: creating a video from a sequence of images. This clearly distinguishes it from sibling tools like video_merge or video_storyboard, though it does not explicitly name an alternative. The purpose is unambiguous and front-loaded.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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. The description does not say when to choose this tool over alternatives such as video_storyboard or video_merge, nor does it state prerequisites or exclusions. It only lists arguments.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_creative_autopilot_planDInspect

Coordinate proven local planners or return a structured abstention.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does disclose that the tool may return a 'structured abstention' instead of a plan, which is useful. However, it omits side effects, permissions, what 'proven' means, and whether it invokes other tools or mutates state.

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 single sentence is brief, but it is under-specified rather than well-structured. It has no front-loaded explanation of the tool's main purpose or expected input, so the brevity does not earn its place for a tool with a nested request object.

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 complex nested request schema, zero schema coverage, no annotations, and the presence of many sibling planners, the description is substantially incomplete. It mentions coordination and abstention but leaves out the input contract, typical use case, and execution semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one required parameter, 'request', as an object with additionalProperties true and 0% description coverage. The description says nothing about what the request should contain, so the agent has no semantic guidance for this parameter.

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 says it will 'coordinate proven local planners' but never specifies which planners, what domain of planning, or what the tool produces. 'Return a structured abstention' is a fallback behavior rather than a purpose. It is vague and does not distinguish this tool from the many planning siblings such as video_workflow_plan or video_generative_plan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, prerequisites, or alternatives are provided. The description gives no indication of when an agent should choose this autopilot planner over the numerous other planning tools. Usage must be inferred from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_cropCrop video frameA
Destructive
Inspect

Crop an existing video to a rectangular region or centered percentage crop and render a new output file. The source video is read only; x/y default to a centered crop when omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
xNoOptional X offset in pixels. Defaults to a centered crop when omitted.
yNoOptional Y offset in pixels. Defaults to a centered crop when omitted.
widthNoCrop region width in pixels. Pair with height unless using crop_percent.
heightNoCrop region height in pixels. Pair with width unless using crop_percent.
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
crop_percentNoCentered crop percentage of original dimensions, such as 50 for the center 50%.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and non-idempotency. The description usefully adds that the source video is read only and that the operation renders a new output file, clarifying where the destructiveness lands. It stops short of describing auth/permission requirements or rate/format limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, with the primary action and the two crop modes front-loaded ahead of the source-file/read-only caveat. Every clause carries information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a full output schema present, the description need not explain return values, and it covers the core modes, defaults, and source-file safety. It omits the output-path overwrite consequence, which lives only in the schema, so it is nearly but not fully complete for a destructive render 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 seven parameters, including the centered-default behavior of x/y and the crop_percent alternative, are already documented in the schema. The description's only added parameter context is the same centered-crop default, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb (crop) plus resource (existing video) and names the two operating modes: rectangular region or centered percentage, producing a new output file. It is clearly distinguishable from neighboring tools like video_resize or video_trim, though it never names those siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance relative to alternatives such as video_resize, video_trim, or video_rotate. The only usage signal is the implicit 'you want to crop' framing, which is tautological rather than routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_cutfile_renderCInspect

Render a schema-valid Cutfile via the workflow engine (Track E).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
output_pathNo
save_receiptNo
keep_intermediatesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Render' implies a heavy, side-effecting operation that writes files, but the description says nothing about permissions, overwrite behavior for output_path, what keep_intermediates preserves, what save_receipt writes, or whether the render is long-running/async.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no padding, which is structurally fine, but it is terse to the point of under-specification rather than genuinely economical. The '(Track E)' tag consumes space without conveying usable meaning.

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 has an output schema, so return values need not be described, but with no annotations, four undocumented parameters, and a file-producing render operation, the definition leaves an agent without the information needed to invoke it correctly. A one-line description is not enough for this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters have 0% schema description coverage, so the description must compensate and does not. Neither 'output_path', 'save_receipt', nor 'keep_intermediates' is mentioned, and the required 'path' is only obliquely implied by 'Cutfile'. An agent cannot tell whether path is the Cutfile or the source media.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Render') and resource ('Cutfile') plus the mechanism ('via the workflow engine'), which is enough to separate it from the sibling video_cutfile_validate. It stops short of directly naming or contrasting with alternatives such as video_workflow_render or revideo_render, and the '(Track E)' reference is unexplained jargon.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this over video_workflow_render, video_cutfile_validate, or the revideo_render family, nor any prerequisite (does the Cutfile need to be validated first?). Usage must be inferred from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_cutfile_validateCInspect

Validate a Cutfile, or compile one from goal / platform (N1/N5).

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
pathNo
sourceNo
platformNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full responsibility for behavioral disclosure, yet it only hints at two modes: validate and compile. It does not state whether validation is read-only, whether compiling writes to disk or requires a specific path/source, or what side effects or permissions are involved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the primary action before the alternative. It is efficiently sized, though the cryptic '(N1/N5)' notation adds unexplained clutter without earning 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?

An output schema exists, so return values need not be described. However, for a 4-parameter, no-annotation tool, the description is missing critical context: what a Cutfile is, when to validate versus compile, and the roles of path and source. It is not completely empty but falls well short of complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and four parameters exist. The description references only 'goal' and 'platform' as inputs for compilation, leaving 'path' and 'source' completely unexplained. It adds some semantic meaning for two parameters but fails to compensate for the schema coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Validate') and resource ('Cutfile'), and adds a secondary compile action from goal/platform. It is understandable in isolation, but it does not differentiate itself from sibling tools like video_cutfile_render or video_timeline_ir_validate. The parenthetical '(N1/N5)' is unexplained jargon that weakens immediate 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 offers no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. It merely states what the tool does, leaving the agent to infer usage from the 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.

video_design_quality_checkBInspect

Run comprehensive design quality analysis on a video.

Checks layout, typography, color, motion, and composition quality. Can automatically fix issues where possible.

Args: input_path: Absolute path to video file auto_fix: If True, automatically apply fixes strict: If True, treat warnings as errors

ParametersJSON Schema
NameRequiredDescriptionDefault
strictNo
auto_fixNo
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It usefully discloses that the tool is not purely read-only ('Can automatically fix issues where possible'), which is real behavioral context beyond the schema. But it omits where fixes are written (in place vs. new file), whether the input is mutated, and any permission/cost implications of a comprehensive analysis pass.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the action and scope, followed by a compact dimension list and parameter notes. The Args block is slightly redundant with the schema, but overall it is tight with little wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the parameter block covers all three inputs. However, for a tool that can mutate video files with zero annotations, the description leaves key operational questions unanswered (output location, overwrite behavior) and gives no routing against the many sibling QC/fix 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 0%, so the description must compensate, and it does document all three parameters inline. 'strict: If True, treat warnings as errors' adds genuine meaning, but 'auto_fix: If True, automatically apply fixes' largely restates the parameter name, and there is no detail on fix scope or reversibility.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (analysis) and resource (video design quality) and enumerates the dimensions checked (layout, typography, color, motion, composition), which distinguishes it from the generic video_quality_check. However, it never names or contrasts itself with close siblings like video_fix_design_issues or video_qc_vision, so an agent must still infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this versus alternatives, despite an obviously overlapping sibling (video_fix_design_issues) and other QC tools (video_quality_check, video_qc_vision, video_metric_qc). The auto_fix flag implicitly defines two modes but the description never says which mode to choose or when.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_detect_scenesAInspect

Detect scene changes in a video.

Args: input_path: Absolute path to the input video. threshold: Scene detection sensitivity (0.0-1.0, lower = more sensitive, default 0.3). min_scene_duration: Minimum scene duration in seconds (default 1.0).

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNo
input_pathYes
min_scene_durationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a read-only analysis operation ('Detect scene changes'), but does not explicitly state whether it is safe, non-destructive, requires permissions, or has any side effects. It also does not mention output format, though an output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the purpose and then uses a compact Args section. Every sentence and parameter note is useful, with no redundant or filler content. The structure is standard and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity, the presence of an output schema, and no annotations, the description covers the core purpose and all parameters well. The main gaps are the lack of usage guidance against siblings and no explicit statement of read-only behavior, but these are not critical for basic invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It does so effectively by explaining each of the three parameters: input_path as an absolute path, threshold as sensitivity with range, direction, and default, and min_scene_duration with units and default. This adds substantial meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Detect scene changes in a video.' This is clear and distinguishes the operation from non-scene tools. However, it does not differentiate from the sibling tool 'video_ai_scene_detect', which appears to serve a similar purpose, leaving ambiguity for the agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 'video_ai_scene_detect' or 'video_find_moments'. The description only states what it does, with no conditions, exclusions, or recommended contexts for invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_dub_planDInspect

ES-first plan; use sound_voice_batch with a hashed request for local stock speech.

ParametersJSON Schema
NameRequiredDescriptionDefault
voiceNo
target_langNoes
caption_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full behavioral burden. It discloses nothing about whether the tool reads, writes, destroys, requires auth, or has side effects; 'plan' alone is too vague.

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?

It is only one sentence, but it is cryptic and under-specified rather than appropriately concise. The purpose is not front-loaded, and the sentence about sound_voice_batch does not earn its place in this tool's description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter planning tool with no annotations and no schema descriptions, the description is far too thin. Even though an output schema exists, the description omits basic context about what the plan contains and how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not explain voice, target_lang, or caption_path. 'ES-first' loosely hints at the default target_lang, but no parameter meaning is added beyond the bare schema.

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 says 'ES-first plan' but never states what is being planned or what the tool actually does. It vaguely implies Spanish-first dubbing planning, but an agent cannot distinguish it from siblings like video_audiogram_plan or video_workflow_plan without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It mentions an alternative (sound_voice_batch) but does not say when to use video_dub_plan versus that or any other sibling. The directive to use sound_voice_batch is confusing and not tied to a selection condition.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_duck_audioAInspect

Mix background music under a video's voice with automatic ducking.

The video's own audio (voice/dialog) drives FFmpeg's sidechain compressor, so the music dips while speech plays and recovers in pauses — the standard treatment for shorts, reels, and podcast clips.

Args: input_path: Video whose existing audio drives the ducking. music_path: Background music or ambience to mix underneath. output_path: Where to save the result. Auto-generated if omitted. music_volume: Base music level before ducking (0-2, default 0.6). threshold: Sidechain level above which ducking engages (0-1). ratio: Compression ratio applied while voice plays (1-20). attack: How fast the music dips, in milliseconds (1-2000). release: How fast the music recovers, in milliseconds (1-9000).

ParametersJSON Schema
NameRequiredDescriptionDefault
ratioNo
attackNo
releaseNo
thresholdNo
input_pathYes
music_pathYes
output_pathNo
music_volumeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It explains the core ducking mechanism (sidechain compressor driven by voice) and the audible effect (music dips and recovers), and lists parameter ranges and defaults. It omits details like permissions, file overwrite behavior, or format support, but the key behavioral trait is well 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?

Front-loads the primary purpose in the first sentence, follows with a concise rationale, and then presents parameter details in a clean Args list. Every sentence earns its place and the structure is 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?

Given eight parameters, no annotations, and an output schema, the description covers the essential behavior and all parameter semantics thoroughly. It could add minor context about file format support or output handling, but is largely complete for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It provides meaningful descriptions for all eight parameters, including ranges (e.g., music_volume 0-2, attack 1-2000 ms) and defaults, adding substantial semantic value beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Mix') and resource ('background music under a video's voice') with a clear mechanism ('automatic ducking'). It distinguishes itself from generic mixing by describing the ducking behavior, though it does not explicitly name any sibling tool as an alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a clear context for use ('the standard treatment for shorts, reels, and podcast clips') and implies the scenario (mixing background music under voice). However, it does not provide explicit when-not-to-use guidance or name alternative tools for different mixing needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_editAInspect

Execute a full timeline-based edit from a JSON specification.

The timeline JSON describes video clips, audio tracks, text overlays, image overlays, transitions, and export settings in a single operation.

Image overlays are applied in a single filtergraph pass (no multiple re-encodes).

Sequence shortcut (simple multi-clip chain with per-boundary transitions)::

{
  "clips": ["a.mp4", "b.mp4", "c.mp4"],
  "transitions": ["fade", "dissolve"],
  "transition_duration": 0.5
}

Args: timeline: Full Timeline JSON (width/height/tracks/export) or the sequence shortcut above. Can also be a JSON string or a path to a .json file. Image overlays in tracks: {"type": "image", "images": [{"source": "logo.png", "position": "top-right", "width": 200, "opacity": 0.8}]} output_path: Where to save the final video. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
timelineYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does add real behavioral context: image overlays run in a single filtergraph pass (no multiple re-encodes) and output_path is auto-generated when omitted. It still omits permissions, runtime/rendering cost, and side effects, which matters for a heavy mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, then a structured example and an Args section; the JSON sample earns its space by disambiguating the 'sequence shortcut' input form. Slightly verbose but no filler sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the description covers both input forms plus the overlay schema. For a heavy no-annotation mutation tool it could say more about execution cost or failure behavior, but the essential calling 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?

Schema description coverage is 0%, so the description must compensate, and it does: timeline is documented as a full object, a JSON string, or a path to a .json file, with an inline example and the image-overlay schema, and output_path is explained as auto-generated when omitted. Only minor gaps remain (no width/height/export defaults).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource ('Execute a full timeline-based edit from a JSON specification') and enumerates what the timeline covers (clips, audio, text/image overlays, transitions, export). It is clearly distinguishable from narrow siblings like video_trim or video_merge, though it never explicitly contrasts itself with video_workflow_render or video_composite_layers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: the reader infers this is the tool for multi-element timeline edits, and the 'sequence shortcut' section implicitly signals the simple multi-clip case. There is no explicit when-to-use/when-not or named alternative for overlapping siblings such as video_merge or video_composite_layers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_edit_sessionCInspect

Conversational edit session. Step with input_path measures real QC (N6).

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
pathYes
notesNo
scoreNo
actionYes
input_pathNo
step_actionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It discloses only that stepping with input_path performs real QC, without saying whether the session is stateful, what actions mutate state, what "N6" means, or what persistence/auth is required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and front-loaded, but at two sentences it is under-specified rather than concise. The opaque "(N6)" token consumes space without conveying meaning an agent can act on.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but for a 7-parameter, 0%-coverage, annotation-free session tool the description leaves the core contract (what a session is, what actions do, how steps measure QC) unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 7 parameters, so the description must compensate and does not: only input_path is referenced (and only cryptically), while action, path, step_action, goal, notes, and score are entirely unexplained.

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?

"Conversational edit session" essentially restates the tool name (video_edit_session) without saying what the session does, what gets edited, or what actions are available. It gives an agent almost no basis for distinguishing it from the many video_edit/video_* 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 clause "Step with input_path measures real QC (N6)" hints at one usage mode but never states when to use this tool versus alternatives like video_edit, video_edit_session siblings, or video_qc_*. No prerequisites 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.

video_estimate_operationCInspect

Dry-run local wall-time / cost-unit estimate (not cloud pricing).

ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
complexityNo
duration_secondsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry behavioral disclosure; it does state this is a dry-run and local, not cloud pricing, which signals non-execution. It omits whether the operation is actually executed, authorization needs, accuracy caveats, rate limits, or what the cost unit represents. Partial 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 a single front-loaded sentence with no filler, and the key qualifiers (dry-run, local, not cloud pricing) are placed early. It is efficient, though its terseness may be under-specification rather than optimal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter tool with 0% schema description coverage and no annotations, the one-sentence description is missing critical parameter semantics and behavioral details. Output schema exists, so return values needn't be explained, but an agent still lacks enough to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for three parameters, so the description must compensate; it mentions no parameter names, units, or allowed values. 'operation', 'duration_seconds', and 'complexity' are left completely unexplained in both schema and description, making correct invocation difficult.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 tool's function as a dry-run local wall-time/cost-unit estimate and explicitly excludes cloud pricing, which is a meaningful scope boundary. However, it never names the video operation resource or differentiates from siblings like video_cost_ledger or video_benchmark_run beyond the pricing note. Clear purpose but incomplete 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 parenthetical 'not cloud pricing' gives a when-not boundary, implying use for local dry-run estimates rather than cloud cost calculations. It does not state when to choose this over video_cost_ledger, video_benchmark_run, or other estimate/planning tools, nor any prerequisites. Implied usage only.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_exportExport video for deliveryA
Destructive
Inspect

Re-encode an existing video for final delivery using a quality preset and output format. Use this for publishing-ready renders; use video_convert when the main goal is container/codec conversion. The source video is read only and a new output file is produced.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoOutput format for delivery. Supported values are mp4, webm, gif, and mov.mp4
qualityNoDelivery quality preset: low, medium, high, or ultra.high
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
c2pa_manifest_pathNoOptional C2PA manifest definition JSON to sign the final mp4 export.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=true, and the description usefully confirms the source is read-only with a new output produced. However, it omits the single most important destructive vector — that a supplied output_path may overwrite an existing file — which is exactly what the destructiveHint is warning about. Good supplementary context, but the key risk is left to 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?

Three tight sentences, front-loaded with the action, then the disambiguation, then the read-only/output guarantee. Nothing redundant and no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With five fully described parameters, an output schema, and safety annotations, the description covers action, routing, and read-only safety adequately. It could mention the overwrite behavior and C2PA signing capability, but those are covered by structured fields, so it is essentially complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so format, quality, input_path, output_path, and c2pa_manifest_path are all documented in the schema already. The description alludes to quality preset and output format but adds no format/enum or path semantics beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (re-encode for delivery) plus the resource and the controlling inputs (quality preset, output format). It explicitly distinguishes itself from the nearest sibling, video_convert, so an agent can choose between them without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when-to-use (publishing-ready renders) and a named alternative with the condition that selects it (video_convert for container/codec conversion). This is the strongest form of routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_export_framesBInspect

Export frames from a video as individual images.

Args: input_path: Absolute path to the input video. output_dir: Directory for extracted frames. Auto-generated if omitted. fps: Frames per second to extract (1.0 = 1 frame per second, default 1.0). format: Output image format (jpg or png, default jpg).

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNo
formatNojpg
input_pathYes
output_dirNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It notes that output_dir is auto-generated if omitted, which is useful, but omits whether existing files are overwritten, whether directories are created, error conditions, or file-naming behavior for a tool that writes image files.

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 first sentence front-loads the purpose, followed by a clear Args block. It is compact and every line contributes parameter semantics without filler, though the docstring style is functional rather than polished.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. The description covers purpose and all parameters adequately for a simple export tool, but given the absence of annotations it leaves behavioral gaps around file overwriting, directory creation, and when to prefer this over similar siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It documents all four parameters, including that input_path must be absolute, that output_dir defaults to auto-generation, that fps is a float with default 1.0, and that format accepts jpg or png with default jpg. This adds substantial meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: exporting frames from a video as individual images. This distinguishes it implicitly from single-frame siblings like video_extract_frame, but it never names or contrasts those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists arguments but gives no guidance on when to use this tool versus alternatives such as video_extract_frame, video_thumbnail, or video_export. The agent must infer usage entirely from the name and parameter list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_extract_audioBInspect

Extract the audio track from a video file.

Args: input_path: Absolute path to the input video. output_path: Where to save the audio file. Auto-generated if omitted. format: Audio format (mp3, aac, wav, ogg, flac).

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNomp3
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden, and it says nothing about overwrite behavior when output_path already exists, whether the video stream is re-encoded or copied, quality/bitrate defaults, or failure modes on unsupported containers. The only tacit signal is that omitting output_path auto-generates a destination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose sentence is front-loaded and the per-argument list is compact and scannable with no filler. The only mild redundancy is restating the tool's subject in the first argument line.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be documented, and all three parameters are addressed. What is missing for a file-writing tool with zero annotations is any statement about side effects, overwrite semantics, or supported input containers — enough to call it adequately but not fully 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?

Schema description coverage is 0%, so the description must compensate and largely does: it explains input_path must be absolute, that output_path is auto-generated when omitted, and it enumerates the accepted format values (mp3, aac, wav, ogg, flac) — information the schema does not carry via an enum. It still omits defaults and whether format is inferred from output_path when both are given.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Extract the audio track from a video file'), which is unambiguous and clearly distinct from additive siblings like video_add_audio or video_mix_audio. However, it never explicitly differentiates itself from the nearest sibling, video_ai_stem_separation, which also pulls audio out of a video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no named alternative among the many audio siblings (video_mix_audio, video_normalize_audio, video_ai_stem_separation). The agent must infer selection purely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_extract_frameAInspect

Extract a frame using the same sampling as CLI and Python frame extraction.

Omitted timestamps use smart thumbnail selection when available, falling back to 10% of the clip duration. Pass 0 explicitly to extract the first frame.

Args: input_path: Absolute path to the video. timestamp: Explicit time in seconds, or None for automatic sampling. output_path: Where to save the frame. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
timestampNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does disclose useful behavior: smart thumbnail selection with a 10% fallback and explicit 0 for first frame. It omits whether existing output_path files are overwritten, format of the saved frame, and any permission 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and the default-sampling rule before the Args block. Sentences are compact and each carries information, though the Args section is largely a restatement of parameter names.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the defaults are covered. Still, for a 3-param tool with 0% schema coverage and no annotations, it lacks sibling disambiguation and any note on overwrite/error behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it largely does: input_path is an absolute path, timestamp is seconds or None for automatic sampling, and output_path is auto-generated if omitted. The units and None semantics are clarified beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Extract a frame') and adds meaningful scope detail about which sampling method is used. However, it never names or distinguishes itself from close siblings like video_thumbnail, video_seek_frame, or video_export_frames, so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explains the default behavior when timestamp is omitted and the special case of passing 0 for the first frame, which is genuine usage guidance. But there is no when-to-use-this-vs-alternatives guidance against the several sibling tools that also surface frames.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_fadeAdd video fadeA
Destructive
Inspect

Render fade-in and/or fade-out effects onto an existing video without modifying the source file. Use fade_in for a fade from black at the start and fade_out for a fade to black at the end; output_path is created or overwritten.

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNoOptional FFmpeg CRF override from 0 to 51, where lower means higher quality.
presetNoOptional FFmpeg encoding preset: ultrafast, fast, medium, slow, or veryslow.
fade_inNoNon-negative fade-in duration in seconds from black at the start.
fade_outNoNon-negative fade-out duration in seconds to black at the end.
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false; the description usefully reconciles this by clarifying the source file is read-only while output_path is created or overwritten, which is exactly the context an agent needs to understand what is destroyed. It stops short of noting defaults or the no-op case when both durations are 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?

Two sentences, front-loaded with the non-destructive scoping fact, then the parameter mapping. No filler and nothing redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be described, and the description covers the source-preservation and output-overwrite behaviors. It omits minor but relevant details such as where an auto-generated output path lands and what happens when both fade durations default to 0.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations 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 is already documented, and the description's fade_in/fade_out explanation largely restates the schema text. Baseline 3 applies since the schema does the heavy lifting and the description adds no format or edge-case 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 (render) and resource (fade-in/fade-out effects) applied to an existing video, and adds the key scoping fact that the source file is not modified. An agent can distinguish this from transition_* or effect_* siblings without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains which parameter produces which effect ('fade_in for a fade from black at the start'), which implies usage, but it never states when to choose this tool over related siblings like transition_glitch or effect_vignette, nor any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_filterBInspect

Apply a visual filter to a video.

Common presets: - blur: params={"radius": 5, "strength": 1} - color_preset: params={"preset": "warm"} (warm, cool, vintage, cinematic, noir)

Args: input_path: Absolute path to the input video. filter_type: Filter type (blur, sharpen, brightness, contrast, saturation," " grayscale, sepia, invert, vignette, color_preset, denoise," " deinterlace, ken_burns, reverb, compressor, pitch_shift," " noise_reduction). params: Optional filter parameters (e.g. radius for blur, preset for color_preset). output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow).

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNo
paramsNo
presetNo
input_pathYes
filter_typeYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and partially meets it: it discloses crf semantics (0-51, lower = better quality, default 23), the preset options, and that output_path is auto-generated when omitted. It says nothing about overwrite behavior, permissions, processing cost, or whether the input is modified in place.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the one-line purpose, then concrete presets, then a clean Args block. The embedded escaped-newline list of filter types is a bit clunky but every section carries usable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema, so return values need not be explained, and the parameter documentation is thorough for a 0%-coverage schema. What remains missing is routing guidance relative to the many overlapping filter/effect siblings and any note on failure modes for invalid filter_type 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 0%, so the description must compensate, and it largely does: every one of the six parameters is explained, including the 'absolute path' requirement, the full filter_type enumeration, example params objects, and crf range/default. The only soft spot is the free-form params object, for which only two example keys are illustrated.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Apply a visual filter to a video') and enumerates the exact filter types supported, so the agent knows the scope. It does not explicitly differentiate itself from visually adjacent siblings such as effect_vignette, glitch_*, or still_grade, which keeps it out of 5 territory.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use, when-not-to-use, or alternative guidance is given. The filter_type list implies the tool's domain but never says when to pick video_filter over effect_vignette, glitch_scanline_jitter, or video_ai_color_grade, all of which overlap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_find_momentsDInspect

Persist or query a revision-bound local semantic index.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNo
limitNo
embeddingNo
project_dirYes
revision_idYes
index_digestNo
min_confidenceNo
edit_project_idYes
selected_span_idsNo
semantic_artifactNo
selection_example_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It hints at a mutation ('persist') and a read ('query') against a revision-bound local index, but it does not disclose side effects, required permissions, persistence behavior, or what happens when index data is created or replaced.

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 short sentence, but it is under-specified rather than concise. It omits essential purpose and usage information, so its brevity does not help the agent invoke the tool correctly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-parameter tool with no annotations, this description is far too thin. Although an output schema exists, the agent still lacks basic information about what the tool does, how the required project/revision parameters interact, and how the optional semantic-index parameters change behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 11 parameters with 0% description coverage, and the description does not explain any of them. Key parameters such as text, embedding, index_digest, min_confidence, selected_span_ids, and semantic_artifact are left completely undefined for the agent.

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 says the tool can 'persist or query a revision-bound local semantic index,' but it never states that it finds video moments. The name suggests moment retrieval, while the text describes index persistence/query, and it does not distinguish this tool from siblings like video_semantic_query or video_semantic_timeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. It mentions two modes ('persist or query') but does not explain which mode is appropriate, what inputs trigger each, or when another semantic/video tool should be chosen instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_fix_design_issuesBInspect

Auto-fix design issues in a video.

Applies automatic fixes for brightness, contrast, saturation, and audio level issues.

Args: input_path: Absolute path to input video output_path: Absolute path for output (auto-generated if omitted)

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It says it applies automatic fixes and writes an output file, but does not disclose whether the source is modified, whether output is overwritten, what permissions or re-encoding are involved, or how 'design issues' are detected. For a mutation tool with zero annotation coverage, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded: the core behavior comes first, followed by a compact Args section. The Args block partly restates schema structure, but it remains useful given the 0% schema description coverage and does not bloat the 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?

An output schema exists, so return values need not be explained. However, for a mutation tool with no annotations and many siblings, the description lacks operational context such as overwrite behavior, fix scope, and how 'design issues' are determined, leaving it minimally sufficient rather than fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It documents both parameters, clarifying that input_path is an absolute path and that output_path is auto-generated if omitted, which adds meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('auto-fix design issues in a video') and enumerates the fix categories (brightness, contrast, saturation, audio level), making the purpose clear. However, it does not differentiate itself from close siblings like video_design_quality_check, video_ai_color_grade, or video_normalize_audio, so an agent still has to guess which fixer to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no when-to-use guidance, no prerequisites, and no alternatives. It never says when this tool is preferred over video_design_quality_check, video_ai_color_grade, or video_normalize_audio, leaving routing entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_generate_subtitlesBInspect

Generate SRT subtitles from text entries and optionally burn into video.

Args: entries: List of subtitle entries with keys: start (float), end (float), text (str). input_path: Absolute path to the input video. burn: If True, burn subtitles into the video (default False).

ParametersJSON Schema
NameRequiredDescriptionDefault
burnNo
entriesYes
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that burn is optional and defaults to False, which is useful, but says nothing about side effects: where the SRT is written, whether files are created, whether the input video is modified on burn, or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The primary purpose is front-loaded in the first sentence, followed by an Args block. Given the 0% schema coverage, the per-parameter detail earns its place rather than being redundant, though the block formatting is slightly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. Still, for a tool that generates a subtitle artifact (and can burn it into video), the description omits the output location and the effect of burn on the source file, leaving meaningful gaps for a 3-param generation tool with no annotations.

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 0%, so the description must compensate, and it does well: it documents all three params, including the internal structure of entries (start float, end float, text str), that input_path must be absolute, and that burn defaults to False. This adds real meaning beyond the empty 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?

States a specific verb and resource: 'Generate SRT subtitles from text entries and optionally burn into video.' This clearly conveys what the tool produces. However, it does not distinguish itself from close siblings like video_subtitles, video_subtitles_styled, or video_ai_transcribe, leaving the agent to infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance is provided, and no alternative sibling is named. With several subtitle-related siblings (video_subtitles, video_subtitles_styled, video_ai_transcribe), the agent receives no routing signal for choosing 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.

video_generative_planCInspect

Generative policy and spend-cap planning metadata (P4.1).

Eligibility never proves execution: this tree has no generation adapter.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNo
promptYes
providerNolocal
max_spend_usdNo
estimated_spend_usdNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, but it does add one genuinely useful trait: 'Eligibility never proves execution: this tree has no generation adapter,' which prevents an agent from mistaking this for an executing generator. It still omits whether the tool persists/writes a plan, whether it is read-only, and how the spend-cap is enforced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and the caveat sentence is front-loaded after the header phrase, but the extreme terseness tips into under-specification rather than efficiency. The '(P4.1)' fragment consumes space without conveying meaning to an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but this is a spend-cap governance tool with 5 params at 0% coverage and no annotations. Given its apparent complexity, the description is far too thin to let an agent invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for 5 parameters, so the description must compensate but largely does not. 'Spend-cap' loosely maps to max_spend_usd/estimated_spend_usd, yet prompt, model, and provider are left entirely unexplained and their interaction with the cap is unclear.

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 is a noun phrase ('Generative policy and spend-cap planning metadata') with no verb stating what the tool actually does. It restates the name (video_generative_plan) plus a vague 'planning metadata' gloss, and the 'P4.1' tag is opaque. An agent cannot confidently tell whether this creates a plan, reads a plan, or evaluates spend eligibility.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use guidance or naming of alternatives among the many planning/estimate siblings (video_estimate_operation, video_cost_ledger, video_composition_plan). The only directional note is the negative one that this tree has no generation adapter, which loosely hints it is not the tool for actual generation, but that is not a usage routing instruction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_hls_segmentBInspect

Segment a video into HLS (HTTP Live Streaming) format.

Args: input_path: Absolute path to the input video. output_dir: Directory to save segments. Auto-generated if omitted. segment_duration: Target segment duration in seconds (default 4). playlist_name: Name of the master playlist file. qualities: List of quality levels (e.g. ["low", "medium", "high"]).

ParametersJSON Schema
NameRequiredDescriptionDefault
qualitiesNo
input_pathYes
output_dirNo
playlist_nameNoplaylist.m3u8
segment_durationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It does disclose some useful behavior: output_dir is auto-generated if omitted, and segment_duration/playlist_name have defaults. However, it says nothing about writing files to disk, overwrite behavior, expected output artifacts (segments plus playlists), or resource implications of a multi-quality ladder.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in one sentence, followed by a tight Args list. Every line carries parameter information and there is no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and all five params are covered. What is missing is behavioral context for a file-producing mutation tool with no annotations: what artifacts appear on disk, whether existing output is overwritten, and how the quality ladder affects the result.

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 0%, so the description must compensate and largely does: all five parameters are explained, including that input_path must be absolute and that output_dir is auto-generated when omitted. The qualities example (['low','medium','high']) is helpful, though it doesn't explain what those labels map to (bitrate/resolution ladder).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 ('Segment a video into HLS (HTTP Live Streaming) format'), which is concrete and distinct from most siblings like video_convert or video_export. It does not, however, name or exclude any alternative tool, so an agent must infer that this is the HLS-specific packaging path rather than a general export.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance and no mention of alternatives such as video_export, video_convert, or video_preview. The agent is left to infer that this tool is for streaming-style segmented output, but nothing in the text confirms that or rules out the other export tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_hook_candidatesCInspect

Thumbnail + hook-title candidates for human pick (TE.2).

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo
topicYes
languageNoen

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full behavioral burden. It reveals that outputs are candidates for human pick, but says nothing about permissions, side effects, rate limits, or whether it generates files versus text. This is a significant gap for a tool with no structured behavioral metadata.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and front-loaded, but it is a fragment rather than a full sentence. The internal reference '(TE.2)' is unexplained jargon that adds noise for an external agent rather than value.

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 having an output schema, the description is too terse to fully orient an agent. It omits what 'hook-title' means, whether thumbnails are generated images or textual concepts, and any guidance on the required topic parameter. With no annotations and 0% parameter coverage, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for three parameters (topic, count, language), and the description does not mention any parameter. It provides no semantics beyond the parameter names themselves, failing to compensate for the missing 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 the resource clearly: thumbnail and hook-title candidates. It implies generation, though no verb is given. It does not distinguish this tool from siblings like video_thumbnail, but the purpose is understandable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 human pick' implies the tool is used when presenting options for human selection, but there is no explicit when-to-use, when-not-to-use, or alternative guidance. Usage 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.

video_infoAInspect

Probe a video file for metadata. Returns JSON {success, info:{duration, resolution, codec, fps, size, ...}}. Use before any edit to learn the source's dimensions and length. Pass input_path as the absolute path to the existing video.

Args: input_path: Absolute path to the video file.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the return payload shape and implies a read-only probe, but says nothing about failure behavior on missing/corrupt files, performance cost, or whether it works on remote URLs versus local paths only. Adequate but thin for a no-annotation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then return shape, then the usage cue, then the arg. The return-shape sentence is partly redundant given an output schema exists, but it is brief and the Args block is clean. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read tool with an output schema, the description covers purpose, return contract, call precondition, and usage timing. The remaining gap is sibling differentiation in a crowded metadata/analysis namespace, which the description does not address.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the single property has no description, so the description must compensate. It does: 'Pass input_path as the absolute path to the existing video' adds both the format constraint (absolute) and the precondition (file must exist), which the schema does not 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 verb and resource: 'Probe a video file for metadata'. That is unambiguous on its own, but it never distinguishes itself from close siblings like video_read_metadata, video_info_detailed, or video_inspect_temporal, so an agent facing those alternatives gets no disambiguation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete workflow cue: 'Use before any edit to learn the source's dimensions and length.' That tells the agent when to reach for it. It stops short of naming alternatives or exclusions (e.g. when to prefer video_info_detailed), so it is clear context without routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_info_detailedAInspect

Get extended video metadata.

Returns detailed video information including scene change detection and dominant colors.

Args: input_path: Absolute path to input video.

Returns: Dict with duration, fps, resolution, bitrate, has_audio, scene_changes.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It usefully enumerates what is returned (duration, fps, resolution, bitrate, has_audio, scene_changes), which implies a safe read-only operation, but it says nothing about cost, timeout, or failure modes on unreadable/unsupported files.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then Args/Returns blocks. Slight redundancy between 'Get extended video metadata' and 'Returns detailed video information', and the Returns block partially repeats the output schema, but overall it is tight 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?

An output schema exists, so return-value documentation is technically redundant, but the description is otherwise complete for a one-parameter read tool: purpose, input semantics, and expected fields are all covered. Only the sibling-routing information 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 0% and the single parameter has no schema description, so the description must compensate. It does, specifying that input_path is an 'Absolute path to input video', which adds the non-obvious absolute-path constraint beyond the bare string 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?

States a specific verb and resource ('Get extended video metadata') and names concrete distinguishing capabilities (scene change detection, dominant colors). The 'detailed' variant is inferable against the sibling video_info, but the description never names video_info explicitly, so sibling differentiation relies on the name alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the 'extended/detailed' framing suggests this is the richer alternative to video_info, but there is no explicit when-to-use, when-not, or named alternative. An agent must infer the choice 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.

video_ingestCInspect

Ingest immutable source bytes into an existing or new private project.

ParametersJSON Schema
NameRequiredDescriptionDefault
lineageNo
project_dirYes
source_pathYes
usage_rights_statusNounknown
usage_rights_evidence_refNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It does disclose one trait – the source bytes are 'immutable' – but omits whether bytes are copied or moved, whether the operation is idempotent, what permissions are needed, and what happens with usage-rights metadata on re-ingest.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no wasted words, which is structurally clean. But for a 5-parameter ingest tool the brevity tips into under-specification rather than disciplined conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema removes the need to explain returns. However, a mutation-style tool with no annotations and 0% parameter coverage is not adequately described by one sentence; key inputs and post-ingest behavior remain unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 5 parameters, so the description must compensate and does not. It says nothing about project_dir, source_path, lineage, usage_rights_status, or usage_rights_evidence_ref, leaving every parameter undocumented in both schema and prose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Ingest') and resource ('immutable source bytes') with a destination ('existing or new private project'), which is clearer than a bare name restatement. However, it does not distinguish this from likely siblings such as video_project_create or video_init_project, leaving the agent to infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives. The phrase 'existing or new private project' hints that it may also create a project, but this is not framed as a selection condition against the many project/init siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_init_projectBInspect

Scaffold a local Kinocut project directory (media/out/receipts + optional Cutfile).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
pathYes
with_cutfileNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It does disclose the concrete artifacts created (media/out/receipts plus an optional Cutfile) and that the project is local on disk, which is useful. It stops short of stating whether an existing directory is overwritten or errored on, filesystem permissions, or idempotency — the key behavioral questions for a scaffolding/mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that itemizes the created structure with zero filler. Optimal length for the information conveyed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, but for a filesystem-mutating init tool with no annotations and 0% parameter coverage the definition is thin: no overwrite/idempotency behavior, no distinction from video_project_create, and no parameter detail. It is not sufficient for an agent to call confidently in ambiguous cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It covers only the with_cutfile parameter implicitly via 'optional Cutfile'; the required path and the name parameter are left to the schema's bare titles with no format, semantics, or defaulting guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (scaffold) and resource (local Kinocut project directory) and even itemizes the contents (media/out/receipts, optional Cutfile). It does not, however, distinguish itself from the closely named sibling video_project_create or hyperframes_init, so an agent could still hesitate between them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance, no prerequisites, and no pointer to the obvious alternatives (video_project_create, hyperframes_init). The agent must infer usage entirely from the name and one sentence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_inspect_temporalCInspect

Build and persist the complete deterministic temporal evidence package.

ParametersJSON Schema
NameRequiredDescriptionDefault
asset_idYes
project_dirYes
declared_regionsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses that the tool builds and persists something, implying a write operation, but it says nothing about what gets created or overwritten, where persistence occurs, idempotency, required permissions, or how 'deterministic' behavior is enforced.

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?

There is only one short sentence, which is concise but severely under-specified. For a tool with three parameters, no annotations, and a complex-sounding purpose, a single vague sentence does not earn its place because it omits nearly all operational 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?

An output schema exists, so return values need not be described. However, with no annotations, 0% schema description coverage, and no usage or behavioral detail, the description leaves critical gaps for an agent trying to call this tool correctly. It is only marginally complete because it at least implies a write/package operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not mention any of the three parameters (project_dir, asset_id, declared_regions). An agent gets no semantic meaning for required parameters or the optional region list beyond the bare names.

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 states a verb and loosely identifies a resource: 'Build and persist ... temporal evidence package.' However, it does not explain what temporal evidence is, what is inspected, or how this differs from the many sibling inspection tools such as video_inspect, video_preflight, or video_verdict. The purpose is indicated but vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 contains no when-to-use guidance, no prerequisites, and no mention of alternatives among the extensive sibling tool list. An agent must infer entirely from the name that this tool is appropriate for temporal inspection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_intentCInspect

Route a semantic intent verb to a plan (does not silently mutate media).

Optional goal compiles a reviewable cutfile (N1) without rendering.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
verbYes
paramsNo
sourceNo
list_verbsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it does disclose two real behavioral traits: no silent media mutation, and that a supplied goal produces a reviewable cutfile without rendering. That is genuine side-effect transparency. It still omits auth/permission needs, whether routing has any side effects at all, and what 'N1' denotes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the routing purpose and the safety caveat. Tight, though 'N1' is jargon that costs a little clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, but for a 5-parameter, annotation-free routing tool the description is far too thin: no verb vocabulary, no explanation of how params/source feed the plan, and no guidance on list_verbs discovery.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 5 parameters, so the description must compensate and does not. Only 'goal' is explained (compiles a cutfile without rendering); verb, params, source, and list_verbs are never mentioned, leaving the core input of a routing tool undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('route a semantic intent verb to a plan') and distinguishes itself from mutating siblings via the parenthetical. But 'plan' is left undefined and nothing separates it from the many other planning tools in the sibling list (video_generative_plan, video_workflow_plan, video_timeline_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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The '(does not silently mutate media)' clause implies this is the non-destructive entry point, and the presence of a list_verbs parameter hints at a discovery workflow. However, no explicit when-to-use, when-not, or named alternative is given, so the agent must infer the routing role.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_language_coverageCInspect

Honest per-surface language coverage for transcribe/translate/dub.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing: it does not say whether this is a read-only query, whether it hits a remote service, or what 'honest' implies about the reliability of sibling tools' language claims. With zero-param and an output schema the exposure is limited, but the safety profile remains 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?

A single tight sentence with no padding and the key scoping terms front-loaded. It is appropriately sized, though 'honest' is a word that could be dropped in favor of concrete scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, the description need not enumerate return fields, so the bar is low. Still, it never explains what a 'surface' is or what form the coverage report takes, leaving ambiguity that the schema cannot resolve for a caller deciding whether to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes no parameters, so there is nothing for the description to disambiguate beyond what the empty schema already conveys; baseline 4 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 names the resource (language coverage) and scopes it to three surfaces (transcribe/translate/dub), which does distinguish it from most siblings. However, it is a noun phrase with no clear verb — an agent cannot tell whether it reports, configures, or validates coverage. 'Honest' is editorializing rather than clarifying.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No statement of when to call this versus alternatives such as video_info, video_dub_plan, or video_ai_transcribe. No prerequisites or triggering context are given, leaving the agent to infer the use case entirely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_layout_gridBInspect

Create grid-based multi-video layout.

Arranges multiple videos in a grid pattern (2x2, 3x1, etc.).

Args: clips: List of absolute paths to video files. layout: Grid layout (2x2, 3x1, 1x3, 2x3). output_path: Absolute path for output video. gap: Pixels between clips. Default 10. padding: Padding around grid. Default 20. background: Background color hex. Default #141414.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
gapNo
clipsYes
layoutYes
paddingNo
backgroundNo#141414
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It does disclose default values for gap, padding, and background, and states the return shape ('Dict with success status and output_path'), which adds real value. But it says nothing about failure behavior, overwrite handling for output_path, permission needs, or what happens with mismatched clip dimensions.

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?

Well-structured with a one-line summary up front followed by Args and Returns sections. Every line earns its place, and the core purpose is front-loaded. Slight redundancy between the title sentence and 'Arranges multiple videos in a grid pattern'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-param creation tool, the description covers inputs thoroughly and an output schema exists so return details needn't be elaborated. The remaining gap is behavioral: no error or overwrite semantics, which matters for a tool that writes an output file, but the definition is otherwise complete enough to invoke 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 description coverage is 0%, so the description must compensate fully, and it largely does: all six parameters are documented, including valid layout strings (2x2, 3x1, 1x3, 2x3), units (pixels), and color format (hex). It adds meaningful semantics beyond the bare schema, though it doesn't clarify what 'layout' values are legal outside the examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Create) and resource (grid-based multi-video layout), reinforced by 'Arranges multiple videos in a grid pattern'. An agent can understand the operation without opening the schema. However, it never distinguishes itself from the sibling video_layout_pip, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no routing to alternatives such as video_layout_pip or video_split_screen. The meaning of the tool is inferable from its name, but the description itself provides no usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_layout_pipBInspect

Picture-in-picture overlay.

Overlay a smaller video on top of a main video.

Args: main_path: Absolute path to main video. pip_path: Absolute path to picture-in-picture video. output_path: Absolute path for output video. position: Position (top-left, top-right, bottom-left, bottom-right). Default bottom-right. size: PIP size as fraction of main. Default 0.25. margin: Margin from edges in pixels. Default 20. border: Add border around PIP. Default true. border_color: Border color hex. Default #CCFF00. border_width: Border width in pixels. Default 2. rounded_corners: Apply rounded corners to PIP. Default true.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
sizeNo
borderNo
marginNo
pip_pathYes
positionNobottom-right
main_pathYes
output_pathYes
border_colorNo#CCFF00
border_widthNo
rounded_cornersNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses the defaults for every optional parameter and that the result is a dict with success status and output_path, which is useful. But it omits error/overwrite behavior for the output path, codec/quality handling, and any runtime constraints on a mutation tool that writes a new file.

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 summary is front-loaded and the Args block is one line per parameter with no fluff, so it scans well. The trailing 'Returns: Dict with success status and output_path.' is redundant given an output schema exists, a small 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 10-parameter mutation tool with no annotations, the definition covers parameters and the return shape adequately, and the output schema removes the need to explain return values. Gaps remain around sibling differentiation, error/overwrite semantics, and any prerequisites (e.g., codec/format expectations for input paths), which are meaningful for a write operation.

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 0%, so the description must compensate, and it does: it gives semantics for all ten params (size as a fraction of main, margin in pixels, position with the four allowed corner values, border_color as hex, border_width in pixels). The position enum values and the size unit are genuinely absent from the schema and are supplied only here. It loses a point because some entries ('Border color hex') are minimal and the defaults merely restate structured data.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Overlay a smaller video on top of a main video' (picture-in-picture overlay). An agent can immediately tell what it produces. However, it does not distinguish itself from close siblings like video_overlay, video_composite_layers, or video_layout_grid, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance. With several overlapping overlay/composite/layout siblings in the toolset, the definition never states which scenario selects this tool over those alternatives, leaving the agent to infer routing from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_learning_reportCInspect

Project a learning report (verdicts, defects, costs, recipes) from records.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Project ... from records' weakly implies a derived, read-only aggregation, but the description never states whether the operation is safe/non-destructive, what it reads, whether it requires an existing project, or whether it writes anything.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence with the resource and the output contents front-loaded; nothing is padded. It is perhaps too terse for the ambiguity of its terms, but structurally it wastes no words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but with zero annotations, zero parameter documentation, and undefined key terms ('learning report', 'records'), the definition leaves too much for an agent to infer before calling a tool whose input is a required directory.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single parameter 'project_dir'. The phrase 'from records' hints that project_dir points at a directory of records, but no path format, expected contents, or failure behavior is given, so the description does not compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

It names a verb ('project') and a resource ('learning report') and enumerates the report's contents (verdicts, defects, costs, recipes), which gives the agent a decent sense of output. However, 'project' is ambiguous and 'learning report' / 'records' are undefined jargon, and it does not distinguish itself from overlapping siblings such as video_cost_ledger, video_recipe_capture, or video_verdict.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 the many sibling report/ledger tools, nor any stated prerequisites or sequencing. The agent must infer usage entirely from the name and the parenthetical content list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_luma_keyBInspect

Mask out dark regions based on luminance (brightness).

Args: input_path: Absolute path to the input video. threshold: Luminance threshold (0.0-1.0). Pixels darker than this become transparent. output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
thresholdNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully concretizes the effect ('pixels darker than this become transparent') and implies a non-destructive new output file ('where to save the output'). However, it omits output format/codec, whether the source is preserved, and any permission or performance notes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the purpose in one sentence, then a compact Args block. Every line earns its place with no filler, though the bare 'Args:' formatting is a little list-like rather than a prose aid.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. For a 3-parameter transform with 0% schema coverage, the description adequately covers both the core effect and every parameter. The only meaningful gap is the absence of alternative-routing guidance, which is minor for correctness.

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 0%, so the description must compensate, and it largely does: it documents all three parameters meaningfully (absolute input path, threshold semantics with 0.0-1.0 range and dark-becomes-transparent effect, and output auto-generation when omitted). This adds real value beyond the undocumented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource+mechanism: 'Mask out dark regions based on luminance (brightness).' An agent knows exactly what transformation this performs. It does not, however, differentiate itself from its obvious sibling video_chroma_key (color-based keying), so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description contains no when-to-use guidance and never mentions the natural alternative video_chroma_key. It only lists arguments, leaving the agent to infer that this is the luminance-based keyer rather than the color-based one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_mergeMerge video clipsA
Destructive
Inspect

Concatenate two or more existing video clips into one rendered output file. Returns JSON {success, output_path}. Use to join ordered clips into a single video. Pass clips as an ordered list of absolute paths (at least two); output is auto-named or written to output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
clipsYesOrdered absolute paths to existing video clips. Provide at least two clips; inputs are validated and never modified.
transitionNoOptional xfade transition applied to every clip boundary, such as fade, dissolve, wipeleft, wiperight, slideleft, or slideright.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
transitionsNoOptional per-boundary xfade transitions. Overrides transition when provided.
transition_durationNoDuration in seconds for each transition; must fit inside neighboring clips.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false and idempotentHint=false, so the mutation/overwrite risk profile is covered structurally. The description adds that this produces a 'rendered output file' and echoes the return shape, but it never states the overwrite behavior in its own text (that lives in the schema) or any processing/auth caveats. Some added value over 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the core action and the return shape. The third sentence mildly restates the first ('join ordered clips into a single video'), a small redundancy, but overall tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 destructive/idempotency hints carried by annotations, the description only needs to frame the operation and input contract, which it does. Missing are explicit overwrite warnings and transition-vs-transitions precedence, but those are covered by the schema field descriptions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all five parameters (clips, transition, output_path, transitions, transition_duration) are already documented. The description only restates the clips minimum of two and the output_path/auto-name behavior, adding no semantics the schema lacks. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Concatenate two or more existing video clips into one rendered output file') and pins the output shape, which cleanly separates it from compositing/editing siblings like video_composite_layers or video_edit. It stops short of naming a sibling it could be confused with, so it is clear but not fully 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?

'Use to join ordered clips into a single video' gives implied usage context and an ordering constraint, but there is no explicit when-not guidance and no alternative named among the many adjacent video tools (video_edit, video_workflow_render, video_create_from_images). Adequate minimum, clear gaps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_metric_qcCInspect

Offline metric floor (duration/black/loudness) — fail-closed, no invented values.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
max_black_ratioNo
min_duration_secondsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses that the check is fail-closed and does not invent values, which is meaningful failure semantics. However, it omits other important behavioral context such as permissions, error behavior, and whether it is read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence with no filler, and the key behavioral constraint is front-loaded. It is appropriately brief for a terse definition, though the extreme brevity contributes to gaps in other dimensions.

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 tool with three parameters, 0% schema description coverage, and no annotations, the description is under-specified. It mentions the metric areas and a fail-closed policy, but does not explain parameter meanings or when to invoke it, leaving the agent with insufficient context for reliable selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for parameter meaning. It names duration and black metrics, but does not explain max_black_ratio, min_duration_seconds, their defaults, or how input_path is used. Parameter semantics remain largely undocumented.

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 identifies the tool as an offline metric floor check for duration, black, and loudness, which gives a concrete resource and metric set. However, it lacks a clear verb and does not distinguish itself from the many other video QC and quality-check siblings. The purpose is inferable but not sharply stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives such as video_quality_check, video_qc_vision, or video_verdict. The phrase 'Offline metric floor' implies a QC context, but no conditions, exclusions, or sibling comparisons are provided. An agent must infer usage entirely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_mix_audioAInspect

Mix timed sounds with one AAC encode and stream-copy the primary picture.

Sounds is an array or JSON array of objects with path, start (seconds), volume (linear gain), fade_in and fade_out (seconds). The picture duration and relative source-audio timing are preserved. Tracks sum without loudness normalization and may clip. Existing audio stays unless keep_source is false. The synchronous media engine runs in a worker thread; no background job or governed audio-bed receipt is created. Listen before publishing.

ParametersJSON Schema
NameRequiredDescriptionDefault
soundsYes
input_pathYes
keep_sourceNo
output_pathNo
audio_bitrateNo256k

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations the description carries the full burden and does so well: it discloses the encode strategy (single AAC encode, stream-copy picture), that tracks sum without loudness normalization and may clip, that source audio is retained unless keep_source=false, that duration and relative timing are preserved, and that execution is synchronous in a worker thread with no background job or governed audio-bed receipt.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core operation, then parameter format, then behavioral caveats. Every sentence carries information (clipping warning, keep_source, threading model), though the 'no governed audio-bed receipt' clause is slightly opaque and the density is high.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, and the description covers the mutation semantics, audio mixing behavior, and execution model. Only the path/bitrate parameters remain unaddressed, which is a minor gap for an otherwise complete picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It documents the complex 'sounds' parameter thoroughly (path, start in seconds, volume as linear gain, fade_in/fade_out in seconds) and explains keep_source behavior, but input_path, output_path, and audio_bitrate are left unexplained beyond what their names imply.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (mix) and resource (timed sounds into the primary picture) plus the encoding strategy ('one AAC encode and stream-copy the primary picture'), which differentiates it from a plain re-encode. It does not name a specific sibling (e.g. video_add_audio or video_add_generated_audio) to contrast against, so sibling differentiation is implied rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use/when-not guidance and no alternatives named, despite many overlapping siblings (video_add_audio, video_add_generated_audio, video_normalize_audio, sound_mix_render). The closing 'Listen before publishing' hints at a QA context but is not a usage rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_mograph_countBInspect

Generate animated number counter video.

Creates a standalone video of an animated counting number.

Args: start: Starting number. end: Ending number. duration: Animation duration in seconds. output_path: Absolute path for output video. style: Optional style dict with font, size, color, glow. fps: Frame rate. Default 30.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYes
fpsNo
startYes
styleNo
durationYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It usefully states the output is a standalone video written to an absolute path and that the return is a dict with success and output_path. It omits behaviorally important traits: whether an existing file at output_path is overwritten, whether the directory must pre-exist, and roughly how long rendering takes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose sentence followed by a compact Args/Returns block; every line carries information. Slightly verbose in restating the purpose twice, but no wasted sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the brief Returns note is acceptable rather than required. However, for a file-writing tool with zero annotation coverage, the description should disclose overwrite semantics and any path/directory constraints, which it does not.

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 0%, so the description must compensate, and it largely does: it explains all six parameters, including that duration is in seconds, that style is an optional dict containing font/size/color/glow, and that fps defaults to 30. The style sub-keys are the only detail that goes beyond the schema's flat object, which is genuinely additive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource: 'Generate animated number counter video' and 'Creates a standalone video of an animated counting number.' An agent knows exactly what artifact this produces. It does not, however, distinguish itself from near-siblings like video_mograph_progress or video_text_animated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of the closest alternatives (video_mograph_progress, video_text_animated). The agent is left to infer selection 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.

video_mograph_progressBInspect

Generate progress bar / loading animation.

Creates a standalone progress animation video.

Args: duration: Animation duration in seconds. output_path: Absolute path for output video. style: Progress style (bar, circle, dots). Default bar. color: Progress color hex. Default #CCFF00. track_color: Background track color hex. Default #333333. fps: Frame rate. Default 30.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNo
colorNo#CCFF00
styleNobar
durationYes
output_pathYes
track_colorNo#333333

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It does disclose that the tool writes a video file to an absolute output_path and returns a success status, which is meaningful side-effect information. However it says nothing about permissions, overwrite behavior, or runtime cost.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in the first sentence and the Args/Returns block is compact and scannable. The redundant second sentence ('Creates a standalone progress animation video') restates the first and is minor 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?

An output schema exists, so not explaining the return payload is acceptable. The description covers inputs and purpose, but for a generator tool with no annotations it omits any indication of how it relates to the other mograph/effect tools, leaving the agent without routing 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?

Schema description coverage is 0%, so the description must compensate, and it largely does: all six parameters are documented with meaning, and style lists its valid values (bar, circle, dots). Defaults are also restated. It adds little on units/format for output_path beyond 'absolute path', so 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 gives a specific verb and resource: 'Generate progress bar / loading animation' and 'Creates a standalone progress animation video.' An agent can tell this produces a self-contained animation clip. It stops short of 5 because it never distinguishes itself from the very close sibling video_mograph_count.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no reference to the neighboring video_mograph_count tool. The agent must infer usage purely from the name and the arg list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_normalize_audioAInspect

Normalize audio loudness to a target LUFS level.

Common presets: -16 (YouTube), -23 (EBU R128/broadcast), -14 (Apple/Spotify).

Args: input_path: Absolute path to the input video. target_lufs: Target integrated loudness in LUFS (default -16 for YouTube). output_path: Where to save the output. Auto-generated if omitted. lra: Target loudness range in LU. true_peak_dbtp: Maximum true peak in dBTP; omitted uses the engine default. fade_seconds: Boundary fade duration; omitted uses the engine default.

ParametersJSON Schema
NameRequiredDescriptionDefault
lraNo
input_pathYes
output_pathNo
target_lufsNo
fade_secondsNo
true_peak_dbtpNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It usefully notes that output_path is auto-generated if omitted and that several params fall back to 'engine defaults', which implies a non-in-place write. However, it never states whether the video stream is preserved/re-encoded, whether the input is modified, or how the result 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded one-line purpose followed by a compact, well-formatted Args block where each line earns its place. Slightly list-heavy, but no redundant or filler sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be explained, and the description fills the parameter gap left by 0% schema coverage. The remaining omission is stream/format handling (re-encode vs copy) and any permission or overwrite caveats for a 6-param 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?

Schema description coverage is 0%, so the description must compensate, and it does: it documents all six parameters with meaning beyond the schema (absolute input path, LUFS units and platform presets for target_lufs, auto-generated output, LRA in LU, true peak in dBTP, boundary fade duration). It only stops short of explaining valid ranges or the default LRA of 11.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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+effect: 'Normalize audio loudness to a target LUFS level.' This is unambiguously distinct from the neighboring audio tools (video_mix_audio, video_duck_audio, video_audio_bed, sound_master_render), so an agent can select it without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The preset line ('-16 (YouTube), -23 (EBU R128/broadcast), -14 (Apple/Spotify)') gives strong guidance for choosing target_lufs, but there is no when-to-use/when-not guidance relative to the sibling loudness and mix tools (e.g., sound_qa_loudness, video_mix_audio). Usage is implied via the loudness presets only.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_otio_exportCInspect

Export Timeline IR to simplified OTIO JSON (P4.2).

ParametersJSON Schema
NameRequiredDescriptionDefault
timelineYes
output_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It hints that the emitted OTIO is 'simplified' (i.e., lossy relative to full OTIO), which is useful, but it never says what is stripped, whether output_path is overwritten, whether parent directories are created, or what errors look like. For a tool that writes to disk, 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with no wasted clauses, which is structurally clean. However, the '(P4.2)' tag is noise and the extreme brevity leaves the required parameter and behavioral gaps unaddressed, so it is under-specified rather than truly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value explanation is not required. But for a two-required-parameter, nested-object, disk-writing tool with no annotations and 0% schema coverage, the description omits everything an agent needs to call it correctly (input shape, path semantics, lossiness, failure modes).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate and does not. Neither 'timeline' (what shape/format of Timeline IR is accepted?) nor 'output_path' (file vs directory, extension handling, overwrite behavior) is clarified beyond the property titles. The nested-object 'timeline' parameter is especially opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Export) and resource (Timeline IR to simplified OTIO JSON), so the agent knows the operation is a serialization/export step. The sibling video_otio_import covers the inverse direction, but the description never names it or draws the distinction explicitly. The '(P4.2)' suffix is internal jargon that adds nothing for tool selection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus video_otio_import or the other export tools (video_export, video_project_recipe_export). Usage can only be inferred from the name. No prerequisites or context about what 'Timeline IR' must already exist are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_otio_importCInspect

Import simplified OTIO JSON to Timeline IR (P4.2).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden, yet it discloses nothing about the write/mutation semantics: whether importing overwrites an existing Timeline IR, what happens on malformed OTIO, or what permissions are needed. 'Import' implies state change but the consequences are unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence, front-loaded with the verb, which is structurally sound. However it is under-specified rather than genuinely concise, and the '(P4.2)' token spends space on an internal reference an agent cannot use.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. But for a mutation tool with no annotations, no schema descriptions, and a terse description, critical context is missing: input format expectations, failure behavior, and how the result relates to the Timeline IR the rest of the toolchain consumes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description says nothing about the single 'path' parameter. The name is fairly self-evident as a filesystem path, which is the only reason this is not a 1, but the description adds no format, relative-vs-absolute, or validity 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?

States a specific verb (Import) and resource (simplified OTIO JSON) plus the destination (Timeline IR), so an agent can tell what it does. It does not, however, distinguish itself from the obvious sibling video_otio_export beyond the direction implied by the name, and the '(P4.2)' tag is opaque internal jargon.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisite (e.g. a valid OTIO file from video_otio_export), and no mention of the export counterpart as the inverse operation. The 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.

video_overlayAInspect

Picture-in-picture: overlay a video on top of another.

Args: background_path: Absolute path to the background video. overlay_path: Absolute path to the overlay video. position: Position on screen. Named (top-left, etc.), pixel" " {"x": 100, "y": 50}, or percentage {"x_pct": 0.5, "y_pct": 0.5}. width: Width to scale the overlay to (pixels). height: Height to scale the overlay to (pixels). opacity: Overlay opacity (0.0 to 1.0). start_time: When the overlay appears (seconds). duration: How long the overlay is visible (seconds). output_path: Where to save the output. Auto-generated if omitted. crf: Override CRF value (0-51, lower = better quality). Default 23. preset: Override FFmpeg encoding preset (ultrafast, fast, medium, slow, veryslow).

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNo
widthNo
heightNo
presetNo
opacityNo
durationNo
positionNotop-right
start_timeNo
output_pathNo
overlay_pathYes
background_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the full behavioral burden. It usefully discloses defaults (opacity 0.8, crf 23), valid ranges (0.0-1.0, 0-51), preset enum values, and that output_path is auto-generated when omitted, but it says nothing about overwrite behavior, encoding cost, or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The one-line summary is front-loaded and the Args block is a tidy, scannable reference with no filler sentences. It is sized appropriately for an 11-parameter tool, though the formatting is slightly inconsistent in the position entry.

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?

Because an output schema exists, return values need no explanation, and parameter coverage is thorough. However, with zero annotations and no usage context or sibling differentiation, an agent still lacks guidance on when to choose this tool over video_layout_pip or video_composite_layers.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate entirely, and it does: all 11 parameters are defined, including the tricky position syntax (named, pixel {"x","y"}, or percentage {"x_pct","y_pct"}), units for start_time/duration, and CRF/preset semantics. This adds substantial meaning beyond the bare JSON types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening line names a specific operation and effect: 'Picture-in-picture: overlay a video on top of another,' which lets an agent immediately recognize a compositing/overlay task. It does not, however, differentiate itself from close siblings like video_layout_pip or video_composite_layers, so the agent must infer the distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no reference to alternatives such as video_split_screen or video_composite_layers. The text is purely a parameter reference and leaves routing decisions to inference 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.

video_preflightCInspect

Run unified technical, loudness, color, and decode preflight.

ParametersJSON Schema
NameRequiredDescriptionDefault
asset_idYes
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It lists check categories but does not disclose whether the operation is read-only or mutating, what permissions are required, whether it writes reports, 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 front-loaded sentence with no wasted words. The four check domains are presented compactly and the sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex preflight tool with no annotations, zero parameter documentation, and an output schema, the description is too thin. It gives the broad check categories but omits usage context, parameter meaning, and behavioral details needed to invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for two required parameters (asset_id, project_dir), and the description adds no information about their meaning, format, or relationship. The description does nothing to compensate for the undocumented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Run') and resource ('preflight') with four check domains (technical, loudness, color, decode). It does not distinguish the tool from sibling QC/validation tools like video_quality_check or video_metric_qc, but the core purpose is clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool, when not to use it, or which sibling alternatives exist. The agent must infer usage from the name and one-line description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_previewAInspect

Generate a fast low-resolution preview for quick review.

Args: input_path: Absolute path to the input video. output_path: Where to save the preview. Auto-generated if omitted. scale_factor: Downscale factor (4 = 1/4 resolution).

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_pathNo
scale_factorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does disclose useful behavior: the operation is 'fast' and low-resolution, and output_path is auto-generated when omitted. It does not say whether a file is written vs returned, the output codec/container, or whether it overwrites an existing file.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose followed by tight per-argument notes; every line earns its place. The 'Args:' docstring block is slightly mechanical but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, and the parameters are fully covered. The gap is routing: against a very large sibling set containing several preview-style tools, the description gives no basis for choosing this one over 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?

Schema description coverage is 0%, so the description must compensate, and it does: it documents all three parameters, including that input_path is an absolute path, that output_path is optional with auto-generation, and that scale_factor is a downscale divisor with a concrete example (4 = 1/4 resolution).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Generate a ... preview') and characterizes the output ('fast low-resolution'), so an agent knows this produces a downscaled proxy video. It does not, however, distinguish itself from near-name siblings like video_template_preview or hyperframes_preview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'for quick review' implies the intended context, but there is no explicit when-to-use/when-not guidance and no named alternative among the many preview/export siblings. Usage is inferable but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_project_createBInspect

Scaffold a cinematic video project with style, storyboard, and refs folders.

Args: slug: Project slug using lowercase letters, numbers, hyphens, or underscores. output_dir: Base directory for the projects/ folder. Defaults to the current working directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes
output_dirNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It usefully discloses the artifacts created (style/storyboard/refs folders) and the output_dir default, but says nothing about whether existing directories are overwritten, whether the operation is idempotent, or what errors occur on collision — the key behaviors for a filesystem-writing tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in one clear sentence, followed by compact per-argument notes. It is appropriately sized for a two-parameter tool with no wasted prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and parameters are well covered. What is missing for an unannotated mutation tool is idempotency/overwrite behavior and differentiation from video_init_project, leaving gaps an agent would want closed.

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 0%, so the description must compensate, and it largely does: it documents the slug charset (lowercase letters, numbers, hyphens, underscores) and clarifies that output_dir is the base for the projects/ folder and defaults to the cwd. Both parameters gain meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("Scaffold") and resource ("cinematic video project") and even enumerates the folders created (style, storyboard, refs), which is concrete and useful. It does not, however, distinguish itself from the close sibling video_init_project, leaving the agent to guess which project-creation tool applies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives despite a large sibling set that includes video_init_project and video_project_recipe_replay. The agent gets no signal on when this scaffolder 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.

video_project_recipe_exportCInspect

Export a verified edit revision as a path-free portable recipe.

ParametersJSON Schema
NameRequiredDescriptionDefault
policiesNo
operationsYes
intent_verbNorepurpose
project_dirYes
revision_idYes
review_gatesNo
edit_project_idYes
required_checksNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral burden. It discloses two useful traits — the revision must be 'verified' and the output is 'path-free portable' — but says nothing about what mutation or file writes occur, where artifacts land, or any permission/rate constraints. For a no-annotation export tool this is a substantive gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler and no redundancy. It is tightly written, though the extreme terseness is arguably under-specification rather than elegance given the tool's 8-parameter surface.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, but for a mutation/export tool with zero annotation coverage and eight undocumented parameters the one-line description is far short of complete. It omits preconditions, side effects, and any parameter guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 8 parameters (operations, policies, review_gates, required_checks, intent_verb, project_dir, edit_project_id, revision_id), and the description adds no meaning for any of them. It does not explain what 'operations' or the various gate/check arrays contain, so an agent is left guessing on every parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (export) and resource (a verified edit revision rendered as a portable recipe), which lets an agent distinguish it from the sibling replay (video_project_recipe_replay) and capture (video_recipe_capture) tools. The word 'recipe' is domain jargon but consistent with the sibling naming, so intent is legible.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no named alternatives, and no statement of prerequisites for choosing this over recipe_replay or recipe_capture. The word 'verified' hints at a precondition but never states it as a usage rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_project_recipe_replayCInspect

Replay a portable recipe into a new durable project revision.

ParametersJSON Schema
NameRequiredDescriptionDefault
artifactYes
project_dirYes
edit_project_idYes
source_bindingsYes
base_revision_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It implies a mutation (creating a 'new durable project revision'), which is the only behavioral signal, but says nothing about idempotency, whether an existing revision is overwritten, permission requirements, or how source_bindings resolve. For a 4-required-param write tool 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no wasted words, which is structurally fine. However, the brevity reflects under-specification rather than disciplined concision given the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a mutation with five parameters, nested objects, and no annotations; an output schema exists so return values need not be described. But with zero parameter documentation and no behavioral disclosure, the description leaves the agent without enough to invoke it correctly. Only the bare purpose is conveyed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across five parameters, including a nested 'artifact' object and a 'source_bindings' string map, and the description explains none of them. It adds no meaning beyond the property names: what an artifact contains, what a source binding maps, or what base_revision_id defaults to are all left opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('replay') and a clear input→output transformation: a portable recipe becomes a new durable project revision. This implicitly distinguishes it from the inverse sibling video_project_recipe_export, though it never names that sibling. The jargon ('recipe', 'durable revision') is domain-specific but coherent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no prerequisites, and no named alternatives. An agent cannot tell from the description whether this is the right tool versus video_project_recipe_export or video_init_project without inspecting schemas. Usage must be fully inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_propose_brollBInspect

Transcript-keyed b-roll proposals — human review required, never silent insert.

ParametersJSON Schema
NameRequiredDescriptionDefault
segmentsYes
max_proposalsNo
min_span_secondsNo
keyword_allowlistNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It usefully discloses that output is proposal-only and requires human review, but it does not cover permissions, side effects, or whether any artifacts are 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 a single front-loaded sentence with no filler. It states the core function and safety constraint immediately, making it structurally efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. But with 4 parameters at 0% schema coverage and no usage alternatives, the definition is too sparse for an agent to invoke the tool correctly without guessing parameter semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are 4 parameters, yet the description explains none of them. It does not clarify what 'segments' should contain or what 'max_proposals', 'min_span_seconds', and 'keyword_allowlist' control.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb ('propose'), resource ('b-roll'), and keying mechanism ('transcript-keyed'). The phrase 'never silent insert' distinguishes it from tools that actually edit the timeline, though no sibling tool is named directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies usage by stating 'human review required, never silent insert,' which signals a human-in-the-loop proposal workflow rather than automatic application. However, it does not explicitly say when to use this versus alternatives like video_edit or video_propose_mutations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_propose_mutationsCInspect

Map QC findings to typed proposed mutations (human apply only).

ParametersJSON Schema
NameRequiredDescriptionDefault
findingsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden, and 'human apply only' is a genuinely valuable disclosure that the tool is non-mutating and gated behind human approval. Beyond that it says nothing about idempotency, expected input shape, limits, or failure behavior for what is effectively a write-planning tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with the core purpose front-loaded and no filler. It is well-sized, though it is arguably too terse for the amount of undocumented behavior it needs to convey.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be explained, but the input side is entirely opaque and no annotations exist. An agent cannot tell what a 'finding' looks like or what a 'typed mutation' is, so the definition is inadequate for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single 'findings' parameter, which is an array of free-form objects (additionalProperties: true). The description only echoes the schema by naming 'QC findings' and adds no detail on element structure, required keys, or accepted finding shapes, so it fails to compensate for the coverage gap.

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 verb 'Map' plus resources 'QC findings' and 'typed proposed mutations' gives a discernible purpose that differs from apply/fix siblings. However, 'QC findings' is ambiguous given many QC siblings (video_quality_check, video_qc_vision, video_qc_narrative), and 'typed mutations' is unexplained jargon, so the agent cannot fully picture the output.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 '(human apply only)' implies this is a proposal-stage tool that does not itself apply changes, which is useful routing context. It names no alternative sibling and gives no explicit when/when-not conditions, leaving usage largely inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_publish_gateCInspect

Evaluate the fail-closed publish gate; any blocking finding blocks publishing.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_dirYes
blocking_findingsYes
candidate_artifactYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does disclose the important fail-closed decision semantics ('any blocking finding blocks publishing'), which is real behavioral value, but it says nothing about side effects, permissions, or whether the gate writes anything.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence with the gate's rule front-loaded and no filler. It is arguably under-specified rather than bloated, so the constraint is completeness, not length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. But for a tool with three fully undocumented required parameters, no annotations, and non-obvious gating semantics, the description is too thin 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.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and all three required parameters (project_dir, candidate_artifact, blocking_findings) are undocumented in both schema and description. The word 'finding' loosely gestures at blocking_findings, but format and provenance (who supplies these strings?) are unexplained, so the description fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Evaluate the ... publish gate') and adds the decisive rule ('any blocking finding blocks publishing'), so an agent knows it produces a go/no-go determination. It does not, however, distinguish itself from the sibling video_publish_validate, which an agent could easily confuse it with.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to call this versus video_publish_validate, video_release_checkpoint, or video_verdict, nor any prerequisites (e.g., must a candidate artifact already exist?). The gating rule implies a pre-publish context but the agent must infer it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_publish_validateCInspect

Validate a publish spec. solve=True also emits a cutfile (N5).

ParametersJSON Schema
NameRequiredDescriptionDefault
solveNo
widthYes
heightYes
sourceNo
captionsNo
platformYes
containerNomp4
duration_secondsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it does disclose one real behavioral trait: solve=True has a side effect (emitting an N5 cutfile). But for a validation tool with 8 parameters there is no word on what is checked, what a failure looks like, or whether it is read-only/safe, so the disclosure is partial.

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, front-loaded sentences with no filler and the primary action first. It is efficient, though the brevity crosses into under-specification rather than tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but for an 8-parameter, 4-required validation tool with no annotations and 0% schema coverage the description is far too thin. An agent cannot tell what a valid publish spec requires or how this differs from its validate/publish siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for 8 undocumented parameters, and it only explains one of them (solve, including its cutfile side effect). Required fields like platform, duration_seconds, height, width, and options like source, captions, and container get no explanation anywhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Validate a publish spec'), which an agent can separate from the many other *validate tools such as video_cutfile_validate or video_timeline_ir_validate. It does not, however, differentiate itself from the close sibling video_publish_gate, and 'publish spec' is never defined.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus video_publish_gate, video_cutfile_validate, or video_workflow_validate. The only usage hint is the conditional 'solve=True also emits a cutfile', which is about a parameter, not about selecting the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_punch_zoom_planCInspect

Auto-zoom punch-in plan on cut points (TE.5).

ParametersJSON Schema
NameRequiredDescriptionDefault
zoomNo
cut_timesYes
duration_secondsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full behavioral burden. It implies a planning operation rather than a render or mutation, but does not explicitly state side effects, permissions, idempotency, or whether it only outputs a plan.

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, which is structurally efficient. However, the trailing '(TE.5)' adds little useful meaning for an agent and the extreme brevity leaves the tool underspecified.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. Still, with no annotations, no input schema descriptions, and only a minimal sentence, the definition does not give an agent enough to select or invoke the tool confidently across its three parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate for undocumented parameters. It only hints that cut_times are the 'cut points'; zoom and duration_seconds are left completely unexplained, including their units or effect on the generated plan.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 and output: an auto-zoom punch-in plan based on cut points. It does not distinguish this planning tool from the many other video planning/effect siblings, and the '(TE.5)' tag is cryptic rather than clarifying.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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, nor any prerequisites or exclusions. The phrase 'on cut points' implies input context but does not tell the agent when this planning step is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_qc_narrativeDInspect

Narrative/retention heuristics incl. first-15s window (P3.4).

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations and no behavioral disclosure at all in the description: no mention of whether it reads or writes, what it returns besides the implied heuristic, what output looks like, or any side effects. The entire behavioral burden falls on the description, and it carries none of it.

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?

It is short, but that shortness is under-specification rather than conciseness: a fragment with an unexplained internal code ('P3.4') that probably means nothing to an agent. No structure, no front-loaded statement of action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a QC tool in a very crowded QC/sibling namespace, the definition is far too thin. Even though an output schema exists (which relieves some return-value explanation), the agent still lacks purpose, usage context, parameter meaning, and behavioral profile needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single required parameter input_path has 0% schema description coverage, so the schema does not explain it and the description does not either – the string 'input_path' is mentioned nowhere. With a low-coverage schema, the description was obligated to compensate and does not.

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 'Narrative/retention heuristics incl. first-15s window (P3.4)' is a fragment, not a sentence with a verb and resource, and it never states what the tool actually does (evaluates? scores? reports?). It cannot be distinguished from siblings like video_qc_vision or video_metric_qc 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 Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no alternatives named, no exclusions, no prerequisites. Given the dense family of QC tools (video_quality_check, video_metric_qc, video_qc_vision, video_release_checkpoint), this silence leaves an agent unable to route correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_qc_visionAInspect

Prepare keyframes for visual review; semantic vision QC is not evaluated.

Returns retained frame paths, sampling_status and assessment_status. Frame preparation is not a visual-quality pass. No executable VLM is available; require_vlm=True returns verdict=fail and blocked=True.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
require_vlmNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does substantively disclose behavior: no executable VLM is available, require_vlm=True yields verdict=fail and blocked=True, and listed return fields. These are non-obvious operational details that prevent a failed invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, but slightly redundant: 'semantic vision QC is not evaluated' and 'Frame preparation is not a visual-quality pass' restate the same boundary in adjacent sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists (so return values need not be fully explained, though the description helpfully names them), and for a 2-parameter tool the description covers the key caveats. The main gap is the undocumented input_path semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need 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 0%, so the description must compensate. It explains require_vlm's effect (fail + blocked=True) but says nothing about input_path's expected value or format, leaving one of two parameters undocumented in both description and schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Prepare keyframes for visual review,' and explicitly scopes out semantic vision QC, which differentiates it from QC siblings like video_quality_check and video_design_quality_check. The purpose is clear, though the negation-heavy framing adds some ambiguity about what the tool actually produces.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 it when you need keyframes prepared before a review step), and it usefully flags that require_vlm=True will fail. However, it names no alternatives among the many QC/review siblings and gives no explicit 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.

video_quality_checkBInspect

Run visual quality checks on a video.

Analyzes brightness, contrast, saturation, audio levels, and color balance. Returns quality scores and recommendations.

Args: input_path: Absolute path to video file fail_on_warning: If True, treat warnings as failures

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
fail_on_warningNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions that the tool returns scores and recommendations and that fail_on_warning treats warnings as failures, but it does not state whether the operation is read-only, whether it has side effects, what permissions or inputs are required beyond the path, or how failures manifest. For a tool with zero annotation coverage, 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?

The description is front-loaded with purpose, follows with a concise list of analyzed dimensions and outputs, and ends with a compact Args section. Every sentence contributes useful information without redundancy, and the structure makes scanning easy.

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 a simple QC tool with an output schema that covers return values, the description adequately states purpose and parameter meaning. However, with no annotations and a highly populated sibling space, it omits safety/read-only context and any guidance for selecting this tool over other quality-check tools, leaving the definition minimally viable but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: input_path is clarified as an 'absolute path to video file,' adding a requirement not evident from the schema, and fail_on_warning is explained as treating warnings as failures. Both of the two parameters receive meaningful elaboration beyond their names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: 'Run visual quality checks on a video,' and enumerates the specific dimensions analyzed (brightness, contrast, saturation, audio levels, color balance). It is easy to distinguish from non-QC tools, but it does not differentiate itself from the many sibling QC tools such as video_qc_vision, video_metric_qc, or video_design_quality_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no explicit guidance on when to use this tool versus alternatives. With a crowded field of QC siblings (video_qc_vision, video_metric_qc, video_design_quality_check, video_compare_quality), the lack of any routing advice leaves the agent to infer selection solely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_read_metadataBInspect

Read metadata tags from a video/audio file.

Args: input_path: Absolute path to the video or audio file.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Read' implies a non-mutating operation, but the description says nothing about permissions, whether it touches the file, or what happens with malformed/unsupported files; only the trivial read semantics are conveyed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is short and front-loads the core action in the first sentence. The trailing 'Args:' block is somewhat redundant formatting for a single parameter, but it is not verbose.

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 tool with an output schema covering return values, this is minimally viable. It stops short of describing what kinds of tags are returned (container vs stream metadata) or any limitations, leaving an agent with adequate but thin 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?

Schema description coverage is 0% and the single property has no description, so the description is the sole source of parameter meaning. It usefully specifies 'Absolute path' and clarifies the input can be video or audio, which is genuine added value over the bare 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 gives a specific verb and resource ('Read metadata tags from a video/audio file'), which is clear and unambiguous. However, it does not distinguish itself from close siblings like video_write_metadata, video_info, or video_info_detailed, which an agent must choose between.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this versus video_info, video_info_detailed, or video_write_metadata. The only usage hint is implicit in the word 'Read' and the acceptance of audio files, so the agent is left to infer routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_recipe_captureCInspect

Capture a workflow recipe (writer); idempotent by canonical digest.

ParametersJSON Schema
NameRequiredDescriptionDefault
recipeYes
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It does disclose two genuinely useful traits: this is a write operation ('writer') and it is idempotent by canonical digest, so repeat captures with the same content will not duplicate. Beyond that it says nothing about where the recipe is stored, what permissions are needed, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, and the idempotency note is tacked on where it belongs. It is arguably too terse for a tool whose required payload is an undescribed nested object, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. However, the tool takes a required nested recipe object with zero documented shape, and the description never describes what a recipe contains or how it relates to the export/replay siblings — a significant gap for a capture operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and both parameters are required, including a nested free-form 'recipe' object with additionalProperties=true. The description supplies no meaning for project_dir or the recipe payload, so it fails to compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Capture a workflow recipe') and adds a role marker ('writer'). It does not, however, differentiate itself from the near-identical siblings video_project_recipe_export and video_project_recipe_replay, which an agent would have to disambiguate on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no named alternative. The '(writer)' tag hints at a writer/reader pairing but never tells the agent when capturing is preferable to exporting or replaying a recipe.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_record_motion_acceptanceAInspect

Record an authorized human caller's explicit whole-film motion attestation.

The caller must provide the exact source/report hashes, complete watched intervals and every flagged interval's disposition. Requires explicit human review; agents must not invent viewing or act as the reviewer. This records an unverified caller attestation, not model proof or release approval. No system-authenticated viewing evidence exists: attestation_verified_by_system remains false. The returned receipt is nested to preserve its content hash.

ParametersJSON Schema
NameRequiredDescriptionDefault
reportYes
verdictYes
input_pathYes
reviewer_idYes
dispositionsYes
report_sha256Yes
source_sha256Yes
watched_intervalsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does so well: it discloses that the record is an unverified caller attestation, that system-authenticated viewing evidence does not exist, that attestation_verified_by_system remains false, and that the returned receipt is nested to preserve its content hash.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core action and then adds constraints without filler. Every sentence adds relevant context, though the paragraph could be slightly tighter.

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 complex: 8 required parameters, nested objects, and an output schema. The description covers the behavioral contract and trust limitations well, and the output schema means return values need not be explained. However, given 0% schema description coverage, it leaves significant parameter semantics unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 8 required parameters, so the description must compensate. It mentions exact source/report hashes, complete watched intervals, and flagged interval dispositions, but it omits reviewer_id, input_path, report, verdict, and any format or structure details for the nested objects.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: recording an authorized human caller's explicit whole-film motion attestation. It also distinguishes the action from model proof and release approval, which separates it from siblings like video_acceptance_eval and video_verdict.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 that explicit human review is required and that agents must not invent viewing or act as the reviewer. It also clarifies that this is not model proof or release approval, though it does not name a specific alternative tool to use instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_release_checkpointAInspect

Create preview artifacts only after the video passes quality gates.

Use this before publishing or chaining more polish effects. It runs a hard quality gate, then writes a thumbnail and storyboard for human inspection. A video with no audio stream fails the gate unless require_audio is explicitly disabled.

ParametersJSON Schema
NameRequiredDescriptionDefault
min_scoreNo
input_pathYes
output_dirNo
frame_countNo
require_audioNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden and does disclose real traits: a hard gate, thumbnail/storyboard artifacts for human inspection, and the failure condition that a video without an audio stream fails unless require_audio is disabled. It does not state what happens on failure (e.g. whether artifacts are withheld) or any permission requirements, so it is good but not complete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, front-loaded with the outcome and gating rule, then usage, then the key parameter exception. No filler; every sentence adds distinct information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values needn't be explained, and the description covers purpose, timing, and the central gate behavior. The remaining gap is parameter-level detail (output_dir, frame_count), which is a parameter_semantics concern rather than a completeness failure for a gating tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 5 parameters, so the description must compensate. It explains require_audio behavior and implies min_score via 'hard quality gate,' but leaves input_path, output_dir, and frame_count wholly undocumented in both schema and 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?

States a specific verb and resource ('Create preview artifacts') plus the gating condition that produces them ('only after the video passes quality gates'). This distinguishes it from the plain sibling tools video_thumbnail and video_storyboard, which emit artifacts without a gate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use this before publishing or chaining more polish effects' gives clear when-to-use context. It stops short of naming alternatives or explicit when-not conditions (e.g. versus video_publish_gate or video_publish_validate), but the sequencing guidance is actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_remote_egress_planDInspect

Plan explicit remote egress and fake adapter receipts without network I/O.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses that planning happens without network I/O and mentions 'fake adapter receipts,' but omits permissions, side effects, reversibility, rate limits, and what state is changed or preserved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single, front-loaded sentence with no obvious filler, so conciseness is adequate. However, the phrase 'fake adapter receipts' is unclear and does not earn its place as useful structure for the agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the opaque nested request schema, absent annotations, and many sibling tools, the description is not complete enough for an agent to invoke the tool correctly. The presence of an output schema excuses return-value detail, but the input and behavioral context remain almost entirely unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter, a nested 'request' object with 0% description coverage, and the description adds no information about what fields belong in the request or what format is expected. The agent receives no semantic guidance beyond the parameter name.

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 repeats the tool name with 'Plan ... remote egress' and adds 'fake adapter receipts,' which is jargon and does not clearly state what the tool does. It does not distinguish this plan tool from the many other 'plan' siblings such as video_generative_plan or video_repurpose_plan.

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?

The description provides no guidance on when to use this tool, when not to use it, or which sibling tool to use instead. 'Without network I/O' is a constraint, not a usage condition or alternative selection rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_repurposeCInspect

Submit one durable projectstore repurpose job for platform clips.

The worker applies the requested release checkpoint policy before success. Submission acknowledges queued/running work, not quality or human acceptance.

ParametersJSON Schema
NameRequiredDescriptionDefault
min_scoreNo
platformsNo
start_jobNo
input_pathYes
output_dirNo
include_release_checkpointNo
moment_selection_record_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses that the worker applies a release checkpoint policy and that submission acknowledges queued/running work rather than quality or human acceptance, but it omits permissions, idempotency, side effects, and output handling.

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 brief and front-loads the core action. The three sentences are mostly efficient, though the fragmented formatting and undefined jargon like 'projectstore' slightly reduce clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value details are less necessary. However, for a 7-parameter job-submission tool with no annotations and 0% schema coverage, the description leaves too much unspecified for an agent to invoke it confidently and correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 7 parameters, so the description must explain them but does not. It hints at platforms and release checkpoints, yet parameters like input_path, output_dir, min_score, start_job, and moment_selection_record_id remain unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: submit a durable repurpose job for platform clips. It distinguishes submission from planning implicitly, but the term 'projectstore' is jargon and the description does not explicitly contrast with sibling tools such as video_repurpose_plan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this is the execution step for repurposing, but it gives no explicit when-to-use guidance, prerequisites, or alternatives. It does not tell the agent when to choose this tool over video_repurpose_plan or other video workflow tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_repurpose_planCInspect

Create a dry-run local repurposing manifest for platform-ready assets.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformsNo
input_pathYes
output_dirNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the operation is a dry-run and local, which is useful behavioral context, but it does not state whether it writes a manifest file, what permissions are needed, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single front-loaded sentence with no filler, so it is efficient. It is arguably too terse for the tool's complexity, but the sentence itself is well-structured.

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 three parameters with no schema descriptions, no annotations, and no mention of the sibling video_repurpose, the description is incomplete for correct invocation. The output schema covers return values, but the description fails to compensate for the missing parameter and behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for all three parameters, and the description does not mention input_path, platforms, or output_dir. It offers no format, default, or usage details to compensate, leaving parameters completely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Create') and resource ('dry-run local repurposing manifest for platform-ready assets'), so the agent can tell what the tool produces. However, it does not differentiate this planning tool from the sibling video_repurpose or explain what a 'manifest' contains, 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 Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description implies it is for planning a repurposing operation (dry-run), but it never names the alternative video_repurpose or states prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_rescue_inspectCInspect

Inspect a rescue plan or receipt and re-check artifact integrity.

ParametersJSON Schema
NameRequiredDescriptionDefault
receiptYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. 'Inspect' and 're-check' imply a read-only verification, but the description never states whether re-checking mutates state, what permissions or inputs are needed, or how it handles an invalid/failed receipt.

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 terse sentence with the verb and action front-loaded; nothing is wasted. It is arguably too terse rather than too long, which is a completeness issue rather than a conciseness one.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, with no annotations and an undocumented parameter, the description should clarify where a receipt comes from and how plan-vs-receipt inputs differ; that gap is only partially covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single 'receipt' parameter has 0% schema description coverage, and the description leaves the format ambiguous by saying it accepts 'a rescue plan or receipt' while the schema exposes only 'receipt'. No indication of whether this is a path, ID, or serialized object.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (inspect) and resource (rescue plan or receipt) plus a distinct secondary action (re-check artifact integrity). This separates it moderately from video_rescue_plan and video_rescue_render, though it does not sharply articulate what 'integrity' verification means in practice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use or when-not-to-use guidance, and the obvious sibling alternatives (video_rescue_plan to create a plan, video_rescue_render to render) are never named. An agent must infer the workflow position from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_rescue_planBInspect

Analyze one local video and return a policy-classified rescue plan.

Planning never changes the source or renders final media. It records findings, safe repair ids, recommendations, unavailable and blocked work, local capability evidence, previews, and an execution estimate.

ParametersJSON Schema
NameRequiredDescriptionDefault
policyNolocal_content_preserving
sourceYes
save_planNo
output_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it explicitly declares non-destructiveness ('never changes the source or renders final media') and enumerates what gets recorded (findings, repair ids, blocked work, evidence, estimate). It does not address the save_plan side effect or auth/permission needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the core action and artifact, then the safety constraint, then the recorded contents. No filler, though the enumeration in the third sentence is somewhat list-like.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, and the description adequately covers the plan's contents. However, with 4 parameters at 0% schema coverage and an ambiguous save_plan side effect, an agent still lacks enough to invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 4 parameters, so the description must compensate, and it largely does not. 'Policy-classified' hints at the policy param and 'local video' at source, but output_dir, save_plan, and the policy value space are unexplained, leaving the agent to guess at formats and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (analyze) and resource (one local video) and delivers a concrete artifact (policy-classified rescue plan). It implicitly separates itself from video_rescue_render by asserting planning never renders final media, but it never names a sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The statement that planning does not change the source or render final media implies this is the pre-render/pre-repair stage, but it gives no explicit when-to-use condition, prerequisites, or named alternatives such as video_rescue_render or video_rescue_inspect.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_rescue_renderAInspect

Render approved safe repairs from a reviewed rescue plan.

Approval ids must name safe repairs in this exact immutable plan. The renderer fails closed on stale inputs, capabilities, policy, resume state, cancellation, or verification failure and never promotes failed output.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYes
cancel_fileNo
save_receiptNo
resume_receiptNo
keep_intermediatesNo
approved_repair_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it enumerates fail-closed conditions (stale inputs, capabilities, policy, resume state, cancellation, verification failure) and states that failed output is never promoted. It omits permission/auth requirements and what constitutes a successful receipt, keeping it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with the core action front-loaded and no filler; the constraint sentence earns its place by gating correct invocation. Slightly dense phrasing ('fails closed on ... resume state') costs a little clarity but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation-style render tool with no annotations and an output schema present, the failure-mode disclosure covers the riskiest behavior, and return values need not be explained. Remaining gaps are per-parameter behavior (keep_intermediates, receipt semantics) rather than anything that would cause a wrong 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 0%, so the description must compensate and only partially does: 'approval ids' maps to approved_repair_ids, and the resume/cancellation/verification language hints at resume_receipt, cancel_file and save_receipt, but keep_intermediates is never addressed. Adequate but incomplete for six 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?

States a specific verb (render) and a precise resource (approved safe repairs from a reviewed rescue plan), placing it unambiguously in the rescue workflow alongside video_rescue_plan and video_rescue_inspect. The 'approved safe repairs' scope distinguishes it from generic renderers like video_workflow_render or video_cutfile_render.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies a prerequisite workflow ('from a reviewed rescue plan') and constrains the approval ids, which is useful context, but never names when to use this versus video_rescue_plan/video_rescue_inspect or states when-not to call it. Usage is implied rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_resizeAInspect

Resize a video or change its aspect ratio. Returns JSON {success, output_path}. Use to fit a video to target dimensions or a preset ratio. Pass input_path as the source video (e.g. from video_info) and either width/height or aspect_ratio to define the target.

Args: input_path: Absolute path to the input video. width: Target width in pixels. Use with height. height: Target height in pixels. Use with width. aspect_ratio: Preset aspect ratio (16:9, 9:16, 1:1, 4:3, 4:5, 21:9). Overrides width/height. quality: Quality preset (low, medium, high, ultra). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
widthNo
heightNo
qualityNohigh
input_pathYes
output_pathNo
aspect_ratioNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It usefully discloses the return shape ({success, output_path}), that output_path is auto-generated when omitted, and that aspect_ratio overrides width/height. It says nothing about overwrite behavior, permissions, re-encoding side effects, or cost/time, leaving meaningful behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, return value, and usage before the arg list; every sentence and arg line adds distinct information with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter tool with 0% schema coverage, the description covers every parameter plus the override precedence and output-path default. An output schema exists, so return-value explanation is not strictly required, and the tool is otherwise complete enough to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: it documents all six parameters, gives the aspect_ratio preset list (16:9, 9:16, 1:1, 4:3, 4:5, 21:9), the quality presets (low/medium/high/ultra), and the interaction rules (width/height used together, aspect_ratio overrides them).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb (resize) and resource (video) plus a secondary capability (change aspect ratio), so an agent immediately knows what it does. However, it does not differentiate from close siblings like video_crop, video_rotate, or video_scale, which all also affect dimensions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use to fit a video to target dimensions or a preset ratio" gives clear context for when to reach for this tool, and it tells the agent where input_path comes from (video_info). It stops short of naming alternatives or stating when-not to use it (e.g. vs video_crop).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_restoration_planDInspect

Plan or evaluate evidence-gated local restorative work.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full behavioral burden, and it does not. It does not clarify whether the tool only plans or also mutates, whether it is read-only, what permissions are needed, what side effects occur, or how 'evidence-gated' affects execution.

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 short sentence, which is concise but under-specified rather than efficient. It is front-loaded with a vague purpose and omits all necessary context, so its brevity does not earn its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complex nested input, lack of annotations, and the broad sibling toolset, the description is far too thin. Although an output schema exists, the description still fails to explain what the tool plans, what evidence gates it, or how to supply the required request object.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one required nested object parameter named 'request' with 0% description coverage, and the description adds no information about its structure, expected fields, or content. The agent is left with no semantic guidance for the only input parameter.

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 states a verb pair ('Plan or evaluate') and a vague resource ('evidence-gated local restorative work'), but 'restorative work' is undefined and does not distinguish this tool from siblings like video_rescue_plan or video_visual_transform_plan. An agent cannot confidently tell what this tool actually does 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 Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives, no prerequisites, no exclusions, and no mention of any sibling tool. The phrase 'evidence-gated' hints at a condition but never states what evidence is required or when the tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_reverseBInspect

Reverse video and audio playback so it plays backwards.

Args: input_path: Absolute path to the input video. output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It does add that audio is reversed alongside video, but says nothing about re-encoding, container/codec preservation, quality loss, or whether the input is modified in place. For a destructive-ish media mutation with zero annotation coverage this is a notable 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?

Front-loaded one-line purpose followed by a compact Args block. Efficient and correctly sized for a two-parameter tool, with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value detail is unnecessary. However, for a mutation tool with no annotations, the description omits format handling, error conditions, and whether the original media changes, leaving an agent only partly equipped to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: input_path is documented as an absolute path and output_path as the save location that is auto-generated when omitted. That covers both parameters with real semantics beyond their names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: reverse video and audio playback so it plays backwards. Unambiguous about what happens. It does not distinguish itself from adjacent transformation tools such as video_speed (which could also produce reversed output), but no sibling performs the same function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 contains no when-to-use, when-not-to-use, or alternative-routing guidance. An agent learns nothing about when reversal is the right operation versus video_speed, video_edit, or other transforms.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_review_decideBInspect

Record human accept/reject/revise. Accept + EDL approval can render (N4).

ParametersJSON Schema
NameRequiredDescriptionDefault
edlNo
reasonNo
approvalNo
decisionYes
input_pathNo
review_runYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses one important side effect, that accept plus EDL approval can render, but it does not explain permissions, reversibility, what happens on reject or revise, or what the cryptic 'N4' reference means.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, front-loaded with the core action, and avoids wasted words. The second sentence is cryptic but still concise, so structure is generally efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a seven-parameter mutation tool with nested objects, no annotations, and no schema descriptions, the description is far too sparse. It leaves required parameter semantics and most behavioral context undocumented, even though an output schema exists and need not be explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for seven parameters, so the description must compensate. It hints at decision values (accept/reject/revise) and the EDL/approval fields, but it does not explain review_run, reason, input_path, output_path, or the nested object structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: record a human accept/reject/revise decision. This clearly conveys the tool's core purpose, though it does not differentiate itself from close siblings such as video_review_decision or video_review_ui.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 the tool is used by naming the decision types and adding that accept plus EDL approval can trigger rendering. However, it gives no explicit guidance on when to choose 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.

video_review_decisionCInspect

Record a human review decision (writer); corrections supersede by record id.

ParametersJSON Schema
NameRequiredDescriptionDefault
decisionYes
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the behavioral burden. It discloses that it is a writer (mutation) and that corrections supersede by record id, but lacks details on permissions, side effects, error handling, or what happens to previous decisions.

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?

Single sentence, front-loaded, with no wasted words. However, the extreme brevity may under-serve clarity for the nested 'decision' object.

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 a nested object parameter with no schema descriptions, the description is too sparse to guide correct invocation. It does not explain what a 'decision' should contain or the role of 'project_dir', though the output schema reduces the need to describe return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It hints that decisions have a record id, but gives no meaning for 'project_dir' or the structure of the 'decision' object, leaving parameters largely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Record') and resource ('human review decision'), and adds a distinguishing note that it is a writer tool. However, it does not differentiate from the similarly named sibling video_review_decide, so sibling differentiation is absent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance or alternatives are provided. It merely states what the tool does, leaving the agent to infer when to choose it over video_review_decide or other review tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_review_packageCInspect

Assemble a review package and publish-gate verdict for a candidate artifact.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_dirYes
blocking_findingsNo
candidate_artifactYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral disclosure burden. It hints at producing a package and verdict, but says nothing about side effects, permissions, idempotency, whether files are written, or how the publish-gate decision is reached. This is a significant gap for a tool that likely mutates project state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words, which is structurally clean. However, it is under-specified for the tool's apparent complexity, so its brevity comes at the cost of necessary detail rather than being appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the description still leaves major gaps: it does not define 'review package', 'publish-gate verdict', or how this tool relates to the many review/publish siblings. With no annotations, 0% schema coverage, and three parameters, the definition is not complete enough for reliable invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description mentions none of the three parameters (project_dir, candidate_artifact, blocking_findings). It does not clarify what a 'candidate artifact' is, what 'project_dir' should point to, or how optional blocking findings affect the verdict. The description fails to compensate for the schema's lack of documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description has a clear verb ('Assemble') and resource ('review package and publish-gate verdict') scoped to a 'candidate artifact'. However, it does not distinguish this tool from siblings such as video_review_run, video_review_decide, video_publish_gate, or video_verdict, leaving ambiguity about when this specific packaging/verdict tool is the right choice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use, when-not-to-use, or alternative guidance. The description only states what the tool does, not the context or prerequisites for calling it, so an agent must infer usage entirely from the name and siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_review_runDInspect

Watching guardrail: run offline metric floor under a review policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
policyNo
input_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It implies a non-destructive evaluation ('watching guardrail', 'offline') but never states whether it writes artifacts, what a failing floor does, or what permissions are needed. An output schema exists, which lightens the return-value burden, but side-effect and failure semantics are unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with no filler, so it is economical, but the compression produces near-unparseable jargon rather than front-loaded clarity. Brevity here is under-specification, not conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with zero schema description coverage and no annotations, the description should explain the required input and the policy object's role. The output schema is the only structured aid available, leaving the calling contract largely opaque.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for both parameters. It obliquely covers 'policy' via 'review policy' but says nothing about the required 'input_path' (what file/artifact, what format). The required parameter is entirely undocumented.

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 phrase 'run offline metric floor under a review policy' gestures at a guardrail/evaluation action but never names a concrete resource or outcome, so an agent cannot say what it produces. It does hint at a review-policy context that overlaps with siblings like video_review_decide and video_metric_qc, but the differentiation is accidental rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no preconditions, and no mention of the many review/metric siblings (video_review_decide, video_metric_qc, video_acceptance_eval). The word 'guardrail' implies a gating context but nothing tells the agent when this is the right tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_review_uiCInspect

Write hot-reloading human review HTML surface (P4.3).

ParametersJSON Schema
NameRequiredDescriptionDefault
output_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It hints that the output is a hot-reloading HTML artifact, but never says whether it writes files into output_dir, overwrites existing ones, starts a server/port, or requires a running render pipeline. For a write tool with zero annotation coverage, that is a substantial gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with the verb front-loaded and no filler, which is structurally fine. However, the terseness crosses into under-specification, and the parenthetical phase code spends characters without adding meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return-value documentation is not required, but the description still omits the essentials for a write tool: what artifact is produced, where in output_dir, and how it relates to the review workflow siblings. One jargon sentence is not enough for a tool with 0% parameter coverage and no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single required parameter, and the description never mentions output_dir at all. The parameter name is fairly self-explanatory, but the description adds no semantics such as expected layout, whether the directory must exist, or what gets created inside it.

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 verb 'Write' and resource 'human review HTML surface' give a rough sense of the action, but 'P4.3' is an opaque internal phase tag and 'hot-reloading' is unexplained jargon. An agent cannot confidently distinguish this from siblings like video_review_run, video_review_package, or shorts_review without guessing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of the many adjacent review tools (video_review_run, video_review_decide, shorts_review). The word 'review' implies a workflow stage, but nothing tells the agent when this step is appropriate or what it produces relative to those siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_rotateRotate or flip videoA
Destructive
Inspect

Rotate and/or flip an existing video and render a new output file. Supports right-angle rotations plus horizontal and vertical flips; the input video is not modified.

ParametersJSON Schema
NameRequiredDescriptionDefault
angleNoClockwise rotation angle in degrees. Supported values are 0, 90, 180, and 270.
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
flip_verticalNoMirror the video vertically after rotation when true.
flip_horizontalNoMirror the video horizontally after rotation when true.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare destructiveHint=true and readOnlyHint=false, which could alarm an agent, but the description usefully clarifies that 'the input video is not modified' and that a new output file is rendered. This resolves the apparent destructive semantics (overwriting an output path) beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, front-loaded with the core action and followed by scope plus the input-safety note. 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 5-param mutation tool with an output schema present, the description covers the action, supported transforms, and input preservation. Only the absence of when-to-use guidance against sibling transform tools (crop/resize) 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 coverage is 100%, so all five parameters including angle values (0/90/180/270), flip booleans, and output_path overwrite behavior are already documented. The description only restates the rotation/flip capabilities at a high level, adding no syntax or format detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('rotate and/or flip an existing video') and the output behavior ('render a new output file'), which distinguishes it from siblings like video_crop, video_resize, and video_reverse. An agent can identify the operation without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when the tool applies (right-angle rotation, mirroring) but never states when to choose it over alternatives such as video_crop or video_resize, nor any prerequisites. Usage is inferable but not guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_salvageCInspect

Create one lineage-bound salvage derivative and a fresh review slot.

ParametersJSON Schema
NameRequiredDescriptionDefault
policyYes
recipeYes
project_dirYes
source_asset_idYes
acceptance_spec_idYes
authorization_decision_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full behavioral burden. It implies a mutation (creates a derivative and a review slot) but says nothing about required permissions, the role of authorization decisions, reversibility, or side effects. Significant gap for a write operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no wasted words, but its brevity stems from under-specification rather than tight editing, leaving the core concepts (salvage derivative, review slot) unexplained.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but for a complex 6-parameter mutation tool with no annotations and 0% parameter coverage, the description is far too thin to let an agent call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 6 parameters including a nested policy object. The description only loosely hints at lineage (source_asset_id) and a review slot; it does not explain recipe, policy, acceptance_spec_id, or authorization_decision_ids at all.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Create') and resources ('salvage derivative', 'review slot'), but the terminology is opaque jargon. It does not distinguish this from the many sibling rescue/review tools like video_rescue_plan, video_rescue_render, or video_review_package.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No indication of when to use this versus alternatives such as video_rescue_plan/render or the review_* family. The agent is given no context for selection or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_seek_frameDInspect

Frame-accurate seek conversion (TE.9).

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNo
frameNo
secondsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

D1.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden, but it only hints that this is a frame-accurate conversion. It does not disclose side effects, authorization needs, error behavior, or how the nullable frame/seconds parameters interact.

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 definition is very short, but it is under-specified rather than concise. The cryptic "(TE.9)" reference adds no usable meaning for tool selection or invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, but the input and behavioral context are almost entirely missing. With no annotations and no parameter descriptions, an agent cannot confidently invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the three undocumented parameters. It names none of them and does not explain fps, frame, seconds, or their defaults and nullable/mutually exclusive behavior.

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?

"Frame-accurate seek conversion" largely restates the tool name and adds only the modifier "frame-accurate"; it does not say whether the tool converts frame numbers to seconds, seeks a player, or returns a converted value. It also does not distinguish this tool from siblings such as video_extract_frame or video_inspect_temporal.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance, no prerequisites, and no alternatives. It does not indicate whether this is a preprocessing conversion step, a query, or an edit operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_semantic_queryCInspect

Query source-backed semantic spans locally without inventing descriptions.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral disclosure burden. It does convey two useful traits: local execution and that results are 'source-backed' without inventing descriptions, implying grounded, non-hallucinatory output. It omits read-only status, permissions, expected side effects, error behavior, and output characteristics.

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 efficient, though its extreme brevity borders on under-specification given the tool's nested request object; still, as a matter of conciseness it performs well.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. However, the description leaves critical gaps for a tool with a nested, undocumented request object: it does not define 'semantic spans', explain how to build the request, or state when this tool is appropriate versus similar siblings. The single sentence provides only a partial orientation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has one required parameter ('request'), which is a nested object with additionalProperties allowed and 0% schema description coverage. The description adds no information about the request object's structure, required fields, or expected content, so it completely fails to compensate for the undocumented parameter.

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 states a specific verb and resource ('Query ... semantic spans'), giving a high-level purpose. However, the key term 'semantic spans' is undefined, and it does not distinguish this tool from siblings like video_semantic_timeline or video_analyze. An agent can guess the domain but lacks precision.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 on when to use this tool versus alternatives is provided. The phrase 'locally' hints at an offline context, but there are no conditions, exclusions, or named sibling tools to route the agent. The description leaves selection entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_semantic_timelineCInspect

Build a local, source-time semantic timeline from supplied analyzer evidence.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses that processing is local and source-time aligned, but it does not explain side effects, output artifact location, required evidence format, permissions, or whether the operation is read-only or mutating.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words. It is structurally clean, though its brevity contributes to the broader underspecification problem captured in other dimensions.

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 has a nested opaque request object, no parameter documentation, and no annotations. An output schema exists, so return values need not be explained, but the description leaves critical input and behavioral context unspecified for a non-trivial timeline-building operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%: the sole required parameter is an opaque nested object with no defined properties. The description only hints that the request contains 'supplied analyzer evidence,' but it does not describe the object's structure, required fields, or expected evidence shape.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: build a semantic timeline, scoped to local source-time and supplied analyzer evidence. It is clear what kind of artifact is produced, but it does not differentiate itself from related siblings such as video_semantic_query or video_timeline_edit_plan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'from supplied analyzer evidence' implies a prerequisite input, but the description gives no when-to-use guidance, no exclusions, and no alternatives. An agent must infer when this timeline-building step is appropriate versus other timeline or semantic tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_shape_maskBInspect

Apply a geometric shape mask to a video.

Args: input_path: Absolute path to the input video. shape: Shape to use — "circle", "rounded_rect", or "oval". output_path: Where to save the output. Auto-generated if omitted. feather: Feather radius in pixels (0 = sharp edges).

ParametersJSON Schema
NameRequiredDescriptionDefault
shapeNocircle
featherNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool applies a mask and lists parameters, but does not say whether the input file is modified, whether the output overwrites anything, what processing limitations exist, or any permissions or performance considerations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, followed by a compact and well-organized argument list. Every sentence serves a purpose and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a video transformation tool with no annotations and 0% schema description coverage, the description is adequate for invocation but incomplete for selection and safety. It covers parameter semantics well, and the output schema handles return values, but it lacks usage guidance and behavioral details such as whether the operation is destructive.

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 0%, so the description must compensate. It documents all four parameters: input_path as an absolute path, shape with allowed values, output_path as auto-generated if omitted, and feather as radius in pixels. It does not restate the default shape value, but the schema provides that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Apply a geometric shape mask to a video.' This is clear and more specific than a generic mask tool. However, it does not distinguish itself from the sibling 'video_apply_mask' or explain how a shape mask differs from other masking or cropping 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?

Provides no guidance on when to use this tool versus alternatives like video_apply_mask, video_crop, or video_filter. It only describes what the tool does and its parameters, leaving the agent to infer the appropriate context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_speedChange video speedA
Destructive
Inspect

Render a new video with playback speed changed; the source video is left unchanged. Returns JSON {success, output_path}. Use for slow-motion or fast-forward effects. Pass input_path as the source video and factor as the multiplier (below 1.0 slows, above 1.0 speeds up).

ParametersJSON Schema
NameRequiredDescriptionDefault
factorNoPlayback speed multiplier. 2.0 is double speed, 0.5 is half speed, and 1.0 is unchanged.
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations already declaring destructiveHint=true and readOnlyHint=false, the description usefully clarifies the destruction scope ('source video is left unchanged') and the return shape ('Returns JSON {success, output_path}'). It does not, however, mention that a supplied output_path may be overwritten, which is the behavior the destructive hint actually flags — a notable omission that could make the tool read as safer than it is.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four compact sentences, front-loaded with the operation and its non-destructiveness before the usage hint and parameter guidance. Every sentence carries distinct information with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter render tool with full schema coverage, annotations, and an output schema, the description covers purpose, safety scope, return shape, and parameter direction. Nothing material an agent needs to invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are already documented, including the factor multiplier and the overwrite risk on output_path. The description's restatement of factor directionality ('below 1.0 slows, above 1.0 speeds up') adds emphasis but no information 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?

Starts with a specific verb+resource ('Render a new video with playback speed changed') and immediately scopes it ('the source video is left unchanged'), which separates it from the many transform siblings like video_reverse, video_trim, and video_resize. An agent can identify the operation without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use for slow-motion or fast-forward effects' gives a clear positive trigger for when to reach for this tool. It stops short of naming alternatives or exclusions (e.g., when to prefer video_reverse or a workflow render), so it is clear context rather than full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_split_screenBInspect

Place two videos side by side or top/bottom.

Args: left_path: Absolute path to the first video. right_path: Absolute path to the second video. layout: Layout type (side-by-side or top-bottom). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
layoutNoside-by-side
left_pathYes
right_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and largely fails to. It discloses only that output_path is auto-generated if omitted; it says nothing about how mismatched resolutions or frame rates are handled, whether audio from both inputs is mixed or dropped, or whether an existing output is overwritten. For a file-writing mutation tool these are meaningful gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in one line, followed by a compact Args block. No filler sentences; every line conveys parameter meaning. Slightly list-like rather than prose, but appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and all parameters are documented. However, with no annotations and a mutation behavior, the description omits operational details (audio handling, resolution mismatch, overwrite semantics) that an agent would want before invoking it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: all four parameters are explained, including that paths are absolute, the layout accepts 'side-by-side' or 'top-bottom', and output_path defaults to auto-generation. It stops short of specifying an exact enum of accepted layout strings, but the coverage is good given the bare 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 opening sentence states a specific verb and resource ('Place two videos side by side or top/bottom'), making the operation unambiguous. It does not, however, distinguish itself from similarly-purposed siblings like video_layout_grid, video_layout_pip, or video_composite_layers, so an agent cannot tell from the description alone which layout tool to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use, when-not-to-use, or alternative-tool guidance. Usage is only implied by the purpose sentence; the agent must infer selection versus the many sibling layout/composite tools on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_stabilizeAInspect

Stabilize a shaky video using motion vector analysis.

Args: input_path: Absolute path to the input video. smoothing: Smoothing strength (default 15, higher = more stable). zooming: Zoom percentage to avoid black borders (default 0). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
zoomingNo
smoothingNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the stabilization method, the effect of smoothing and zooming, and that output_path is auto-generated if omitted, but it does not address permissions, overwrite behavior, processing time, or whether the input file is modified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in a single sentence, followed by a compact Args block with no redundant text. Every sentence adds value for an agent preparing the call.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description need not explain return values. It covers all four parameters and the core operation, but omits usage guidance and higher-level behavioral context, which are the remaining gaps for a tool with no annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: every parameter is explained with meaning and defaults. input_path is called out as an absolute path, smoothing notes 'higher = more stable', zooming explains its purpose, and output_path describes the auto-generation fallback.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Stabilize a shaky video') and adds the method ('using motion vector analysis'). The action is distinct from all siblings such as video_trim, video_crop, or video_convert, so an agent can identify it without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description never states when to use this tool, when not to use it, or what alternatives exist. It only documents the operation and its arguments, leaving usage context entirely implied by the tool name and purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_storyboardBInspect

Extract key frames and create a storyboard grid for human review.

Args: input_path: Absolute path to the input video. output_dir: Directory to save frames. Auto-generated if omitted. frame_count: Number of key frames to extract.

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_dirNo
frame_countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It does disclose the write side effect implicitly by naming an output directory where frames are saved and noting that it is auto-generated when omitted, plus the 'human review' framing of the output. It omits permissions, overwrite behavior, frame format, and any limits on frame_count (explicitly documented as a parameter), so disclosure stops short of what a no-annotation tool should provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose sentence is front-loaded and the argument list is compact. The Args block partly restates what the schema already shows via titles, but it earns its place by adding path and auto-generation semantics. No filler prose.

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?

This is a file-writing tool with no annotations, so the description should say more about side effects and positioning against siblings. The output schema carries the return-shape burden, and all three parameters are covered, but the omission of any sibling differentiation or safety/permission context leaves it minimally adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it documents all three parameters with real meaning: input_path must be an absolute path, output_dir is where frames are written and is auto-generated when omitted, and frame_count is the number of key frames. It does not mention the default value of 8 for frame_count present in the schema, nor any bounds or format 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?

States a specific verb and resource: extract key frames and compose them into a storyboard grid, with the intended audience ('human review') made explicit. It does not, however, distinguish itself from close siblings such as video_extract_frames, video_extract_frame, or storyboard_read, so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance at all. The description never explains when this tool is preferred over video_extract_frames (raw frame dump) or storyboard_read, despite both being siblings in the same toolset. Only the phrase 'for human review' hints at intent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_subtitlesBInspect

Burn subtitles (SRT/VTT/authored ASS) into a video.

Args: input_path: Absolute path to the input video. subtitle_path: Absolute path to the subtitle file (.srt, .vtt, or .ass). output_path: Where to save the output. Auto-generated if omitted. style: Optional force_style override applied to any subtitle format including authored ASS (e.g. "FontSize=24,PrimaryColour=&H00FFFFFF"). Omit to preserve an authored ASS file's own styling/positioning.

ParametersJSON Schema
NameRequiredDescriptionDefault
styleNo
input_pathYes
output_pathNo
subtitle_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that output_path is auto-generated if omitted and that style applies as a force_style override including on authored ASS files. However, it doesn't state whether the operation is destructive to the input, what happens on failure, or output format details (though an output schema exists). Reasonable but incomplete.

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?

Efficiently front-loaded with the one-line purpose followed by a clean Args section. Each parameter note is terse and earns its place. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 parameters, 2 required, no annotations, but with an output schema present, the description covers the essential operational details an agent needs: formats, optional params, style override semantics. The main gap is sibling differentiation (e.g., vs video_subtitles_styled), which could matter for correct tool selection.

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 0%, so the description must compensate. It documents all four parameters: input_path and subtitle_path with accepted formats (.srt, .vtt, .ass), output_path with auto-generation behavior, and style with example syntax and the crucial distinction of preserving authored ASS styling when omitted. This adds substantial meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: burn subtitles into a video. It's clear what the tool does, though it doesn't explicitly distinguish itself from siblings like video_subtitles_styled, video_generate_subtitles, or video_add_text, which arguably overlap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as video_subtitles_styled or video_generate_subtitles, which appear to cover related territory. The description lists args but provides no usage context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_subtitles_styledAInspect

Burn subtitles from SRT/VTT with custom styling.

Embeds subtitle file into video with customizable appearance.

Args: input_path: Absolute path to input video. subtitles_path: Absolute path to SRT or VTT file. output_path: Absolute path for output video. style: Optional style dict with font, size, color, outline, etc.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
styleNo
input_pathYes
output_pathYes
subtitles_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It discloses that this is a mutation/embed operation writing to output_path and returns a success dict, but says nothing about overwrite behavior, re-encoding cost, codec effects, or permissions. Partial disclosure only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the operation, then a short Args/Returns block. The second sentence ('Embeds subtitle file into video with customizable appearance') is largely redundant with the first, a minor waste, but overall tight and well-ordered.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-param mutation tool with an output schema present, the description covers the operation, all inputs, and the return shape. The gaps are only secondary details (overwrite semantics, style key set), so an agent has enough 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?

Schema description coverage is 0%, so the description must compensate, and it largely does: all four parameters are named with meaning (absolute paths, SRT/VTT constraint, optional style dict). The style dict is enumerated ('font, size, color, outline, etc.') but the 'etc.' leaves exact keys unspecified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: burn/embed subtitles from SRT/VTT with custom styling. This distinguishes it functionally from video_subtitles (plain) and video_generate_subtitles (generation), though it never names those siblings explicitly. Purpose is unambiguous 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?

Usage is only implied by the 'with custom styling' qualifier; an agent can infer to pick this over the unstyled variant, but there is no explicit when-to-use, when-not-to-use, or prerequisite guidance despite many overlapping subtitle/text siblings. Adequate but leaves routing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_template_previewAInspect

Preview what a video template would do before rendering.

Analyzes the template and returns a list of operations, estimated output duration, resolution, and file size — without actually processing any video.

Args: template: Template name (tiktok, youtube-shorts, instagram-reel, youtube, instagram-post). input_path: Absolute path to the input video (optional; used for duration probing). duration: Override the estimated duration in seconds. caption: Caption text for TikTok / Instagram Reel / Instagram Post templates. title: Title text for YouTube Shorts / YouTube video templates. music_path: Absolute path to background music file. outro_path: Absolute path to outro video file (YouTube template only).

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNo
captionNo
durationNo
templateYes
input_pathNo
music_pathNo
outro_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden, and it does disclose the key trait: no video is processed, and it returns operations, duration, resolution, and file size. It omits other traits an agent would want — whether the tool is read-only, whether invalid template names error out, and any cost or 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The opening two sentences are tightly front-loaded with purpose and scope. The Args block is somewhat verbose and uses Python-docstring styling, but every line adds parameter meaning given the 0% schema coverage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter, annotation-less tool, the definition covers behavior, non-destructive scope, and every parameter, and the existing output schema absorbs return-format detail. Minor gaps remain around error behavior and per-template parameter constraints, but nothing critical to correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: the Args block gives meaning to all 7 parameters, enumerates valid template values (tiktok, youtube-shorts, instagram-reel, youtube, instagram-post), explains input_path's role and overrides like duration, and notes template-specific applicability for caption, title, and outro_path.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (preview/analyze) plus resource (video template) and explicitly bounds the scope with 'without actually processing any video.' It distinguishes itself from render-type siblings by concept, though it never names an alternative such as video_workflow_render or video_preview directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'before rendering' implies the usage moment (dry-run prior to a render), which is meaningful context. However there is no explicit when-to-use/when-not guidance and no named alternatives among the many render/preview siblings, so usage must be inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_text_animatedBInspect

Add animated text to video.

Overlay text with animation effects (fade, slide, etc.).

Args: input_path: Absolute path to input video. text: Text to display. output_path: Absolute path for output video. animation: Animation type (fade, slide-up, typewriter). Default fade. font: Font family. Default Arial. size: Font size. Default 48. color: Text color. Default white. position: Text position. Default center. start: Start time in seconds. Default 0. duration: Display duration. Default 3.0.

Returns: Dict with success status and output_path.

ParametersJSON Schema
NameRequiredDescriptionDefault
fontNoArial
sizeNo
textYes
colorNowhite
startNo
durationNo
positionNocenter
animationNofade
input_pathYes
output_pathNo
typewriter_speedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full disclosure burden. It clarifies the return shape ('Dict with success status and output_path') and default values, but never says whether the source video is overwritten, what happens when output_path is omitted (its schema default is null), or any permission/overwrite semantics for this mutation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with a purpose sentence, followed by a clean Args list and a returns note. Slightly boilerplate, but every line carries information and nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be detailed, and most parameters are covered. However, for an 11-parameter mutation tool with no annotations, the missing typewriter_speed and absence of any write/overwrite behavior leave real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the prose must compensate, and it largely does: it explains 10 of the 11 parameters including the animation enum-like values (fade, slide-up, typewriter) that the schema lacks. It omits typewriter_speed entirely, but the added meaning is well above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Add animated text to video') and clarifies via 'Overlay text with animation effects.' It is clearly a text-overlay tool, but it never names its nearest sibling (video_add_text) to explain how the animated variant differs from the plain one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no exclusions, and no reference to the many text/overlay siblings (video_add_text, video_subtitles, video_watermark). The agent must infer that this is the animated-text option purely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_thumbnailBInspect

Extract a single frame (thumbnail / frame grab) from a video.

Args: input_path: Absolute path to the input video. timestamp: Time in seconds to extract frame. Defaults to 10% of video duration. output_path: Where to save the frame image. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
timestampNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does add useful behavior beyond the schema — timestamp defaults to 10% of duration and output_path is auto-generated when omitted — but says nothing about output image format, overwrite behavior, or failure/error conditions for a file-writing operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded one-line purpose followed by a clean per-argument list; every line earns its place. Slightly verbose as an 'Args:' block but well organized and free of filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, the definition leaves the agent unable to distinguish this from sibling frame-extraction tools and omits output image format, which is a real gap for a 3-parameter file-producing 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?

Schema description coverage is 0%, so the description must compensate, and it does: input_path is specified as an absolute path, timestamp as seconds with a meaningful default, and output_path as optional with auto-generation. This covers all three parameters, though it doesn't say what format or unit the timestamp string form takes.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (extract) and resource (single frame / thumbnail) from a video, and bundles the synonyms 'thumbnail / frame grab' to remove ambiguity. It does not differentiate itself from very close siblings such as video_extract_frame or video_seek_frame, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use / when-not-to-use guidance and no mention of the near-identical siblings (video_extract_frame, video_seek_frame, video_export_frames). Usage is only implied by the purpose line, which is the minimum for a tool with such crowded alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_timeline_edit_planCInspect

Plan explicit or ordinary-person timeline edits as a reviewable EDL and diff.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the full behavioral burden. It discloses that the output is a reviewable EDL and diff, but says nothing about whether it reads or writes project state, what permissions it needs, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler text. Every word contributes to stating the action and result.

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 an output schema covering return values, the description is incomplete for a complex planning tool with an opaque request parameter and no annotations. It fails to explain what inputs are required or how the plan is produced.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has a single 'request' object with 0% description coverage, and the description provides no information about its expected contents or structure. The phrase 'explicit or ordinary-person timeline edits' is too vague to qualify as 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?

States a specific verb ('Plan') and resource ('timeline edits') and names the output artifact ('reviewable EDL and diff'). It distinguishes itself from execution-oriented siblings like video_edit by framing the operation as planning, though it does not explicitly name an alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. The description only states what it does, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_timeline_ir_validateCInspect

Validate Timeline IR and compile to render DAG (P3.0).

Semantic timelines (shots/silences/words) also get agent-visible text (N2).

ParametersJSON Schema
NameRequiredDescriptionDefault
timelineYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It says the tool validates and compiles, and that semantic timelines produce agent-visible text, but it does not disclose what a validation failure looks like, whether the operation is read-only or mutating (compiling to a DAG could be either), whether it consumes resources, or what the output schema contains. The 'P3.0' and 'N2' references are unexplained internal tags.

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 short but poorly structured: it front-loads an unexplained internal code 'P3.0' and ends with a cryptic parenthetical about 'N2'. Two sentences, but neither is self-contained, and the internal jargon wastes the limited space that should explain the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. However, with a nested, undocumented required parameter, no annotations, and a compound behavior (validate + compile), the description leaves critical information missing: what the input timeline looks like, what compilation means, and how this validate differs from the many other validate siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one required parameter, 'timeline', with schema description coverage of 0% — the schema only says it is an object with additionalProperties true and gives no hint of expected shape. The description does not compensate: it never explains what a Timeline IR object should contain, what fields are required, or what semantic vs. non-semantic timelines look like structurally. This is a genuine gap that will cause invocation errors.

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 states a verb ('validate') and a resource ('Timeline IR') and adds that it compiles to a render DAG, which is clear enough on its own. But it doesn't distinguish this tool from siblings like video_cutfile_validate, video_workflow_validate, or sound_plan_validate, nor does it explain what 'Timeline IR' is in this ecosystem. An agent would struggle to know when this validate applies versus the other validate tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use guidance, no mention of prerequisites (e.g., that a timeline must first exist), and no routing to or from related tools like video_semantic_timeline or video_timeline_edit_plan. The mention that semantic timelines 'also get agent-visible text (N2)' hints at a behavioral mode but does not tell the agent when to prefer this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_translate_captionsCInspect

Translate SRT captions with honest language-coverage reporting (EN→ES first).

ParametersJSON Schema
NameRequiredDescriptionDefault
input_pathYes
output_pathNo
source_langNoen
target_langNoes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'honest language-coverage reporting', which is a behavioral trait, but it does not disclose file overwrite behavior, output format, required credentials, or what happens if output_path is omitted. The description leaves most behavioral context 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?

The description is a single front-loaded sentence that states the action first and adds a qualifier. It is efficient, though its extreme brevity contributes to the missing guidance rather than being a model of well-structured completeness.

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?

With four parameters at 0% schema description coverage and no annotations, the description is not complete enough for reliable invocation. It states the purpose but omits parameter semantics, usage context, and behavioral details that an agent would need to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for four undocumented parameters. It only implies language direction via 'EN→ES first', which loosely maps to source_lang and target_lang defaults, but says nothing about input_path, output_path, or their formats and roles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: 'Translate SRT captions', and adds a scope qualifier 'with honest language-coverage reporting (EN→ES first)'. It is clear what the tool does, but it does not distinguish itself from siblings like video_ai_transcribe, video_dub_plan, or video_generate_subtitles, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit when-to-use or when-not-to-use guidance, and it does not name any alternative tool. 'EN→ES first' hints at an initial language pair but does not explain when this tool should be chosen over other translation or subtitle-generation siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_trimAInspect

Trim a video clip by start time and duration. Returns JSON {success, output_path} pointing at the rendered clip. Use to cut a segment out of a longer video. Pass input_path as the absolute path to the source video (e.g. from video_info), start as a timestamp, and duration or end to define the segment.

Args: input_path: Absolute path to the input video. start: Start timestamp (e.g. '00:02:15') or numeric seconds (e.g. 10.5). duration: Duration to keep (e.g. '00:00:30' or '30'). Exclusive with end. end: End timestamp. Exclusive with duration. output_path: Where to save the trimmed video. Auto-generated if omitted. accurate: Frame-accurate seeking (slower). Default False uses fast input seeking which may land on the nearest keyframe.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNo
startNo0
accurateNo
durationNo
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does well: it discloses the JSON return shape, that output_path is auto-generated when omitted, that duration and end are mutually exclusive, and that accurate=False uses fast seeking which may land on the nearest keyframe. It stops short of covering overwrite behavior, failure modes, or permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and return value, then the argument list; the Args section partly restates the schema but adds real semantic value (formats, exclusivity, keyframe caveat), so little is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter mutation tool with no annotations, the description covers purpose, usage context, every parameter's semantics, the return payload, and a non-obvious quality/performance tradeoff. An output schema exists, so return values need not be elaborated further.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: every one of the six parameters is documented with accepted formats (absolute path, '00:02:15' or numeric seconds), exclusivity rules, and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Trim a video clip by start time and duration') plus the return shape, which separates it cleanly from siblings like video_split_screen, video_merge, or video_export_frames.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear context ('Use to cut a segment out of a longer video') and even points to video_info as the source of input_path, but never names a competing tool or states when not to use this one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_validate_text_layoutAInspect

Validate a set of text overlays for visual failure modes before rendering.

Checks for: text overlap, low contrast, unsafe positioning, excessive sequential overlays, and missing shadows.

Args: overlays: List of overlay specs with keys: text, position, size, color, shadow (optional), start_time (optional), duration (optional). video_width: Video width in pixels. video_height: Video height in pixels. background_color: Background hex color for contrast checking.

Returns: dict with warnings list and clean boolean.

ParametersJSON Schema
NameRequiredDescriptionDefault
overlaysYes
video_widthNo
video_heightNo
background_colorNo#000000

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations, so the description carries the full burden. It discloses the failure modes checked and the return shape (warnings list, clean boolean), which implies a non-mutating validation. However, it never explicitly states that overlays are not modified, whether it requires an existing render context, or any permission/latency characteristics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded purpose sentence, then a compact bullet-style checks list and structured Args/Returns blocks. The Args/Returns are justified given zero schema description coverage; no filler sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, checks performed, all four params, and the return contract even though an output schema exists. The main remaining gap is the absence of explicit non-mutating/cost guidance for a tool with no annotations, but the essentials an agent needs to invoke it are 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?

Schema description coverage is 0% and the nested overlay item schema is untyped, so the description is the only documentation of the overlay spec keys (text, position, size, color, shadow, start_time, duration) and their optionality. It also names the three scalar params, though it adds little beyond the schema's titles/defaults for those.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (Validate) plus resource (text overlays) and scope (visual failure modes, pre-render). The enumerated checks (overlap, contrast, unsafe positioning, sequential overlays, missing shadows) make it unambiguous and distinguish it from siblings like video_add_text or video_subtitles_styled.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 'before rendering' implies the workflow position, but there is no explicit when-to-use/when-not-to-use guidance or named alternative (e.g., video_preflight, video_quality_check, video_design_quality_check). Usage is inferable but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_verdictCInspect

Persist exact-asset analysis; approvals require active human evidence.

ParametersJSON Schema
NameRequiredDescriptionDefault
verdictYes
project_dirYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden, and it discloses only the approval-gating rule (human evidence required). It does not say whether this is a write/mutation, whether existing verdicts are overwritten, what permissions are needed, or any error conditions – substantial gaps for a persistence tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single terse sentence with no filler, which is structurally efficient, but the terseness borders on under-specification rather than genuine conciseness given the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, but for a tool with a nested undocumented parameter, no annotations, and an ambiguous purpose, the description is far too thin to let an agent call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for two required parameters, one of which is a nested, open-ended (additionalProperties: true) verdict object. The description supplies no meaning for "verdict" or "project_dir", leaving the most complex input entirely undocumented.

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 says "Persist exact-asset analysis" – the verb "persist" is discernible, but the resource ("exact-asset analysis") is opaque jargon and the nature of a "verdict" is never explained. It does nothing to distinguish this tool from the many evaluation/decision siblings such as video_review_decision, video_review_decide, or video_acceptance_eval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Approvals require active human evidence" hints at a precondition for approval verdicts but gives no when-to-use guidance, no exclusions, and no routing to alternative decision-recording tools. An agent cannot infer from this text when to call video_verdict versus any of the review/gate siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_visual_transform_planCInspect

Plan subject/camera analysis, reframing, or stabilization with crop budgets.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It indicates a planning action rather than execution, but does not disclose side effects, permissions, whether it is read-only, or what the plan contains beyond 'crop budgets'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler. It immediately states the action and scope, making it easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. However, the opaque request object, absent annotations, and lack of usage guidance leave the agent without enough information to construct a valid request or confidently choose this tool over its many siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has a single opaque 'request' object with 0% description coverage and additionalProperties true. The description names relevant concepts (subject/camera analysis, reframing, stabilization, crop budgets) but does not map them to any request fields or explain how to structure the request.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 ('Plan') and lists concrete transformation types (subject/camera analysis, reframing, stabilization) with crop budgets. It is clear enough to distinguish a planning tool from execution siblings, but it does not explicitly differentiate itself from video_stabilize, video_crop, or video_punch_zoom_plan.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance. The phrase 'Plan ... with crop budgets' implies a planning context, but no alternatives or preconditions are named, leaving the agent to infer when this tool is preferable to direct tools like video_stabilize or video_crop.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_watermarkAdd video watermarkA
Destructive
Inspect

Overlay an image watermark onto an existing video and render a new output file. The video and watermark image are read only; output_path is created or overwritten. Supports named, pixel, and percentage positions plus opacity, margin, CRF, and preset controls.

ParametersJSON Schema
NameRequiredDescriptionDefault
crfNoOptional FFmpeg CRF override from 0 to 51, where lower means higher quality.
marginNoNon-negative edge margin in pixels for named positions.
presetNoOptional FFmpeg encoding preset: ultrafast, fast, medium, slow, or veryslow.
opacityNoWatermark opacity from 0.0 fully transparent to 1.0 fully opaque.
positionNoWatermark position: named position such as bottom-right, pixel dict {"x": 100, "y": 50}, or percentage dict {"x_pct": 0.5, "y_pct": 0.5}.bottom-right
image_pathYesAbsolute path to an existing local image file used as an overlay or watermark.
input_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=true, so the mutation profile is covered. The description usefully adds that both inputs are read-only and that output_path is created or overwritten, plus that positioning/opacity/CRF/preset controls exist. It does not disclose re-encoding cost or that the render is a full transcode, which would round this out.

Agents need to know what a tool does to the world before 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, and the core action plus the overwrite side effect are front-loaded. Every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation, and all 8 parameters are documented. The description covers action, inputs, output mutation, and available controls, so it is close to complete; only rendering-cost/permission context is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter (crf, margin, preset, opacity, position, image_path, input_path, output_path) is already documented in the schema. The description only summarizes the same controls without adding format or range detail, which is the expected baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('overlay an image watermark onto an existing video and render a new output file'), so an agent can tell it apart from text-overlay siblings like video_add_text or generic video_overlay. It stops short of explicitly naming or contrasting a sibling, which is what a 5 would require.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the phrase 'existing video' plus an image source, but there is no explicit when-to-use guidance, no prerequisites, and no routing away from near-neighbors such as video_add_text, video_overlay, or video_composite_layers. Adequate but leaves selection to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_workflow_inspectAInspect

Summarize any receipt this project emits, with a read-only integrity check.

Reads a workflow render receipt, a dry-run workflow_plan artifact, or a layer_plan receipt (v1 legacy with NO receipt_kind field, or v2) at receipt_path and returns a NORMALIZED inspection: the kind (inferred from the tool field when receipt_kind is absent, per legacy tolerance), schema_version, tool, versions, a status summary (per-step statuses, failed step + error if any), a hash presence/integrity report (which recorded source/output hashes still match the bytes on disk NOW — a read-only re-check), outputs, warnings, cleanup state, plus human-review pointers and known limitations.

Nothing is rendered or modified. A malformed/unreadable receipt fails closed with invalid_workflow_receipt.

Args: receipt_path: Absolute path to the receipt JSON file to inspect. compare_path: Optional second receipt; when set, also return a diff (N3).

ParametersJSON Schema
NameRequiredDescriptionDefault
compare_pathNo
receipt_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so well: 'Nothing is rendered or modified', it performs a read-only re-check of hashes against current on-disk bytes, tolerates legacy receipts with no receipt_kind, and fails closed with a named error code. Mutation side-effects, failure mode, and integrity semantics are all disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the one-line purpose before the detailed paragraph, and the Args section is tidy. Slightly verbose with some restatement of receipt kinds and output fields, but nearly every sentence adds decision-relevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only inspection tool with an output schema, this covers inputs, the normalization/integrity behavior, error handling, and legacy tolerance without needing to restate return structure. An agent has everything required 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?

Schema coverage is 0%, so the description must compensate, and it does: receipt_path is described as an absolute path to the receipt JSON, and compare_path as an optional second receipt that triggers an additional diff (N3). It adds the 'absolute' constraint and the conditional diff behavior the bare schema lacks.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: summarize/inspect any workflow receipt, and enumerates the exact artifact types it accepts (render receipt, dry-run workflow_plan, v1/v2 layer_plan). This clearly separates it from siblings like video_workflow_validate, video_workflow_plan, and video_workflow_render without needing 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?

Gives clear context for when it applies (inspecting already-emitted receipts, read-only) and notes fail-closed behavior on malformed input. It does not explicitly name an alternative tool or state when NOT to use it versus video_workflow_validate or video_rescue_inspect, leaving a small routing gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_workflow_planAInspect

Produce a no-render plan for an agent workflow job-spec.

Validates the spec first (fail-closed) and then builds a dry-run plan artifact WITHOUT rendering any media: the ordered operation graph, per-source ffprobe results (duration/resolution/codec) and sha256 content hashes where the source file exists, declared output intents, a variant-expansion summary, tool + FFmpeg versions, and warnings for runtime concerns that are not structural errors (e.g. a source file that does not exist yet). The only file written is the optional plan JSON at save_plan; paths inside the artifact are workspace-relative.

Pass variant to plan a single named batch variant: the plan reflects that variant's EFFECTIVE (post-override) steps and auto-named output paths and records workflow.variant. An unknown variant or malformed override fails closed (invalid_workflow_variant).

Returns the plan artifact on success. On a structurally invalid spec it fails closed with a specific error code (same codes as video_workflow_validate).

Args: spec_path: Absolute path to the workflow job-spec JSON file. save_plan: Optional path to write the plan artifact as JSON. variant: Optional declared variant id to plan its effective steps.

ParametersJSON Schema
NameRequiredDescriptionDefault
variantNo
save_planNo
spec_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so well: it discloses fail-closed validation, that no media is rendered, exactly what the artifact contains, that the only file written is the optional plan JSON, workspace-relative path semantics, behavior of unknown/malformed variants (invalid_workflow_variant), and the distinction between warnings and structural errors. This is rich behavioral disclosure well beyond the 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 purpose is front-loaded in the first sentence and each subsequent paragraph covers a distinct concern (artifact contents, variant handling, return/failure behavior, arg list). It is dense and somewhat long, but nearly every sentence earns its place; minor trimming of the artifact enumeration could tighten it further.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 of this complexity with an output schema present, the description need not explain return values, and it doesn't. It covers spec validation, artifact contents, variant semantics, failure modes, and parameter usage, leaving an agent with 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.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate and it does: spec_path is 'Absolute path to the workflow job-spec JSON file', save_plan is an optional JSON artifact path, and variant is a declared variant id whose effective steps and auto-named output paths are reflected in the plan. All three parameters gain meaning the bare schema lacks.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Produce a no-render plan for an agent workflow job-spec,' and immediately distinguishes itself from the render sibling by emphasizing 'WITHOUT rendering any media'. It also differentiates from video_workflow_validate by noting the shared error codes and the added plan-building step, so an agent can tell the three workflow tools apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 frames the dry-run planning use case and explains when to pass 'variant' (to plan a single named batch variant's effective post-override steps). It gives strong context but does not explicitly name a sibling alternative or state a when-not-to-use condition (e.g. 'use video_workflow_render to actually render'), leaving that inference to the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_workflow_renderAInspect

Execute an agent workflow job-spec and return a provenance receipt.

Validates the spec first (fail-closed), then runs each allowlisted op (probe|trim|resize|convert|merge|add_text|composite_layers) SEQUENTIALLY in spec order via the backing engine functions. Intermediates are written to a per-run @work directory unique to this invocation and cleaned on success (kept on failure); final media lands at the declared @outputs paths.

Batch variants: pass variant=<id> to render one declared variant (its overrides patch the shared steps/outputs, and the single @outputs path is auto-named with the variant id so N variants emit N distinct outputs); the receipt records workflow.variant. Pass all_variants=True to render EVERY declared variant in turn and return a workflow_batch summary (one receipt per variant, each into its own @work dir); use save_receipt_dir to also write each variant's receipt to <dir>/<variant>.json. variant and all_variants are mutually exclusive. Pass keep_intermediates=True to retain @work intermediates even on success (recorded as the keep-intermediates cleanup policy).

Pass resume_receipt (a prior render receipt from a job that failed with its intermediates kept) to RESUME: the current spec_hash must equal the receipt's (else fail-closed resume_spec_mismatch) AND, for a variant, the receipt's variant must match (else resume_variant_mismatch); each step whose recorded status is completed AND whose recorded input hashes still match AND whose recorded output file still exists and re-hashes to the recorded hash is SKIPPED, and the first step failing any check plus everything after it re-runs.

Returns a workflow receipt (receipt_kind: "workflow") capturing tool + FFmpeg versions, the spec hash, per-source probes/hashes, per-step status with real sha256 hashes of every consumed input and produced output, the cleanup manifest, and the determinism-scope caveat. On the first failing step it fails closed: the failure is recorded on the receipt (still written to save_receipt when given) and surfaced as a structured error.

Args: spec_path: Absolute path to the workflow job-spec JSON file. resume_receipt: Optional path to a prior render receipt to resume from. save_receipt: Optional path to write the workflow receipt as JSON. keep_intermediates: Retain @work intermediates even on success. variant: Optional declared variant id to render a single variant. all_variants: Render every declared variant and return a batch summary. save_receipt_dir: With all_variants, directory for per-variant receipts.

ParametersJSON Schema
NameRequiredDescriptionDefault
variantNo
spec_pathYes
all_variantsNo
save_receiptNo
resume_receiptNo
save_receipt_dirNo
keep_intermediatesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden and meets it: fail-closed validation, sequential op execution, intermediates written to a per-run @work dir and cleaned on success but kept on failure, final media at @outputs, per-step hashing/determinism caveat, and precise resume skip logic with named error codes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and the core execution/cleanup contract are front-loaded, followed by mode-specific paragraphs. Every sentence carries information, but the density and heavy parenthetical formatting make it longer than strictly necessary for skimming.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, yet the description still characterizes the receipt shape (receipt_kind, versions, hashes, cleanup manifest) and covers failure, resume, and batch behavior. For a 7-param, no-annotation, high-complexity tool, nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate and does: the Args section defines each of the 7 parameters, and inline prose explains the semantics of variant (auto-named outputs, recorded in workflow.variant), all_variants, save_receipt_dir, keep_intermediates, and resume_receipt beyond what any name implies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: executes a workflow job-spec and returns a provenance receipt. An agent can tell it apart from the many single-op siblings (video_trim, video_merge). However, it never distinguishes itself from the closest siblings video_workflow_validate, video_workflow_plan, and video_workflow_inspect, leaving the workflow-family routing 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit invocation guidance for the important modes: variant vs all_variants (mutually exclusive), keep_intermediates, and when to pass resume_receipt. It does not say when to call this render tool rather than video_workflow_validate/plan/first-validate, so the when-not/alternative dimension is incomplete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_workflow_validateAInspect

Validate an agent workflow job-spec without rendering any media.

Runs the fail-closed structural validator over the JSON job-spec at spec_path: op allowlist (probe|trim|resize|convert|merge|add_text|composite_layers), symbolic @ref resolution (@sources., @work/, @outputs.), backward-reference-only ordering (a step may reference @work outputs from strictly-earlier steps only), per-op param introspection, and workspace-confined path safety (absolute paths and ../ / symlink escapes fail closed).

Returns a structured verdict ({"valid": true, ...}) on success. On any structural violation it fails closed with a specific error code (invalid_workflow_spec, unknown_workflow_ref, unsupported_workflow_op, unsafe_workflow_source, invalid_workflow_params).

Args: spec_path: Absolute path to the workflow job-spec JSON file.

ParametersJSON Schema
NameRequiredDescriptionDefault
spec_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so richly: fail-closed semantics, the op allowlist, symbolic @ref resolution rules, backward-reference-only ordering, path-safety confinement (absolute/../symlink escapes fail closed), and the exact error codes returned on violation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and mode, then organized into validator behaviors and error codes. Dense but nearly every clause adds actionable information; the multi-line formatting is slightly heavier than needed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 validation tool, the definition covers purpose, validation scope, failure modes, and error codes. An output schema exists, yet the description still usefully sketches the verdict shape, leaving nothing an agent needs 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 0% for the single parameter, but the description compensates by stating that spec_path is an absolute path to a workflow job-spec JSON file, adding format and content expectations beyond the bare 'string' 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 (validate) and resource (agent workflow job-spec), and explicitly distinguishes itself from the render path with 'without rendering any media'. An agent can immediately separate it from video_workflow_render and video_workflow_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 'without rendering any media' phrasing clearly signals the pre-render validation context and implicitly routes actual rendering to video_workflow_render. However, no sibling is named explicitly and there is no explicit when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

video_write_metadataBInspect

Write metadata tags to a video/audio file.

Args: input_path: Absolute path to the input file. metadata: Dict of tag key-value pairs (e.g. {'title': 'My Video', 'artist': 'Me'}). output_path: Where to save the output. Auto-generated if omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
metadataYes
input_pathYes
output_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It usefully discloses that output_path is auto-generated when omitted (a real behavioral detail beyond the schema's default), but says nothing about overwrite semantics, supported containers/formats, or whether the source file is modified in place.

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 one-line purpose is front-loaded ahead of the argument notes, and the Args block is compact and justified given the zero schema coverage. Slightly repetitive of the schema structure, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, and all three parameters are covered. Yet for a mutation tool with no annotations, the absence of any note on overwriting, format support, or read/write pairing leaves meaningful gaps for an agent deciding how to call it safely.

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 0%, so the description must compensate, and it does: input_path is defined as an absolute path, metadata as a dict of tag key-value pairs with a concrete example, and output_path's auto-generation behavior is explained. Only the accepted tag keys/format remain unspecified, which is inherently open-ended.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (write) and resource (metadata tags) against a clear object (video/audio file), and implicitly contrasts with the sibling video_read_metadata. However, it never names an alternative or explicitly disambiguates, 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 explains only what the tool does, not when to prefer it over video_read_metadata or when metadata writing is appropriate. No prerequisites, no exclusions, no alternatives are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 203 tool updatesv1.16.0
    • Changedaudio_compose1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedaudio_effects1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedaudio_preset1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedaudio_sequence1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedaudio_synthesize1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedeffect_chromatic_aberration1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedeffect_glow1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedeffect_noise1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedeffect_scanlines1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedeffect_vignette1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_cmyk_split1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_datamoshing1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_depth_splatting1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_digital_feedback1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_macroblocking1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_point_cloud1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_rgb_shift1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_scanline_jitter1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_screen_tearing1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_slit_scan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_turbulent_displacement1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedglitch_vhs_tracking1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_add_block1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_benchmark1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_capture1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_catalog1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_compositions1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_doctor1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_info1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_init1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_inspect1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_preview1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_remove_background9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / equipment_overlay
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Equipment Overlay"
        +}
      • addedInput schema / properties / fail_if_equipment_on_subject
        Added value: +{
        +  "default": false,
        +  "title": "Fail If Equipment On Subject",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / input_path / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / input_path / default
        Added value: +null
      • removedInput schema / properties / input_path / type
        Removed value: -"string"
      • addedInput schema / properties / mask_interval
        Added value: +{
        +  "default": 1,
        +  "title": "Mask Interval",
        +  "type": "integer"
        +}
      • addedInput schema / properties / model
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Model"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "input_path"
        -]
    • Changedhyperframes_render1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_snapshot1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_still1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_to_mcpvideo1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_transcribe1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_tts1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedhyperframes_validate1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedimage_analyze_product1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedimage_edit
    • Changedimage_extract_colors1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedimage_generate_palette1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedrevideo_install
    • Addedrevideo_materialize
    • Addedrevideo_render
    • Addedrevideo_render_job
    • Changedsearch_tools1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedshorts_package
    • Addedshorts_plan_show
    • Addedshorts_render
    • Addedshorts_review
    • Changedshot_prompt_render1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedsound_capabilities
    • Addedsound_master_render
    • Addedsound_mix_render
    • Addedsound_plan_validate
    • Addedsound_qa_asr
    • Addedsound_qa_loudness
    • Addedsound_voice_batch
    • Addedstill_gate
    • Addedstill_grade
    • Addedstill_match
    • Addedstill_package
    • Changedstoryboard_read1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedstyle_pack_read1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedtransition_glitch1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedtransition_morph1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedtransition_pixelate1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_acceptance_eval
    • Changedvideo_add_audio2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / duration_policy
        Added value: +{
        +  "default": "keep_video",
        +  "description": "How to reconcile audio and video length: keep_video (default, preserves the full video/outro), pad_audio, loop_audio, trim_audio, or shortest (may trim the outro).",
        +  "title": "Duration Policy",
        +  "type": "string"
        +}
    • Changedvideo_add_generated_audio1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_add_text1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_add_texts1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_color_grade1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_remove_silence1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_scene_detect1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_stem_separation1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_transcribe1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_ai_upscale1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_analyze1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_apply_mask1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_audio_bed
    • Changedvideo_audio_spatial1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_audio_waveform1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_audiogram_plan
    • Changedvideo_auto_chapters1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_batch1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_benchmark_run
    • Addedvideo_body_swap
    • Addedvideo_brand_kit
    • Addedvideo_capabilities
    • Changedvideo_chroma_key1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_cleanup1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_compare_quality1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_composite_layers1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_composition_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_convert3 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / target_bitrate
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Target Bitrate"
        +}
      • addedInput schema / properties / two_pass
        Added value: +{
        +  "default": false,
        +  "title": "Two Pass",
        +  "type": "boolean"
        +}
    • Addedvideo_cost_ledger
    • Changedvideo_create_from_images1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_creative_autopilot_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_crop1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_cutfile_render
    • Addedvideo_cutfile_validate
    • Changedvideo_design_quality_check1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_detect_scenes1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_dub_plan
    • Changedvideo_duck_audio1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_edit1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_edit_session
    • Addedvideo_estimate_operation
    • Changedvideo_export2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / c2pa_manifest_path
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional C2PA manifest definition JSON to sign the final mp4 export.",
        +  "title": "C2Pa Manifest Path"
        +}
    • Changedvideo_export_frames1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_extract_audio1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_extract_frame4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / timestamp / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / timestamp / default
        Previous value: -0New value: +null
      • removedInput schema / properties / timestamp / type
        Removed value: -"number"
    • Changedvideo_fade1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_filter1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_find_moments
    • Changedvideo_fix_design_issues1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_generate_subtitles1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_generative_plan
    • Changedvideo_hls_segment1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_hook_candidates
    • Changedvideo_info1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_info_detailed1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_ingest
    • Addedvideo_init_project
    • Addedvideo_inspect_temporal
    • Addedvideo_intent
    • Addedvideo_language_coverage
    • Changedvideo_layout_grid1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_layout_pip1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_learning_report
    • Changedvideo_luma_key1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_merge1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_metric_qc
    • Addedvideo_mix_audio
    • Changedvideo_mograph_count1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_mograph_progress1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_normalize_audio4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / fade_seconds
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Fade Seconds"
        +}
      • addedInput schema / properties / lra
        Added value: +{
        +  "default": 11,
        +  "title": "Lra",
        +  "type": "number"
        +}
      • addedInput schema / properties / true_peak_dbtp
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "True Peak Dbtp"
        +}
    • Addedvideo_otio_export
    • Addedvideo_otio_import
    • Changedvideo_overlay1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_preflight
    • Changedvideo_preview1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_project_create1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_project_recipe_export
    • Addedvideo_project_recipe_replay
    • Addedvideo_propose_broll
    • Addedvideo_propose_mutations
    • Addedvideo_publish_gate
    • Addedvideo_publish_validate
    • Addedvideo_punch_zoom_plan
    • Addedvideo_qc_narrative
    • Addedvideo_qc_vision
    • Changedvideo_quality_check1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_read_metadata1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_recipe_capture
    • Addedvideo_record_motion_acceptance
    • Changedvideo_release_checkpoint2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / require_audio
        Added value: +{
        +  "default": true,
        +  "title": "Require Audio",
        +  "type": "boolean"
        +}
    • Changedvideo_remote_egress_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_repurpose4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / min_score / default
        Previous value: -0New value: +80
      • addedInput schema / properties / moment_selection_record_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Moment Selection Record Id"
        +}
      • addedInput schema / properties / start_job
        Added value: +{
        +  "default": true,
        +  "title": "Start Job",
        +  "type": "boolean"
        +}
    • Changedvideo_repurpose_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_rescue_inspect1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_rescue_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_rescue_render1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_resize1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_restoration_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_reverse1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_review_decide
    • Addedvideo_review_decision
    • Addedvideo_review_package
    • Addedvideo_review_run
    • Addedvideo_review_ui
    • Changedvideo_rotate1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_salvage
    • Addedvideo_seek_frame
    • Changedvideo_semantic_query1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_semantic_timeline1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_shape_mask1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_speed1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_split_screen1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_stabilize1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_storyboard1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_subtitles2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / style
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Style"
        +}
    • Changedvideo_subtitles_styled1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_template_preview1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_text_animated1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_thumbnail1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_timeline_edit_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_timeline_ir_validate
    • Addedvideo_translate_captions
    • Changedvideo_trim5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / duration / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / end / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / start / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "number"
        +  }
        +]
      • removedInput schema / properties / start / type
        Removed value: -"string"
    • Changedvideo_validate_text_layout1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Addedvideo_verdict
    • Changedvideo_visual_transform_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_watermark1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_workflow_inspect2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / compare_path
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Compare Path"
        +}
    • Changedvideo_workflow_plan1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_workflow_render1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_workflow_validate1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedvideo_write_metadata1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
  2. 20 tool updatesv1.6.0
    • Changedvideo_ai_color_grade1 field changed
      • addedInput schema / properties / lut_path
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Lut Path"
        +}
    • Addedvideo_composite_layers
    • Addedvideo_composition_plan
    • Changedvideo_convert1 field changed
      • changedInput schema / properties / format / description
        Previous value: -"Target output format. Supported values are mp4, webm, gif, and mov."New value: +"Target output format: mp4, webm, gif, mov, hevc, av1, or prores."
    • Addedvideo_creative_autopilot_plan
    • Addedvideo_duck_audio
    • Removedvideo_generate_music
    • Addedvideo_remote_egress_plan
    • Addedvideo_rescue_inspect
    • Addedvideo_rescue_plan
    • Addedvideo_rescue_render
    • Addedvideo_restoration_plan
    • Addedvideo_semantic_query
    • Addedvideo_semantic_timeline
    • Addedvideo_timeline_edit_plan
    • Addedvideo_visual_transform_plan
    • Addedvideo_workflow_inspect
    • Addedvideo_workflow_plan
    • Addedvideo_workflow_render
    • Addedvideo_workflow_validate
  3. 113 tool updatesv1.5.1
    • Addedaudio_compose
    • Addedaudio_effects
    • Addedaudio_preset
    • Addedaudio_sequence
    • Addedaudio_synthesize
    • Addedeffect_chromatic_aberration
    • Addedeffect_glow
    • Addedeffect_noise
    • Addedeffect_scanlines
    • Addedeffect_vignette
    • Addedglitch_cmyk_split
    • Addedglitch_datamoshing
    • Addedglitch_depth_splatting
    • Addedglitch_digital_feedback
    • Addedglitch_macroblocking
    • Addedglitch_point_cloud
    • Addedglitch_rgb_shift
    • Addedglitch_scanline_jitter
    • Addedglitch_screen_tearing
    • Addedglitch_slit_scan
    • Addedglitch_turbulent_displacement
    • Addedglitch_vhs_tracking
    • Addedhyperframes_add_block
    • Addedhyperframes_benchmark
    • Addedhyperframes_capture
    • Addedhyperframes_catalog
    • Addedhyperframes_compositions
    • Addedhyperframes_doctor
    • Addedhyperframes_info
    • Addedhyperframes_init
    • Addedhyperframes_inspect
    • Addedhyperframes_preview
    • Addedhyperframes_remove_background
    • Addedhyperframes_render
    • Addedhyperframes_snapshot
    • Addedhyperframes_still
    • Addedhyperframes_to_mcpvideo
    • Addedhyperframes_transcribe
    • Addedhyperframes_tts
    • Addedhyperframes_validate
    • Addedimage_analyze_product
    • Addedimage_extract_colors
    • Addedimage_generate_palette
    • Addedsearch_tools
    • Addedshot_prompt_render
    • Addedstoryboard_read
    • Addedstyle_pack_read
    • Addedtransition_glitch
    • Addedtransition_morph
    • Addedtransition_pixelate
    • Changedvideo_add_audio8 fields changed
      • addedInput schema / properties / audio_path / description
        Added value: +"Absolute path to an existing local audio file such as MP3, WAV, M4A, or AAC."
      • addedInput schema / properties / fade_in / description
        Added value: +"Non-negative fade-in duration in seconds applied to the inserted audio."
      • addedInput schema / properties / fade_out / description
        Added value: +"Non-negative fade-out duration in seconds applied near the inserted audio end."
      • addedInput schema / properties / mix / description
        Added value: +"True mixes the new audio with existing video audio; false replaces the original audio track."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / start_time / description
        Added value: +"Optional start offset in seconds where the inserted audio begins."
      • addedInput schema / properties / video_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / volume / description
        Added value: +"Audio gain from 0.0 to 2.0, where 1.0 preserves original loudness."
    • Addedvideo_add_generated_audio
    • Changedvideo_add_text4 fields changed
      • addedInput schema / properties / crf
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Crf"
        +}
      • addedInput schema / properties / position / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "additionalProperties": true,
        +    "type": "object"
        +  }
        +]
      • removedInput schema / properties / position / type
        Removed value: -"string"
      • addedInput schema / properties / preset
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Preset"
        +}
    • Addedvideo_add_texts
    • Addedvideo_ai_color_grade
    • Addedvideo_ai_remove_silence
    • Addedvideo_ai_scene_detect
    • Addedvideo_ai_stem_separation
    • Addedvideo_ai_transcribe
    • Addedvideo_ai_upscale
    • Addedvideo_analyze
    • Addedvideo_apply_mask
    • Addedvideo_audio_spatial
    • Addedvideo_audio_waveform
    • Addedvideo_auto_chapters
    • Addedvideo_batch
    • Addedvideo_chroma_key
    • Addedvideo_cleanup
    • Addedvideo_compare_quality
    • Changedvideo_convert4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"Target output format. Supported values are mp4, webm, gif, and mov."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / quality / description
        Added value: +"Encoding quality preset: low, medium, high, or ultra."
    • Addedvideo_create_from_images
    • Changedvideo_crop14 fields changed
      • addedInput schema / properties / crop_percent
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Centered crop percentage of original dimensions, such as 50 for the center 50%.",
        +  "title": "Crop Percent"
        +}
      • addedInput schema / properties / height / anyOf
        Added value: +[
        +  {
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / height / default
        Added value: +null
      • addedInput schema / properties / height / description
        Added value: +"Crop region height in pixels. Pair with width unless using crop_percent."
      • removedInput schema / properties / height / type
        Removed value: -"integer"
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / width / anyOf
        Added value: +[
        +  {
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / width / default
        Added value: +null
      • addedInput schema / properties / width / description
        Added value: +"Crop region width in pixels. Pair with height unless using crop_percent."
      • removedInput schema / properties / width / type
        Removed value: -"integer"
      • addedInput schema / properties / x / description
        Added value: +"Optional X offset in pixels. Defaults to a centered crop when omitted."
      • addedInput schema / properties / y / description
        Added value: +"Optional Y offset in pixels. Defaults to a centered crop when omitted."
      • changedInput schema / required
        Previous value: -[
        -  "input_path",
        -  "width",
        -  "height"
        -]New value: +[
        +  "input_path"
        +]
    • Addedvideo_design_quality_check
    • Addedvideo_detect_scenes
    • Changedvideo_edit3 fields changed
      • removedInput schema / properties / timeline / additionalProperties
        Removed value: -true
      • addedInput schema / properties / timeline / anyOf
        Added value: +[
        +  {
        +    "additionalProperties": true,
        +    "type": "object"
        +  },
        +  {
        +    "type": "string"
        +  }
        +]
      • removedInput schema / properties / timeline / type
        Removed value: -"object"
    • Changedvideo_export4 fields changed
      • addedInput schema / properties / format / description
        Added value: +"Output format for delivery. Supported values are mp4, webm, gif, and mov."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / quality / description
        Added value: +"Delivery quality preset: low, medium, high, or ultra."
    • Addedvideo_export_frames
    • Addedvideo_extract_frame
    • Changedvideo_fade6 fields changed
      • addedInput schema / properties / crf
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional FFmpeg CRF override from 0 to 51, where lower means higher quality.",
        +  "title": "Crf"
        +}
      • addedInput schema / properties / fade_in / description
        Added value: +"Non-negative fade-in duration in seconds from black at the start."
      • addedInput schema / properties / fade_out / description
        Added value: +"Non-negative fade-out duration in seconds to black at the end."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / preset
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional FFmpeg encoding preset: ultrafast, fast, medium, slow, or veryslow.",
        +  "title": "Preset"
        +}
    • Addedvideo_filter
    • Addedvideo_fix_design_issues
    • Addedvideo_generate_music
    • Addedvideo_generate_subtitles
    • Addedvideo_hls_segment
    • Addedvideo_info_detailed
    • Addedvideo_layout_grid
    • Addedvideo_layout_pip
    • Addedvideo_luma_key
    • Changedvideo_merge5 fields changed
      • addedInput schema / properties / clips / description
        Added value: +"Ordered absolute paths to existing video clips. Provide at least two clips; inputs are validated and never modified."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / transition / description
        Added value: +"Optional xfade transition applied to every clip boundary, such as fade, dissolve, wipeleft, wiperight, slideleft, or slideright."
      • addedInput schema / properties / transition_duration / description
        Added value: +"Duration in seconds for each transition; must fit inside neighboring clips."
      • addedInput schema / properties / transitions / description
        Added value: +"Optional per-boundary xfade transitions. Overrides transition when provided."
    • Addedvideo_mograph_count
    • Addedvideo_mograph_progress
    • Addedvideo_normalize_audio
    • Addedvideo_overlay
    • Addedvideo_project_create
    • Addedvideo_quality_check
    • Addedvideo_read_metadata
    • Addedvideo_release_checkpoint
    • Addedvideo_repurpose
    • Addedvideo_repurpose_plan
    • Addedvideo_reverse
    • Changedvideo_rotate5 fields changed
      • addedInput schema / properties / angle / description
        Added value: +"Clockwise rotation angle in degrees. Supported values are 0, 90, 180, and 270."
      • addedInput schema / properties / flip_horizontal / description
        Added value: +"Mirror the video horizontally after rotation when true."
      • addedInput schema / properties / flip_vertical / description
        Added value: +"Mirror the video vertically after rotation when true."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
    • Addedvideo_shape_mask
    • Changedvideo_speed3 fields changed
      • addedInput schema / properties / factor / description
        Added value: +"Playback speed multiplier. 2.0 is double speed, 0.5 is half speed, and 1.0 is unchanged."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
    • Addedvideo_split_screen
    • Addedvideo_stabilize
    • Addedvideo_subtitles_styled
    • Addedvideo_template_preview
    • Addedvideo_text_animated
    • Changedvideo_thumbnail1 field changed
      • changedInput schema / properties / timestamp / anyOf
        Previous value: -[
        -  {
        -    "type": "number"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • Changedvideo_trim1 field changed
      • addedInput schema / properties / accurate
        Added value: +{
        +  "default": false,
        +  "title": "Accurate",
        +  "type": "boolean"
        +}
    • Addedvideo_validate_text_layout
    • Changedvideo_watermark10 fields changed
      • addedInput schema / properties / crf
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional FFmpeg CRF override from 0 to 51, where lower means higher quality.",
        +  "title": "Crf"
        +}
      • addedInput schema / properties / image_path / description
        Added value: +"Absolute path to an existing local image file used as an overlay or watermark."
      • addedInput schema / properties / input_path / description
        Added value: +"Absolute path to an existing local video file. The input file is read only."
      • addedInput schema / properties / margin / description
        Added value: +"Non-negative edge margin in pixels for named positions."
      • addedInput schema / properties / opacity / description
        Added value: +"Watermark opacity from 0.0 fully transparent to 1.0 fully opaque."
      • addedInput schema / properties / output_path / description
        Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
      • addedInput schema / properties / position / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "additionalProperties": true,
        +    "type": "object"
        +  }
        +]
      • addedInput schema / properties / position / description
        Added value: +"Watermark position: named position such as bottom-right, pixel dict {\"x\": 100, \"y\": 50}, or percentage dict {\"x_pct\": 0.5, \"y_pct\": 0.5}."
      • removedInput schema / properties / position / type
        Removed value: -"string"
      • addedInput schema / properties / preset
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional FFmpeg encoding preset: ultrafast, fast, medium, slow, or veryslow.",
        +  "title": "Preset"
        +}
    • Addedvideo_write_metadata
  4. 19 tool updatesv0.2.0
    • First observedvideo_add_audio
    • First observedvideo_add_text
    • First observedvideo_convert
    • First observedvideo_crop
    • First observedvideo_edit
    • First observedvideo_export
    • First observedvideo_extract_audio
    • First observedvideo_fade
    • First observedvideo_info
    • First observedvideo_merge
    • First observedvideo_preview
    • First observedvideo_resize
    • First observedvideo_rotate
    • First observedvideo_speed
    • First observedvideo_storyboard
    • First observedvideo_subtitles
    • First observedvideo_thumbnail
    • First observedvideo_trim
    • First observedvideo_watermark

TDQS

C2.4/5.0

Scored across 203 tools

Disambiguation1/5

Massive tool count with numerous overlapping purposes (e.g., video_ai_scene_detect/video_detect_scenes/video_auto_chapters, video_thumbnail/video_extract_frame/video_storyboard, video_add_text/video_add_texts/video_text_animated, many plan/review/validation tools). An agent cannot reliably select the right tool without extensive trial and error.

Naming Consistency3/5

Names are all snake_case, but the verb/noun ordering is mixed (video_trim vs hyperframes_snapshot vs still_match) and prefixes span many subsystems (video_, audio_, glitch_, effect_, hyperframes_, still_, sound_, shorts_, revideo_). The pattern is readable but not predictable across the whole set.

Tool Count1/5

203 tools is an extreme mismatch for a coherent server; even for video processing, this far exceeds reasonable scope and suggests many redundant, experimental, or niche operations that clutter discovery.

Completeness4/5

The surface covers a very broad range of video, audio, effect, and planning operations, so obvious gaps are few. However, the sheer number of overlapping and partially implemented tools makes it hard to confirm true lifecycle coverage without redundancy.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers