Skip to main content
Glama

BCD — Bridge Control Delegate

video_transcribe

Transcribe the speech in a video or audio file into subtitles (timed captions) with Apple speech recognition: returns the text, caption cues and an SRT, ready for video_edit captions. On-device where the language supports it; otherwise the audio is sent to Apple's speech service to be recognized. Waits up to waitMs for the transcript; for a longer file the reply has a jobId and video_status returns the transcript. It reads the file and writes nothing; it starts a background job, and audio may leave the computer as above.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYes
waitMsNo
deviceIdNoComputer name or id from list_devices. Optional with one computer online or a default set.
languageNoe.g. ko-KR, en-US, ja-JP; defaults to the Mac's language
maxCharsNoLongest caption line (default 32)
maxSecondsNo
workSessionIdNoWork session from create_work_session. Pass the same ID on every call in this conversation; omit for legacy unscoped work.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / workSessionId
      Added value: +{
      +  "description": "Work session from create_work_session. Pass the same ID on every call in this conversation; omit for legacy unscoped work.",
      +  "format": "uuid",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the privacy-relevant behavior (on-device vs. Apple's remote speech service, 'audio may leave the computer'), the asynchronous job model (background job, jobId, waitMs timeout), and the write/no-write boundary. Annotations only carry safety flags; the description carries the operational reality.

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?

Front-loaded with purpose and outputs, then progressively adds async, privacy, and write-boundary details. It is dense and slightly run-on in the final sentence, but nearly every 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?

With no output schema and a 7-parameter async tool, the description covers return values (text, cues, SRT), the long-job path (jobId + video_status), and side-effect boundaries. Nothing critical for correct invocation is missing.

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 coverage is 57%, and the description adds real meaning for waitMs (a timeout, with fallback to video_status/jobId). But other under-documented parameters (path, maxSeconds) gain no extra explanation, so it only partially compensates for the coverage gap.

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 and resource ('Transcribe the speech in a video or audio file into subtitles') and names the concrete outputs (text, caption cues, SRT). It clearly distinguishes itself from adjacent video_* siblings by naming video_edit (consumes captions) and video_status (delivers long-job results).

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 context: use it to produce timed captions, and if the file is longer than waitMs, poll video_status instead of re-calling. It stops short of explicit when-not-to-use guidance or comparison to any non-video alternative, so it lands just under the top bar.

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