Skip to main content
Glama

Subtitle Toolkit

clean_subtitles

Strip noise from auto-generated subtitles: HTML/WebVTT tags, ASS override codes, music and sound-effect cues, speaker labels, empty cues and duplicate lines. Returns the subtitle file in SRT or WebVTT.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoOutput format. Default: same as the input.
contentYesThe full subtitle file text.
drop_emptyNoDrop cues that become empty after cleaning. Default true.
remove_tagsNoStrip HTML/WebVTT tags and ASS override codes. Default true.
drop_duplicatesNoDrop cues whose text was already seen. Default false.
remove_sound_cuesNoStrip [Music], [Applause], ♪ ... ♪ and similar. Default true.
remove_speaker_labelsNoStrip leading "SPEAKER:" prefixes. Default false — enable only if you want them gone.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full behavioral burden. It lists 'speaker labels' and 'duplicate lines' as stripped noise, but the schema shows remove_speaker_labels and drop_duplicates both default to false, so those behaviors are opt-in rather than default. This overstates what will happen on a default call and could mislead an agent. It does disclose the return format, but the mismatch is significant.

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 efficient sentences with the primary verb and scope front-loaded, followed by a scannable list of handled noise types and a statement about output. Every sentence earns its place, with no filler or repetition.

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 solid high-level view and mentions output formats, and the schema handles parameter documentation. However, it omits the opt-in nature of speaker-label and duplicate-line removal and does not describe edge cases like fully empty output after cleaning. Adequate for a typical call, but incomplete for robust agent decision-making.

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 every parameter. The description adds some high-level context by naming the output formats and listing the operations, but it does not clarify defaults or add parameter-level detail beyond what the schema provides. This is the appropriate 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 ('strip') and a clear resource ('auto-generated subtitles'), then enumerates exactly what noise is removed: tags, ASS codes, sound cues, speaker labels, empty cues, and duplicate lines. It also states the output formats, making it unmistakably distinct from sibling tools like convert_subtitle, merge_subtitles, or retime_subtitles.

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 case is clear: clean noisy auto-generated subtitle files. However, it never explicitly names alternatives or says when not to use this tool, such as using convert_subtitle for format-only conversion. The context is clear but exclusion conditions and sibling routing are absent.

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