Skip to main content
Glama

Server Details

Create, edit, reframe, caption, organize, generate, and export short-form videos with BlitzReels.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

TDQS

B3.1/5.0

Scored across 66 tools

Disambiguation3/5

Some tools have overlapping purposes: clips_manage aggregates actions also exposed by clips_get and exports_start, and the timeline editing tools (update_timeline_clip, batch_update_timeline_clips, timeline_edit_apply/preview) can be confused for similar mutations. The descriptions do provide enough detail to differentiate most cases, but the boundaries are not always crisp.

Naming Consistency3/5

Most tools follow a resource_action pattern (media_*, generation_*, series_*, story_kits_*), but a notable subset uses verb_noun or mixed order (add_text_overlay, timeline_media_add, delete_timeline_items, mute_clip_audio). The inconsistency is readable but not predictable across the whole set.

Tool Count1/5

With 66 tools, the server is extraordinarily heavy for an MCP surface, far beyond the typical well-scoped range of 3–15 tools. Even accounting for the broad video-editing domain, the count is an extreme mismatch that suggests over-fragmentation and likely redundancy.

Completeness4/5

Core workflows are well covered: project creation, media import/upload, timeline editing, generation, clips, exports, and reusable assets like series and story kits. Minor lifecycle gaps exist—no project delete/update, no media asset delete, no character/story kit delete—but these are workable omissions in an otherwise comprehensive surface.

Available Tools

66 tools
add_text_overlayAdd Text OverlayA
Idempotent
Inspect

Add an editable text overlay to a project timeline at an exact time and layer.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
textYes
projectIdYesUUID string.
layerIndexNo
startSecondsNo
idempotencyKeyYesRetry key. Reuse only with identical inputs.
durationSecondsNo
expectedRevisionNoExpected sequence revision, or null.

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
resultYes
replayedYes
revisionYes
warningsYes
projectIdYes
operationIdYes
baseRevisionYes
mutationReceiptYes
createdTimelineItemIdsYes
deletedTimelineItemIdsYes
affectedTimelineItemIdsYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare idempotentHint=true, readOnlyHint=false, and destructiveHint=false. The description adds that the overlay is 'editable' and placed at an exact time/layer, but does not discuss retry semantics, expectedRevision behavior, or effects of defaults. Adds some context beyond annotations but not deeply.

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

Conciseness5/5

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

A single, focused sentence with no wasted words. It front-loads the core action and object, then adds placement details, achieving high clarity in minimal 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?

With 8 parameters and an output schema, the description is serviceable but sparse. It does not mention required idempotencyKey, default duration of 4 seconds, or revision handling. It is adequate for basic selection but not fully complete for correct invocation without deeper schema inspection.

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 only 38%, so the description should compensate for undocumented parameters. It only hints at startSeconds and layerIndex via 'exact time and layer' and implies text content, but says nothing about durationSeconds, name, expectedRevision, or idempotencyKey semantics. This leaves most parameters underexplained.

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

Purpose5/5

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

The description clearly states a specific verb ('Add') and resource ('editable text overlay') with precise placement ('at an exact time and layer'). This distinguishes it from sibling tools like add_transition or timeline_media_add, which handle different timeline additions.

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

Usage Guidelines4/5

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

The description provides clear context: it is for adding an editable text overlay to a project timeline. It does not explicitly enumerate exclusions or alternatives, but the specificity makes the intended use obvious relative to siblings. Lacks explicit 'when not to use' guidance.

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

add_transitionAdd TransitionC
Idempotent
Inspect

Add a timed transition effect, optionally attached to one timeline item and paired with sound.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
easingNoeaseInOut
presetNoflash
intensityNo
projectIdYesUUID string.
includeSfxNo
layerIndexNo
startSecondsYes
idempotencyKeyYesRetry key. Reuse only with identical inputs.
timelineItemIdNo
durationSecondsNo
expectedRevisionNoExpected sequence revision, or null.

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
resultYes
replayedYes
revisionYes
warningsYes
projectIdYes
operationIdYes
baseRevisionYes
mutationReceiptYes
createdTimelineItemIdsYes
deletedTimelineItemIdsYes
affectedTimelineItemIdsYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare a non-destructive, idempotent, open-world mutation. The description adds no further behavioral context such as what exactly is created, permissions required, side effects on the timeline, or how expectedRevision affects the write. It does not contradict annotations, but it does not enrich them either.

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 filler. However, it is too sparse for a 12-parameter mutation tool with low schema coverage, so its brevity becomes under-specification rather than effective 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 12-parameter tool with 25% schema coverage, existing annotations, and an output schema, this description is incomplete. It gives the purpose but omits the parameter meanings and usage context needed to invoke 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?

With only 25% schema description coverage, the description must compensate for 9 undocumented parameters. It indirectly touches on timelineItemId (optional attachment) and includeSfx (paired with sound), but ignores name, easing, preset, intensity, layerIndex, durationSeconds, and expectedRevision.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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: 'Add a timed transition effect.' It distinguishes itself from timeline siblings like add_text_overlay or timeline_audio_add by resource type, though it does not explicitly name an alternative. Clarity is high but lacks sibling routing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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. The phrase 'optionally attached to one timeline item and paired with sound' implies the tool can be used standalone or attached, but this is context about parameters, not selection guidance versus alternatives.

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

batch_update_timeline_clipsBatch Update Timeline ClipsA
Idempotent
Inspect

Update timing, trim, layer, or state for up to 100 timeline items in one sequence transaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
updatesYesEach update needs at least one field to change besides timelineItemId.
projectIdYesUUID string.
idempotencyKeyYesRetry key. Reuse only with identical inputs.
expectedRevisionNoExpected sequence revision, or null.

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
resultYes
replayedYes
revisionYes
warningsYes
projectIdYes
operationIdYes
baseRevisionYes
mutationReceiptYes
createdTimelineItemIdsYes
deletedTimelineItemIdsYes
affectedTimelineItemIdsYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate idempotent=true, readOnly=false, and destructive=false. The description adds valuable behavioral context: the operation is transactional and limited to 100 items. It does not contradict the annotations and provides insight beyond the structured hints.

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

Conciseness5/5

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

The description is a single, tightly packed sentence. It front-loads the verb, specifies the supported fields, and includes the critical constraints (up to 100 items, one transaction) without any wasted words.

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

Completeness4/5

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

Given the rich schema (100% coverage) and the presence of an output schema, the description is sufficient for understanding the core operation. It captures the essential batch and transactional behavior. A minor gap is not explicitly directing users to the singular update_timeline_clip for single updates, but that is more of a usage guideline than a completeness issue.

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

Parameters3/5

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

Schema coverage is 100%, so every parameter already has a description. The phrase 'timing, trim, layer, or state' adds semantic grouping to the fields, but it does not provide new syntax or details beyond what the schema already documents. This is the baseline for high schema coverage.

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

Purpose5/5

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

The description clearly states the action ('Update'), the resource ('timeline items'), and the scope ('up to 100 ... in one sequence transaction'). It explicitly lists the kinds of updates (timing, trim, layer, state), which distinguishes it from singular siblings like update_timeline_clip.

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

Usage Guidelines4/5

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

The description gives clear context for use: it is for batch updating up to 100 items atomically ('one sequence transaction'). It does not explicitly name an alternative for single-item updates, but the batch limit and transactional phrasing imply the appropriate use case.

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

captions_themes_listList Caption ThemesA
Read-onlyIdempotent
Inspect

List built-in caption looks and saved caption themes available to a workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
includeSavedThemesNoInclude saved workspace caption themes.
includeBuiltInLooksNoInclude built-in caption looks.

Output Schema

ParametersJSON Schema
NameRequiredDescription
themesYes

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds that it includes both built-in looks and saved themes, which is useful context, but does not disclose additional behaviors like pagination or ordering. This is adequate given the annotations, but not overly rich.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that directly states the action and scope. No redundant words or filler, making it highly concise and well-structured.

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

Completeness5/5

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

For a simple list operation, the description, combined with comprehensive annotations and a full output schema, provides complete context. There are no missing details about return values or safety, and the tool's simplicity means no additional context is needed.

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

Parameters3/5

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

All three parameters have full descriptions in the input schema, achieving 100% schema coverage. The description itself does not add parameter-level meaning, but the schema is sufficient, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool lists built-in caption looks and saved caption themes for a workspace, using a specific verb and resource. It distinguishes itself from sibling tools by focusing on caption themes, which is unique among the provided tools.

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

Usage Guidelines3/5

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

The description implies usage as a simple listing tool, but provides no explicit guidance on when to use it versus alternatives or when not to use it. Since no alternative theme-listing tools exist among siblings, this is acceptable but not explicitly stated.

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

characters_applyApply Reusable CharacterA
Idempotent
Inspect

Create or update a reference-based character for repeatable faceless story generation.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
typeNohuman
speciesNo
storyFactsNo
characterIdNo
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.
defaultVoiceIdNo
idempotencyKeyYes
defaultVoiceStyleNo
referenceAssetIdsNo
canonicalDescriptionNo
confirmLikenessConsentNoFor a human character, set true only after the user confirms consent to use the depicted person's likeness.
primaryReferenceAssetIdNo
confirmRightsToReferencesNoSet true only after the user confirms they own the reference media or have permission to use it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
characterYes
mutationReceiptYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already disclose idempotentHint=true and destructiveHint=false; the description adds the upsert-like 'create or update' behavior and the fact that the character is reference-based. It does not disclose important operational constraints such as consent or rights gates, but those are documented in the schema properties, so the additional behavioral gap is moderate.

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

Conciseness5/5

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

One tight sentence that front-loads the operation, the resource kind, and the use case; no filler or restatement of the title. It earns its place, even though it sacrifices 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?

Although an output schema exists, the tool has 14 parameters and a very low schema description coverage. The description leaves critical invocation questions open—how updates are keyed (characterId vs idempotencyKey), what reference assets are required, and which consent flags must be set. This is not complete enough for a complex write 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 only 21%, so the description should compensate for the many undocumented parameters. It does not: no mention of idempotencyKey, characterId as the update selector, referenceAssetIds/primaryReferenceAssetId, voice fields, or storyFacts. The only hint is 'reference-based,' which weakly maps to the reference asset 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 ('Create or update') and resource ('reference-based character'), and adds the purpose context 'for repeatable faceless story generation.' This is enough to distinguish it from sibling read tools like characters_get/characters_list and from story-generation tools, even though it does not name 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 Guidelines4/5

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

Provides a clear context by describing the intended use case—reusable characters for faceless story generation—but does not articulate exclusions or point to alternatives such as characters_list or generation_faceless_create. The agent can infer when to use it but is not explicitly steered away from sibling tools.

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

characters_getGet Reusable CharacterA
Read-onlyIdempotent
Inspect

Inspect one reusable character and its ordered reference-image set before planning a story.

ParametersJSON Schema
NameRequiredDescriptionDefault
characterIdYes
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
characterYes

TDQS

A3.8/5.0
Behavior3/5

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

The description adds minimal behavioral context beyond the annotations. 'Inspect' aligns with readOnlyHint=true and destructiveHint=false. The mention of 'ordered reference-image set' hints at the output structure, but no further details about auth, rate limits, or idempotency are provided. Annotations already cover the safety profile.

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

Conciseness4/5

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

A single sentence of 14 words that is front-loaded and efficient. However, it is slightly terse and could be more explicit about the core resource (e.g., 'Reusable character' is a domain term that may not be universally understood). Still, it earns its place without excess.

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

Completeness4/5

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

Given the simple nature of the tool (read a single character), the presence of annotations and an output schema, the description is mostly complete. It clarifies the use case and the ordered reference-image set. However, it does not explicitly state that the characterId is required or that the operation is read-only, though these are inferred from context and 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?

The description does not mention any parameters. Schema coverage is 50% (workspaceId has a description in the schema, but characterId does not). The tool description could have explained what characterId represents, but it fails to compensate for the undocumented parameter, leaving a gap.

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

Purpose5/5

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

The description specifies the verb 'Inspect' (read-only) and the resource 'one reusable character and its ordered reference-image set', with a clear scope ('before planning a story'). This distinguishes it from siblings like 'characters_list' (list all) and 'characters_apply' (apply a character).

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

Usage Guidelines4/5

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

The description provides a clear context for when to use this tool ('before planning a story'), but does not explicitly mention when not to use it or alternatives such as 'characters_list' for browsing. The sibling list implies the differentiation, but the description could be more direct.

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

characters_listList Reusable CharactersA
Read-onlyIdempotent
Inspect

List bounded reusable characters with identity, voice, facts, and image-reference metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.
includeArchivedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
charactersYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the agent knows this is a safe, repeatable read operation. Description adds the term 'bounded' which hints at scope but doesn't explain what 'bounded' means (e.g., workspace-scoped, project-scoped) nor mention pagination behavior that offset/limit implies. No contradiction with annotations.

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

Conciseness5/5

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

Single sentence, 14 words, zero waste. Each part ('List', 'bounded reusable characters', metadata details) serves a clear purpose. Front-loaded with the action and resource.

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

Completeness4/5

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

Despite low parameter description coverage, the output schema exists and parameter names are clear. The description lacks a note about workspace scoping or archived behavior, but for a simple list tool with rich annotations and output schema, it is largely complete. Could mention that workspaceId is optional and defaults to user's default.

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

Parameters3/5

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

Schema covers 4 parameters but description coverage is only 25%—it does not mention or elaborate on any parameter. However, the output schema exists and parameters like limit/offset/workspaceId/includeArchived are self-explanatory from names and schema defaults. Baseline 3 is appropriate since description adds no value beyond schema, but schema names provide adequate context.

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

Purpose4/5

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

Description states specific verb ('List'), resource ('bounded reusable characters'), and included data ('identity, voice, facts, and image-reference metadata'). It clearly distinguishes this tool from sibling tools like characters_get or characters_apply by framing it as a list operation. However, it doesn't explicitly differentiate from other list tools in the sibling set.

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

Usage Guidelines3/5

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

Implied usage is listing characters, but no explicit guidance on when to use this vs alternatives like characters_get (for a single character) or characters_apply (for applying characters). No exclusion criteria or context about filtering, pagination, or prerequisites beyond schema-bound parameters.

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

clip_batches_deleteDelete Clip BatchA
DestructiveIdempotent
Inspect

Preview or delete a terminal clip batch. Dry-run is the default; real deletion requires explicit confirmation, retention choice, workspace delete permission, and an idempotency key.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNo
batchIdYesUUID string.
retentionNoretain_projects_and_exports
workspaceIdNoUUID string.
confirmDeleteNo
idempotencyKeyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior5/5

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

The description goes well beyond the annotations (which already indicate destructive and idempotent). It discloses that dry-run is the default, real deletion requires confirmation and a retention choice, workspace delete permission is needed, and an idempotency key is required. This fully informs the agent of conditions and side effects.

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

Conciseness5/5

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

The description is a single, well-structured sentence that efficiently conveys purpose, default behavior, and prerequisites. Every phrase adds value without wordiness.

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

Completeness4/5

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

The description covers the core behavior and preconditions for this destructive, idempotent tool with 6 parameters. Given that the output schema exists (so return format is already specified), the description provides sufficient context for the agent to understand the tool's workflow, though it does not elaborate on what the dry-run preview returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 only 33% schema description coverage, the description must compensate for the lack of parameter details. It does add semantic value by referencing dry-run, confirmation, retention choice, workspace permission, and idempotency key. However, it does not explain the precise conditions for each parameter (e.g., dryRun must be false, confirmDelete must be true, or the meaning of retention enum values), leaving some ambiguity for the agent.

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

Purpose5/5

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

The description clearly states the tool's purpose with a specific verb and resource: 'Preview or delete a terminal clip batch.' It distinguishes itself from sibling tools like delete_timeline_items by focusing on clip batches, and the dual preview/delete nature is explicit.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool: for previewing or deleting a terminal clip batch. It implies that real deletion requires explicit confirmation and permissions, giving the agent actionable guidance. It doesn't explicitly name alternatives, but the resource type is distinct enough from siblings.

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

clips_createCreate ClipsCInspect

Create a private BlitzReels clip batch from an existing asset or a user-provided video URL. Supports public social videos, Google Drive, and direct media URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoVideo URL to import before clipping. Supports social video links, Google Drive file links, and direct video file URLs.
assetIdNoExisting BlitzReels video asset ID. Provide assetId or url, not both. UUID string.
seriesIdNoOptional Series UUID. Omitted inherits the source Series; null creates standalone clips.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
clipPresetIdNoClip style preset. Use high-retention for High Retention clips or demo-focus for product and screen demos.default
captionThemeIdNoSaved theme UUID or built-in caption look. Omitted inherits Series defaults; null uses workspace captions. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
autoTrimSilenceNoTrim silence around selected moments.
createSharePageNoCreate a public showcase page where completed clips appear.
confirmRightsToMediaNoSet true only after the user confirms they own the media or have permission to import it. Not needed for an existing BlitzReels asset.

Output Schema

ParametersJSON Schema
NameRequiredDescription
batchYes
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

The description discloses that it creates a 'private' batch and supports certain URL sources, which is useful. But it does not mention side effects (it triggers a creation job), batch/asynchronous behavior, the need for rights confirmation for external media, or any downstream consequences. With no annotations provided, the description carries a heavier burden and falls short.

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

Conciseness5/5

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

Two concise sentences with no filler. The key purpose and source types are front-loaded, making the description 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?

This is a complex creation tool with 10 parameters, including idempotency and rights confirmation, yet the description does not explain the overall workflow, what a 'batch' means, or external-URL requirements. An agent would need to read every parameter description to understand important constraints like confirmRightsToMedia. The short description leaves key operational context unstated.

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

Parameters3/5

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

The input schema already documents each parameter thoroughly (e.g., confirmRightsToMedia, idempotencyKey, assetId/url mutual exclusion). The description adds only the supported URL types and 'batch' context, which partially repeats schema information. This matches the baseline for high schema coverage.

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

Purpose4/5

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

The description names a specific action ('Create a private BlitzReels clip batch') and identifies two input sources ('existing asset' or 'user-provided video URL'), which is clear and specific. However, no sibling tool names are provided, so it cannot differentiate from related tools like clip_batches_create or media_import_url.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 the general scenario (create clips from an asset or URL) but no explicit guidance on when to choose this tool over alternatives, no prerequisites (e.g., rights confirmation for external URLs), and no mention of intended workflow. Without sibling context, an agent is left to infer usage from the parameter names.

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

clips_getGet Clip BatchA
Read-onlyIdempotent
Inspect

Get status, generated clips, render counts, and download links for a BlitzReels clip batch.

ParametersJSON Schema
NameRequiredDescriptionDefault
batchIdYesClip batch ID returned from clips_create. UUID string.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
batchYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive, so the safety profile is covered. The description adds valuable behavioral context by enumerating the specific output fields (status, clips, counts, links), which goes beyond the generic annotations. This merits a 4.

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

Conciseness5/5

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

The description is a single sentence that front-loads the action and lists key outputs in a compact manner. No unnecessary information or filler, earning a 5.

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

Completeness5/5

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

For a simple, read-only getter with an output schema and strong annotations, the description is complete. It clearly states the purpose and return contents, with no missing critical context. The tool's simplicity and structured data make this comprehensive without needing extra detail.

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

Parameters3/5

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

Schema description coverage is 100%, with both parameters (batchId, workspaceId) fully described including UUID format and default behavior. The description adds no parameter-specific meaning, so the baseline of 3 is appropriate as the schema does the heavy lifting.

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

Purpose5/5

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

The description uses a specific verb 'Get' and names the resource 'BlitzReels clip batch', listing the exact outputs: status, generated clips, render counts, download links. This clearly distinguishes it from siblings like clips_create or clips_manage, which handle creation or broader management.

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

Usage Guidelines4/5

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

The description implies usage after creating a batch (e.g., via clips_create) by stating it retrieves batch data. It gives clear context for when to use it, though it does not explicitly name alternatives or exclusions. Given the tool's name and sibling context, this is sufficient for a 4.

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

clips_manageManage ClipsCInspect

List or inspect clips, regenerate, repair visual QA, start export, promote an accepted delivery export, inspect caption words, or apply a verified caption look.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
clipIdNo
formatNomp4
lookIdNo
offsetNo
statusNo
assetIdNoUUID string.
exportIdNoUUID string.
matchTextNo
operationYes
projectIdNoUUID string.
endSecondsNo
layoutModeNo
repairModeNoauto
resolutionNo1080p
workspaceIdNoUUID string.
startSecondsNo
suggestionIdNoUUID string.
selectionModeNo
idempotencyKeyNo
timelineItemIdNo
captionsEnabledNo
confirmVisualQaNo
contentTypeHintNo
captionWordLimitNo
coverFrameSecondsNo
clearWordOverridesNo
maxDurationSecondsNo
minDurationSecondsNo
allowBlockingQaBypassNo

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?

The annotations indicate this is a mutating, non-idempotent operation, and the description reinforces this with verbs like 'regenerate' and 'promote,' but it does not disclose side effects, prerequisites, or reversibility. For example, 'promote an accepted delivery export' implies a state change but no details are given about what is affected or whether confirmation is 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 description is a single sentence that packs many operations into a comma-separated list, making it somewhat run-on but still efficient in length. It is front-loaded with 'List or inspect clips' but the long list of loosely related actions reduces clarity and structure.

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

Completeness2/5

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

For a tool with 30 parameters, 7 enums, and an output schema, the description provides only a high-level operation list. It lacks critical contextual details such as parameter dependencies, operation-specific behaviors, or typical use cases, making it incomplete for an agent to reliably invoke the 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?

With 30 parameters and only 17% schema description coverage, the description carries a heavy responsibility to explain parameters, but it names none of them. It does not map operations to required fields (e.g., which params are needed for 'repair' vs 'export') nor explain enums like selectionMode or layoutMode.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 enumerates the tool's operations with action verbs (list, inspect, regenerate, repair, start export, promote, inspect, apply), making its broad purpose evident. It distinguishes from siblings like clips_get or exports_start by covering a wider range of clip management actions, though the list-like structure prevents a single focused purpose from being 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?

No guidance is provided on when to use clips_manage versus sibling tools such as clips_get, clips_create, or exports_start. The description only lists operations without explaining which to choose for a given scenario or when a more specific sibling tool would be preferable.

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

clips_presets_listList Clip PresetsA
Read-onlyIdempotent
Inspect

List available clip batch presets and their clipping/caption defaults.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
presetsYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well-covered. The description adds the factual content (clipping/caption defaults) but does not disclose additional behavioral traits such as return format, pagination, or whether presets include custom user-defined ones.

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

Conciseness5/5

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

The description is a single, focused sentence that immediately states the action and object. It contains no redundant phrases or filler, making it highly concise and well-structured.

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

Completeness4/5

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

With an output schema present and comprehensive annotations, the description is largely complete for a simple list tool. However, it could provide slightly more contextual value by hinting at how these presets are used (e.g., 'These presets can be applied when creating clip batches'), which would help new users understand the workflow.

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

Parameters4/5

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

The tool has zero parameters, so schema coverage is trivially 100% and the description has no parameter burden. A baseline score of 4 is appropriate since there is nothing to explain.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 ('List') and resource ('available clip batch presets'), and specifies the included information ('clipping/caption defaults'). This distinguishes it from sibling tools like captions_themes_list and clips_get, which serve different purposes.

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

Usage Guidelines3/5

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

The usage is implied by the tool's name and description—if you need to list presets, this is the tool—but there is no explicit guidance on when to use it versus alternatives, nor any mention of prerequisites or follow-up actions. The description could benefit from noting that these presets are for use with clip batch creation.

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

delete_timeline_itemsDelete Timeline ItemsB
DestructiveIdempotent
Inspect

Preview or delete up to 100 timeline items and optionally remove linked captions.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNo
projectIdYesUUID string.
confirmDeleteNo
idempotencyKeyNo
timelineItemIdsYes
expectedRevisionNoExpected sequence revision, or null.
removeAssociatedCaptionsNo

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?

Adds information about the preview mode and optional caption removal beyond the annotations, which already indicate destructive behavior. Still, it doesn't explain the dryRun/confirmDelete workflow or other behavioral nuances, so 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.

Conciseness5/5

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

A single, front-loaded sentence with no redundant filler. Efficiently conveys the core functionality and primary option.

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 annotations and an output schema, the description omits essential workflow details for a destructive tool—such as how preview (dryRun) and confirmDelete interact, the purpose of idempotencyKey, and revision handling. This is a significant gap for safe usage.

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 description adds meaning to timelineItemIds (up to 100) and removeAssociatedCaptions (linked captions), but schema coverage is only 29%, leaving many parameters (dryRun, confirmDelete, idempotencyKey, expectedRevision) unaddressed. The description does not compensate enough for the low 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?

Clearly states it previews or deletes timeline items and optionally removes linked captions. The verb 'delete' and resource 'timeline items' are specific, though it doesn't explicitly distinguish from sibling tools.

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

Usage Guidelines3/5

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

The phrase 'Preview or delete' implies a safe preview mode before deletion, providing some usage context. However, there's no explicit guidance on when to use this tool versus alternatives, nor on when to choose preview vs actual deletion.

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

exports_listList ExportsA
Read-onlyIdempotent
Inspect

List exports with render status and progress. Completed exports include a signed download URL. Pass exportId to return one export.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum exports to return when exportId is absent (1-50).
offsetNoExport offset when exportId is absent.
exportIdNoReturn only this export, including its signed download URL when the render is complete. UUID string.
projectIdNoFilter exports by project ID. UUID string.
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
exportsYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds valuable behavioral context beyond annotations: render status/progress and the presence of signed download URLs on completed exports. This informs the agent about the data shape and what to expect, without contradicting annotations.

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

Conciseness5/5

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

The description is two concise sentences with no filler. It front-loads the primary action and then adds the key differentiator (single export via exportId). Every word earns its place.

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

Completeness5/5

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

Given the tool's low complexity, rich annotations, complete parameter schemas, and presence of an output schema, the description is sufficiently complete. It covers what the tool does, the main data included (status/progress, signed URLs), and the single-record mode. No additional context is necessary.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter clearly explained. The description adds no new information about parameters beyond saying 'Pass exportId,' which the schema already documents. This meets the baseline of 3 when the schema carries the parameter-semantics burden.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'List exports with render status and progress.' It also distinguishes two modes — listing all exports vs. returning one by exportId — which separates this from sibling tools like exports_start. The verb 'List' and resource 'exports' are specific and unambiguous.

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

Usage Guidelines4/5

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

The description provides clear usage context: it lists exports with status/progress and notes that completed exports include signed download URLs. It also instructs when to pass exportId to retrieve a single export. While it does not explicitly name alternatives or exclusions, the single-vs-list distinction serves as effective usage guidance.

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

exports_startStart ExportAInspect

Render/export a BlitzReels video project after timeline edits. Returns export and job IDs that can be polled with exports_list.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoExport container formatmp4
projectIdYesBlitzReels project ID. UUID string.
resolutionNoExport resolution1080p
idempotencyKeyNoRetry key. Reuse only with identical inputs.
coverFrameSecondsNoOptional cover thumbnail timestamp

Output Schema

ParametersJSON Schema
NameRequiredDescription
exportYes

TDQS

A4.2/5.0
Behavior4/5

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

The description adds useful behavioral context beyond annotations: the tool returns export and job IDs and can be polled via exports_list, implying an asynchronous operation. Annotations already indicate it is not read-only or idempotent, and the description does not contradict them. It could mention side effects (e.g., rendering costs or project state changes), but the polling hint covers the main follow-up behavior.

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

Conciseness5/5

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

Two tight sentences. The first states exactly what the tool does; the second explains the return value and the follow-up polling mechanism. No wasted words, and the most important information is front-loaded.

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

Completeness4/5

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

The tool has 5 parameters, an output schema, and is a side-effecting operation. The description covers the key flow (start export, get IDs, poll with exports_list) and leverages the complete schema. It could be slightly more thorough about asynchronous behavior or failure modes, but the essential context is present, especially given the rich schema and output schema.

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

Parameters3/5

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

Schema description coverage is 100%, with clear descriptions for all parameters including enums and defaults. The description itself adds no parameter-specific detail, but given complete schema coverage, no additional compensation is needed. 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 ('Render/export') and names the exact resource ('BlitzReels video project after timeline edits'). It also states the return value (export and job IDs) and references the sibling tool exports_list for polling, which clearly distinguishes it from related tools.

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

Usage Guidelines4/5

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

The description gives clear contextual guidance: use after timeline edits, and poll results with exports_list. It does not explicitly state exclusions or alternative tools for this action, but the reference to exports_list implies the workflow and the timing is reasonably clear.

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

generation_faceless_createGenerate Faceless VideoA
Idempotent
Inspect

Turn a script into a full faceless video project: scene plan, generated visuals, optional voiceover, captions, music, and sound. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
scriptYesThe narration or story to turn into a video.
voiceIdNoOptional voice override from the BlitzReels voice catalog. The Story Kit narrator voice is used when omitted.
seriesIdNoOptional Series UUID. Inherits its Story Kit and branding defaults for this new video.
storyKitIdNoReusable Story Kit UUID for characters, references, locations, style, and narrator voice.
videoModelNoImage-to-video model used to animate scenes.seedance-2.0-ref2v
projectNameNoName for the created BlitzReels project.Faceless Video
visualStyleNoOptional art direction override. A Story Kit style is used when omitted.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
imageModelIdNoModel used to generate scene images.fal-ai/nano-banana-pro
captionStyleIdNoOptional caption theme ID from captions_themes_list.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
plannerModelIdNoModel used to plan the video scenes.google/gemini-3.8-flash
includeCaptionsNoBurn captions into the timeline.
generateVoiceoverNoNarrate the script with a generated voice.
generateSoundEffectsNoAdd generated sound effects.
targetDurationSecondsNoTarget runtime between 10 and 120 seconds.
styleReferenceAssetIdsNoOptional stills that lock rendering medium, palette, lighting and texture. Not used as scene frames.
generateBackgroundMusicNoAdd a generated background track.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly=false, destructive=false, idempotent=true, openWorld=false). The description adds genuinely useful behavior beyond them: it consumes AI credits and returns an asynchronous job to be polled. It does not quantify cost or say how long the job runs, keeping it short of a 5.

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

Conciseness5/5

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

Two tight sentences with zero waste: the pipeline scope is front-loaded, and the cost/polling consequence follows immediately. No filler or redundancy.

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

Completeness4/5

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

An output schema exists, so return-value detail is not required, and the description still flags the credit spend and the polling handoff to generation_jobs_get. For a heavy 18-parameter generator, this is nearly complete, with only the absence of sibling routing leaving a small gap.

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

Parameters3/5

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

Schema description coverage is 100%, so all 18 parameters are already documented in the schema; baseline is 3. The description's mention of optional voiceover, captions, music and sound loosely maps to the boolean toggles but adds no syntax, defaults, or enum guidance beyond the schema.

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

Purpose4/5

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

Specific verb+resource: 'Turn a script into a full faceless video project' with an enumerated pipeline (scene plan, visuals, voiceover, captions, music, sound). This scope implicitly separates it from single-asset siblings like generation_video_create or generation_voiceover_create, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

The description says it 'returns a job to poll with generation_jobs_get', which implies the async usage pattern. However, it never states when to choose this full-pipeline tool over generation_video_create, generation_plan_brief, or the per-asset generators, so selection among siblings 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.

generation_image_createGenerate ImageA
Idempotent
Inspect

Queue an AI image generation into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoImage model. Call generation_options_list for costs.fal-ai/nano-banana-2
promptYesWhat the image should show (8-5000 characters).
folderIdNoOptional media library folder ID.
resolutionNoNative image resolution. Call generation_options_list for model support and resolution pricing. Unsupported settings are rejected.
aspectRatioNoOutput aspect ratio.1:1
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
enhancePromptNoEnhance using BlitzReels model grammar and actual input context.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
referenceAssetIdsNoOrdered image references. Model-specific limits are listed in generation_options_list; unsupported references fail.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already communicate idempotency and non-destructiveness, and the description adds meaningful behavioral context: it spends AI credits and returns an asynchronous job to poll. This reveals cost and job-based execution, which are not visible from the annotations alone. No contradiction with annotations.

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

Conciseness5/5

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

Two sentences with no filler. The primary action is front-loaded, followed immediately by the most important operational facts (credit cost and job polling). Every word earns its place.

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

Completeness5/5

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

The rich input schema and annotations already cover parameters, idempotency, and non-destructive behavior. The description supplies the missing operational facts—credit spending and polling the returned job—which are exactly what an agent needs to invoke and follow up correctly. The output schema covers return details, so nothing critical is missing.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter already well-documented (model defaults, prompt length limits, resolution behavior, aspect ratio, etc.). The description adds no extra parameter-level detail, so the baseline of 3 is appropriate.

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

Purpose5/5

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

The description uses a specific action ('Queue') and a clear resource ('AI image generation into the BlitzReels media library'), and it distinguishes this tool from sibling generation tools like generation_video_create or generation_music_create. It also includes the key outcome—returns a job to poll—so an agent understands exactly what this tool 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?

The description clearly frames this as the image-generation entry point and tells the agent to follow up with generation_jobs_get, which implies the async usage flow. However, it does not explicitly state when to use this tool over the other generation_* siblings or when not to use it, so the routing guidance is implicit rather than explicit.

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

generation_jobs_cancelCancel Generation JobA
Idempotent
Inspect

Cancel a queued or running generation before it finishes spending credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIdYesJob ID returned by any generation_*_create tool.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
jobYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=false, destructiveHint=false, and idempotentHint=true. The description adds the state constraint (queued or running) and the credit-saving rationale, which is useful. However, it does not disclose what happens on cancel (e.g., whether credits are refunded or if cancellation is irreversible), but the output schema may cover return values.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that conveys the core purpose and key scope without any fluff. Every word earns its place, making it highly concise and well-structured.

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

Completeness4/5

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

For a simple cancellation tool with good schema coverage, annotations, and an output schema, the description is nearly complete. It specifies the applicable states and the rationale, though it could explicitly mention side effects or edge cases (e.g., cancelling an already-finished job). Minor gap, but overall adequate.

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

Parameters3/5

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

Schema description coverage is 100%, and both parameters (jobId and workspaceId) have detailed descriptions in the schema. The tool description adds no additional parameter-level information beyond the schema, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('Cancel') with a clear resource ('generation job') and adds meaningful scope ('queued or running generation before it finishes spending credits'). This clearly distinguishes it from sibling tools like generation_jobs_get and the various generation creation tools.

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

Usage Guidelines4/5

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

The description implies when to use the tool: when a generation job is queued or running and you want to avoid spending credits. It specifies the applicable states ('queued or running') but does not explicitly name alternatives or exclusions, though the scope is clear enough.

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

generation_jobs_getGet Generation JobA
Read-onlyIdempotent
Inspect

Check a queued generation. Completed jobs carry the media asset ID and a download URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIdYesJob ID returned by any generation_*_create tool.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
jobYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare the operation read-only and idempotent. The description adds value by revealing that completed jobs include a media asset ID and download URL, and by implying incomplete jobs do not. This is useful behavioral context beyond the annotation flags.

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

Conciseness5/5

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

Two sentences, front-loaded with the primary purpose. Every phrase earns its place; no fluff or repetition of schema/annotations. Very concise and effective.

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

Completeness4/5

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

With an output schema present and strong annotations, the description need not explain every return field. It explains the key distinction between completed and non-completed jobs, which complements the structured data. Slightly missing polling guidance or error-state info, but not critical for a simple read operation.

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

Parameters3/5

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

Schema coverage is 100% for both parameters, so the schema fully documents their meaning. The description does not add any additional insight into parameter semantics, warranting the baseline score of 3.

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

Purpose4/5

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

The description clearly states the tool checks a generation job and specifies what completed jobs return (media asset ID and download URL). It distinguishes from sibling generation creation/cancel tools, though the phrase 'queued generation' is slightly ambiguous about whether it handles all job states.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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. It does not mention that it should be used after a generation_*_create call or contrast with generation_jobs_cancel. Usage context is only implied by the presence of sibling tools and the parameter schema.

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

generation_music_createGenerate MusicA
Idempotent
Inspect

Queue a background music track into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
moodNoTrack mood.neutral
promptNoOptional description of the track.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
durationSecondsNoTrack length between 10 and 120 seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A4/5.0
Behavior4/5

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

The description adds valuable behavioral context by disclosing that the operation spends AI credits and returns a job to poll via generation_jobs_get. This goes beyond the annotations, which only indicate idempotency and non-destructiveness.

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

Conciseness5/5

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

The description is exactly two sentences, front-loading the core purpose and adding only essential behavioral context. No wasted words.

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

Completeness4/5

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

Given the schema covers all parameters and an output schema exists, the description sufficiently conveys the operation's purpose, cost, and async workflow. It is complete enough for an agent to invoke correctly.

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

Parameters3/5

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

All 5 parameters are fully described in the input schema (100% coverage), so the description does not need to explain them. The description does not add additional parameter-level meaning, staying at the baseline.

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

Purpose5/5

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

The description clearly states the tool's function with a specific verb ('Queue') and resource ('background music track into the BlitzReels media library'), distinguishing it from sibling generation tools by specifying background music.

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

Usage Guidelines3/5

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

The description implies usage for background music and mentions the asynchronous job pattern and AI credit cost, but it does not explicitly contrast with alternative generation tools such as generation_sound_create or generation_voiceover_create.

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

generation_options_listList Generation OptionsA
Read-onlyIdempotent
Inspect

List the models, defaults, limits, and credit costs available for one generation kind before queueing it. Video duration is an enum per model (durations_seconds), not a min-max range.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYesGeneration kind to describe.

Output Schema

ParametersJSON Schema
NameRequiredDescription
optionsYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuine value beyond them by disclosing the shape of returned data: video duration is an enum per model (durations_seconds), not a min-max range — a trait an agent would otherwise guess wrong.

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

Conciseness5/5

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

Two sentences, both front-loaded: the first states the purpose, the second immediately delivers the non-obvious durations_seconds caveat. No filler.

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

Completeness5/5

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

An output schema exists, so return values needn't be described in full, yet the description includes the one detail most likely to cause misuse (duration enum vs range). For a single-enum-param read 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.

Parameters3/5

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

There is only one parameter (kind), and schema description coverage is 100% with a full enum of allowed kinds. The description adds no meaning to the 'kind' parameter itself, so the baseline 3 applies; the durations_seconds note pertains to output, not this parameter.

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

Purpose5/5

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

States a specific verb (List) and resource (models, defaults, limits, credit costs) scoped to 'one generation kind before queueing it'. An agent can distinguish it from the generation_*_create siblings, which consume the options this tool returns.

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

Usage Guidelines4/5

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

The phrase 'before queueing it' clearly signals this is a pre-flight/discovery call that precedes a generation create. It does not explicitly name the alternative tools (generation_image_create, generation_video_create, etc.), but the sequencing intent is unambiguous.

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

generation_plan_briefGet Generation Plan BriefA
Read-onlyIdempotent
Inspect

Fetch the authoring brief for an AI video generation plan: the target model's prompting grammar, capability constraints, locked style contract, and the plan JSON schema. Author the plan yourself from this brief, then check it with generation_plan_validate.

ParametersJSON Schema
NameRequiredDescriptionDefault
genreNoGenre pack id (e.g. pixar-culture-skit). The brief lists available ids in availableGenres; the pack's beats and visual contract override the generic grammar.
aspectRatioNo9:16
visualStyleNoVisual style preset id; its locked style contract is included in the brief.
videoModelIdNoTarget video model id (see generation_options_list, kind: video). Defaults to the strongest single-take model.
targetDurationSecondsNoDesired final video duration in seconds.

Output Schema

ParametersJSON Schema
NameRequiredDescription
briefYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is known. The description adds behavioral context by specifying what the brief contains and its role in the authoring workflow, going beyond the annotations. No contradiction with annotations.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the main purpose, and contains no filler. Every sentence earns its place, making it highly concise and structured.

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

Completeness5/5

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

Given the presence of an output schema, detailed annotations, and 5 optional parameters, the description is sufficient. It explains the tool's purpose, what the brief contains, and the expected next step (validate), making it contextually 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 80%, and the parameter descriptions are detailed (e.g., genre, videoModelId). The tool description does not add extra meaning to parameters beyond what the schema already provides, so the baseline score of 3 applies.

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

Purpose5/5

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

The description uses a specific verb+resource ('Fetch the authoring brief') and clearly lists the brief's contents (prompting grammar, capability constraints, locked style contract, plan JSON schema). It distinguishes this tool from the sibling generation_plan_validate by stating the workflow: author the plan from the brief, then validate.

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

Usage Guidelines4/5

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

The description gives clear usage context: this tool provides the brief for authoring a plan, and the next step is validation with generation_plan_validate. It implies when to use it (before authoring) but does not explicitly state exclusions or alternatives beyond the validate sibling, 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.

generation_plan_validateValidate Generation PlanA
Read-onlyIdempotent
Inspect

Validate a self-authored generation plan against the schema and the target model's real capabilities before execution. Returns directive errors to fix and revalidate; only a valid plan is executable.

ParametersJSON Schema
NameRequiredDescriptionDefault
planYesThe generation plan object authored from generation_plan_brief's planJsonSchema.

Output Schema

ParametersJSON Schema
NameRequiredDescription
validYes
errorsYesEmpty when valid. Each entry states exactly what to change.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds context about return behavior ('Returns directive errors to fix and revalidate') and establishes this tool as a gate for execution. This goes beyond annotations without conflicting with them.

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

Conciseness5/5

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

Two sentences with no redundant wording. The purpose is front-loaded, and the second sentence efficiently conveys return behavior and the validity constraint.

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

Completeness5/5

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

Given a single well-documented parameter, output schema, and clear annotations, the description sufficiently covers purpose, usage context, and return behavior. It is complete for the tool's complexity.

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

Parameters3/5

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

The schema provides a full description for the 'plan' parameter, referencing generation_plan_brief's planJsonSchema. The tool description adds no additional parameter-specific semantics, but with 100% schema coverage, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's function: validating a generation plan against the schema and model capabilities. It uses a specific verb ('validate') and resource ('generation plan'), and the phrase 'before execution' distinguishes it from planning or execution tools like generation_plan_brief.

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

Usage Guidelines4/5

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

The description implies when to use this tool: after authoring a plan and before execution. It does not explicitly name alternatives or exclusions, but the context is clear enough from 'self-authored' and 'only a valid plan is executable.'

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

generation_sound_createGenerate Sound EffectA
Idempotent
Inspect

Queue a sound effect into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
loopNoProduce a seamlessly loopable effect.
promptYesThe sound to create (3-500 characters).
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
durationSecondsNoEffect length between 0.5 and 30 seconds.
promptInfluenceNoHow literally to follow the prompt, between 0 and 1. Higher is more literal.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond annotations by revealing the asynchronous nature ('Queue'), the cost implication ('Spends AI credits'), and the return of a job to poll with generation_jobs_get. Annotations only cover read-only/idempotent/destructive hints, so this adds substantial behavioral context.

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

Conciseness5/5

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

Two concise sentences with the core purpose front-loaded. Every word earns its place, and the job-polling hint is included without unnecessary detail.

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

Completeness5/5

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

With full schema coverage and an output schema, the description fills the remaining gaps: async job model, credit cost, and media library destination. This is complete for the tool's complexity.

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

Parameters3/5

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

Schema coverage is 100% with detailed parameter descriptions, so the baseline is 3. The description adds no param-specific meaning, but the schema already handles 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?

Clearly states it queues a sound effect into the BlitzReels media library, distinguishing it from sibling generation tools for music, image, video, and voiceover. Also mentions returning a job to poll, which clarifies its role.

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

Usage Guidelines4/5

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

Provides clear context: use for sound effects, spends AI credits, returns a job for polling. It doesn't explicitly name alternatives, but the sound-effect scope and job-based workflow make the usage unambiguous.

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

generation_video_createGenerate VideoA
Idempotent
Inspect

Queue an AI video generation into the BlitzReels media library, from a prompt or from an existing image asset. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
seedNoOptional seed for reproducible output.
modelNoVideo model. Supported durations and text-to-video vs image-to-video differ per model; call generation_options_list first.wan-2.1
promptYesWhat should happen in the shot (3-5000 characters).
folderIdNoOptional media library folder ID.
providerNoExplicit provider must support the model and input mode. auto uses a configured compatible provider.auto
resolutionNoOutput resolution. Call generation_options_list for model-specific supported values and defaults. Unsupported settings are rejected.
aspectRatioNoOutput aspect ratio.9:16
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
enhancePromptNoEnhance using BlitzReels model grammar and actual input context.
generateAudioNonull uses model audio behavior. Explicit true/false must be supported by the selected model.
sourceAssetIdNoFirst-frame still. Required only when that model's parameters.source_asset_id.required is true. Optional on reference-capable I2V including Seedance 2.5. Text-to-video rejects it. Cannot combine with reference arrays and end_frame_asset_id.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
negativePromptNoWhat to avoid in the shot.
durationSecondsNoChoose a value from the selected model's durations_seconds. duration_seconds_min and duration_seconds_max are the bounds of that list, not a continuous range.
endFrameAssetIdNoLast-frame still. Interpolates from the source first frame to this image across the full duration. Requires a source first frame; cannot combine with reference arrays.
referenceAssetIdsNoOrdered reference images: Seedance 2.5 up to 30; Seedance 2.0 ref2v up to 9; other reference models up to 4. Source counts toward the limit.
referenceAudioAssetIdsNoReference audio: Seedance 2.5 up to 10; Seedance 2.0 ref2v and fast up to 3. Other models reject them.
referenceVideoAssetIdsNoReference videos: Seedance 2.5 up to 10; Seedance 2.0 ref2v and fast up to 3. Other models reject them.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare write, idempotent, non-destructive, closed-world. The description adds two things annotations cannot convey: it consumes AI credits, and it is asynchronous — it returns a job rather than a finished asset, to be polled with generation_jobs_get. That async/cost behavior is exactly the context an agent needs before calling.

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

Conciseness5/5

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

Two sentences, no waste. The queueing action and input modes come first, then the cost and async follow-up, so 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?

For an 18-parameter, credit-spending, async generation tool it covers the essential non-schema facts: cost, async polling, and the two input shapes. Output schema exists so return values needn't be enumerated, but a hint that model/options must be validated via generation_options_list is only in the schema, not the description.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3 — the schema already documents model, duration, reference arrays, asset IDs, and their per-model constraints in detail. The description adds only a high-level encapsulation of the two input modes (prompt / image asset) and no syntax or format detail beyond the schema.

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

Purpose5/5

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

States a specific verb and resource ("Queue an AI video generation into the BlitzReels media library") and names both input modes (prompt or existing image asset). The word "video" distinguishes it cleanly from generation_image_create, generation_music_create, and generation_voiceover_create without needing to inspect them.

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

Usage Guidelines4/5

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

It gives the two valid entry paths (text prompt vs. existing image asset) and names the follow-up tool, generation_jobs_get. It stops short of explicitly stating when to prefer this over the sibling generation tools or generation_faceless_create, so routing guidance is clear but not complete.

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

generation_voiceover_createGenerate VoiceoverA
Idempotent
Inspect

Queue a text-to-speech voiceover into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesScript to read aloud (3-8000 characters).
speedNoSpeaking rate between 0.5 and 1.6.
voiceIdNoVoice ID. Call generation_options_list with kind voiceover for the catalog.pNInz6obpgDQGcFmaJgB
voiceStyleNoDelivery emotion.neutral
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.

Output Schema

ParametersJSON Schema
NameRequiredDescription
generationYes

TDQS

A4.5/5.0
Behavior5/5

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

Adds significant behavioral context beyond what annotations provide: the operation 'Spends AI credits' (a cost consequence), is queued asynchronously rather than executing synchronously, and 'returns a job to poll' — all unstated in the annotations. The annotations cover idempotency and non-read-only status, and the description is fully consistent with them, while enriching the agent's understanding of side effects and workflow.

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

Conciseness5/5

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

Two sentences with zero waste. The action and resource are front-loaded in the first sentence, and the second sentence delivers the two highest-stakes facts — cost and async polling — that an agent must know before invoking. Every word earns its place.

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

Completeness5/5

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

With an output schema present to document the job return shape, 100% schema coverage, and annotations covering idempotency/safety, the description covers the remaining essentials for an async queue tool: what is produced, where it lands, that it costs credits, and how to follow up (poll with generation_jobs_get). Nothing an agent needs to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 6 parameters well, including the voiceId catalog lookup (generation_options_list with kind voiceover), speed range, voiceStyle enum, and idempotencyKey semantics. The description adds minimal parameter-level meaning beyond confirming 'text' is the read-aloud script via the 'text-to-speech' phrasing. Baseline 3 is appropriate since the schema carries the heavy lifting.

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

Purpose5/5

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

Uses a specific verb ('Queue') and names a precise resource ('text-to-speech voiceover into the BlitzReels media library'). The async nature ('returns a job to poll') clearly distinguishes this from synchronous siblings, and the 'text-to-speech voiceover' scoping separates it from the generation_music_create, generation_sound_create, generation_video_create, and generation_faceless_create siblings without needing to open any schema.

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

Usage Guidelines4/5

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

The description establishes clear context for when to use this tool: when a voiceover is needed and the caller expects an async queued job. The explicit pointer to generation_jobs_get gives the follow-up workflow, and the TTS scoping implicitly routes the agent away from the music/sound/video/image generator siblings. It stops short of explicitly enumerating when-not-to-use conditions, so it doesn't reach a 5.

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

media_assets_getGet Media AssetA
Read-onlyIdempotent
Inspect

Get metadata and processing state for one media-library asset without returning transcript segments.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetIdYesMedia asset UUID. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
assetYes

TDQS

A4.3/5.0
Behavior4/5

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

With annotations already declaring readOnlyHint, idempotentHint, and destructiveHint=false, the description adds meaningful behavioral context by specifying the type of data returned (metadata, processing state) and explicitly stating what is not returned (transcript segments). This goes beyond the annotations without contradicting them.

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

Conciseness5/5

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

The description is a single, well-structured sentence that front-loads the verb and object, includes a necessary exclusion clause, and contains zero filler. Every word contributes to understanding the tool's purpose.

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

Completeness5/5

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

For a simple get-by-id tool with one parameter, a rich output schema, and strong annotations, the description is complete. It explains what the tool returns (metadata and processing state), what it excludes (transcript segments), and the tool is simple enough that no further context is needed.

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

Parameters3/5

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

The schema provides 100% coverage for the single parameter, describing it as 'Media asset UUID. UUID string.' The description reinforces the parameter's role by saying 'one media-library asset', but it does not add additional semantic detail beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description states exactly what the tool does: 'Get metadata and processing state for one media-library asset'. It clearly identifies the verb (get), resource (media-library asset), and scope (one). The exclusion clause 'without returning transcript segments' also distinguishes it from sibling tools like media_transcript_get.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when you need metadata and processing state for a single asset. The phrase 'without returning transcript segments' provides guidance that this is not the tool for transcript retrieval, effectively directing users to a sibling tool. It does not explicitly name alternatives, but the context is clear.

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

media_assets_previewPreview Media AssetA
Read-onlyIdempotent
Inspect

Return one bounded JPEG as MCP image content for visual inspection. Images use the stored visual; videos use the existing thumbnail.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetIdYesMedia asset UUID. UUID string.
maxDimensionNoMaximum preview width or height in pixels (256-1536).

Output Schema

ParametersJSON Schema
NameRequiredDescription
assetYes
previewYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations declare readOnlyHint and idempotentHint, so the safety profile is known. The description adds valuable context beyond annotations by specifying the output as a bounded JPEG and the conditional behavior for images vs videos (stored visual vs thumbnail). This clarifies what the agent can expect from the tool.

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

Conciseness5/5

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

Two concise sentences, each adding value. The first sentence states the action and result; the second clarifies behavior for different asset types. No wasted words, and the most important information is front-loaded.

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

Completeness5/5

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

The tool is simple, has full schema coverage, an output schema, and safety annotations. The description covers the key behavioral distinction (image vs video) and clearly communicates the return format. Nothing critical is missing for the agent to select and invoke this tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are well-documented in the schema. The description mentions 'bounded' which relates to maxDimension, but doesn't add new parameter-specific meaning beyond what the schema already provides. Baseline 3 applies.

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

Purpose5/5

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

The description clearly states the tool's function: 'Return one bounded JPEG as MCP image content for visual inspection.' It specifies the verb (return), the resource (media asset), the output format (JPEG), and the purpose (visual inspection). It also distinguishes itself from siblings by noting the difference between image and video behavior.

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

Usage Guidelines3/5

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

The usage is implied by the phrase 'for visual inspection' and the tool name, but there is no explicit comparison to alternatives or guidance on when not to use it. No exclusions or alternative tool references are provided, so it falls short of a clear contextual distinction.

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

media_assets_updateUpdate Media AssetA
Idempotent
Inspect

Rename one media asset, edit its description, move it to a folder, or change B-roll eligibility. Provide at least one of name, description, folderId, or allowUsingAsBroll.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew media asset name.
assetIdYesMedia asset UUID. UUID string.
folderIdNoTarget folder UUID, or null to move the asset to root.
descriptionNoNew description, or null to clear it.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
allowUsingAsBrollNoWhether the asset may be selected as B-roll.

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
assetYes
updatedFieldsYes
mutationReceiptYes

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, destructiveHint=false, and idempotentHint=true. The description accurately describes the write behavior but adds no extra context beyond what the annotations imply (e.g., side effects, reversibility, idempotency details). No contradiction.

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

Conciseness5/5

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

The description is exceptionally concise: one sentence lists the actions, followed by the required at-least-one condition. It is front-loaded, contains no fluff, and every word earns its place.

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

Completeness4/5

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

For a 6-parameter tool with an output schema and clear annotations, the description is nearly complete. It covers the tool's purpose and the key usage constraint. It implicitly conveys partial update semantics but could be slightly more explicit about that. Overall, sufficient for agent 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 100%, so the baseline is 3. However, the description adds the critical constraint that at least one of name, description, folderId, or allowUsingAsBroll must be provided, which is not enforced in the schema. This adds meaningful guidance beyond the schema's field descriptions.

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

Purpose5/5

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

The description clearly states the tool updates a single media asset with specific actions: rename, edit description, move to folder, or change B-roll eligibility. It is unambiguous and differentiates from read-only sibling tools like media_assets_get or media_assets_preview.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool (updating a media asset) but does not explicitly mention alternatives or when not to use it. The instruction to provide at least one of the updatable fields is a constraint, not a comparison to siblings.

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

media_folders_createCreate Media FolderA
Idempotent
Inspect

Create one media-library folder in a workspace and return a retry-safe mutation receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesFolder name.
iconTypeNoFolder icon type.folder
descriptionNoOptional folder description.
workspaceIdNoWorkspace UUID, or null for the default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
parentFolderIdNoParent folder UUID, or null for the root.

Output Schema

ParametersJSON Schema
NameRequiredDescription
folderYes
mutationReceiptYes

TDQS

A4.1/5.0
Behavior3/5

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

The description adds 'retry-safe mutation receipt' which aligns with the idempotentHint annotation, providing a bit more nuance. However, it does not disclose other behavioral aspects beyond what annotations already indicate, and the annotations already cover the safety profile.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that conveys the primary action and result. It is concise without any redundant words, earning the highest score.

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

Completeness5/5

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

Given the complete schema coverage and existence of an output schema, the description is sufficient. It states the core action and the return of a receipt, providing all necessary context for an AI agent to understand the tool's purpose and outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools 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 six parameters are fully described in the schema with 100% coverage. The description itself adds no additional parameter semantics or relationships, so the schema does the heavy lifting. A baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the specific action ('Create') and resource ('media-library folder'), and mentions the return of a mutation receipt. This distinguishes it from siblings like media_folders_list, and the scope ('one folder') is explicitly defined.

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

Usage Guidelines4/5

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

The description implies its usage context: when you need to create a media folder. However, it does not explicitly name alternatives (e.g., media_folders_list for listing) or provide when-not-to-use guidance, so there is clear context but no exclusions.

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

media_folders_listList Media FoldersA
Read-onlyIdempotent
Inspect

List one bounded level of media-library folders and direct asset counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum folders to return (1-50).
offsetNoFolder offset.
workspaceIdNoWorkspace UUID, or null for the default workspace. UUID string.
parentFolderIdNoParent folder UUID, or null for root folders.

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
foldersYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover read-only/idempotent/non-destructive behavior, and the description adds useful behavioral context: it returns only one level of folders and direct (non-recursive) asset counts. This clarifies scope and return semantics beyond the structured annotations.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that fully conveys the tool's purpose and key scoping behavior. No filler or redundancy.

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

Completeness4/5

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

Given the tool's moderate complexity, the description covers the essential scope and return value, and the output schema and annotations fill remaining gaps (pagination, safety). No critical missing details for an agent to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description does not add additional meaning to the parameters; 'bounded level' implicitly relates to parentFolderId but does not explain parameter syntax or behavior beyond the schema.

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

Purpose5/5

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

The description uses a specific verb ('List') with a clear resource ('media-library folders') and scopes the action ('one bounded level', 'direct asset counts'). This distinguishes it from sibling tools like media_folders_create (create) and media_list (likely asset-level listing).

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

Usage Guidelines3/5

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

The description implies usage context by noting 'one bounded level' (i.e., not recursive), but it does not explicitly state when to prefer this over alternatives or provide exclusions. The parentFolderId parameter further hints at hierarchy traversal, but no explicit guidance is given.

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

media_import_inspectInspect Import URLA
Read-onlyIdempotent
Inspect

Inspect a user-provided public social-video or Google Drive URL and return available import metadata without creating media.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic video URL. Supports social video links and Google Drive file links.
confirmRightsToMediaNoSet true only after the user confirms they own the media or have permission to import it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
previewYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description reinforces 'without creating media' and adds the input constraint that the URL must be public, but it does not go beyond annotations to disclose failure modes, rights-confirmation effects, or provider-specific behavior. This is adequate but not especially rich.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every clause earns its place: the source ('user-provided public'), the supported link types ('social-video or Google Drive URL'), the behavior ('return available import metadata'), and the key non-effect ('without creating media').

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 strong annotations, a 100%-covered input schema, and an output schema present, the description covers the core task well and reinforces the critical read-only distinction. It could be more complete by explicitly separating itself from media_import_scan_page or explaining what confirmRightsToMedia actually changes in the response, but those are minor gaps given the surrounding structured context.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents both 'url' and 'confirmRightsToMedia'. The description mostly restates the schema's URL domain (public, social video or Google Drive) and adds no new meaning about URL formats, required confirmation semantics, or edge cases. It does not elevate above the baseline.

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

Purpose5/5

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

The description uses a specific verb ('Inspect') with a clear resource ('a user-provided public social-video or Google Drive URL') and a clear outcome ('return available import metadata'). The phrase 'without creating media' distinguishes it from import-oriented siblings like media_import_url, making the tool's role as a read-only preflight step evident.

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

Usage Guidelines4/5

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

The description gives clear context for when to use the tool: when a user provides a public URL and you need import metadata without creating media. It does not explicitly name alternatives or state when not to use it, so it stops short of full routing guidance, but the use case is unambiguous.

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

media_import_scan_pageScan Page For VideoA
Read-onlyIdempotent
Inspect

Scan a user-controlled public page and return an importable video URL found on it without creating media.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesVideo page URL or direct media URL to inspect for an importable video.
confirmAuthorizedToScanNoSet true only after the user confirms they control the page or are authorized to scan it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resolvedYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already disclose read-only, idempotent, and non-destructive behavior. The description adds meaningful context by explicitly stating no media is created and that the target must be a user-controlled public page, reinforcing the safety and authorization expectations beyond the structured fields.

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

Conciseness5/5

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

The description is a single, directly relevant sentence with no filler. The primary action, target, outcome, and non-destructive nature are all front-loaded and economically expressed.

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

Completeness4/5

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

The description, combined with strong annotations and a fully documented schema, covers what the tool does and its key constraints. The presence of an output schema means return value details are not required here. A small gap is the lack of explicit guidance on when to use this tool versus its import-related siblings.

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

Parameters3/5

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

Schema description coverage is 100%, and both parameters are already well described in the input schema, so the description carries little additional parameter burden. It does not add extra semantics beyond what the schema provides, which matches the baseline expectation given full schema coverage.

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

Purpose4/5

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

The description states a specific action ('Scan a user-controlled public page') and outcome ('return an importable video URL found on it'), with a clear non-creation qualifier. It does not explicitly distinguish itself from sibling tools like media_import_inspect or media_import_url, but its page-scanning 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 Guidelines3/5

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

The description provides context that the page must be user-controlled and public, which implies an authorization condition, and 'without creating media' signals a non-destructive inspection use case. However, it does not explicitly state when to prefer this tool over the related media_import_inspect or media_import_url tools, nor does it describe 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.

media_import_urlImport Media From URLAInspect

Import a video, audio, or image from a user-provided direct URL into the private BlitzReels media library.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the media file to download and upload
nameNoOptional name for the file
projectIdNoOptional project ID to associate the upload with. UUID string.
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.
contentHashSha256NoOptional SHA-256 hex hash of file bytes for dedupe optimization. 64-character hex string.
confirmRightsToMediaNoSet true only after the user confirms they own the media or have permission to import it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
mediaYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate this is a mutating, non-idempotent operation, and the description's 'Import' wording is consistent with that. It adds helpful context about the destination and accepted media types, but it does not disclose behavioral nuances like network download behavior, validation failures, dedupe-by-hash semantics, or the rights confirmation requirement.

Agents need to know what a tool does to the world before calling it. Descriptions 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, efficiently structured sentence that front-loads the action, resource type, source, and destination. There is no filler, and every phrase contributes to the agent's understanding.

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

Completeness4/5

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

With rich schema descriptions, clear annotations, and an output schema present, the description provides enough context for an agent to call the tool correctly. It could be more complete by giving explicit routing guidance versus upload/inspect siblings, but that gap does not block correct invocation.

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

Parameters3/5

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

The input schema provides 100% coverage for all six parameters, so the description does not need to restate parameter details. The description adds no new parameter-level semantics beyond the schema, but the baseline of 3 applies because the structured schema already carries that burden.

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

Purpose5/5

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

The description identifies a specific verb ('Import'), a clear resource (video, audio, or image from a direct URL), and a destination ('private BlitzReels media library'). This distinguishes it from sibling tools such as media_upload_file and media_import_inspect without requiring an agent to inspect schemas.

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

Usage Guidelines3/5

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

The phrase 'user-provided direct URL' implies the intended use case: importing remote media into the library. However, the description never explicitly names alternatives or states when not to use this tool, such as for local file uploads or pre-import URL inspection, so usage guidance is only implied.

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

media_listList MediaA
Read-onlyIdempotent
Inspect

List media files in user's library (videos, audio, images)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of assets to return (1-50)
offsetNoMedia asset offset.
assetTypeNoFilter by asset typeall
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
assetsYes
boundsYes

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds minimal extra behavioral context beyond scope ('user's library'), but does not disclose pagination, ordering, or default workspace behavior beyond what schema already provides.

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

Conciseness5/5

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

The description is a single sentence that directly states the tool's purpose without redundancy or filler. It is front-loaded and every word contributes meaning.

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

Completeness5/5

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

For a simple filtered-list tool, the description is sufficient when combined with complete schema documentation, strong annotations, and an output schema. There are no complex behaviors or hidden side effects to explain.

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

Parameters3/5

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

Schema description coverage is 100% with each parameter documented (limit, offset, assetType, workspaceId). The description adds no new parameter nuance beyond mentioning media types, which duplicates the assetType enum. Baseline 3 is appropriate because the schema carries the semantic load.

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

Purpose5/5

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

The description uses a specific verb ('List') and resource ('media files in user's library'), and clarifies scope with media types ('videos, audio, images'). This clearly distinguishes it from siblings like media_assets_get (singular asset retrieval) and media_folders_list (folders).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 implicitly establishes usage context: use this tool to list media assets in the user's library. It doesn't explicitly name alternatives or exclusions, but the purpose is clear enough and no conflicting sibling offers the same list functionality with these filters.

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

media_transcript_getGet Media TranscriptA
Read-onlyIdempotent
Inspect

Get transcript summary metadata or a bounded window of transcription segments for a video asset.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoSummary returns metadata only. Text returns joined text for a bounded segment window. Full returns the bounded segment objects without duplicating their text.summary
limitNoMaximum transcript segments to return (1-200).
offsetNoTranscript segment offset.
assetIdYesThe media asset ID to get transcript for. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
transcriptYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the tool's safety profile is clear. The description adds 'bounded window' to indicate pagination/limiting behavior, which is useful context beyond the annotations without contradicting them.

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

Conciseness5/5

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

The description is a single, well-structured sentence with no wasted words. It front-loads the action and clearly states the two output forms, making it easy to parse.

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

Completeness4/5

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

With a 4-parameter schema fully described, an output schema present, and annotations covering safety, the description provides adequate context. It might slightly under-explain the three modes, but the schema's mode enum descriptions fill that gap sufficiently.

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

Parameters3/5

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

The input schema has 100% parameter description coverage, including mode, limit, offset, and assetId. The description's reference to 'summary metadata or bounded window' loosely maps to mode but adds no concrete parameter details beyond what the schema already specifies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 gets transcript summary metadata or a bounded window of transcription segments for a video asset, using a specific verb ('Get') and identifying the resource and scope. This distinguishes it from sibling media tools, none of which handle transcripts.

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

Usage Guidelines4/5

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

The context implies this is the tool for retrieving transcript data from a video asset, with no sibling transcript tools offering an alternative. It does not explicitly state when not to use it, but the clarity of purpose and lack of transcript siblings provide sufficient usage guidance.

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

media_upload_fileUpload FileAInspect

Import a video, audio, or image file from ChatGPT into the BlitzReels media library. Use this for a file the user attached or picked, and for an image ChatGPT generated in this conversation that the user wants to keep, animate, or edit in BlitzReels.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYesA file from ChatGPT: attached by the user, picked from their file library, or produced earlier in this conversation. ChatGPT provides this value.
nameNoOptional name to use in BlitzReels.
projectIdNoOptional BlitzReels project ID to associate with the uploaded file. UUID string.
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
mediaYes

TDQS

A3.7/5.0
Behavior2/5

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

Annotations provide no safety hints (readOnly=false, destructive=false, idempotent=false), so the description carries the burden. It only says 'import' and does not disclose behavioral details like whether the file is copied or moved, whether any processing occurs, or whether permissions are needed. The source and types are stated, but these align more with purpose than with behavior.

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

Conciseness5/5

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

The description is two clearly written sentences. The first sentence front-loads the action and target, and the second provides the exact use cases. No filler or redundancy.

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 an output schema and a moderately complex nested input, but the description leaves gaps: it doesn't mention how this differs from media_upload_start/finish, whether import is one-step, or any preconditions. It covers the main use scenarios but could be more complete regarding alternatives and side effects.

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

Parameters3/5

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

Schema coverage is 100%, so each parameter already has descriptions in the schema. The description adds context that the file must come from ChatGPT, which clarifies the 'file' parameter's origin, but it doesn't add much for name, projectId, or workspaceId beyond what the schema provides. This matches the baseline 3 for high schema coverage.

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

Purpose5/5

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

The description states 'Import a video, audio, or image file from ChatGPT into the BlitzReels media library.' This is a specific verb ('import') with a clear resource and target, and it distinguishes from sibling tools like media_import_url and media_upload_start by emphasizing the source is ChatGPT-attached/generated files.

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

Usage Guidelines4/5

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

The description explicitly tells when to use this tool: for files the user attached or picked, and for ChatGPT-generated images the user wants to keep, animate, or edit. This provides clear context, though it doesn't explicitly name alternatives or exclusions (e.g., when to use media_import_url instead).

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

media_upload_finishFinish Media UploadAInspect

Complete the upload process after uploading to a presigned URL

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNameYesName of the uploaded file
projectIdNoOptional project ID to associate the upload with. UUID string.
storageKeyYesStorage key returned from media_upload_start
contentTypeYesMIME type of the file
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.
fileSizeBytesYesSize of the uploaded file in bytes
contentHashSha256NoOptional SHA-256 hex hash of file bytes for dedupe optimization. 64-character hex string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
mediaYes

TDQS

A3.6/5.0
Behavior2/5

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

Annotations provide no safety hints (all false), so the description must carry the full burden. It only says 'Complete the upload process' without disclosing side effects, such as asset creation, validation, or potential errors. This is nearly a tautology of the tool name.

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

Conciseness4/5

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

The description is one concise sentence with no redundant words, front-loading the action and context. It is appropriately short, though it could have included more behavioral context without becoming 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?

The description captures the essential step and references the presigned URL flow, and an output schema exists. However, it omits details about required preconditions (e.g., calling media_upload_start), validation, and what 'completing' entails, making it minimally adequate for a 7-parameter tool.

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

Parameters3/5

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

The input schema covers all 7 parameters with rich descriptions (100% coverage), including formats, constraints, and optionality. The tool description adds no parametric detail, but the schema alone provides sufficient semantics, justifying the baseline score of 3.

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

Purpose5/5

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

The description specifically states the action 'Complete' and the resource 'upload process,' with the context 'after uploading to a presigned URL.' This clearly identifies the tool's role in the upload workflow and distinguishes it from siblings like media_upload_start and media_upload_file.

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

Usage Guidelines4/5

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

The phrase 'after uploading to a presigned URL' provides clear sequencing and prerequisite guidance. However, it does not explicitly mention alternatives or when not to use this tool, leaving some room for ambiguity.

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

media_upload_startStart Media UploadAInspect

Get a presigned URL for direct file upload (for large files)

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNameYesName of the file to upload
projectIdNoOptional project ID to associate the upload with. UUID string.
contentTypeYesMIME type (e.g., video/mp4, audio/mp3, image/jpeg)
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
uploadInfoYes

TDQS

A3.6/5.0
Behavior2/5

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

The description only says 'get a presigned URL' and gives no insight into side effects such as creating an upload session, URL expiration, or the need to call media_upload_finish afterwards. Annotations are all false, providing no safety profile, so the description carries the burden and fails to disclose the state-changing nature of initiating an upload.

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

Conciseness5/5

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

A single sentence that is front-loaded with the core action and includes a high-value qualifier. No filler or redundancy; the title and description align 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?

Despite having an output schema, the description does not explain the expected workflow: how to use the returned presigned URL, whether to follow up with media_upload_finish, or why this differs from media_upload_file. This is a meaningful gap for an upload-start tool, making the description incomplete.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are already fully documented. The description adds no additional parameter semantics beyond implying 'large files', earning the baseline score of 3.

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

Purpose5/5

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

The description uses a specific verb and resource: 'Get a presigned URL for direct file upload', which clearly states the tool's function. The parenthetical 'for large files' distinguishes it from sibling upload tools like media_upload_file.

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

Usage Guidelines4/5

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

The phrase 'for large files' provides clear context for when to use this tool, implying it is intended for direct/large uploads. However, it does not explicitly name alternatives or establish exclusion criteria (e.g., 'for small files use media_upload_file').

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

media_upscaleUpscale VideoA
Idempotent
Inspect

Queue a ByteDance upscale of one stored video asset to 1080p or 4k. Call media_upscale_estimate first. Spends AI credits and returns a new pending media asset to poll with media_assets_get.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetIdYesSource video asset UUID. UUID string.
projectIdNoOptional project UUID to attach the credit spend. UUID string.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.
targetResolutionYesOutput long-edge target.

Output Schema

ParametersJSON Schema
NameRequiredDescription
runIdYes
statusYes
assetIdYes
sourceAssetIdYes
creditsRequiredYes
mutationReceiptYes
targetResolutionYes

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already cover the safety profile (non-destructive, idempotent, closed-world), and the description adds genuinely new behavior: it consumes AI credits and returns a new pending media asset requiring polling. Those are the two things an agent most needs to know before invoking an async, credit-spending job.

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

Conciseness5/5

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

Three short sentences, front-loaded with the action, then prerequisite, then side effects and next step. No filler or repetition.

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

Completeness5/5

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

Despite an existing output schema, the description still conveys the async contract (pending asset + polling), the credit cost, and the required prerequisite call. An agent has everything needed to invoke and follow up correctly.

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

Parameters3/5

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

Schema coverage is 100%, so every parameter including assetId, targetResolution, projectId, workspaceId, and idempotencyKey is already documented with format and defaults. The description only restates the resolution options, adding no meaning beyond the schema. Baseline 3 applies.

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

Purpose5/5

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

States a specific verb (upscale), the single resource affected (one stored video asset), the provider, and the two valid outputs (1080p/4k). It is clearly distinguishable from media_upscale_estimate, which it explicitly defers to.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 prerequisite ('Call media_upscale_estimate first') and a follow-up path (poll with media_assets_get). It doesn't spell out when NOT to use it, but the sequencing guidance is strong and actionable.

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

media_upscale_estimateEstimate Video UpscaleA
Read-onlyIdempotent
Inspect

Estimate ByteDance upscale eligibility and credits for one stored video. Does not spend credits or queue a job. Call this before media_upscale.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetIdYesSource video asset UUID. UUID string.
projectIdNoOptional project UUID for the estimate context. UUID string.
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
targetResolutionYesOutput long-edge target.

Output Schema

ParametersJSON Schema
NameRequiredDescription
eligibleYes
targetFpsYes
sourceLongEdgeYes
targetLongEdgeYes
creditsRequiredYes
durationSecondsYes
ineligibleReasonYes
targetResolutionYes

TDQS

A4.5/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, covering the safety profile. The description reinforces this with valuable context: 'Does not spend credits or queue a job,' which tells the agent the side-effect profile. It does not add rate limits, auth requirements, or latency expectations, so it falls slightly 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?

Three tight sentences with zero waste. The purpose is front-loaded, the behavioral constraint follows, and the routing instruction comes last.

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

Completeness5/5

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

Complete for a read-only estimation tool. The description establishes purpose, side-effect profile, and sibling relationship; the schema and annotations cover parameters and safety. With an output schema present, no return-value explanation is needed.

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

Parameters3/5

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

Schema coverage is 100%, so all four parameters are fully documented in the schema, including the enum for targetResolution. The description adds no parameter-level detail beyond what the schema provides, making the baseline 3 appropriate.

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

Purpose5/5

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

States a specific verb+resource: 'Estimate ByteDance upscale eligibility and credits for one stored video.' Explicitly distinguishes from the sibling media_upscale by noting it 'does not spend credits or queue a job' and instructs calling it 'before media_upscale.'

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

Usage Guidelines5/5

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

Explicit sequencing guidance: 'Call this before media_upscale' names the alternative and the condition that selects it. The agent knows exactly when to use this tool versus the actual upscale tool, with no exclusions left to inference.

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

mute_clip_audioMute Clip AudioA
Idempotent
Inspect

Set one timeline media item's volume to zero.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdYesUUID string.
idempotencyKeyYesRetry key. Reuse only with identical inputs.
timelineItemIdYes
expectedRevisionNoExpected sequence revision, or null.

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
resultYes
replayedYes
revisionYes
warningsYes
projectIdYes
operationIdYes
baseRevisionYes
mutationReceiptYes
createdTimelineItemIdsYes
deletedTimelineItemIdsYes
affectedTimelineItemIdsYes

TDQS

A3.8/5.0
Behavior3/5

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

Description states the direct effect (volume set to zero) and is consistent with annotations (idempotent, not destructive). It adds little beyond the tool name, but annotations carry the safety profile; no contradiction or extra context like reversibility.

Agents need to know what a tool does to the world before 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, densely packed, no filler. Front-loaded with the primary action and target.

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

Completeness4/5

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

The tool is simple, has an output schema, and rich annotations. The description adequately identifies the single clip target; missing only explicit alternative guidance, but overall the context is sufficient for calling it.

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

Parameters3/5

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

Schema covers projectId, idempotencyKey, and expectedRevision. Description clarifies timelineItemId as the target media item, compensating for the missing schema description. No additional syntax or relation to the optional expectedRevision is provided.

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

Purpose5/5

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

Description uses a specific verb ('Set') and precise resource ('one timeline media item's volume to zero'). It clearly distinguishes from sibling tools like timeline_audio_add or batch_update_timeline_clips by targeting a single clip's audio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents 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 'one timeline media item' implies single-item usage, but the description does not explicitly state when to choose this over update_timeline_clip or batch_update_timeline_clips, nor any exclusions.

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

projects_createCreate ProjectBInspect

Create a new private BlitzReels video project.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesProject name (1-100 characters)
seriesIdNoOptional Series UUID for this new project.
frameRateNoVideo frame rate30
aspectRatioNoVideo aspect ratio9:16
descriptionNoProject description (optional, max 500 characters)
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.
idempotencyKeyNoRetry key. Reuse only with identical inputs.

Output Schema

ParametersJSON Schema
NameRequiredDescription
projectYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already mark readOnlyHint=false, so the write nature is disclosed. The description adds that the project is 'private', a useful behavioral detail, but does not mention authentication, default workspace resolution, or any side effects beyond the creation itself.

Agents need to know what a tool does to the world before 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 clean sentence delivers the core intent without waste. It front-loads the action and object, though given the 7-parameter surface, the description is relatively thin if not actively 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?

The schema and output schema cover the parameter and return details. However, the description omits usage guidance (when to use vs alternatives) and does not clarify operational defaults or consequences like default workspace or private visibility, which would help an agent invoke it confidently.

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

Parameters3/5

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

Schema description coverage is 100%, so all 7 parameters are already documented in the schema. The description adds no additional meaning or constraints about parameters (e.g., default aspectRatio, frameRate behavior) beyond what the schema provides.

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

Purpose4/5

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

The description states a specific action ('Create') and a specific resource ('new private BlitzReels video project'), which clearly identifies it as a creation tool for projects. It distinguishes from sibling read/list tools like projects_get and projects_list, though it doesn't explicitly name any alternative as another option.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives such as workflow_runs_create or clips_create. There is no mention of prerequisites, idempotency usage, or scenarios where this should be preferred over other create tools.

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

projects_getGet ProjectA
Read-onlyIdempotent
Inspect

Get details for one BlitzReels project, including timeline summary, clips, and captions.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdYesThe project ID to get details for. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorNo
projectYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds behavioral context by naming what details are included (timeline summary, clips, captions), which goes beyond the annotations. It does not mention error handling or permissions, but these are less critical given the safety hints.

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

Conciseness5/5

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

A single, concise sentence that front-loads the action and resource and lists included content. There is no redundant wording or filler.

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

Completeness5/5

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

For a simple read operation with one well-documented parameter and an output schema, the description is sufficiently complete. It even previews the return content, making the tool's purpose and result clear without needing to reference the output schema.

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

Parameters3/5

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

The schema already provides 100% description coverage for the single parameter, including type and format. The tool description does not add any additional meaning beyond what the schema states, so baseline 3 applies.

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

Purpose5/5

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

The description clearly states the action ('Get details'), the resource ('one BlitzReels project'), and specifies key content ('timeline summary, clips, and captions'). This distinguishes it from list-style siblings like projects_list and from clip-specific tools.

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

Usage Guidelines3/5

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

The purpose is clear enough that usage is implied: use when needing details for a single project. However, there is no explicit guidance contrasting with projects_list or projects_inspect, so the agent must infer when this is the right choice among similar tools.

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

projects_inspectInspect ProjectA
Read-onlyIdempotent
Inspect

Read bounded project context for editing, including timeline items, media assets, transcripts, captions, and stable IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoBounded project context view to return.timeline
searchNoOptional media search when mode is assets or full.
projectIdYesProject UUID. UUID string.
assetLimitNoMaximum media assets to return (1-50).
assetOffsetNoMedia asset offset.
timelineLimitNoMaximum timeline items to return (1-1000).
timelineOffsetNoTimeline item offset.
transcriptLimitNoMaximum transcript segments to return (1-500).
captionWordLimitNoMaximum caption words to return (1-2000).
transcriptOffsetNoTranscript segment offset.
captionWordOffsetNoCaption word offset.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
modeYes
boundsYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description is not burdened with safety disclosure. It adds the 'bounded' trait and lists content types, but does not describe pagination defaults, mode behavior, or other operational details beyond what the schema already provides.

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

Conciseness5/5

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

The entire description is a single, compact sentence that front-loads the core action ('Read bounded project context') and then efficiently enumerates the major content categories. No redundant words or filler.

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

Completeness4/5

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

Given the high parameter count (11) and the presence of a full output schema, the description provides a sufficient high-level overview without needing to explain return values or parameter syntax. It could have mentioned the default mode or the purpose of the 'mode' parameter, but that is covered in the schema, so the description remains adequately complete.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description itself does not add parameter-specific meaning; it only states what content is included. All 11 parameters are fully documented in the schema, so no compensation is needed.

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

Purpose5/5

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

The description uses a specific verb ('Read') and identifies the exact resource ('bounded project context for editing') with a clear list of included content (timeline items, media assets, transcripts, captions, and stable IDs). This clearly distinguishes it from sibling tools like projects_get or media_transcript_get by emphasizing the consolidated yet bounded nature.

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

Usage Guidelines3/5

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

The description implies usage during editing workflows by stating 'for editing', but it does not explicitly mention when to use this tool versus alternatives such as projects_get, media_assets_get, or media_transcript_get. There are no exclusions or explicit alternative references, leaving the decision to the agent.

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

projects_listList ProjectsA
Read-onlyIdempotent
Inspect

List the user's BlitzReels projects with status, duration, and basic metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of projects to return (1-50)
offsetNoProject offset.
searchNoSearch projects by name
statusNoFilter by project statusactive
workspaceIdNoOptional workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
projectsYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already cover the safety profile with readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds that results include status, duration, and metadata, but does not disclose default status filtering (active) or workspace fallback behavior. It is not misleading and adds mild value beyond the annotations.

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

Conciseness5/5

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

The description is a single sentence with no filler. It front-loads the action and resource and usefully names the key return fields, making it immediately scannable and informative.

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

Completeness4/5

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

For a straightforward list tool, the description is adequate given the fully documented schema, an output schema, and comprehensive annotations. It does not mention pagination or filter defaults, but those are captured in the input schema, so nothing essential is missing for an agent to call the tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, with each of the 5 parameters documented in detail, including constraints, enums, and defaults. The description adds no parameter-level meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('List') with a clear resource ('the user's BlitzReels projects') and states the returned information ('status, duration, and basic metadata'). This distinguishes it from sibling tools like projects_get and projects_inspect, which handle single-project retrieval or deeper inspection.

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

Usage Guidelines3/5

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

The description implies a listing use case but does not explicitly explain when to use projects_list versus alternatives such as projects_get, projects_inspect, or projects_create. No exclusions or conditions are provided, so an agent must infer selection from the tool name and sibling context.

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

series_applyApply SeriesA
Idempotent
Inspect

Create or replace a Growth+ Series identity and defaults. defaultCreationMode selects podcast branding or faceless Story Kit defaults; membership stays mixed. Updates require expectedRevision. Existing content keeps its settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
seriesIdYes
storyKitIdYes
descriptionYes
logoAssetIdYes
workspaceIdYes
coverAssetIdYes
captionThemeIdYes
idempotencyKeyYes
expectedRevisionYes
defaultCreationModeYespodcast

Output Schema

ParametersJSON Schema
NameRequiredDescription
seriesYes
mutationReceiptYes

TDQS

A3.9/5.0
Behavior5/5

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

Beyond the annotations, the description explains important behaviors: create or replace semantics, mode-dependent defaults, mixed membership, expectedRevision as an update guard, and that existing content settings are preserved. This substantially clarifies the tool's side effects and complements the idempotentHint.

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

Conciseness5/5

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

Three dense sentences, all of which earn their place. The core action is front-loaded, and the mode selection, update condition, and content-preservation guarantee follow without repetition or filler.

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 strong behavioral detail, the tool has 11 required parameters and no schema descriptions, and the description does not cover idempotency, asset/project relationships, or how to form a valid request. An agent would still struggle to populate most required fields 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?

With 0% schema description coverage, the description must carry parameter meaning, but it only elaborates on defaultCreationMode and expectedRevision. The other nine required parameters (idempotencyKey, asset IDs, workspaceId, captionThemeId, etc.) remain unexplained, leaving the agent without enough semantic grounding.

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

Purpose5/5

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

The description opens with 'Create or replace a Growth+ Series identity and defaults', which names the exact operation and resource. It clearly differentiates from siblings like series_assign or story_kits_apply by focusing on the Series identity/defaults object.

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

Usage Guidelines3/5

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

It gives useful context for the create-vs-update distinction: updates require expectedRevision, and defaultCreationMode selects branding mode. However, it never states when to choose this tool over related siblings such as story_kits_apply or series_assign, so usage guidance is only implied.

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

series_assignAssign Series ContentB
Idempotent
Inspect

Assign, move or detach one source or project using expectedSeriesId. Moving a source does not move existing clips or change branding.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
seriesIdYes
contentIdYes
workspaceIdYes
idempotencyKeyYes
expectedSeriesIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
kindYes
changedYes
seriesIdYes
mutationReceiptYes
previousSeriesIdYes

TDQS

B3.3/5.0
Behavior3/5

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

The description adds one useful behavioral disclosure: 'Moving does not move clips or change branding.' However, it does not disclose the meaning of null seriesId/expectedSeriesId, concurrency-failure behavior, or side effects of assignment/detachment beyond the moving case.

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

Conciseness5/5

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

Two short sentences front-load the action and resource, and the follow-up sentence delivers a key side-effect warning without burying the main purpose.

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 no annotations and no parameter descriptions in the schema, the description must carry most of the semantic load. It omits concurrency semantics, detach behavior with null IDs, idempotency behavior, and any mention of workspaceId.

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?

Only expectedSeriesId is mentioned, and its role as an optimistic-concurrency guard is not explained. The schema has zero descriptions, so the meaning of contentId, workspaceId, seriesId null, and idempotencyKey is left entirely to inference.

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

Purpose5/5

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

The description opens with the exact verb set: 'Assign, move or detach one source or project,' which clearly identifies the action and resource. It also names the key parameter (expectedSeriesId) and adds a scoping detail (one source/project), so the tool's 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?

The description explains what the tool does but gives no guidance on when to choose it over alternatives, and no preconditions or exclusions. With sibling tools such as series_apply present, an agent gets no help deciding between them.

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

series_contentList Series ContentA
Read-onlyIdempotent
Inspect

List sources or projects in a Series. Null seriesId lists standalone content. sourceId filters projects by clip origin.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
limitYes
offsetYes
searchYes
seriesIdYes
sourceIdYes
workspaceIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes
boundsYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds useful behavior around null seriesId and sourceId filtering, but does not disclose pagination, result shape, or how workspaceId influences the list; the output schema mitigates some of this.

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

Conciseness5/5

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

Two tight sentences, with the primary purpose front-loaded and no filler. The null-seriesId behavior and sourceId filter are high-value details expressed economically.

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 is adequate for the core list-and-filter scenario, and the output schema plus annotations supply return and safety context. Still, with seven parameters all listed as required and no explanation of workspaceId or search semantics, an agent may struggle to construct a fully correct request without additional inference.

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?

With schema description coverage at 0%, the description must compensate, but it only clarifies seriesId, sourceId, and the kind distinction. It leaves workspaceId, search, limit, and offset semantics unexplained, and workspaceId is a required parameter with nullable/default ambiguity that an agent may not resolve from 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 names a specific verb and resource combination ('List sources or projects in a Series') and clarifies the key distinction between in-series and standalone content. This differentiates it from series_list and series_get, which focus on the series objects themselves rather than their contents.

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

Usage Guidelines4/5

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

The description gives clear operative context: 'Null seriesId lists standalone content' tells the agent when to pass a null seriesId, and 'sourceId filters projects by clip origin' explains an important filtering scenario. It does not explicitly name alternative tools or exclusions, but the usage context is sufficient for a listing operation.

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

series_deleteDelete SeriesA
DestructiveIdempotent
Inspect

Delete the Series container at an expected revision and detach its content. Sources, projects and exports are preserved.

ParametersJSON Schema
NameRequiredDescriptionDefault
seriesIdYes
workspaceIdYes
idempotencyKeyYes
expectedRevisionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYes
detachedSourcesYes
mutationReceiptYes
contentPreservedYes
detachedProjectsYes

TDQS

A3.8/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: deletion is conditional on an expected revision, the operation detaches content rather than destroying it, and sources, projects, and exports are preserved. It does not contradict the destructiveHint or idempotentHint annotations, though it could disclose what happens on a revision mismatch.

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

Conciseness5/5

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

Two concise sentences deliver the essential action, the concurrency condition, and the preservation guarantee with no filler. The destructive scope is front-loaded, making the tool easy to scan and understand.

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

Completeness3/5

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

The description gives a clear picture of what is deleted and what is preserved, and the output schema covers return values. However, with four required parameters and zero schema coverage, it does not explain idempotencyKey expectations or revision-conflict behavior, so an agent still lacks some operational details.

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, but it only hints at expectedRevision via 'at an expected revision'. It does not explain seriesId, workspaceId, or idempotencyKey semantics, leaving the agent to rely on parameter names 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 uses a specific verb and resource ('Delete the Series container') and clarifies the operation's scope by stating it detaches content while preserving sources, projects, and exports. This clearly distinguishes it from sibling tools like series_get, series_list, series_content, series_apply, and series_assign.

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

Usage Guidelines3/5

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

The description implies when to use the tool—when deleting the container itself rather than its content—but it does not explicitly name alternatives or state when not to use it. The preservation note provides useful context but no direct routing guidance.

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

series_getGet SeriesC
Read-onlyIdempotent
Inspect

Read a Series identity, creative defaults and revision.

ParametersJSON Schema
NameRequiredDescriptionDefault
seriesIdYes
workspaceIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
seriesYes

TDQS

C2.9/5.0
Behavior3/5

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

The description's 'Read' aligns with the readOnlyHint annotationating and there is no contradiction. It adds some transparency by listing what is read (identity, creative defaults, revision), but it does not explain side effects or lack thereof beyond what the readOnlyHint already signals.

Agents need to know what a tool does to the world before 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 short sentence that leads with the operation ('Read') and lists the resource aspects. It is efficient and free of padding, though the phrasing 'a Series identity' is slightly awkward and could be more polished.

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

Completeness2/5

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

The description leaves out important context: what the revision is, how it is selected, and what the workspace/series relationship is. While annotations cover safety, the description is too terse to fully prepare an agent to make correct use of this tool among many series-related 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 schema provides no description for either parameter, so an agent must infer that `seriesId` identifies the resource and `workspaceId` scopes the read only from their names. The description fails to clarify how the parameters relate to the returned identity, creative defaults, or revision.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 uses the verb 'Read' and names the resource (a Series) plus the data facets: identity, creative defaults, and revision. It is specific enough for an agent to understand this is a read operation, though it does not explicitly contrast with sibling tools like series_content or series_apply.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps 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 related series_* and get_* siblingsamental. It does not mention which series fields are included, whether the revision is current or historical, or any preconditions such as needing a project or workspace context.

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

series_listList SeriesC
Read-onlyIdempotent
Inspect

List optional Series with bounded counts and cover previews.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitYes
offsetYes
workspaceIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
itemsYes
boundsYes

TDQS

C2.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, covering the operation's safety. The description adds 'bounded counts' and 'cover previews,' which suggests behavior beyond a plain list (e.g., limited results and preview fields), but it doesn't detail what 'bounded' means or what 'cover previews' entail. With annotations covering mutation concerns, a 3 is reasonable as it adds some context but not rich behavioral detail.

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

Conciseness3/5

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

The description is short and front-loaded with the verb, but it is not well-structured. It lacks detail on parameters and usage, making it concise at the cost of value. It reads like a fragment rather than a complete sentence, and the ambiguity in 'optional Series' undermines its efficiency.

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 an output schema connectivity (there is an output schema, so return format is covered), but the description is was lacking for a list/read tool with 3 parameters. Without parameter semantics and sibling differentiation, the description is insufficient for an agent to correctly call it with the right workspace scope or understand pagination behavior, even with annotations present.

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 provides no parameter information. It doesn't explain 'limit', 'offset', or 'workspaceId' beyond what the schema names and types suggest. 'workspaceId' could be null, likely meaning 'all workspaces,' but the description leaves that unclear. For a tool with 3 parameters and zero schema descriptions, the description fails to compensate.

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 'List optional Series with bounded counts and cover previews,' which is unusually worded: 'optional Series' is vague (optional as in list is optional? or series have optional fields?), and it doesn't clarify what a Series is or how it differs from siblings like series_get, series_content, or series_apply. It names the verb 'List' and resource 'Series' but the qualifiers add confusion rather than clarity.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives. There are many list tools (media_list, characters_list, projects_list) and series-specific tools (series_get, series_content, series_apply) but no mention of when series_list is preferred. The 'bounded counts' hint implies pagination but doesn't explain when to use it.

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

story_kits_applyApply Story KitA
Idempotent
Inspect

Create or update a Story Kit with optimistic concurrency and an idempotent mutation receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesStable Story Kit name.
factsNo
locationsNo
storyKitIdNo
descriptionNo
visualStyleYesCanonical visual-style contract.
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.
characterIdsNo
idempotencyKeyYes
expectedRevisionNo
narratorCharacterIdNo
styleReferenceAssetIdsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
storyKitYes
mutationReceiptYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare idempotentHint=true, destructiveHint=false, and readOnlyHint=false. The description adds value by specifying 'optimistic concurrency' and 'idempotent mutation receipt', which inform the agent about concurrency handling and return semantics. This is additive beyond annotations, though it could mention what happens on conflict or failure for a 5.

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

Conciseness4/5

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

The description is a single, focused sentence — concise and front-loaded with the core action ('Create or update a Story Kit'). It adds two key behavioral traits (optimistic concurrency, idempotent mutation receipt) without waste. However, given the high parameter count and low schema coverage, a few more words on parameter behavior might be warranted, dropping it from a 5.

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

Completeness3/5

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

The tool has 12 parameters, 25% schema coverage, and no enums, but offers an output schema. The description covers the high-level behavior (create/update, concurrency, idempotency) but does not explain what the output schema contains, how locations or facts are structured, or error handling. With moderate complexity and partial schema coverage, a 3 is appropriate — adequate but incomplete.

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

Parameters3/5

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

Schema description coverage is only 25%, meaning the description must compensate, but it only mentions the three required parameters (name, visualStyle, idempotencyKey) semantically. The term 'Canonical visual-style contract' clarifies visualStyle, but for 12 parameters, most (facts, locations, characterIds, etc.) receive no additional explanation. The output schema exists, which slightly reduces the burden, but the description is insufficient to fully guide parameter use.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 'Create or update a Story Kit' — a specific verb and resource combination that distinguishes it from siblings like story_kits_get and story_kits_list. However, it lacks the exclusive scope (e.g., 'bounded to a workspace') that would make it a 5, and the 'idempotent mutation receipt' phrase is somewhat technical and not as immediately graspable.

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

Usage Guidelines3/5

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

There is no explicit guidance on when to use this versus alternatives. The description mentions optimistic concurrency and idempotency, which imply it is used for safe create-or-update operations, but it does not name sibling tools (like story_kits_get for reading) or state when not to use it. The 'apply' name hints at upsert behavior, but context is missing for a higher score.

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

story_kits_getGet Story KitB
Read-onlyIdempotent
Inspect

Inspect one Story Kit and its revision before generating or updating a story.

ParametersJSON Schema
NameRequiredDescriptionDefault
storyKitIdYes
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
storyKitYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already convey this is a read-only, idempotent, non-destructive tool. The description adds 'Inspect one Story Kit and its revision', which aligns with annotations without contradicting them. The added value is minimal—just specifying the 'revision' aspect—but since annotations handle the heavy lifting, a 3 is appropriate. No contradiction detected.

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

Conciseness4/5

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

The description is a single, concise sentence that front-loads the core action ('Inspect one Story Kit and its revision') and places context later ('before generating or updating a story'). No extraneous words. It could be structured to hint at the required parameter, but it remains efficient.

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

Completeness3/5

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

Given the tool's low complexity (2 params, 1 required, no enums/nested objects) and the presence of an output schema (which handles return values), the description is mostly complete. However, it fails to describe the 'storyKitId' parameter, which is required and has no schema description, leaving a gap for the agent. Additional hints about what kind of story kit (e.g., draft or published) would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need 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 50%: one required param (storyKitId) has no description, while workspaceId has a description in the schema. The description does not document the 'storyKitId' parameter or explain its format/expected value, and it doesn't clarify that 'workspaceId' is optional. With two parameters and half undocumented in both schema and description, a baseline 3 is reasonable, but no extra value is added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 'Inspect' with 'one Story Kit and its revision', which clearly specifies the resource and scope (single item plus revision). It also alludes to a workflow purpose ('before generating or updating a story'), distinguishing it from sibling tools like story_kits_list (which lists kits) and story_kits_apply (which applies a kit). However, it doesn't explicitly exclude other potential actions like copying or deleting, leaving slight ambiguity.

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

Usage Guidelines3/5

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

The description implies usage context ('before generating or updating a story'), which helps an agent understand the typical workflow position. However, it does not explicitly state when NOT to use this tool vs alternatives like story_kits_list (for browsing) or projects_get (for inspecting a project instead of a story kit). No exclusion or alternative guidance is provided.

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

story_kits_listList Story KitsB
Read-onlyIdempotent
Inspect

List bounded reusable Story Kits that bind characters, locations, style, facts, and narrator voice.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
workspaceIdNoOptional workspace UUID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
storyKitsYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is clear. The description adds the concept of 'bounded reusable Story Kits' but does not disclose behavioral traits like pagination behavior, scoping (workspace filtering), or authentication requirements. This is adequate but not additive beyond annotations.

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

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently states the purpose and defines the resource. Every word adds value, and there is no extraneous information. 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?

The description explains the core concept of Story Kits, but with an output schema present, it need not describe return values. However, it omits context about the three parameters (pagination, workspace filtering) and does not mention that the result is a list. For a list tool with multiple parameters, 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.

Parameters2/5

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

Schema description coverage is only 33% (workspaceId described). The description adds no parameter information at all. It does not mention that limit and offset control pagination or that workspaceId filters the workspace. Given the low schema coverage, the description should compensate but fails to do so.

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

Purpose5/5

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

The description explicitly states the verb 'List' and the resource 'Story Kits', and defines what a Story Kit is ('bind characters, locations, style, facts, and narrator voice'). This clearly distinguishes it from sibling tools like story_kits_get (single retrieval) and story_kits_apply (application), and from other list tools.

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

Usage 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., story_kits_get for a specific kit, story_kits_apply to apply a kit, or other list tools). It does not mention pagination, filtering, or any prerequisites. The agent is left to infer usage 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.

timeline_audio_addAdd Audio To TimelineAInspect

Place an uploaded audio asset onto the actual BlitzReels project timeline at a timestamp. Use after media_upload_file when the user asks to add voiceover, music, or audio to a video.

ParametersJSON Schema
NameRequiredDescriptionDefault
loopNoLoop audio to fill requested duration
volumeNoAudio volume multiplier, 1 is normal
assetIdYesAudio media asset ID. UUID string.
projectIdYesBlitzReels project ID. UUID string.
startSecondsNoTimeline start time in seconds
fadeInSecondsNoFade-in length in seconds
fadeOutSecondsNoFade-out length in seconds
durationSecondsNoOptional duration. Required if the audio asset duration is not known yet.

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations show this is a write operation (readOnlyHint=false), and the description confirms a mutation ('Place onto... timeline'). The description adds the prerequisite of a prior upload, which is useful, but it does not disclose other behavioral traits like validation of audio type, error cases, or reversibility. With minimal annotation detail, the description carries some burden but leaves 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?

The description is two sentences long, front-loaded with the core action and resource, and every word provides value. It does not waste space with redundant information.

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

Completeness4/5

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

Given the tool's complexity (8 params, output schema exists), the description covers the primary use case, prerequisite, and audio-specific scope. It does not explain nuances like the required durationSeconds condition, but those are in the schema. It is adequately complete for an agent to decide when to use it.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are already documented. The description adds context that the asset must be an uploaded audio asset and that placement occurs at a timestamp, which reinforces but does not extend parameter meaning. Baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Place'), the resource ('uploaded audio asset'), and the destination ('actual BlitzReels project timeline at a timestamp'). It distinguishes this tool from siblings by specifically mentioning audio (voiceover, music), which separates it from timeline_media_add.

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

Usage Guidelines4/5

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

The description explicitly says 'Use after media_upload_file' and specifies the user intent ('add voiceover, music, or audio to a video'). This gives clear context for when to use the tool, but it does not mention when not to use it or explicitly name alternatives.

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

timeline_edit_applyApply Timeline EditA
Idempotent
Inspect

Trim or extend one timeline item. Split one timeline item at an exact sequence position.

ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
projectIdYesUUID string.
idempotencyKeyYes
expectedRevisionYesExpected sequence revision, or null.

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?

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the operation types (trim/extend/split), which is useful but does not disclose behaviors like revision-based concurrency or potential side effects beyond what annotations already indicate.

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

Conciseness5/5

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

The description is two concise sentences that are front-loaded with the most important information. Every word contributes, with no redundant or vague phrasing.

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 complexity of the schema (nested operation union) and the presence of an output schema, the description is minimally adequate. It covers the core behavior but omits important context, such as the need for expectedRevision for optimistic concurrency and how this tool relates to timeline_edit_preview (apply vs 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 50%, with projectId and expectedRevision described. The tool description adds meaning by naming the two operations (trim/extend and split), which helps interpret the 'operation' union parameter. However, it does not explain parameters like trimStartDeltaSeconds, splitAtSeconds, or idempotencyKey, leaving gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships 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 function with specific verbs and resources: 'Trim or extend one timeline item' and 'Split one timeline item at an exact sequence position.' It distinguishes two operation types and explicitly targets a single timeline item, making it easy to differentiate from siblings.

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

Usage Guidelines4/5

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

The description provides clear context on when to use the tool: when you need to trim, extend, or split a single timeline item. However, it does not explicitly mention alternatives or exclusions (e.g., batch edits or previewing), 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.

timeline_edit_previewPreview Timeline EditA
Read-onlyIdempotent
Inspect

Preview without mutation. Trim or extend one timeline item. Split one timeline item at an exact sequence position.

ParametersJSON Schema
NameRequiredDescriptionDefault
operationYes
projectIdYesUUID string.
expectedRevisionYesExpected sequence revision, or null.

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?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's 'without mutation' is consistent but not novel. However, it does add behavior beyond annotations by specifying that the preview covers trim/extend and split operations, which are concrete, non-obvious capabilities. No contradiction exists.

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

Conciseness5/5

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

Two short sentences, front-loaded with the critical 'without mutation' qualifier. Every phrase adds value—the first sentence establishes the read-only nature, the second enumerates supported operations. No wasted words.

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

Completeness5/5

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

Given the tool's moderate complexity (two operation variants), the presence of a detailed schema with oneOf, an output schema, and annotations covering safety, the description is sufficiently complete. It captures the essential behavioral contract (preview-only) and lists all supported operations; any remaining details are handled by the schema and annotations.

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

Parameters3/5

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

The schema already provides descriptions for projectId and expectedRevision, but the operation parameter has no description and is expressed as a oneOf with const values. The description's enumeration of 'trim or extend' and 'split' maps to the two operation variants, but it does not clarify parameter semantics like 'expectedRevision' or delta meanings beyond what the schema names imply. With 67% schema coverage, the description gives partial compensation.

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

Purpose5/5

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

The description opens with 'Preview without mutation,' using a specific verb and resource that immediately distinguishes it from the sibling 'timeline_edit_apply.' It then enumerates the exact operations ('Trim or extend one timeline item,' 'Split one timeline item at an exact sequence position'), making the tool's scope unmistakable.

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

Usage Guidelines4/5

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

'Preview without mutation' clearly signals that this tool is for pre-flight checks rather than actual edits, and the sibling 'timeline_edit_apply' implies the alternative. However, it never explicitly states 'use this instead of timeline_edit_apply when you want to verify without persisting changes,' so it falls short of a fully explicit when/when-not directive.

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

timeline_media_addAdd Media To TimelineAInspect

Place an uploaded image or video asset onto the actual BlitzReels project timeline at a timestamp. Use after media_upload_file when the user asks to add B-roll, a static image, or visual media to the video.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetIdYesImage or video media asset ID. UUID string.
projectIdYesBlitzReels project ID. UUID string.
layerIndexNoExact timeline layer to use. Lower layer numbers render on top. Omit for intent-based placement.
startSecondsNoTimeline start time in seconds
allowDuplicateNoAllow inserting the same asset more than once
positionPresetNoVisual placement presetfullscreen
animationPresetNoOptional visual animation presetnone
durationSecondsNoDuration in seconds. Required for still images when a specific length is needed.
placementIntentNoLayer intent used when layerIndex is omitted. Use overlay for visible B-roll/logo/sticker over video, background for behind video, exact when layerIndex is supplied.overlay

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already signal readOnlyHint=false, and the description reinforces the mutating nature by saying 'Place' onto the 'actual' timeline. It adds useful workflow context ('Use after media_upload_file') and media-type nuance, but it does not disclose side effects on existing timeline items or layer conflicts beyond what the schema already implies.

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

Conciseness5/5

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

The description is very concise: two sentences, front-loaded with the action and object, and every phrase adds value. The second sentence provides essential usage context without 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?

Given a 9-parameter schema that is fully described and an output schema, the description does not need to repeat internals. It covers core purpose and usage enough for an agent to select the tool, though it could mention layer/positioning semantics if the schema were less rich. Overall, it is sufficiently complete for the tool's complexity.

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

Parameters3/5

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

Schema description coverage is 100%, with detailed descriptions for every parameter, including enums and defaults. The description adds no additional parameter guidance, so the baseline score of 3 applies.

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

Purpose5/5

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

The description opens with a specific verb ('Place'), a resource ('actual BlitzReels project timeline'), and object ('uploaded image or video asset'), clearly indicating what the tool does. It distinguishes from siblings like media_upload_file and timeline_audio_add by specifying B-roll/static image/visual media and 'actual' timeline.

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

Usage Guidelines4/5

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

It explicitly states when to use: after media_upload_file and when the user wants to add B-roll, a static image, or visual media. It gives a clear workflow but does not explicitly name alternative tools or provide when-not-to-use guidance, so it stops short of a 5.

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

update_timeline_clipUpdate Timeline ClipA
Idempotent
Inspect

Update one timeline item's start, duration, trim, layer, ignored state, or blurred background. Provide at least one field to update besides timelineItemId.

ParametersJSON Schema
NameRequiredDescriptionDefault
ignoredNo
projectIdYesUUID string.
layerIndexNo
startSecondsNo
idempotencyKeyYesRetry key. Reuse only with identical inputs.
timelineItemIdYes
trimEndSecondsNo
durationSecondsNo
expectedRevisionNoExpected sequence revision, or null.
trimStartSecondsNo
blurredBackgroundNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
txidYes
resultYes
replayedYes
revisionYes
warningsYes
projectIdYes
operationIdYes
baseRevisionYes
mutationReceiptYes
createdTimelineItemIdsYes
deletedTimelineItemIdsYes
affectedTimelineItemIdsYes

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds the constraint about providing at least one field, but no additional behavioral traits like return formats or revision checking. It is consistent with annotations but does not go beyond them.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core purpose and followed by a necessary usage constraint. Every word earns its place, and it is appropriately compact for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 11-parameter schema and output schema presence, the description covers the key functional fields and distinguishes from similar tools. It omits explicit guidance on when to use this tool versus batch_update_timeline_clips, but the 'one' qualifier mitigates this. Overall, it is sufficiently complete for a concise tool description.

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

Parameters3/5

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

Schema description coverage is only 27%, but the description names several updatable fields (start, duration, trim, layer, ignored state, blurred background), providing some semantic guidance. It does not elaborate on parameter-specific details like the meaning of trimStart vs trimEnd or expectedRevision, leaving a gap for 8 undocumented parameters.

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

Purpose5/5

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

The description clearly states the action ('Update') and the resource ('one timeline item'), and lists specific attributes ('start, duration, trim, layer, ignored state, or blurred background'). It distinguishes from the sibling 'batch_update_timeline_clips' by emphasizing 'one' timeline item.

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

Usage Guidelines4/5

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

The description implies usage for single-item updates by saying 'one timeline item' and provides a key prerequisite: 'Provide at least one field to update besides timelineItemId.' It does not explicitly name alternatives or exclusions, but the sibling tool name suggests batch usage, making the context clear.

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

workflow_runs_createCreate Workflow RunBInspect

Create an interactive workflow run from a workflow and optional inputs.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputsNoOptional workflow input values. Omit to use workflow defaults.
projectIdNoOptional project ID for workflows that operate on an existing project. UUID string.
workflowIdYesWorkflow ID to run. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
runYes

TDQS

B3.1/5.0
Behavior2/5

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

All annotations are negated hints (readOnly=false, destructive=false), so the description carries the burden of behavioral disclosure. It only adds the ambiguous term 'interactive' without explaining lifecycle, blocking behavior, or prerequisites, which is insufficient for a create operation.

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

Conciseness5/5

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

A single 10-word sentence that is front-loaded with the verb and contains zero filler. It communicates the core action efficiently without redundancy.

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

Completeness3/5

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

The output schema and parameter descriptions cover return values and inputs well. However, the description fails to explain the 'interactive run' concept and its relationship to workflow_runs_execute_step, which is essential context for a moderately complex tool with nested object inputs.

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

Parameters3/5

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

Schema coverage is 100% with clear per-parameter descriptions, so the baseline applies. The tool description mentions 'workflow and optional inputs' but adds no semantics beyond what the schema already documents.

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

Purpose4/5

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

The description uses a specific verb ('Create') and resource ('interactive workflow run'), which clearly distinguishes it from siblings like workflow_runs_get and workflow_runs_execute_step. However, the term 'interactive' is not elaborated, leaving some ambiguity about what makes this run type 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?

The description provides no guidance on when to use this tool versus alternatives such as workflow_runs_execute_step, nor does it explain when an interactive run is appropriate. No exclusions or alternative tools are mentioned.

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

workflow_runs_execute_stepExecute Workflow Run StepAInspect

Execute one pending workflow run step and return updated run status.

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYesWorkflow run ID. UUID string.
stepRunIdYesStep run ID from workflow_runs_create or workflow_runs_get. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
runYes
resultYes

TDQS

A4/5.0
Behavior3/5

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

Annotations indicate a non-read-only, non-idempotent action, so it is understood to mutate state. The description adds the 'pending' constraint and that it returns updated status, but does not disclose side effects, failure behavior, or consequences of re-execution. Given the low annotation information, the description carries much of the burden and only partially meets it.

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

Conciseness5/5

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

The description is a single, well-structured sentence that places the verb and object first, with no redundant information. Every word contributes value.

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

Completeness4/5

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

With two well-documented parameters, an output schema present, and a straightforward action, the description provides sufficient context for a tool of this complexity. It lacks detail on state prerequisites or error handling, but these are partially mitigated by the output schema and the 'pending' qualifier.

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

Parameters3/5

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

Schema description coverage is 100% for both parameters (runId and stepRunId), each described as UUID strings with context. The description adds no parameter-specific meaning beyond the schema, so baseline 3 applies.

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

Purpose5/5

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

The description clearly states the action ('Execute'), the specific resource ('one pending workflow run step'), and the outcome ('return updated run status'). This distinguishes it from sibling tools like workflow_runs_get (which retrieves) and workflow_runs_create (which creates a run).

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

Usage Guidelines4/5

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

The description gives clear context: it is for executing a pending step, implying it should be used when a run has steps ready to advance. It does not explicitly mention alternatives or exclusions, but the scope is unambiguous given the tool name and sibling set.

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

workflow_runs_getGet Workflow RunA
Read-onlyIdempotent
Inspect

Get workflow run status, step statuses, outputs, warnings, and dashboard URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYesWorkflow run ID. UUID string.
stepLimitNoMaximum workflow run steps to return (1-100).
stepOffsetNoWorkflow run step offset.

Output Schema

ParametersJSON Schema
NameRequiredDescription
runYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare the read-only, idempotent, non-destructive nature. The description adds context by specifying the response contents (status, step statuses, outputs, warnings, dashboard URL), which is valuable beyond the structured annotations. No contradictions.

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

Conciseness5/5

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

A single sentence that lists exactly what the tool returns with zero wasted words. It is front-loaded with the action and resource.

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

Completeness5/5

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

With an output schema present, annotations covering safety, and a fully described parameter schema, the description is sufficient. It covers the core purpose and response scope without needing to duplicate structured data.

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

Parameters3/5

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

Schema coverage is 100%, with all parameters described. The description mentions 'step statuses' but does not directly map to stepLimit/stepOffset; however, the schema already documents these parameters thoroughly, so the description adds no significant semantics beyond the schema.

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

Purpose5/5

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

The description uses the specific verb 'Get' with a clear resource ('workflow run') and enumerates exactly what is returned (status, step statuses, outputs, warnings, dashboard URL). This distinguishes it from sibling tools like workflow_runs_create or workflow_runs_execute_step.

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

Usage Guidelines4/5

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

The description clearly implies this tool is for retrieving workflow run details, and the sibling tool names (create, execute_step) make the context unambiguous. However, it does not explicitly state when not to use it or name alternative tools.

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

workflows_getGet WorkflowA
Read-onlyIdempotent
Inspect

Get a workflow definition, input schema, defaults, and ordered steps.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepLimitNoMaximum workflow steps to return (1-100).
stepOffsetNoWorkflow step offset.
workflowIdYesWorkflow ID. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
workflowYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds 'ordered steps' as return content but does not disclose additional behavioral traits like pagination limits or error conditions, which would be useful 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 a single sentence of 10 words, front-loaded with the verb 'Get' and resource. Every word adds value, with no repetition of schema details or annotations.

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

Completeness5/5

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

Given the output schema, full parameter coverage, and comprehensive annotations, the description is sufficiently complete for a get operation. It captures the core return value (workflow definition, input schema, defaults, ordered steps) and does not leave major gaps.

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

Parameters3/5

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

Schema description coverage is 100%, with all three parameters (workflowId, stepLimit, stepOffset) already documented. The description does not add parameter-level meaning beyond the schema, so the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool gets a workflow definition, input schema, defaults, and ordered steps, which is specific and distinct from just listing workflows. However, it does not explicitly differentiate from sibling tools like workflows_list or workflow_runs_get.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as workflows_list or workflow_runs_get. There is no mention of typical use cases, prerequisites, or exclusions.

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

workflows_importImport WorkflowAInspect

Import a public BlitzReels workflow into the user's workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
workflowIdYesPublic workflow ID to import. UUID string.
workspaceIdNoOptional target workspace ID. Defaults to the user's default workspace. UUID string.

Output Schema

ParametersJSON Schema
NameRequiredDescription
workflowYes

TDQS

A3.8/5.0
Behavior2/5

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

Annotations provide no safety hints (readOnlyHint=false, destructiveHint=false), so the description carries full responsibility for behavioral disclosure. It only states 'Import' without explaining side effects, idempotency, permission requirements, or outcomes on duplicate imports, leaving significant ambiguity for a mutation tool.

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

Conciseness5/5

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

A single, front-loaded sentence that conveys the essential action without redundancy. Every word contributes to understanding the tool's purpose.

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

Completeness4/5

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

Given the tool's simplicity (2 params, output schema present), the description is adequately complete for selection and invocation. It does not explain behavioral nuances like idempotency or error cases, which are not covered by the output schema, but the core usage context is present.

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

Parameters3/5

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

Schema description coverage is 100% and clearly explains both workflowId and workspaceId, including their types and defaults. The description adds no parameter-specific insight beyond what the schema already provides, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Import'), the object ('a public BlitzReels workflow'), and the destination ('into the user's workspace'). This distinguishes it from read-only siblings like workflows_get and workflows_list.

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

Usage Guidelines4/5

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

The intended use is clear: to bring a public workflow into the user's workspace. However, the description does not explicitly mention alternatives or exclusions, such as using workflows_get to inspect before importing, though the context is sufficient for most cases.

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

workflows_listList WorkflowsA
Read-onlyIdempotent
Inspect

List public BlitzReels workflows that can be imported into a workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum workflows to return (1-50).
offsetNoPagination offset.
searchNoOptional search query for workflow name or description.
triggerNoOptional trigger filter.

Output Schema

ParametersJSON Schema
NameRequiredDescription
boundsYes
workflowsYes

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds the scope that only public workflows are listed and that they are importable, which is useful context beyond the annotations. However, it does not disclose pagination behavior, response structure, or any filtering nuances beyond the schema, so the added value is moderate.

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

Conciseness5/5

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

The description is a single, focused sentence. It states the subject, action, and key qualifier ('public', 'can be imported') without wasted words or redundancy. It is front-loaded and immediately comprehensible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence 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 list operation with four optional parameters, full schema descriptions, and a safety profile covered by annotations, the description is sufficiently complete. It clarifies that these are public workflows intended for import, which is the key context for using the tool. The presence of an output schema further reduces the need to describe return values.

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

Parameters3/5

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

The input schema provides 100% coverage, with each parameter (limit, offset, search, trigger) having a clear description. The tool description itself does not add parameter-level guidance, but the schema already does the heavy lifting, so the baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action (List), the resource (public BlitzReels workflows), and the purpose/capability (can be imported into a workspace). It distinguishes from sibling tools like workflows_get (retrieves a single workflow) and workflows_import (performs the import), making it obvious this is a discovery/browsing endpoint.

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

Usage Guidelines4/5

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

The description implies the use case: finding public workflows to import. It does not explicitly name alternatives or provide when-not-to-use guidance, but the context is clear and the sibling tool names (workflows_import, workflows_get) subtly signal the workflow lifecycle. No exclusions are mentioned, but for a simple list operation this is adequate.

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. 4 tool updates
    • Changedgeneration_faceless_create1 field changed
      • addedInput schema / properties / styleReferenceAssetIds
        Added value: +{
        +  "default": [],
        +  "description": "Optional stills that lock rendering medium, palette, lighting and texture. Not used as scene frames.",
        +  "items": {
        +    "format": "uuid",
        +    "type": "string"
        +  },
        +  "maxItems": 10,
        +  "type": "array"
        +}
    • Changedgeneration_video_create3 fields changed
      • changedInput schema / properties / durationSeconds / description
        Previous value: -"Clip length in seconds (2-30). Must be supported by the chosen model."New value: +"Choose a value from the selected model's durations_seconds. duration_seconds_min and duration_seconds_max are the bounds of that list, not a continuous range."
      • changedInput schema / properties / endFrameAssetId / description
        Previous value: -"Last frame image. Requires a source first frame and a supported model; reference arrays cannot be combined with end frames."New value: +"Last-frame still. Interpolates from the source first frame to this image across the full duration. Requires a source first frame; cannot combine with reference arrays."
      • changedInput schema / properties / sourceAssetId / description
        Previous value: -"Source image asset ID. Required by image-to-video models."New value: +"First-frame still. Required only when that model's parameters.source_asset_id.required is true. Optional on reference-capable I2V including Seedance 2.5. Text-to-video rejects it. Cannot combine with reference arrays and end_frame_asset_id."
    • Addedmedia_upscale
    • Addedmedia_upscale_estimate
  2. 1 tool update
    • Changedadd_transition1 field changed
      • changedInput schema / properties / preset / enum
        Previous value: -[
        -  "flash",
        -  "whip-left",
        -  "whip-right",
        -  "zoom-punch",
        -  "glitch"
        -]New value: +[
        +  "flash",
        +  "film-flash",
        +  "whip-left",
        +  "whip-right",
        +  "zoom-punch",
        +  "glitch"
        +]
  3. 2 tool updates
    • Changedgeneration_faceless_create2 fields changed
      • changedInput schema / properties / plannerModelId / default
        Previous value: -"anthropic/claude-opus-4-6"New value: +"google/gemini-3.8-flash"
      • changedInput schema / properties / videoModel / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "minimax-h3-max",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-3.0",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "pixverse-v6",
        -  "grok-imagine",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-1.5-pro",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-ref2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled",
        -  "ltx-2.3",
        -  "ltx-2.3-fast"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash-ref2v",
        +  "gemini-omni-flash-edit",
        +  "gemini-omni-flash",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-3.0",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "pixverse-v6",
        +  "grok-imagine",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-1.5-pro",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-ref2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2.3",
        +  "ltx-2.3-fast"
        +]
    • Changedgeneration_video_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "minimax-h3-max",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "minimax-hailuo-2.3-pro-t2v",
        -  "minimax-h3-max-t2v",
        -  "luma-ray-3.2-t2v",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "veo3-fast",
        -  "gemini-omni-flash-t2v",
        -  "wan-2.1",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-2.7-t2v",
        -  "wan-3.0",
        -  "wan-3.0-t2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "happy-horse-t2v",
        -  "pixverse-v6",
        -  "pixverse-v6-t2v",
        -  "krea-wan-14b-t2v",
        -  "grok-imagine",
        -  "grok-imagine-t2v",
        -  "sora-2-t2v",
        -  "sora-2-pro-t2v",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-2.0-pro-t2v",
        -  "seedance-2.5-t2v",
        -  "seedance-2.0-pro-fast-t2v",
        -  "seedance-1.5-pro",
        -  "seedance-1.5-pro-t2v",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-t2v",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-pro-fast-t2v",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-t2v",
        -  "seedance-1.0-lite-ref2v",
        -  "kling-o3-standard-t2v",
        -  "kling-o3-pro-t2v",
        -  "kling-v3-standard-t2v",
        -  "kling-v3-pro-t2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled",
        -  "ltx-2.3",
        -  "ltx-2.3-fast",
        -  "ltx-2-19b-t2v",
        -  "ltx-2-19b-distilled-t2v",
        -  "ltx-2.3-t2v",
        -  "ltx-2.3-fast-t2v"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "minimax-hailuo-2.3-pro-t2v",
        +  "minimax-h3-max-t2v",
        +  "luma-ray-3.2-t2v",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash-ref2v",
        +  "gemini-omni-flash-edit",
        +  "gemini-omni-flash",
        +  "veo3-fast",
        +  "gemini-omni-flash-t2v",
        +  "wan-2.1",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-2.7-t2v",
        +  "wan-3.0",
        +  "wan-3.0-t2v",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "happy-horse-t2v",
        +  "pixverse-v6",
        +  "pixverse-v6-t2v",
        +  "krea-wan-14b-t2v",
        +  "grok-imagine",
        +  "grok-imagine-t2v",
        +  "sora-2-t2v",
        +  "sora-2-pro-t2v",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-2.0-pro-t2v",
        +  "seedance-2.5-t2v",
        +  "seedance-2.0-pro-fast-t2v",
        +  "seedance-1.5-pro",
        +  "seedance-1.5-pro-t2v",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-t2v",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-pro-fast-t2v",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-t2v",
        +  "seedance-1.0-lite-ref2v",
        +  "kling-o3-standard-t2v",
        +  "kling-o3-pro-t2v",
        +  "kling-v3-standard-t2v",
        +  "kling-v3-pro-t2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2.3",
        +  "ltx-2.3-fast",
        +  "ltx-2-19b-t2v",
        +  "ltx-2-19b-distilled-t2v",
        +  "ltx-2.3-t2v",
        +  "ltx-2.3-fast-t2v"
        +]
  4. 9 tool updates
    • Changedclips_create2 fields changed
      • changedInput schema / properties / captionThemeId / description
        Previous value: -"Optional saved caption theme ID. Null uses workspace default captions. UUID string."New value: +"Saved theme UUID or built-in caption look. Omitted inherits Series defaults; null uses workspace captions. UUID string."
      • addedInput schema / properties / seriesId
        Added value: +{
        +  "description": "Optional Series UUID. Omitted inherits the source Series; null creates standalone clips.",
        +  "type": "string"
        +}
    • Changedgeneration_faceless_create1 field changed
      • addedInput schema / properties / seriesId
        Added value: +{
        +  "description": "Optional Series UUID. Inherits its Story Kit and branding defaults for this new video.",
        +  "type": "string"
        +}
    • Changedprojects_create1 field changed
      • addedInput schema / properties / seriesId
        Added value: +{
        +  "description": "Optional Series UUID for this new project.",
        +  "type": "string"
        +}
    • Addedseries_apply
    • Addedseries_assign
    • Addedseries_content
    • Addedseries_delete
    • Addedseries_get
    • Addedseries_list
  5. 1 tool update
    • Changedgeneration_image_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "fal-ai/gpt-image-1",
        -  "fal-ai/gpt-image-1.5",
        -  "fal-ai/gpt-image-2",
        -  "xai/grok-imagine-image-2.0",
        -  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        -  "bytedance/seedream/v5/pro/text-to-image",
        -  "fal-ai/krea-2/turbo",
        -  "fal-ai/krea/v2/medium/turbo/text-to-image",
        -  "fal-ai/krea/v2/medium/text-to-image",
        -  "fal-ai/nano-banana-2",
        -  "google/nano-banana-2-lite",
        -  "fal-ai/nano-banana-pro"
        -]New value: +[
        +  "fal-ai/gpt-image-1",
        +  "fal-ai/gpt-image-1.5",
        +  "fal-ai/gpt-image-2",
        +  "fal-ai/gpt-image-2.5-flare",
        +  "fal-ai/gpt-image-2.5-sunburst",
        +  "xai/grok-imagine-image-2.0",
        +  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        +  "bytedance/seedream/v5/pro/text-to-image",
        +  "fal-ai/krea-2/turbo",
        +  "fal-ai/krea/v2/medium/turbo/text-to-image",
        +  "fal-ai/krea/v2/medium/text-to-image",
        +  "fal-ai/nano-banana-2",
        +  "google/nano-banana-2-lite",
        +  "fal-ai/nano-banana-pro"
        +]
  6. 2 tool updates
    • Changedgeneration_faceless_create1 field changed
      • changedInput schema / properties / videoModel / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "minimax-h3-max",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-3.0",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "pixverse-v6",
        -  "grok-imagine",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-1.5-pro",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-ref2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-3.0",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "pixverse-v6",
        +  "grok-imagine",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-1.5-pro",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-ref2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2.3",
        +  "ltx-2.3-fast"
        +]
    • Changedgeneration_video_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "minimax-h3-max",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "minimax-hailuo-2.3-pro-t2v",
        -  "minimax-h3-max-t2v",
        -  "luma-ray-3.2-t2v",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "veo3-fast",
        -  "gemini-omni-flash-t2v",
        -  "wan-2.1",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-2.7-t2v",
        -  "wan-3.0",
        -  "wan-3.0-t2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "happy-horse-t2v",
        -  "pixverse-v6",
        -  "pixverse-v6-t2v",
        -  "krea-wan-14b-t2v",
        -  "grok-imagine",
        -  "grok-imagine-t2v",
        -  "sora-2-t2v",
        -  "sora-2-pro-t2v",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-2.0-pro-t2v",
        -  "seedance-2.5-t2v",
        -  "seedance-2.0-pro-fast-t2v",
        -  "seedance-1.5-pro",
        -  "seedance-1.5-pro-t2v",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-t2v",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-pro-fast-t2v",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-t2v",
        -  "seedance-1.0-lite-ref2v",
        -  "kling-o3-standard-t2v",
        -  "kling-o3-pro-t2v",
        -  "kling-v3-standard-t2v",
        -  "kling-v3-pro-t2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled",
        -  "ltx-2-19b-t2v",
        -  "ltx-2-19b-distilled-t2v"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "minimax-hailuo-2.3-pro-t2v",
        +  "minimax-h3-max-t2v",
        +  "luma-ray-3.2-t2v",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "veo3-fast",
        +  "gemini-omni-flash-t2v",
        +  "wan-2.1",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-2.7-t2v",
        +  "wan-3.0",
        +  "wan-3.0-t2v",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "happy-horse-t2v",
        +  "pixverse-v6",
        +  "pixverse-v6-t2v",
        +  "krea-wan-14b-t2v",
        +  "grok-imagine",
        +  "grok-imagine-t2v",
        +  "sora-2-t2v",
        +  "sora-2-pro-t2v",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-2.0-pro-t2v",
        +  "seedance-2.5-t2v",
        +  "seedance-2.0-pro-fast-t2v",
        +  "seedance-1.5-pro",
        +  "seedance-1.5-pro-t2v",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-t2v",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-pro-fast-t2v",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-t2v",
        +  "seedance-1.0-lite-ref2v",
        +  "kling-o3-standard-t2v",
        +  "kling-o3-pro-t2v",
        +  "kling-v3-standard-t2v",
        +  "kling-v3-pro-t2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2.3",
        +  "ltx-2.3-fast",
        +  "ltx-2-19b-t2v",
        +  "ltx-2-19b-distilled-t2v",
        +  "ltx-2.3-t2v",
        +  "ltx-2.3-fast-t2v"
        +]
  7. 2 tool updates
    • Changedgeneration_image_create4 fields changed
      • addedInput schema / properties / enhancePrompt
        Added value: +{
        +  "default": false,
        +  "description": "Enhance using BlitzReels model grammar and actual input context.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / referenceAssetIds / description
        Previous value: -"Up to 4 existing image asset IDs to use as style or subject references."New value: +"Ordered image references. Model-specific limits are listed in generation_options_list; unsupported references fail."
      • changedInput schema / properties / referenceAssetIds / maxItems
        Previous value: -4New value: +14
      • addedInput schema / properties / resolution
        Added value: +{
        +  "anyOf": [
        +    {
        +      "enum": [
        +        "0.5k",
        +        "1k",
        +        "2k",
        +        "4k"
        +      ],
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Native image resolution. Call generation_options_list for model support and resolution pricing. Unsupported settings are rejected."
        +}
    • Changedgeneration_video_create14 fields changed
      • addedInput schema / properties / endFrameAssetId
        Added value: +{
        +  "description": "Last frame image. Requires a source first frame and a supported model; reference arrays cannot be combined with end frames.",
        +  "format": "uuid",
        +  "type": "string"
        +}
      • addedInput schema / properties / enhancePrompt
        Added value: +{
        +  "default": false,
        +  "description": "Enhance using BlitzReels model grammar and actual input context.",
        +  "type": "boolean"
        +}
      • removedInput schema / properties / generateAudio / default
        Removed value: -true
      • changedInput schema / properties / generateAudio / description
        Previous value: -"Generate audio alongside the video when supported."New value: +"null uses model audio behavior. Explicit true/false must be supported by the selected model."
      • addedInput schema / properties / provider
        Added value: +{
        +  "default": "auto",
        +  "description": "Explicit provider must support the model and input mode. auto uses a configured compatible provider.",
        +  "enum": [
        +    "auto",
        +    "byteplus-modelark",
        +    "fal"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / referenceAssetIds / description
        Previous value: -"Reference image asset IDs. Seedance 2.5 accepts 29 plus sourceAssetId, for 30 images total; other models accept up to 4."New value: +"Ordered reference images: Seedance 2.5 up to 30; Seedance 2.0 ref2v up to 9; other reference models up to 4. Source counts toward the limit."
      • changedInput schema / properties / referenceAssetIds / maxItems
        Previous value: -29New value: +30
      • changedInput schema / properties / referenceAudioAssetIds / description
        Previous value: -"Seedance 2.5 reference audio asset IDs. Unsupported by other models."New value: +"Reference audio: Seedance 2.5 up to 10; Seedance 2.0 ref2v and fast up to 3. Other models reject them."
      • changedInput schema / properties / referenceVideoAssetIds / description
        Previous value: -"Seedance 2.5 reference video asset IDs. Unsupported by other models."New value: +"Reference videos: Seedance 2.5 up to 10; Seedance 2.0 ref2v and fast up to 3. Other models reject them."
      • addedInput schema / properties / resolution / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "480p",
        +      "720p",
        +      "768p",
        +      "1080p",
        +      "4k"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / resolution / default
        Added value: +null
      • changedInput schema / properties / resolution / description
        Previous value: -"Seedance 2.5 output resolution."New value: +"Output resolution. Call generation_options_list for model-specific supported values and defaults. Unsupported settings are rejected."
      • removedInput schema / properties / resolution / enum
        Removed value: -[
        -  "480p",
        -  "720p"
        -]
      • removedInput schema / properties / resolution / type
        Removed value: -"string"
  8. 2 tool updates
    • Changedgeneration_faceless_create1 field changed
      • changedInput schema / properties / videoModel / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "pixverse-v6",
        -  "grok-imagine",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-1.5-pro",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-ref2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-3.0",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "pixverse-v6",
        +  "grok-imagine",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-1.5-pro",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-ref2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled"
        +]
    • Changedgeneration_video_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "minimax-hailuo-2.3-pro-t2v",
        -  "luma-ray-3.2-t2v",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "veo3-fast",
        -  "gemini-omni-flash-t2v",
        -  "wan-2.1",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-2.7-t2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "happy-horse-t2v",
        -  "pixverse-v6",
        -  "pixverse-v6-t2v",
        -  "krea-wan-14b-t2v",
        -  "grok-imagine",
        -  "grok-imagine-t2v",
        -  "sora-2-t2v",
        -  "sora-2-pro-t2v",
        -  "seedance-2.0-pro",
        -  "seedance-2.5",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-2.0-pro-t2v",
        -  "seedance-2.5-t2v",
        -  "seedance-2.0-pro-fast-t2v",
        -  "seedance-1.5-pro",
        -  "seedance-1.5-pro-t2v",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-t2v",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-pro-fast-t2v",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-t2v",
        -  "seedance-1.0-lite-ref2v",
        -  "kling-o3-standard-t2v",
        -  "kling-o3-pro-t2v",
        -  "kling-v3-standard-t2v",
        -  "kling-v3-pro-t2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled",
        -  "ltx-2-19b-t2v",
        -  "ltx-2-19b-distilled-t2v"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "minimax-h3-max",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "minimax-hailuo-2.3-pro-t2v",
        +  "minimax-h3-max-t2v",
        +  "luma-ray-3.2-t2v",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "veo3-fast",
        +  "gemini-omni-flash-t2v",
        +  "wan-2.1",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-2.7-t2v",
        +  "wan-3.0",
        +  "wan-3.0-t2v",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "happy-horse-t2v",
        +  "pixverse-v6",
        +  "pixverse-v6-t2v",
        +  "krea-wan-14b-t2v",
        +  "grok-imagine",
        +  "grok-imagine-t2v",
        +  "sora-2-t2v",
        +  "sora-2-pro-t2v",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-2.0-pro-t2v",
        +  "seedance-2.5-t2v",
        +  "seedance-2.0-pro-fast-t2v",
        +  "seedance-1.5-pro",
        +  "seedance-1.5-pro-t2v",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-t2v",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-pro-fast-t2v",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-t2v",
        +  "seedance-1.0-lite-ref2v",
        +  "kling-o3-standard-t2v",
        +  "kling-o3-pro-t2v",
        +  "kling-v3-standard-t2v",
        +  "kling-v3-pro-t2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2-19b-t2v",
        +  "ltx-2-19b-distilled-t2v"
        +]
  9. 8 tool updates
    • Changedcharacters_apply2 fields changed
      • addedInput schema / properties / confirmLikenessConsent
        Added value: +{
        +  "default": false,
        +  "description": "For a human character, set true only after the user confirms consent to use the depicted person's likeness.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / confirmRightsToReferences
        Added value: +{
        +  "default": false,
        +  "description": "Set true only after the user confirms they own the reference media or have permission to use it.",
        +  "type": "boolean"
        +}
    • Changedclips_create1 field changed
      • addedInput schema / properties / confirmRightsToMedia
        Added value: +{
        +  "default": false,
        +  "description": "Set true only after the user confirms they own the media or have permission to import it. Not needed for an existing BlitzReels asset.",
        +  "type": "boolean"
        +}
    • Changedgeneration_faceless_create1 field changed
      • changedInput schema / properties / voiceId / description
        Previous value: -"Optional voice override. The Story Kit narrator voice is used when omitted."New value: +"Optional voice override from the BlitzReels voice catalog. The Story Kit narrator voice is used when omitted."
    • Changedgeneration_voiceover_create2 fields changed
      • changedInput schema / properties / voiceId / default
        Previous value: -nullNew value: +"pNInz6obpgDQGcFmaJgB"
      • addedInput schema / properties / voiceId / enum
        Added value: +[
        +  "pNInz6obpgDQGcFmaJgB",
        +  "TX3LPaxmHKxFdv7VOQHJ",
        +  "FGY2WhTYpPnrIDTdsKH5",
        +  "IKne3meq5aSn9XLyUdCD",
        +  "cgSgspJ2msm6clMCkdW9",
        +  "bIHbv24MWmeRgasZH58o",
        +  "nPczCjzI2devNBz1zQrb",
        +  "JBFqnCBsd6RMkjVDRZzb",
        +  "SOYHLrjzK2X1ezoPC6cr",
        +  "N2lVS1w4EtoT3dr4eOWO",
        +  "S9EGwlCtMF7VXtENq79v",
        +  "VhxAIIZM8IRmnl5fyeyk",
        +  "hpp4J3VqNfWAUOO0d1Us",
        +  "EXAVITQu4vr4xnSDxMaL",
        +  "pFZP5JQG7iQjIQuC4Bku",
        +  "SAz9YHcvj6GT2YYXdXww",
        +  "Xb7hH8MSUJpSbSDYk0k2",
        +  "XrExE9yKIg1WjnnlVkGX",
        +  "onwK4e9ZLuTAKqWW03F9",
        +  "pqHfZKP75CvOlQylNhV4",
        +  "CwhRBWXzGAHq8TQ4Fs17",
        +  "cjVigY5qzO86Huf0OWal",
        +  "iP95p4xoKVk53GoZ742B"
        +]
    • Changedmedia_import_inspect1 field changed
      • addedInput schema / properties / confirmRightsToMedia
        Added value: +{
        +  "default": false,
        +  "description": "Set true only after the user confirms they own the media or have permission to import it.",
        +  "type": "boolean"
        +}
    • Changedmedia_import_scan_page1 field changed
      • addedInput schema / properties / confirmAuthorizedToScan
        Added value: +{
        +  "default": false,
        +  "description": "Set true only after the user confirms they control the page or are authorized to scan it.",
        +  "type": "boolean"
        +}
    • Changedmedia_import_url1 field changed
      • addedInput schema / properties / confirmRightsToMedia
        Added value: +{
        +  "default": false,
        +  "description": "Set true only after the user confirms they own the media or have permission to import it.",
        +  "type": "boolean"
        +}
    • Changedprojects_list3 fields changed
      • addedOutput schema / properties / projects / items / additionalProperties
        Added value: +false
      • addedOutput schema / properties / projects / items / properties
        Added value: +{
        +  "clipCount": {
        +    "type": "number"
        +  },
        +  "description": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "durationSeconds": {
        +    "type": "number"
        +  },
        +  "id": {
        +    "type": "string"
        +  },
        +  "lastExportAt": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "name": {
        +    "type": "string"
        +  },
        +  "projectUrl": {
        +    "type": "string"
        +  },
        +  "status": {
        +    "enum": [
        +      "ready",
        +      "exporting",
        +      "needs_captions",
        +      "processing"
        +    ],
        +    "type": "string"
        +  },
        +  "thumbnailUrl": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "updatedAt": {
        +    "type": "string"
        +  }
        +}
      • addedOutput schema / properties / projects / items / required
        Added value: +[
        +  "id",
        +  "name",
        +  "description",
        +  "updatedAt",
        +  "lastExportAt",
        +  "durationSeconds",
        +  "clipCount",
        +  "thumbnailUrl",
        +  "status",
        +  "projectUrl"
        +]
  10. 1 tool update
    • Changedgeneration_image_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "fal-ai/gpt-image-1",
        -  "fal-ai/gpt-image-1.5",
        -  "fal-ai/gpt-image-2",
        -  "xai/grok-imagine-image-2.0-preview",
        -  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        -  "bytedance/seedream/v5/pro/text-to-image",
        -  "fal-ai/krea-2/turbo",
        -  "fal-ai/krea/v2/medium/turbo/text-to-image",
        -  "fal-ai/krea/v2/medium/text-to-image",
        -  "fal-ai/nano-banana-2",
        -  "google/nano-banana-2-lite",
        -  "fal-ai/nano-banana-pro"
        -]New value: +[
        +  "fal-ai/gpt-image-1",
        +  "fal-ai/gpt-image-1.5",
        +  "fal-ai/gpt-image-2",
        +  "xai/grok-imagine-image-2.0",
        +  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        +  "bytedance/seedream/v5/pro/text-to-image",
        +  "fal-ai/krea-2/turbo",
        +  "fal-ai/krea/v2/medium/turbo/text-to-image",
        +  "fal-ai/krea/v2/medium/text-to-image",
        +  "fal-ai/nano-banana-2",
        +  "google/nano-banana-2-lite",
        +  "fal-ai/nano-banana-pro"
        +]
  11. 8 tool updates
    • Addedcharacters_apply
    • Addedcharacters_get
    • Addedcharacters_list
    • Changedgeneration_faceless_create6 fields changed
      • addedInput schema / properties / storyKitId
        Added value: +{
        +  "description": "Reusable Story Kit UUID for characters, references, locations, style, and narrator voice.",
        +  "type": "string"
        +}
      • removedInput schema / properties / visualStyle / default
        Removed value: -"cinematic 3D animation"
      • changedInput schema / properties / visualStyle / description
        Previous value: -"Art direction for the generated scenes."New value: +"Optional art direction override. A Story Kit style is used when omitted."
      • changedInput schema / properties / visualStyle / maxLength
        Previous value: -200New value: +2000
      • removedInput schema / properties / voiceId / default
        Removed value: -"pNInz6obpgDQGcFmaJgB"
      • changedInput schema / properties / voiceId / description
        Previous value: -"Voice ID used when generateVoiceover is true."New value: +"Optional voice override. The Story Kit narrator voice is used when omitted."
    • Changedgeneration_voiceover_create1 field changed
      • changedInput schema / properties / voiceId / default
        Previous value: -"pNInz6obpgDQGcFmaJgB"New value: +null
    • Addedstory_kits_apply
    • Addedstory_kits_get
    • Addedstory_kits_list
  12. 3 tool updates
    • Changedclips_manage4 fields changed
      • addedInput schema / properties / confirmVisualQa
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • addedInput schema / properties / exportId
        Added value: +{
        +  "description": "UUID string.",
        +  "format": "uuid",
        +  "type": "string"
        +}
      • addedInput schema / properties / idempotencyKey
        Added value: +{
        +  "type": "string"
        +}
      • changedInput schema / properties / operation / enum
        Previous value: -[
        -  "list",
        -  "get",
        -  "reselect",
        -  "repair",
        -  "export",
        -  "list_caption_words",
        -  "set_caption_look"
        -]New value: +[
        +  "list",
        +  "get",
        +  "reselect",
        +  "repair",
        +  "export",
        +  "promote_export",
        +  "list_caption_words",
        +  "set_caption_look"
        +]
    • Changedgeneration_image_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "fal-ai/gpt-image-1",
        -  "fal-ai/gpt-image-1.5",
        -  "fal-ai/gpt-image-2",
        -  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        -  "bytedance/seedream/v5/pro/text-to-image",
        -  "fal-ai/krea-2/turbo",
        -  "fal-ai/krea/v2/medium/turbo/text-to-image",
        -  "fal-ai/krea/v2/medium/text-to-image",
        -  "fal-ai/nano-banana-2",
        -  "google/nano-banana-2-lite",
        -  "fal-ai/nano-banana-pro"
        -]New value: +[
        +  "fal-ai/gpt-image-1",
        +  "fal-ai/gpt-image-1.5",
        +  "fal-ai/gpt-image-2",
        +  "xai/grok-imagine-image-2.0-preview",
        +  "fal-ai/bytedance/seedream/v5/lite/text-to-image",
        +  "bytedance/seedream/v5/pro/text-to-image",
        +  "fal-ai/krea-2/turbo",
        +  "fal-ai/krea/v2/medium/turbo/text-to-image",
        +  "fal-ai/krea/v2/medium/text-to-image",
        +  "fal-ai/nano-banana-2",
        +  "google/nano-banana-2-lite",
        +  "fal-ai/nano-banana-pro"
        +]
    • Changedgeneration_plan_brief3 fields changed
      • addedInput schema / properties / genre
        Added value: +{
        +  "description": "Genre pack id (e.g. pixar-culture-skit). The brief lists available ids in availableGenres; the pack's beats and visual contract override the generic grammar.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / brief / properties / availableGenres
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / brief / properties / genrePack
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
  13. 2 tool updates
    • Addedgeneration_plan_brief
    • Addedgeneration_plan_validate
  14. 2 tool updates
    • Changedgeneration_faceless_create1 field changed
      • changedInput schema / properties / videoModel / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "pixverse-v6",
        -  "grok-imagine",
        -  "seedance-2.0-pro",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-1.5-pro",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-ref2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "pixverse-v6",
        +  "grok-imagine",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-1.5-pro",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-ref2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled"
        +]
    • Changedgeneration_video_create1 field changed
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "kling-2.1",
        -  "kling-2.6-pro",
        -  "kling-o1",
        -  "kling-3.0",
        -  "kling-o3-standard",
        -  "kling-o3-pro",
        -  "kling-o3-4k",
        -  "kling-v3-pro",
        -  "minimax-01",
        -  "minimax-hailuo-02",
        -  "minimax-hailuo-2.3-pro",
        -  "luma-ray-2",
        -  "luma-ray-3.2",
        -  "minimax-hailuo-2.3-pro-t2v",
        -  "luma-ray-3.2-t2v",
        -  "sora-2",
        -  "sora-2-pro",
        -  "veo3",
        -  "veo3.1",
        -  "veo3.1-fast",
        -  "gemini-omni-flash",
        -  "veo3-fast",
        -  "gemini-omni-flash-t2v",
        -  "wan-2.1",
        -  "wan-2.7",
        -  "wan-2.7-ref2v",
        -  "wan-2.7-t2v",
        -  "happy-horse",
        -  "happy-horse-ref2v",
        -  "happy-horse-t2v",
        -  "pixverse-v6",
        -  "pixverse-v6-t2v",
        -  "krea-wan-14b-t2v",
        -  "grok-imagine",
        -  "grok-imagine-t2v",
        -  "sora-2-t2v",
        -  "sora-2-pro-t2v",
        -  "seedance-2.0-pro",
        -  "seedance-2.0-pro-fast",
        -  "seedance-2.0-ref2v",
        -  "seedance-2.0-ref2v-fast",
        -  "seedance-2.0-pro-t2v",
        -  "seedance-2.0-pro-fast-t2v",
        -  "seedance-1.5-pro",
        -  "seedance-1.5-pro-t2v",
        -  "seedance-1.0-pro",
        -  "seedance-1.0-pro-t2v",
        -  "seedance-1.0-pro-fast",
        -  "seedance-1.0-pro-fast-t2v",
        -  "seedance-1.0-lite",
        -  "seedance-1.0-lite-t2v",
        -  "seedance-1.0-lite-ref2v",
        -  "kling-o3-standard-t2v",
        -  "kling-o3-pro-t2v",
        -  "kling-v3-standard-t2v",
        -  "kling-v3-pro-t2v",
        -  "ltx-2-19b",
        -  "ltx-2-19b-distilled",
        -  "ltx-2-19b-t2v",
        -  "ltx-2-19b-distilled-t2v"
        -]New value: +[
        +  "kling-2.1",
        +  "kling-2.6-pro",
        +  "kling-o1",
        +  "kling-3.0",
        +  "kling-o3-standard",
        +  "kling-o3-pro",
        +  "kling-o3-4k",
        +  "kling-v3-pro",
        +  "minimax-01",
        +  "minimax-hailuo-02",
        +  "minimax-hailuo-2.3-pro",
        +  "luma-ray-2",
        +  "luma-ray-3.2",
        +  "minimax-hailuo-2.3-pro-t2v",
        +  "luma-ray-3.2-t2v",
        +  "sora-2",
        +  "sora-2-pro",
        +  "veo3",
        +  "veo3.1",
        +  "veo3.1-fast",
        +  "gemini-omni-flash",
        +  "veo3-fast",
        +  "gemini-omni-flash-t2v",
        +  "wan-2.1",
        +  "wan-2.7",
        +  "wan-2.7-ref2v",
        +  "wan-2.7-t2v",
        +  "happy-horse",
        +  "happy-horse-ref2v",
        +  "happy-horse-t2v",
        +  "pixverse-v6",
        +  "pixverse-v6-t2v",
        +  "krea-wan-14b-t2v",
        +  "grok-imagine",
        +  "grok-imagine-t2v",
        +  "sora-2-t2v",
        +  "sora-2-pro-t2v",
        +  "seedance-2.0-pro",
        +  "seedance-2.5",
        +  "seedance-2.0-pro-fast",
        +  "seedance-2.0-ref2v",
        +  "seedance-2.0-ref2v-fast",
        +  "seedance-2.0-pro-t2v",
        +  "seedance-2.5-t2v",
        +  "seedance-2.0-pro-fast-t2v",
        +  "seedance-1.5-pro",
        +  "seedance-1.5-pro-t2v",
        +  "seedance-1.0-pro",
        +  "seedance-1.0-pro-t2v",
        +  "seedance-1.0-pro-fast",
        +  "seedance-1.0-pro-fast-t2v",
        +  "seedance-1.0-lite",
        +  "seedance-1.0-lite-t2v",
        +  "seedance-1.0-lite-ref2v",
        +  "kling-o3-standard-t2v",
        +  "kling-o3-pro-t2v",
        +  "kling-v3-standard-t2v",
        +  "kling-v3-pro-t2v",
        +  "ltx-2-19b",
        +  "ltx-2-19b-distilled",
        +  "ltx-2-19b-t2v",
        +  "ltx-2-19b-distilled-t2v"
        +]
  15. 1 tool update
    • Changedclips_manage3 fields changed
      • addedInput schema / properties / captionsEnabled
        Added value: +{
        +  "type": "boolean"
        +}
      • addedInput schema / properties / contentTypeHint
        Added value: +{
        +  "enum": [
        +    "auto",
        +    "podcast",
        +    "tutorial",
        +    "demo",
        +    "generic"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / layoutMode
        Added value: +{
        +  "enum": [
        +    "auto",
        +    "people_first",
        +    "screen_first",
        +    "preserve_full_source",
        +    "prefer_split",
        +    "prefer_focus",
        +    "prefer_tutorial",
        +    "prefer_demo"
        +  ],
        +  "type": "string"
        +}

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources