Skip to main content
Glama

splicedeck

checks licence: Apache-2.0 Python 3.12+ runtime dependencies: 0

Ein Videobearbeitungsprogramm, das von einem KI-Agenten gesteuert wird und auf Ihrem eigenen Rechner läuft.

Ein einziger Aufruf kleidet einen Schnitt in eine Vorlage: Bewegtgrafiken, Overlays, Untertitel und ein Taktgitter, gegen das geschnitten wird. Ein einziger Durchlauf über eine Quelle liefert sowohl einen bereinigten Langform-Master als auch vertikale Clips. Und es merkt sich, wie jeder Kunde, Kanal oder jede Sendung geschnitten werden möchte, sodass der nächste Schnitt dort beginnt, wo der letzte endete.

Es gibt keine Zeitleiste zum Ziehen und kein Konto zum Erstellen. Es wird nichts hochgeladen.


Status: Die Pipeline läuft Ende-zu-Ende, und der Speicher erreicht den Schnitt

Eine Quelle wird heute zu einer ausgelieferten Datei. Gemessen auf dem Referenzrechner (Windows 11, Python 3.13, ffmpeg 8.1.2) an einer echten 223 MB .mov:

inspect   2.6 s     draft  27 ms     splice  27 ms     verify  42 ms
deliver   157 s  ->  1920×1080 h264 + aac, -23.0 LUFS, decodes clean

python -m pytest meldet 1425 bestanden, 2 übersprungen in etwa vier Minuten. Einunddreißig Verben erreichen die CLI und achtzehn davon erreichen einen MCP-Server, beide aus einer Tabelle generiert, sodass sie nicht auseinanderdriften können.

Eine Hauptfunktion funktioniert noch nicht. Das Schneiden durch Zitieren benötigt eine Sprachbinärdatei, die derzeit kein Manifest beschaffen kann. Lesen Sie Was nicht funktioniert, bevor Sie darauf planen.


Installation

Sie benötigen Python 3.12 oder neuer und ffmpeg 8.x in Ihrem PATH. splicedeck installiert noch bündelt ffmpeg, und docs/first-run.md §4 erklärt, warum das bewusst so ist.

Das Setup-Skript fragt, wohin der Arbeitsbereich geht, bietet an, ffmpeg zu installieren, nachdem es Ihnen den genauen Befehl gezeigt hat, richtet alles ein und schreibt eine MCP-Konfiguration:

curl -fsSLO https://raw.githubusercontent.com/ihuzaifashoukat/splicedeck/main/install.sh
less install.sh && bash install.sh
irm https://raw.githubusercontent.com/ihuzaifashoukat/splicedeck/main/install.ps1 -OutFile install.ps1
notepad install.ps1; powershell -ExecutionPolicy Bypass -File install.ps1

Lesen Sie es, bevor Sie es ausführen. Ein curl | bash-Einzeiler wäre eine schlechte Werbung für ein Projekt, dessen README größtenteils von einem Bedrohungsmodell handelt.

Wenn Sie es lieber selbst machen möchten oder die Tests wollen:

uv tool install splicedeck                    # or: pipx install splicedeck
git clone https://github.com/ihuzaifashoukat/splicedeck.git && cd splicedeck
python -m venv .venv
.venv/Scripts/python -m pip install -e ".[dev]"   # Windows
.venv/bin/python  -m pip install -e ".[dev]"      # macOS, Linux

Noch nicht auf PyPI. Es gibt kein Release, daher wird uv tool install splicedeck einen 404-Fehler liefern, bis der erste Tag gepusht wird. Verwenden Sie bis dahin das Skript, einen Klon oder uv tool install "git+https://github.com/ihuzaifashoukat/splicedeck.git".

docs/install.md enthält alle Wege, die plattformspezifischen ffmpeg-Befehle, die Umgebungsvariablen und eine Eingabeaufforderung, die Sie in einen KI-Agenten einfügen können, damit dieser splicedeck für Sie installiert und einrichtet.

Related MCP server: ViralSpin MCP

Ausprobieren

Der Arbeitsbereichsstamm ist das Verzeichnis, in dem Sie arbeiten, und spd init richtet einen ein:

mkdir my-edit && cd my-edit
spd init                                      # bookmarks/ casebook/ elements/ ledger/ media/ profiles/ templates/
mkdir -p casebook/parties/demo
spd ready                                     # what is present, and what each gap blocks

init überschreibt nie. Wenn Sie es erneut ausführen, nachdem Sie ein Profil bearbeitet haben, füllt es alles Fehlende auf und lässt Ihre Änderungen in Ruhe. Die geschriebenen Dateien sind byteidentisch mit denen, die dieses Repository ausliefert, und python -m checks.starter --check erzwingt das.

Legen Sie dann Ihr Filmmaterial unter media/ ab und schneiden Sie:

spd inspect --path media/your-file.mov               # mints a source handle
spd draft --party demo --source s1 --bookmark baseline --profile wide-1080
spd apply --sheet c1 --template clean-master         # overlays, motion, beat grid
spd splice --sheet c1 --source a --in_ticks 0 --out_ticks 900000 \
           --source_in_ticks 0 --cause manual
spd verify --sheet c1
spd deliver --sheet c1

Quellen müssen innerhalb des Arbeitsbereichs liegen. Ein Pfad mit einem Laufwerksbuchstaben wird mit PATH_OUTSIDE_WORKSPACE abgelehnt, bevor etwas gelesen wird.

Eine Partei wird von einem Menschen, von Hand, absichtlich erstellt. draft lehnt UNKNOWN_PARTY ab, bis casebook/parties/<name>/ existiert.

Um es von einem MCP-fähigen Assistenten aus zu steuern, registrieren Sie den Server:

{"mcpServers": {"splicedeck": {
  "command": "C:\\src\\splicedeck\\.venv\\Scripts\\python.exe",
  "args": ["-m", "splicedeck.surface.mcp"],
  "cwd": "C:\\src\\splicedeck"}}}

cwd muss der Arbeitsbereich sein, da der Arbeitsbereichsstamm das Arbeitsverzeichnis ist und nichts anderes ihn findet. python -m splicedeck.surface.mcp --tools gibt die generierte Werkzeugliste aus und beendet sich, wodurch Sie einen defekten Server von einer defekten Host-Konfiguration unterscheiden können. docs/mcp.md ist die vollständige Anleitung.

Vorlagen: Das Aussehen in einem Aufruf

apply kleidet einen Schnittplan in eine benannte Vorlage. Es platziert die Overlays, schreibt das Taktgitter, gegen das der Agent dann schneidet, und vermerkt auf dem Plan, welche Vorlage verwendet wurde.

