Skip to main content
Glama

assemble_episode

Combine ordered audio segments—intro, dialogue, stinger, outro—with fades, gaps, and gain into a finished podcast episode, normalized to -16 LUFS and exported as 192 kbps MP3.

Instructions

Join audio files from the output directory into a finished episode, in order: e.g. intro music → dialogue → stinger → dialogue → outro. Per segment: fades, a gap after, gain. The result is normalised to -16 LUFS (podcast standard), MP3 192 kbps.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filenameYesEpisode file name, e.g. 'ep01-ai-agents'
segmentsYes
normalizeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

With zero annotations the description must carry the full behavioral burden; it does well on output characteristics (-16 LUFS, MP3 192 kbps) and per-segment processing, but says nothing about overwrite behavior for an existing filename, what happens when a referenced file is missing, or what the tool returns (no output schema). The sentence 'The result is normalised to -16 LUFS' also reads as unconditional while the schema exposes a disableable 'normalize' flag, creating ambiguity about the default 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?

Three sentences, each load-bearing and front-loaded: purpose plus ordering, then per-segment options, then output format. No filler or restatement of the name.

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

Completeness2/5

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

No annotations, no output schema, and partial parameter coverage; the description omits the return value (output path or filename), failure modes for missing input files, and overwrite semantics — all things an agent needs before invoking a file-producing tool. It is informative but not complete for a 3-parameter assembly 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?

At 33% schema coverage the description partially compensates by explaining that fades, gap, and gain apply per segment and that output is normalized, but it never states units for fade_in/fade_out (schema only annotates gap_after as seconds) and never mentions the 'normalize' parameter by name or its default. It adds real meaning for the processing knobs but leaves key semantics to guesswork.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Join') and resource ('audio files ... into a finished episode') plus the exact source directory, and the ordering example with arrows makes the segment sequence semantics unambiguous. Siblings like text_to_speech and compose_music generate audio, whereas this assembles it, so the agent can route without opening a schema.

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

Usage Guidelines3/5

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

The phrase 'from the output directory' implies this is the downstream step after generation tools, but no sibling is named and there is no explicit when-to-use/when-not guidance. An agent can infer the workflow position but gets no stated prerequisites (e.g. files must already exist via list_outputs).

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