TranscribeText
Server Details
Get YouTube video transcripts and transcribe TikTok videos to text from a link. No sign-up.
- Status
- Healthy
- Uptime
- 100.0% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
The three tools have largely distinct purposes: fetching YouTube captions, transcribing TikTok audio, and polling an async job result. There is minor surface overlap between get_youtube_transcript and get_transcription_result (both 'get' transcript-like output), but the job_id polling distinction is clearly explained.
All tools follow a consistent snake_case verb_noun pattern: get_transcription_result, get_youtube_transcript, transcribe_tiktok_video. The naming is predictable and readable throughout.
Three tools is thin for a general transcription service implied by the name TranscribeText. It covers only two platforms plus a polling helper, so the surface feels narrow rather than well-rounded.
The async TikTok flow is well covered with a result-poller, but coverage is limited to TikTok and YouTube only. There is no generic audio/file transcription, no support for other platforms, and no job management (list/cancel), leaving notable gaps for a transcription domain.
Available Tools
3 toolsget_transcription_resultGet transcription resultARead-onlyInspect
Get the result of a transcription that transcribe_tiktok_video started but did not finish in time. Pass the job_id that call returned.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by transcribe_tiktok_video. | |
| timestamps | No | Prefix every line with its start time, like [0:12]. Defaults to false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=false), so the bar is lower. The description adds real value by disclosing the asynchronous/deferred nature of the operation and where the job_id originates, but omits the key behavioral question for a polling tool: what happens if the job is not yet complete, and whether results expire or must be re-fetched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, with the retrieval purpose and the required job_id front-loaded. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description carries more of the burden for a retrieval tool, yet it says nothing about the return format (transcript text, status, language) or the pending-job case. Adequate for calling it, incomplete for interpreting it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (job_id, timestamps) are already fully documented in the schema. The description reinforces the job_id linkage to the sibling tool but adds no syntax or semantics beyond that, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb + resource ('Get the result of a transcription') with the originating operation named explicitly (transcribe_tiktok_video). An agent can distinguish it from get_youtube_transcript and transcribe_tiktok_video without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States the precise triggering condition: use it when transcribe_tiktok_video started a job but did not finish in time, and pass the job_id that call returned. Clear context, though it does not contrast with get_youtube_transcript or state what to do if the job is still pending.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_youtube_transcriptGet YouTube transcriptARead-onlyInspect
Get the transcript of a YouTube video from its link. Returns the captions YouTube has for the video (subtitles uploaded by the creator, or the auto-generated captions) as plain text, with the title, channel and the caption languages available. Does not work for videos without captions, or for private, members-only or age-restricted videos.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Link to a single YouTube video, for example https://www.youtube.com/watch?v=dQw4w9WgXcQ | |
| language | No | Language code of the captions to return, for example en, es or pt-BR. Defaults to the language spoken in the video. | |
| timestamps | No | Prefix every caption line with its start time, like [1:23]. Defaults to false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description usefully adds behavioral context the annotations do not: the return format (plain text plus title, channel, caption languages) and the failure conditions (no captions, private/members-only/age-restricted videos).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, followed by return format and limitations in a compact three-sentence structure. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly carries the return-value explanation (plain text with title, channel, caption languages) and also documents the key failure modes. Nothing an agent needs to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (url, language, timestamps) are fully documented in the schema itself. The description alludes to caption languages but adds no meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (get the transcript of a YouTube video from its link) with clear scope. The YouTube-specificity implicitly differentiates it from siblings like transcribe_tiktok_video, but it never names or references those alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear exclusion criteria ('Does not work for videos without captions, or for private, members-only or age-restricted videos'), which helps an agent decide feasibility upfront. It does not, however, tell the agent when to prefer a sibling tool such as get_transcription_result instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_tiktok_videoTranscribe TikTok videoARead-onlyInspect
Transcribe the speech in a TikTok video to text from its link. The spoken language is detected automatically. Usually takes 20 to 60 seconds. Free use is limited per day and per video length; if the transcription is not finished when this call returns, it gives a job_id for get_transcription_result.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Link to a TikTok video, for example https://www.tiktok.com/@user/video/7300000000000000000 or a vm.tiktok.com share link. | |
| timestamps | No | Prefix every line with its start time, like [0:12]. Defaults to false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond readOnlyHint/openWorldHint: automatic language detection, a 20-60 second latency expectation, per-day and per-video-length free-use limits, and the async job_id behavior when the call returns early. These are exactly the operational facts annotations do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences: purpose first, then latency, then limits and async follow-up. Every sentence carries distinct operational information with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does explain the partial/failure case (job_id). It stops short of describing the shape of a successful result (plain transcript text, timestamps prefixing when enabled), which is the only notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the url and timestamps parameters (including the [0:12] format example and default) are fully documented in the schema. The description adds only 'from its link', which restates rather than extends the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (transcribe speech in a TikTok video) and the input source (its link). The TikTok scope implicitly separates it from get_youtube_transcript, and it names get_transcription_result as the async follow-up.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear routing guidance: if the call returns before completion it hands back a job_id for get_transcription_result, so the agent knows the async alternative and the condition that selects it. It does not explicitly state when to prefer get_youtube_transcript over this tool, but that is inferable from the resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
get_transcription_result - First observed
get_youtube_transcript - First observed
transcribe_tiktok_video
Related MCP Connectors
Get transcripts from YouTube, TikTok, X, Instagram and more - even when captions are off.
Transcripts and AI summaries of TikTok, YouTube, Instagram, Facebook and X videos from a link.
Transcribe YouTube, TikTok, Instagram, X and 7 more social media platforms, or audio/video files.
Transcribe public videos & audio (YouTube, TikTok, IG) into accurate, timestamped text via API.
Related MCP Servers
- AlicenseAqualityCmaintenanceTranscribes videos from 1000+ platforms (YouTube, TikTok, Vimeo, etc.) and local video files using OpenAI's Whisper model, with support for 90+ languages and multiple output formats.827 npm8MIT
- AlicenseBqualityCmaintenanceAnalyze YouTube, TikTok, and Instagram videos from URL. Extracts transcripts, generates AI insights, and pulls tutorial steps from any video link.1853 PyPI4MIT
- AlicenseNot gradedqualityCmaintenanceEnables extracting timestamped transcripts from YouTube and TikTok URLs, including title, channel, and duration, via a single tool.MIT
- AlicenseNot gradedqualityDmaintenanceTranscribes YouTube videos or audio files to Markdown, plain-text, and Word documents.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.