Vier werden heute ausgeliefert:

Vorlage

Was es ist

clean-master

Ein ruhiger Talking-Head-Master mit einem unteren Drittel und keinem Taktgitter

quick-beat

Ein schneller vertikaler Schnitt: drei Taktschlitze mit einem pulsierenden Akzent auf jedem

bold-run

Ein Promo-Look: randlose Intro- und Outro-Karten um zwei Taktschlitze

bare-mark

Eine kleine Markierung auf dem Bildschirm und sonst nichts

Die Overlays einer Vorlage animieren, wenn die optionale Bewegungsebene installiert ist, und fallen auf einen statischen Abdruck zurück, wenn dies nicht der Fall ist. Sechs animierte Kompositionen werden in scenes/ ausgeliefert, die für dieses Projekt geschrieben und mit ihm lizenziert sind.

Schlitze werden erzwungen. verify weigert sich, einen Plan mit einem ungefüllten Schlitz durchzulassen, und ein Schnitt, der außerhalb der Toleranz eines Schlitzes landet, wird mit SLOT_TOO_TIGHT abgelehnt, wobei die nächstgelegenen gültigen Kanten als versandbereite Aufrufe zurückgegeben werden. Dadurch kann ein Agent einen Rhythmus treffen, den er nicht sehen kann.

Sie können Ihre eigenen schreiben. spd compose --kind template validiert und schreibt eine handgeschriebene Vorlage oder Elementkarte. Es ist bewusst nur CLI: Der MCP-Server darf nicht in templates/ schreiben, und docs/templates.md §4 erläutert die Begründung, anstatt es als Versehen zu behandeln.

Warum Speicher

Ein Schnitt besteht aus tausend kleinen Entscheidungen, und fast alle wiederholen sich. Wie lange nach einem Pointenhalter gewartet wird. Ob das Füllwort dieses Sprechers Rauschen oder Persönlichkeit ist. Wie groß Untertitel auf einem Telefon auf Armeslänge sein müssen. Ein zustandsloses Werkzeug zwingt Sie, diesen Kontext in jeder Sitzung neu bereitzustellen, weshalb „KI-Schnitt“ so oft etwas technisch Korrektes und tonal Falsches produziert.

Hier wird eine Entscheidung, die Sie einmal getroffen haben, aufgezeichnet und wiederverwendet:

subtitle.size_px = 74
  when {surface: vertical, frame: 1080x1920}
  set by  a render you shipped and kept, 2026-08-02
  before  66

Diese Aufzeichnung lebt in Ihrem Repository als überprüfbarer Text. Sie können den Diff lesen, einen falschen Eintrag durch Bearbeiten einer Zeile korrigieren und eine Änderung, die die Schnitte verschlechtert hat, mit git revert rückgängig machen. Es ist ein Verhaltensänderungsprotokoll, das am selben Ort aufbewahrt wird wie alles andere, das Sie versionieren.

Zwei Regeln halten es vertrauenswürdig:

  • Nichts Dauerhaftes wird vom Modell geschrieben. Ein Eintrag beschreibt etwas, das ein Mensch getan hat: einen Render ausgeliefert und behalten, einen Moment wiederhergestellt, den der Schnitt entfernt hat. Der Agent kann auf das zeigen, was passiert ist; er kann nicht zusammensetzen, was erinnert wird.

  • Jeder Schreibvorgang durchläuft ein menschliches Tor. Keine Präferenz wird stillschweigend gelernt.

Diese Schleife läuft heute. spd set, ship, keep, restore und discard hängen Aktionen an ein hash-verkettetes Hauptbuch einer Partei an und stellen aus jeder einen Vorschlag bereit; eine Aktion kann nicht an eine Kette angehängt werden, die nicht verifiziert. spd review fragt dann nach dem Wert blind, zeigt die Grenzen und den ausgelieferten Schnitt, aber nie die Zahl, und eine übereinstimmende Antwort wird zu einem versiegelten Fall und einer neu generierten findings.lock.txt. Der nächste draft löst dagegen auf: das Lesezeichen öffnet die Einstellungen, das Fallbuch überschreibt diejenigen, die ein Mensch festgelegt hat, und der Plan vermerkt, welche Sperre er gelesen hat.

Lokal zuerst und vollständig

Ein frischer Klon ohne API-Schlüssel und ohne Cloud-Konto produziert eine fertige, ausgelieferte Datei auf Ihrem eigenen Rechner. Das ist die Basislinie, kein heruntergestufter Modus.

Cloud-Dienste können dort eingeschaltet werden, wo sie wirklich helfen, wie eine gehostete Sprach-API für schwieriges Audio oder Diarisierung, aber nichts wird erforderlich und kein Auslieferungsgegenstand hängt davon ab. ffmpeg erledigt die Arbeit als Kindprozess. Es wird nie vendoriert und nie gelinkt.

Das Projekt weigert sich auch, über Ihre Hardware zu raten. Die Encoder-Unterstützung wird durch Testkodierung nachgewiesen, nicht durch Lesen einer Funktionsliste, da Funktionslisten lügen. Auf dem Entwicklungsrechner bewirbt ffmpeg -encoders einen NVIDIA-Encoder, der zur Laufzeit fehlschlägt, während der Intel-Encoder, der tatsächlich funktioniert, in jeder Anleitung unerwähnt bleibt.

Was funktioniert

  • Ein Analyse-Durchlauf, zwei Auslieferungen. Transkription und Analyse laufen einmal pro Quelle. Der Langform-Master und die vertikalen Clips lesen beide dieselben Ergebnisse.

  • Bildgenaues Schneiden ohne Audio-Drift. Audio bleibt bis zum Mux PCM und wird einmal kodiert. Die ausgelieferten Samples sind byteidentisch mit einer Referenzmontage, die in Python über 45 und 120 Joins erstellt wurde. Gemessen, nicht behauptet.

  • Vorlagen und Bewegung in einem Aufruf, mit einem Taktgitter, gegen das der Agent schneidet, und einem Standbild-Fallback, wenn die Bewegungsebene fehlt.

  • Untertitel, die lesbar bleiben. Größen- und Kontrastuntergrenzen werden vom Renderer durchgesetzt, und Text, der unter der eigenen Oberfläche einer Plattform landen würde, wird abgelehnt, anstatt gezeichnet zu werden. Glyphen werden von einem reinen Stdlib-TrueType-Parser geformt und gerastert, sodass Abdrücke byte-reproduzierbar und als Goldene festgeschrieben sind.

  • Vertikale Rahmung, die Unsicherheit eingesteht. Wenn das Subjekt nicht sicher verfolgt werden kann, lehnt es die automatische Rahmung ab und sagt warum. Ein sicher falscher Zuschnitt ist schlimmer als eine ehrliche Ablehnung, weil niemand den überprüft, der gut aussah.

  • Rechte, die Bestand haben. Musik, Effekte und Stock-Filmmaterial tragen eine Aufzeichnung, woher sie stammen und was die Bedingungen erlauben. Eine Auslieferung weigert sich zu laufen, wenn ein Asset keine hat.

  • Typisierte Ablehnungen, die ihre eigene Korrektur mitbringen. Eine Ablehnung kommt mit retry_with, einer Liste versandbereiter Aufrufe. Es gibt 102 Codes, jeder mit einer Baustelle und einem Test, der beweist, dass er erreichbar ist.

