Skip to main content
Glama

Read what is said in a file

get_media_transcript
Idempotent

The words said in a library video or sound file, in lines with their times in the file (seconds), whether or not it is on the timeline. COST: a stretch that was not heard before is transcribed now with the user’s AI time (Business plan): one AI minute per minute of sound, silence is free. What was heard is kept, so asking again, or captioning the file once it is on the timeline, costs nothing more — the result says how many AI seconds this call used and which stretches are known. Give from / to to listen to part of a long file (get_media_levels shows where there is sound, for free). A long stretch answers with a job id: poll get_job.

Input Schema

NameRequiredDescriptionDefault
toNoSeconds into the file (default: its end)
fromNoSeconds into the file (default: its start)
mediaYesMedia id from list_media, or the file name
projectYesProject id from list_projects or create_project
languageNoSpoken language code such as en, ar, es (default: detect)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false and idempotentHint=true; the description explains why: new audio consumes AI time at one AI minute per minute of sound, silence is free, previously heard stretches are cached so repeats and later captioning cost nothing. It also discloses the async job-id path for long ranges and that results report AI seconds used and known stretches — behavior an agent cannot infer from the annotations.

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?

Purpose is front-loaded in the first sentence, and each following clause (cost model, caching, range narrowing, job polling) contributes unique operational information. The prose is denser and more run-on than necessary, with em-dashes and asides that could be tightened, but there is no filler.

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?

There is no output schema, and the description compensates: it states the return format (lines with times in seconds), the metadata returned (AI seconds used, which stretches are known), and the alternate return (a job id for long ranges). Combined with the cost model, an agent has everything needed to call this correctly.

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 100%, so the baseline is 3; the description still adds decision-relevant meaning by explaining that from/to exist to avoid transcribing (and paying for) an entire long file. The language parameter is not mentioned in the description, though the schema covers it.

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 names a specific resource and output shape: the words spoken in a library video or sound file, returned as timed lines. The 'whether or not it is on the timeline' qualifier cleanly separates it from timeline-scoped siblings such as get_transcript, so an agent can choose 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 Guidelines4/5

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

It gives concrete routing advice: use from/to to hear part of a long file, call get_media_levels (free) to find where sound is, and poll get_job when a long stretch returns a job id. It does not explicitly contrast with the get_transcript sibling, so it falls short of a full when/when-not statement.

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