Skip to main content
Glama

parse_transcript

Generate word-level timestamps from speaker-labeled transcript text so you can sync captions and clips with the source video.

Instructions

Parse a raw speaker-labeled plain text transcript into word-level timestamps. Input format: 'Speaker (MM:SS)\ntext...\n\nSpeaker2 (MM:SS)\ntext...'. Uses the Python backend to generate accurate word timings.

Input Schema

NameRequiredDescriptionDefault
languageNoISO language code of the transcript (e.g. 'ka'). This format has no language info of its own, so omitting it labels the result 'und' rather than guessing.
raw_textYesRaw speaker-labeled transcript text
file_pathYesPath to the video file the transcript belongs to
time_adjustNoOffset in seconds to add to all timestamps
total_durationNoTotal video duration in seconds (helps accuracy)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.8.0
    • addedInput schema / properties / language
      Added value: +{
      +  "description": "ISO language code of the transcript (e.g. 'ka'). This format has no language info of its own, so omitting it labels the result 'und' rather than guessing.",
      +  "type": "string"
      +}
  2. Changed1 schema field changedv2.7.2
    • removedInput schema / additionalProperties
      Removed value: -false
  3. First observedv2.0.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that processing happens via the Python backend and that output is word-level timings, but says nothing about permissions, cost/latency, whether results are persisted, or how the required file_path must relate to the text.

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?

Three short sentences, front-loaded with the purpose and immediately followed by the format contract. The embedded format example is slightly verbose but earns its place by disambiguating input.

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?

For a 5-parameter transformation tool with no annotations and no output schema, the description defines the input contract but omits what the caller gets back (timestamp structure) and any execution constraints. Adequate but with clear gaps.

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 already 100%, so the 3 baseline applies, but the description adds genuine value by spelling out the expected raw_text layout ('Speaker (MM:SS)\ntext...'), which the schema only calls 'Raw speaker-labeled transcript text'. The remaining params are covered by the schema itself.

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?

States a specific verb (parse) and resource (raw speaker-labeled plain text transcript) plus the output (word-level timestamps), which is more than a tautology. It does not explicitly distinguish itself from siblings such as import_transcript or transcribe_start, so an agent must infer the boundary from the input format.

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?

Usage is implied by the required 'raw speaker-labeled' input and the sibling set, but the description never says when to use this over import_transcript or the transcribe_* tools. There are no exclusion or prerequisite statements.

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