Was nicht funktioniert

Klar gesagt, denn ein Statusabschnitt, der dies auslässt, ist der Grund, warum der letzte wertlos war.

Funktioniert nicht

Warum

Blockiert

Schneiden durch Zitieren

splicedeck/listen/fetchable.toml pinnt beide Download-Einträge auf einen Host, der nicht aufgelöst wird, mit Platzhalter-Null-Digests. Kein Weg erhält die Sprachbinärdatei, auch nicht durch manuelles Platzieren.

hear, quote, Untertitel aus Sprache

Subjektverfolgung durch Modell

Kein Detektor ist festgepinnt oder ausgeliefert (docs/framing.md F5). Die Grenze ist festgelegt – ein CLI-Kindprozess, nie eine importierte Erweiterung – aber welche Binärdatei sie füllt, ist nicht.

watch --subject largest auf der Modellebene

Abbrechen von einem MCP-Host

Die stdio-Schleife ist single-threaded, daher kann während eines tools/call nichts ankommen.

cancel über MCP. Die CLI und Strg-C sind nicht betroffen.

CHANGELOG.md führt dieselbe Liste, und die beiden sollen synchron bleiben.

Zwei Ebenen unter der Modellebene funktionieren. subject: "centre" ist geometrisch und benötigt nichts. SPD_SIGHT_LOCATOR=reduce wählt einen gewichtsfreien Lokalisierer, der das Subjekt durch temporale Median-Hintergrundsubtraktion in reinem Stdlib-Python findet, kein numpy und keine kompilierte Erweiterung irgendwo.

Geprüft gegen einen Gesichtsdetektor auf dem Referenzmaster stimmte der Median dieses Lokalisierers innerhalb von 0,1 % der Bildbreite überein. Auf demselben Filmmaterial meldete er dann eine Sicherheit von 0,26 und passte überhaupt keinen Pfad an, weil ein Sprecher, der sich kaum vor einem statischen Hintergrund bewegt, der Hintergrundsubtraktion nichts zum Festhalten bietet. Beides sind die richtige Antwort: Die Arithmetik ist solide, und die ehrliche Grenze einer gewichtsfreien Ebene ist ein Loch und keine zentrierte Schätzung (docs/framing.md §7). Filmmaterial mit einem sich bewegenden Subjekt wird einwandfrei verfolgt.

Wie Sie es steuern

Über einen MCP-Server und Skills, sodass jeder MCP-fähige Assistent es verwenden kann, plus eine CLI, die genau dieselben Verben bereitstellt. Beide Oberflächen werden aus splicedeck/surface/verbs.py generiert, und python -m checks.golden --check lässt den Build fehlschlagen, wenn sie auseinanderdriften.

Der Server spricht fünf Protokollrevisionen, 2024-11-05 bis 2026-07-28, und antwortet sowohl auf den initialize-Handshake als auch auf server/discover.

Fehler sind typisiert. Eine Ablehnung trägt ihre eigene Korrektur als versandbereite Aufrufe, statt als Prosa, die ein Agent interpretieren muss, sodass die Wiederherstellung einen Zug dauert:

{"ok": false, "verb": "draft", "refused": "BOOKMARK_UNKNOWN",
 "plain": "No bookmark by that name is shipped.",
 "needs_human": false,
 "retry_with": [{"verb": "draft", "args": {"bookmark": "baseline", "party": "demo",
   "profile": "wide-1080", "situation": "default", "source": "s1"}}]}

Skills

Vier Fähigkeiten lehren einem Agenten die Verb-Reihenfolge, die Fallen zwischen Verben und wie man eine Ablehnung in den nächsten korrekten Aufruf verwandelt. Sie befinden sich in .claude/skills/, und ein Klon nimmt sie ohne jegliche Installation auf.

Skill

Wird ausgelöst bei

cutting-a-deliverable

Umwandeln einer Quelle in eine ausgelieferte Datei

cutting-vertical-clips

Zuschneiden eines 9:16-Clips und Behalten des Motivs im Bild

recovering-from-a-refusal

Jedes ok: false, oder ein spd-Befehl, der mit 1 endet

contributing-to-splicedeck

Bearbeiten dieser Codebasis, oder wenn zwei Dokumente widersprechen

Dieses Repository ist auch ein Claude-Code-Plugin und sein eigener Marktplatz:

claude plugin marketplace add ihuzaifashoukat/splicedeck
claude plugin install splicedeck@splicedeck

Oder installiere die Fähigkeiten in jeden der Agenten, die die skills-CLI unterstützt, einschließlich Codex, Cursor, OpenCode, Antigravity, Cline, Gemini CLI, Zed und Windsurf:

npx skills add ihuzaifashoukat/splicedeck            # add --list to look first

Beide Routen liefern nur die Fähigkeiten. Sie registrieren nicht den MCP-Server, denn der Server benötigt einen absoluten Interpreter-Pfad und ein cwd, das weder ein Plugin noch ein Skill-Installer kennen kann. install.sh schreibt das für Sie, und docs/mcp.md hat es manuell.

Jede andere Agenten-Laufzeitumgebung liest AGENTS.md.

Design

Die Spezifikation wird vor dem Code geschrieben, bewusst.

Dokument

Was es festlegt

AGENTS.md

Der Vertrag, unter dem jeder Beitragende und Agent arbeitet

docs/architecture.md

Die Karte: Laufzeitumgebungen, Pakete, Datenfluss

docs/first-run.md

Vom Klon zur ausgelieferten Datei, und die Windows-Fallen

docs/install.md

Jeder Installationsweg und ein Prompt für einen KI-Agenten

docs/mcp.md

Splicedeck von einem Assistenten aus steuern

docs/cut-sheet.md

Das Kernartefakt: ganzzahlig getaktet, diffbar, menschenlesbar

docs/templates.md

Vorlagen, Slots und was apply und compose tun

docs/casebook.md

Wie Erinnerung gespeichert, aufgelöst und abgeschirmt wird

docs/security.md

Das Bedrohungsmodell und warum Erinnerung eine Angriffsfläche ist

docs/bookmarks.md

Stile und die Achsen, in denen sie Punkte sind

docs/agent-surface.md

Die Verbtabelle und der Ablehnungskatalog

docs/roadmap.md

Die Funktionsbereiche und was jeder beweisen muss

Persistente Erinnerung in einem Agenten ist eine Sicherheitsfläche, nicht nur eine Funktion. Alles, was ein Angreifer hineinschreiben kann, überlebt das Gespräch, das es eingepflanzt hat. Wenn Sie ein Dokument lesen, lesen Sie docs/security.md.

Nicht-Ziele

Einen Film aus vielen Quellen zusammensetzen. Video oder Musik generieren. Eine Timeline-GUI. Echtzeit-Zusammenarbeit. Ein gehosteter Dienst. Automatisch auswählen, welche Momente zu Clips werden, da es Kandidaten präsentiert und auf eine Person wartet.

Anforderungen

Python 3.12 oder neuer und ffmpeg 8.x in Ihrem PATH. Es wird keine kompilierte Python-Erweiterung auf einem Standardpfad verwendet, daher gibt es keinen Build-Schritt und keine Plattform-Laufzeitumgebung, die zuerst installiert werden muss. Windows, macOS und Linux; CI deckt Ubuntu und Windows ab, und macOS wird maschinell nicht getestet.

Die Bewegungsebene benötigt zusätzlich Node und ein npm install innerhalb von scenes/. Es ist optional, und eine Lieferung ohne sie fällt auf Standbilder zurück.

Beitragen

Issues und Designkritik sind willkommen. CONTRIBUTING.md ist die Eingangstür: Einrichtung, die auszuführenden Prüfungen, wie man ein Verb oder einen Ablehnungscode hinzufügt, und die Dinge, die einen Pull-Request unabhängig vom Verdienst ablehnen. Lesen Sie zuerst AGENTS.md. Die zwölf harten Regeln sind tragend, und eine Änderung, die eine davon bricht, wird allein aus diesem Grund abgelehnt.

Durch Ihre Teilnahme stimmen Sie der Verhaltensregel zu.

Sicherheit

Bitte eröffnen Sie kein öffentliches Issue für eine Sicherheitslücke. SECURITY.md enthält den Meldeweg und was im Umfang ist.

Lizenz

Apache-2.0. Urheberrecht 2026 Huzaifa Shoukat.

Available Tools

18 tools
applyC

Dress a cut sheet in a named template: its overlays and its beat grid.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
sheetYesA cut sheet handle.
dry_runNoReturn the calls this would make instead of making them.
templateYesA template id under templates/.

TDQS

C2.9/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 load for behavioral transparency. It only states the action without disclosing side effects, destructive nature, idempotency behavior, permissions, or what happens to existing data. The mention of 'dress' implies modification but lacks necessary detail.

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

Conciseness5/5

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

The description is a single, front-loaded sentence of 13 words that efficiently conveys the core action and scope. Every word earns its place, with no fluff or repetition.

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 no output schema and no annotations, yet the description omits operational details such as return values, error conditions, or the effect of the idempotency key. The agent lacks sufficient context to understand the full lifecycle of using this tool, making it incomplete for a complex 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?

The description adds meaning beyond the schema by explaining that the template applies overlays and beat grid to the sheet. This contextualizes the 'template' and 'sheet' parameters beyond their raw definitions, despite the schema already having 100% coverage.

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

Purpose4/5

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

The description clearly states the tool applies a named template to a cut sheet, specifying that it affects overlays and beat grid. The verb 'dress' is domain-specific but still conveys the intended action on a specific resource, distinguishing it from sibling tools like 'draft' or 'splice'.

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 versus alternatives, nor does it mention prerequisites, contraindications, or typical workflows. Without any usage context, an agent has no basis to decide between 'apply' and other sibling tools.

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

cancelC

Stop a running job and everything it started.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobYesA job handle.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. It states the tool stops 'everything it started', hinting at cascading effects, but does not mention whether this is irreversible, whether it requires special permissions, or what happens to dependent processes. The serious consequence of destruction is implied but not explicitly flagged.

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

Conciseness5/5

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

Single sentence, minimal words, no redundancy. Every word is necessary and information-dense.

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 destructive, irreversible action on a running resource, the description should explicitly mention return behavior (e.g., success/error feedback), side effects, and safety considerations. With no output schema, the agent is left without important context. The tool's simplicity suggests it could be concise while still warning about consequences.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description does not add any parameter-specific meaning beyond what the schema provides (e.g., what a valid job handle looks like, format, or where to obtain it).

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

Purpose4/5

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

The description uses a clear verb ('Stop') and specific resource ('a running job'), and adds scope ('and everything it started'). While it does not explicitly distinguish itself from siblings, its action is distinct enough to infer purpose.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., when to cancel vs stop via inspect, or cleanup implications). The description lacks any context about prerequisites (e.g., job must be running) 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.

captionC

Build caption imprints for a cut sheet from the source's words.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
sheetYesA cut sheet handle.
styleNoA style slot name. null uses the settled finding.
motionNoWhich caption renderer to use. 'still' draws a static block per caption; 'scene' highlights each word as it is spoken.still

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description must carry the full burden of behavioral disclosure. It does not mention side effects, idempotency (despite the 'key' parameter), destructive potential, or auth requirements. The phrase 'Build caption imprints' hints at creation but lacks depth on behavior.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with zero waste. Every word contributes meaning, and it efficiently conveys the core purpose without padding.

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 tool has four parameters, no output schema, and no annotations, the description omits crucial details such as the meaning of 'caption imprints', the behavior of the 'motion' enum, or the format of the result. The agent would lack sufficient context to use the tool confidently.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds modest context by linking 'cut sheet' to the required 'sheet' parameter and 'source's words' to the tool's input, but it does not elaborate on the 'key', 'style', or 'motion' parameters beyond what the schema already provides.

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

Purpose4/5

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

The description clearly states the action ('Build') and resource ('caption imprints for a cut sheet from the source's words'), distinguishing it from sibling tools like 'preview' or 'watch' by focusing on imprint creation rather than viewing. However, the phrase 'caption imprints' is somewhat jargon-heavy and could be more universally understood.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., 'preview', 'hear', 'draft'). It neither specifies prerequisites nor warns against misuse, leaving the agent without context for choosing 'caption' over siblings.

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

carveC

Cut a span of a master cut sheet out into its own clip sheet at a different delivery shape.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
sheetYesThe master cut sheet handle to carve from.
profileYesThe clip's delivery profile name.
subjectNoWhich cached framing path to write into the clip: largest, centre, or none.largest
in_ticksYesFirst deliverable tick of the master kept.
out_ticksYesFirst deliverable tick of the master not kept.

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 full responsibility for behavioral disclosure. It only describes the high-level operation without mentioning side effects, idempotency behavior, or what happens to the original master sheet. The schema includes a 'key' parameter for idempotency, but the description ignores this, leaving the agent uninformed about repeatable 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?

The description is a single sentence of 14 words, front-loaded with the action verb and resource. It is efficient and contains no fluff. However, the extreme brevity sacrifices important context, preventing a higher 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?

Given the tool has 6 parameters (4 required), no output schema, and no annotations, the description is too minimal. It does not explain return values, prerequisites, or the effect of optional parameters like 'subject' and 'key'. An agent would lack sufficient information to invoke the tool correctly without inspecting the schema.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description does not add any meaning beyond the parameter names and schema descriptions. It does not explain 'profile' or 'subject' in the context of carving, nor does it clarify the relationship between 'in_ticks' and 'out_ticks'. No extra value is provided.

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

Purpose4/5

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

The description uses a specific verb ('Cut') and identifies the resource ('master cut sheet', 'clip sheet', 'delivery shape'). It clearly distinguishes from siblings like 'splice' (joining) and 'draft' (creating) by describing a unique extraction operation. However, the term 'delivery shape' is domain-specific and not explained, slightly reducing 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 provides no explicit guidance on when to use this tool versus alternatives like 'splice' or 'draft'. It does not state prerequisites, when-not-to-use, or mention the idempotency key's role in avoiding duplicate clips. The usage context is implied but not clarified.

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

colourB

Decide the colour treatment for a cut sheet, including whether a transfer stage is inserted.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
lookNoA look slot name declared in the party's kit. Null uses the settled finding.
sheetYesA cut sheet handle.
target_rangeNosdr, hlg, or pq.sdr

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 must disclose side effects and safety profile, but it only states that it decides colour treatment without indicating whether it modifies the cut sheet, requires permissions, or what the output is. The phrase 'including whether a transfer stage is inserted' hints at a possible mutation but is ambiguous.

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

Conciseness5/5

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

The description is a single sentence that immediately states the verb and object, with no wasted words. However, it is under-specified, which is a completeness issue rather than a conciseness issue.

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 four parameters with an enum and no output schema, requiring the description to explain return values and effects. The description does not cover what happens after the decision, what a 'transfer stage' is, or what the caller should expect, making the tool under-explained.

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

Parameters3/5

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

All four parameters have schema descriptions (100% coverage), so the description itself adds no additional meaning to the parameters. The term 'cut sheet' aligns with the `sheet` parameter, but no deeper semantics are provided beyond the schema.

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

Purpose5/5

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

The description uses the specific verb 'Decide' with the resource 'cut sheet' and mentions a key aspect (transfer stage insertion), making its function clear and distinct from sibling tools like apply or preview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 guidance is provided; the description does not mention when to use this tool over alternatives or any prerequisites/exclusions.

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

deliverB

Encode and mux the finished deliverable for a cut sheet.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
sheetYesA cut sheet handle.
motionNoWhich overlay renderer to use. null adopts whatever the sheet's caption job was built with, and 'still' otherwise. An explicit value that disagrees with the caption job refuses.

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 bears full responsibility for behavioral disclosure. It only states the core operation, omitting key traits such as whether the tool is asynchronous, idempotent (beyond the key parameter), destructive, or requires specific sheet states. The one-word 'finished' implies a prerequisite but does not elaborate on failure modes or side effects.

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

Conciseness4/5

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

The description is a single, well-constructed sentence that front-loads the main action without filler. It earns a 4 for efficiency, though a second sentence elaborating on usage or behavior would have made it a 5.

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 tool has 3 parameters (one required), no output schema, and no annotations, the description is insufficiently complete. It fails to explain what the tool returns, whether it is synchronous, or what state the sheet must be in before calling. For a tool performing encoding and muxing—operations that could be slow or error-prone—this information is critical for correct invocation.

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

Parameters3/5

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

Schema coverage is 100%—all three parameters (key, sheet, motion) already have clear descriptions in the schema. The tool description adds no additional meaning about parameter usage, constraints, or interactions. A baseline of 3 is appropriate since the description does not degrade understanding but also does not enhance it.

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

Purpose5/5

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

The description clearly states the tool's action with specific verbs ('encode and mux') and identifies the resource ('finished deliverable for a cut sheet'). This verb+resource combination is distinct from sibling tool names like 'inspect', 'draft', or 'preview', enabling an agent to differentiate it easily.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 vs alternatives. Siblings like 'preview' or 'verify' might be used before or after delivery, but the description does not mention prerequisites, sequencing, or conditions that would help an agent decide between them.

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

draftC

Start a new cut sheet for a party from a source, a bookmark and a delivery profile.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
partyYesA party identifier — a directory under casebook/parties/.
sourceYesA source handle.
profileYesA delivery profile name.
bookmarkYesA bookmark name.
situationNoThe name of a situation block declared in that party's party.toml.default

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 of behavioral transparency. The description implies a state change ('start a new cut sheet'), but it doesn't disclose what this operation does beyond creation (e.g., does it write files? interact with an API? trigger a workflow?). It doesn't mention destructive potential or idempotency behavior (despite having a 'key' parameter). It is adequate but leaves many behavioral questions unanswered.

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

Conciseness3/5

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

The description is a single sentence that names three key building blocks (source, bookmark, delivery profile). It is not verbose, but it is terse to the point of lacking important context. The sentence structure is straightforward but not front-loaded with enough clarifying detail. Some wasted opportunity exists because it could briefly explain the domain jargon without being much longer.

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?

There is no output schema, so the description could compensate but does not explain what the tool returns or how to use the result. With six parameters (four required), the description only briefly references three of them and does not cover 'key' or 'situation'. The sibling tools suggest a workflow (inspect, splice, verify, deliver) but the description does not position draft within that pipeline. Overall, the description feels incomplete for a tool that probably initiates a multi-step process.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds slight context by naming three parameters (source, bookmark, delivery profile) that are part of the tool's core inputs, but does not explain what these domain concepts mean or how they relate to each other. The 'party' parameter is mentioned in vague terms ('directory under casebook/parties/'), but the description adds no additional meaning beyond the schema. The 'key' parameter hint at idempotency but the description does not address 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 description tells us the tool starts 'a new cut sheet for a party' given source, bookmark, and delivery profile, but it uses domain jargon ('cut sheet', 'bookmark', 'delivery profile') without explanation. Among sibling tools like inspect, splice, verify, deliver, it's not instantly clear what distinguishes 'draft' from other actions. The verb 'start' and noun 'cut sheet' provide a basic purpose, but the domain terms make it vague for a general AI 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?

The description provides no guidance on when to use this tool versus siblings like splice, deliver, or verify. It doesn't mention prerequisites (e.g., must party exist? Must source be valid?), nor does it explain that the idempotency key is optional but recommended. The agent has no context for deciding to call draft over other tools in the set.

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

hearA

Transcribe a source to words with timings, reading the result as text before anything encodes.

ParametersJSON Schema
NameRequiredDescriptionDefault
tierNodraft, local, or cloud.local
sourceYesA source handle.
consentNoConsent token. Required only when tier is cloud.
languageNoBCP-47 tag, or auto.auto

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It mentions 'reading the result as text before anything encodes' but does not explain what 'encodes' means, whether the operation is read-only, requires permissions, or has rate limits. Important behaviors like output format or side effects are missing.

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

Conciseness5/5

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

The description is a single sentence that is front-loaded with the action and avoids redundancy. Every word serves a purpose with no wasted space.

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

Completeness3/5

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

While the description explains the core transcription function, it omits details about the return format (how timings are represented), the role of 'tier' and 'consent', and does not compensate for the lack of an output schema. Given four parameters and no output schema, the description is 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 100% with minimal per-parameter descriptions (e.g., 'A source handle', 'draft, local, or cloud.'). The tool description adds meaning by stating the tool transcribes to words with timings and reads as text, enriching the context beyond the schema alone.

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

Purpose5/5

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

The description clearly states the tool transcribes a source to words with timings, using a specific verb ('transcribe') and resource (source). It also adds nuance about reading the result as text before encoding, which distinguishes it from siblings like 'caption'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 'caption', 'draft', or 'sound'. The description only states what it does without offering context on when it is appropriate or not.

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

inspectC

Read a media file's shape and mint a source handle for it.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesWorkspace-relative path to a media file.
includeNoExtra maps to compute: any of 'quiet', 'loudness'.

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 burden. It implies a read-like operation ('Read'), but also mentions 'mint a source handle', which suggests creating something (a handle) and may have side effects. The description does not disclose whether this operation is reversible, requires authentication, or has rate limits. The term 'mint' is ambiguous and could mislead an agent about the tool's side effects.

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

Conciseness4/5

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

The description is a single sentence of moderate length, conveying the core purpose concisely. It is front-loaded and contains minimal redundancy. However, it could be slightly more compact by removing 'a media file's shape and' since 'Read a file' might suffice.

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 that no output schema is provided, the description should clarify what a 'source handle' is and whether the tool returns it or something else. It also doesn't mention that 'include' is optional or what defaults apply. The tool has 18 siblings with various media actions (draft, splice, verify, etc.), but the description provides no context for how 'inspect' fits with those. The description is incomplete for a tool that mints a handle.

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

Parameters3/5

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

The input schema already has high coverage (100%) with descriptions for both 'path' (workspace-relative path) and 'include' (extra maps to compute). The description does not add any additional semantics beyond the schema, so the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool's purpose: reading a media file's shape and minting a source handle. The verb 'Read' and noun 'media file' are specific, though the term 'shape' is somewhat vague. It distinguishes from siblings like 'inspect' (which is the tool itself) and 'stock', 'sound', 'colour' that likely deal with different aspects.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'draft', 'verify', or 'preview'. It does not mention any prerequisites (e.g., file existence, permissions) or exclusions (e.g., unsupported media types). The agent is left to infer context 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.

placeB

Place an element onto a cut sheet at a tick for a hold.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
sheetYesA cut sheet handle.
fieldsNoValues for the element's declared text slots.
elementYesAn element name from elements/.
at_ticksYesWhen it appears.
hold_ticksYesHow long it stays. At least one frame in the sheet's cadence.

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 of behavioral disclosure. The description implies a write/mutation operation ('Place an element') but does not state whether it is destructive, reversible, or requires specific permissions. It adds value by specifying placement constraints (at a tick, for a hold) but fails to disclose other essential behaviors like idempotency (though 'key' parameter hints at it) or effects on existing sheet elements.

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

Conciseness4/5

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

The description is a single, focused sentence that states the core action without unnecessary detail. It could be improved by placing domain-specific terminology in a more front-loaded manner, but overall it is appropriately concise.

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

Completeness3/5

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

Given the complex domain (cut sheets, elements, ticks, holds) and lack of output schema, the description is partially complete. It explains the what, where, and when but omits return values or side effects. With no annotations and no output schema, more detail is warranted for a tool with 6 parameters and nested objects, especially to clarify the 'fields' object and idempotency 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?

The schema already covers all parameters with descriptions (100% coverage), and the description complements this by explaining the domain-specific action for the main parameters ('at a tick' and 'for a hold'). However, the description does not clarify the 'fields' parameter syntax or the role of 'key', leaving some semantic gaps.

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

Purpose4/5

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

The description clearly specifies the action ('Place an element'), the target ('onto a cut sheet'), and the conditions ('at a tick for a hold'). It distinguishes from siblings like 'splice' or 'draft' which suggest different operations. However, it does not differentiate from potential similar tools like 'apply', and lacks a verb-resource structure that fully clarifies domain-specific terms like 'element', 'cut sheet', 'tick', and 'hold'.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus its siblings. With 17 siblings including tools like 'inspect', 'draft', and 'preview', an agent has no context for choosing 'place' over alternatives. There is no mention of prerequisites (e.g., must a sheet be created first?), exclusions, or typical use cases.

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

previewC

Preview a bounded span of a cut sheet at a chosen rung.

ParametersJSON Schema
NameRequiredDescriptionDefault
rungNoPreview ladder rung: 1 h264_qsv, 2 libx264, 3 mpeg4.
sheetYesA cut sheet handle.
in_ticksNoStart of the span to encode.
out_ticksNoEnd of the span. -1 means the whole sheet.

TDQS

C2.7/5.0
Behavior1/5

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

No annotations are present, so the description must disclose behavioral traits like read-only vs. mutation, side effects, or permissions. The description only states the action without mentioning whether 'preview' is a read operation, what it produces, or any state changes. This is a serious gap.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently communicates the core action with zero wasted words. Every part is meaningful.

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 4 parameters and no output schema, yet the description does not explain what preview produces (e.g., a video clip, thumbnail, or report), whether it modifies state, or what the output format is. Critical operational context is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description echoes the parameter concepts (bounded span, rung) but does not add new semantic meaning beyond what the schema already provides. No additional context or constraints are introduced.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 the verb 'Preview' and the resource 'bounded span of a cut sheet at a chosen rung', clearly indicating the action and target. However, given sibling tools like 'inspect', 'hear', and 'watch', it does not differentiate preview from those, so it misses the chance to clarify the unique purpose.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as 'inspect' or 'hear'. There are no explicit use cases, prerequisites, or exclusion criteria, leaving the agent without decision support.

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

quoteB

Locate where something was said in a source, and get the tick range it was said in.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoWords to look for. Empty means everything in the range.
limitNoMaximum hits to return.
sourceYesA source handle.
in_ticksNoStart of the window to search.
out_ticksNoEnd of the window. -1 means end of source.

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 should reveal behavior. It states what the tool does but does not disclose matching rules (case sensitivity, partial matches), error handling (e.g., text not found), or side effects. Returns tick range but format unspecified.

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

Conciseness4/5

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

The description is a single, clear sentence with no wasted words. However, it could be slightly more structured (e.g., listing output) without becoming verbose.

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 5 parameters, no annotations, and no output schema, the description is too minimal. It fails to explain the return format, ordering of results, or behavior when no match is found – critical for correct agent invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so each parameter already has a clear description. The tool description adds no additional meaning beyond what the schema provides – baseline 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('Locate') and resource ('something said in a source') and clearly states the output ('get the tick range'). This distinguishes it from sibling tools like 'hear' (listen) or 'caption' (transcribe).

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs. alternatives (e.g., 'hear' for listening, 'inspect' for metadata). No exclusions or prerequisites mentioned.

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

soundC

Resolve the sound plan for a cut sheet: the music lane, its level, and the loudness target.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
musicNoAn asset handle to place on the sound lane.
sheetYesA cut sheet handle.
target_loudnessNoA loudness target name from the delivery profile.
music_level_millibelNoMusic level in millibel. Bounds are declared in code; an out-of-bounds value is refused, never clamped.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations exist, so the description must fully disclose behavioral traits. It only says 'resolve' without explaining what that entails (e.g., does it modify state? require authorization? revertible?). The presence of an idempotency key (key param) hints at safe retries, but this is neither stated nor elaborated. The description fails to clarify whether the tool is read-only or mutating, a critical gap.

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

Conciseness5/5

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

A single, front-loaded sentence of 17 words. Every phrase ('resolve the sound plan', 'music lane', 'level', 'loudness target') directly contributes to understanding. No fluff or redundancy. Excellent conciseness for a tool with 5 parameters.

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 good parametric documentation in the schema, the description omits crucial details: what the tool returns (no output schema), the nature of 'resolve' (analysis vs. mutation), edge cases (e.g., out-of-bounds music level is refused, not clamped), and required permissions. For a tool with no annotations and moderate complexity, this brief description leaves an agent underinformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need 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 baseline is 3. The description adds 'the music lane, its level, and the loudness target', which maps to music, music_level_millibel, and target_loudness, reinforcing their roles. However, it does not explain parameters beyond what the schema already states (e.g., 'key' for idempotency, 'sheet' as the cut sheet handle). No new semantic value is provided.

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

Purpose4/5

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

The description clearly identifies the tool's purpose: resolving a sound plan for a cut sheet, specifying the music lane, its level, and loudness target. This distinguishes it from siblings like 'hear' or 'preview' which likely involve playback or review, not planning. However, the verb 'resolve' is somewhat vague—could mean compute, finalize, or apply—reducing 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 guidance is provided on when to use this tool versus alternatives like 'draft', 'apply', or 'hear'. The description implies use when setting up a sound plan, but does not state exclusions, prerequisites, or typical workflows. Without this, an agent may misuse the tool in contexts better served by a sibling.

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

spliceC

Add a segment to the cut sheet, or amend an existing segment's edges.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
whyNoOne line for the human reviewer. Never reaches pixels.
causeYesspeech, manual, restored, or pad.
sheetYesA cut sheet handle.
sourceYesA source key from the sheet's sources[].
segmentNoWhen given, amend that segment instead of adding one.
in_ticksYesFirst deliverable tick kept (the body entry's in).
out_ticksYesFirst deliverable tick not kept (the body entry's out).
source_in_ticksYesSource tick where the kept range begins (pick.in); pick.out is derived.

TDQS

C2.9/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 only mentions adding or amending segments but omits critical behaviors such as idempotency (key parameter), error conditions (e.g., missing sheet or source), or the effect of the 'segment' parameter. The hint about 'why' never reaching pixels is a minor detail but insufficient overall.

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

Conciseness4/5

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

The description is a single sentence, front-loaded with the key actions. It is concise and avoids excess words, though it could be slightly more structured to separate the two modes (add vs. amend) for 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?

Given the tool's complexity (9 parameters, 6 required, no output schema, no annotations), the description is too brief. It does not explain what a 'cut sheet' is, what happens on success, error handling, or how the output is returned. The agent has insufficient context to use the tool correctly without additional knowledge.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents each parameter. The description adds minimal semantic value beyond the schema—it loosely maps 'amend' to the 'segment' parameter but does not elaborate on tick semantics or the relationship between parameters. The baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the action ('Add a segment' or 'amend an existing segment's edges') and the resource ('cut sheet'). It is specific and distinguishes the tool's purpose from generic operations, though it could benefit from clarifying what a 'cut sheet' is in the context of the sibling tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use splice versus other tools like 'carve', 'stock', or 'sound'. There is no mention of prerequisites, alternatives, or contexts where this tool is appropriate or inappropriate.

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

stockC

Search licensed third-party music and hits, and record the rights for one that fits.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoIdempotency key.
kindYesmusic, hit, footage, still or typeface.
limitNoMaximum candidates.
termsNoSearch terms.
acquireNoA candidate id from a previous call. Downloads it and records its rights.
refreshNoAsset handles to re-capture terms for, or the single token '*'.
seconds_minNoReject anything shorter, in whole seconds.

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 bears full responsibility for behavioral disclosure. It merely says 'search and record rights' without detailing side effects (e.g., that acquire downloads and creates a record, or that the tool is idempotent via the 'key' parameter). The schema descriptions fill some gaps, but the tool description itself lacks essential 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 description is a single, front-loaded sentence of 14 words. It is concise and efficient, but it sacrifices precision and completeness for brevity. It could be slightly improved without losing conciseness, but it is not verbose.

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 tool's complexity (7 parameters, no output schema, no annotations), the description is too sparse. It fails to explain the search-then-acquire workflow, the role of the idempotency key, or the meaning of the 'refresh' and 'seconds_min' parameters. The description is inadequate for correctly invoking the tool in all scenarios.

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

Parameters3/5

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

Schema description coverage is 100% (all 7 parameters have descriptions). The tool description adds minimal additional meaning beyond the schema – it maps 'search' to 'terms' and 'record rights' to 'acquire', but does not clarify other parameters like 'refresh', 'seconds_min', or 'kind'. Baseline 3 is appropriate given high schema coverage and limited added value from the description.

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 'Search licensed third-party music and hits, and record the rights for one that fits.' It identifies a verb+resource but is partially inaccurate: the schema allows searching footage, stills, and typefaces in addition to music and hits. The purpose is vaguely clear but not fully aligned with the tool's capabilities.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus its many siblings (e.g., inspect, hear, preview). There is no mention of prerequisites, alternatives, or when not to use it. The description implies a search-and-acquire workflow but offers no explicit selection criteria.

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

trialC

Find out what this machine can actually do, by test-encoding rather than by reading a feature list.

ParametersJSON Schema
NameRequiredDescriptionDefault
whatNoWhich surveys to run.
forceNoIgnore the cached result and re-run the test encodes.

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 full burden. It mentions 'test-encoding' and cached results (via force param), but does not disclose side effects, performance characteristics, or what the tool actually runs internally. Minimal behavioral insight.

Agents need to know what a tool does to the world before 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, no fluff. Front-loaded with action verb. Could be slightly more structured, but efficiency is good.

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?

No output schema and low parameter count (2, none required). Description does not explain return values or what 'surveys' are. For a discovery tool, it is moderately complete but leaves gaps for an AI agent to interpret correctly.

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

Parameters3/5

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

Schema coverage is 100% (both parameters have descriptions in the input schema). The description adds the context of 'test-encoding' but does not provide additional semantics beyond what the schema already states. Baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool's purpose is to discover machine capabilities via test-encoding rather than feature lists. It uses a specific verb ('find out') and resource ('capabilities'), but does not differentiate from sibling tools like 'inspect' or 'hear'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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. The description implies it is for exploration, but does not specify when not to use it or provide alternative tool names for missing filtering functionality.

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

verifyC

Run every gate against a cut sheet and report what passes and what blocks.

ParametersJSON Schema
NameRequiredDescriptionDefault
sheetYesA cut sheet handle.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full behavioral disclosure burden. It states the tool 'run[s] every gate' and reports pass/block status, but doesn't mention side effects (e.g., does it modify the sheet?), permissions needed, failure modes, or performance implications (e.g., is it expensive for many gates?).

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

Conciseness4/5

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

The description is a single, clear sentence that efficiently communicates core purpose. Could arguably be more specific (e.g., defining 'gate'), but is not verbose or 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?

Given 1 parameter with full schema coverage and no output schema, the description is adequate for basic use. However, given absence of annotations and output schema, the description could better explain what 'passes' vs 'blocks' means in the return format to compensate.

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

Parameters3/5

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

The schema already has 100% description coverage defining 'sheet' as 'A cut sheet handle', so the baseline is 3. The description doesn't add further parameter semantics (e.g., what a valid handle looks like), but the schema is sufficient for this single parameter.

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

Purpose4/5

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

The description uses specific verbs ('run every gate') and identifies the domain ('cut sheet'), clearly differentiating it from sibling tools like 'inspect' or 'draft'. However, it doesn't explain what a 'gate' is, which slightly reduces clarity for agents unfamiliar with the domain 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?

No explicit guidance is provided on when to use this tool versus siblings like 'inspect' (which might also analyze a sheet) or 'draft'. It implies verification use via 'report what passes and what blocks' but lacks exclusions or comparative context.

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

watchB

Track shot changes and the subject through a source, producing a framing path.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesA source handle.
subjectNolargest, centre, or none.largest
out_shapeNoTarget frame shape the path is planned for, as width:height.9:16

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations provided, the description must fully disclose behavior. It states the tool tracks shot changes and framing path, implying analysis rather than output creation. However, it does not mention whether this tool modifies state, requires specific permissions, or what system constraints apply.

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

Conciseness5/5

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

The description is a single sentence with no waste, front-loading the core action and output. It is appropriately succinct.

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 tool deals with framing paths and output shape, the absence of an output schema is notable. The description does not explain what 'framing path' means or what the tool returns, and the sibling tools list is large with no differentiation hints. The description lacks sufficient context for effective tool selection.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters. The description mentions 'track shot changes and the subject' which implies the 'subject' and 'source' parameters but adds no extra detail beyond the schema. Baseline of 3 is appropriate.

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

Purpose4/5

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

The description uses specific verbs ('track shot changes and the subject') and a clear resource ('source'), producing a 'framing path'. While it distinguishes the tool's purpose, it could better differentiate from siblings like 'inspect' or 'hear' that might also analyze a source.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 'inspect', 'hear', or 'preview'. The description does not mention non-use cases, context, or prerequisites.

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. 18 tool updatesv0.0.0
    • First observedapply
    • First observedcancel
    • First observedcaption
    • First observedcarve
    • First observedcolour
    • First observeddeliver
    • First observeddraft
    • First observedhear
    • First observedinspect
    • First observedplace
    • First observedpreview
    • First observedquote
    • First observedsound
    • First observedsplice
    • First observedstock
    • First observedtrial
    • First observedverify
    • First observedwatch

TDQS

B3.3/5.0

Scored across 18 tools

Disambiguation4/5

Most tools have clearly distinct purposes (e.g., inspect reads media, draft starts a cut sheet, splice adds segments, hear transcribes). A few pairs like 'splice' and 'place' could be confused in the abstract, but descriptions differentiate them. Overall, an agent can reliably distinguish tools.

Naming Consistency5/5

All tool names are single-word verbs in lowercase, following a highly consistent pattern. Names like 'splice', 'carve', and 'trial' are domain-appropriate and uniform, with no mixing of conventions.

Tool Count5/5

18 tools cover a comprehensive media editing workflow—ingest, editing, verification, delivery, and auxiliary operations. The count feels well-scoped for the domain, with each tool serving a necessary function and no redundancy.

Completeness4/5

The toolset covers the core editing lifecycle well (from source intake to final delivery). Minor gaps exist, such as a lack of tools for deleting segments, managing sources, or listing projects, but these are not critical to the main editing flow.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers