Skip to main content
Glama

text_to_speech

Generates a single-voice audio file from input text for narration, ads, or cold opens. Supply text and a voice ID to create the speech.

Instructions

One voice reading a text — narration, a cold open, an ad read. For several speakers use text_to_dialogue.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes
speedNo
styleNo
filenameNoFile name to save as (no folders). Defaults to a timestamped name.
model_idNoeleven_multilingual_v2 (stable, long text), eleven_v3 (expressive, audio tags), eleven_flash_v2_5 (fast/cheap)eleven_multilingual_v2
voice_idYes
stabilityNoLower = more expressive, higher = more consistent
language_codeNoISO 639-1, e.g. 'sv' — forces the language where the model supports it
output_formatNoAudio format. 192 kbps MP3 needs Creator tier; WAV/PCM 44.1 kHz needs Pro.mp3_44100_128
similarity_boostNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden and largely drops it: it does not say the tool writes an audio file to disk (only the 'filename' param hints at it), where that file lands, whether the call consumes credits (a check_subscription sibling exists), or anything about latency or failure modes for invalid voice_ids. Only the speaker-count behavior is disclosed.

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

Conciseness5/5

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

Two short clauses, zero filler, and the defining constraint (single speaker) plus the routing rule are both front-loaded. Nothing is restated from structured fields.

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?

Ten parameters, no annotations, no output schema, and half the parameters undocumented — this tool needed the description to explain the voice_id prerequisite, what is produced and where, and the tier constraints that only the output_format description hints at. Instead the description covers purpose and sibling routing only.

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

Parameters2/5

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

Schema coverage is 50% and the description adds nothing about parameters. Half the params — text, voice_id, speed, style, similarity_boost — have no description anywhere, and the description never compensates by explaining voice selection, speed range intent, or how style/similarity interact. This falls below the baseline-3 case where schema coverage is high.

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

Purpose4/5

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

The description names the resource and operation concretely ('One voice reading a text') and grounds it with three example use cases (narration, cold open, ad read). It also explicitly contrasts with the sibling text_to_dialogue, so an agent can route correctly. It stops short of stating that it synthesizes and saves an audio file, which keeps it from a 5.

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

Usage Guidelines4/5

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

'For several speakers use text_to_dialogue' gives an explicit alternative and the condition that selects it. No exclusion is given against other audio siblings (compose_music, sound_effect), and it never mentions that a voice_id must first come from list_voices, but the core when-to-use guidance is present.

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