Skip to main content
Glama

Generate Long-Form Narration

generate_long_form

Generate long-form narration (up to 500,000 characters ≈ 9 hours of audio) as an async job. Requires a Pro subscription key. Kokoro narration voices only — Arabic (ar_*) and cloned (voice_*) voices are rejected by the Long-Form engine. Returns a job id — poll get_job_status; parts render progressively and audio_url appears when completed.

Input Schema

NameRequiredDescriptionDefault
toneNoTone preset.neutral
inputYesThe full script, up to 500,000 characters.
pitchNoPitch shift in semitones (-4 to 4).
speedNo
voiceNoKokoro voice id — call list_voices for the catalog.af_aoede
formatNomp3

Output Schema

NameRequiredDescriptionDefault
job_idYes
statusYes
input_charsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare the generic write/non-idempotent profile; the description adds substantial behavior beyond them: async job semantics, job-id return, polling flow, progressive part rendering, when audio_url appears, and the auth-tier requirement. It also discloses the voice engine's rejection behavior, which no annotation covers.

Agents need to know what a tool does to the world before 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 that front-load the core purpose, scale, and async nature before prerequisites and the follow-up tool. No filler, and each clause carries decision-relevant information.

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

Completeness5/5

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

An output schema exists, yet the description still surfaces the operationally critical return behavior (job id, progressive parts, audio_url on completion) that an agent needs to sequence the get_job_status call correctly. Nothing essential for a correct invocation is missing.

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

Parameters4/5

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

With schema coverage at 67%, the description supplements the gaps where it matters most, clarifying that input can reach 500,000 characters and that voice must be a Kokoro id (ar_* and voice_* rejected, list_voices for catalog). Tone, pitch, speed, and format remain schema-only, which is acceptable given their inline descriptions.

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

Purpose5/5

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

States a specific verb (generate) and resource (long-form narration) with a concrete scope cap (up to 500,000 characters ≈ 9 hours), and frames it as an async job. This lets an agent separate it from text_to_speech, create_podcast, and the voice-cloning siblings without opening their schemas.

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

Usage Guidelines4/5

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

Gives clear prerequisites (Pro subscription key; Kokoro voices only) and routes the agent to get_job_status for polling. The voice restriction effectively encodes a when-not condition, but it never explicitly contrasts short-form text_to_speech usage, leaving that inference to the agent.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources