Skip to main content
Glama

Server Details

Transcribe, read and download public Reels, TikToks and YouTube videos, plus sourced creator data

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
99.9% over 22 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
diegobruegger-prog/shortformkit-mcp
GitHub Stars
0

TDQS

A4.3/5.0

Scored across 9 tools

Disambiguation4/5

Each tool targets a distinct action or data domain, and descriptions explicitly cross-reference (e.g. creator_monetization tells you to use estimate_youtube_earnings for a view-count estimate; get_video_info vs download_media vs transcribe_video are clearly separated). The only mild overlap is between loudness_and_subtitles (subtitle standards) and social_video_specs (caption/hashtag limits), which both touch captions but for different purposes.

Naming Consistency4/5

All names are snake_case, and there is a readable implicit convention: action tools are verb_noun (download_media, get_video_info, transcribe_video, estimate_youtube_earnings) while offline reference lookups are noun topics (creator_monetization, social_video_specs, loudness_and_subtitles). The split is coherent rather than chaotic, though the two patterns mean verb-first does not hold universally.

Tool Count5/5

Nine tools is well within the sweet spot and each one covers a distinct job (fetch media, read metadata, transcribe, resolve channel ID, plus four offline reference datasets and a trends lookup). No tool feels redundant or padded.

Completeness4/5

The surface covers the core shortform workflow end to end: inspect a link, download, transcribe, check platform specs, loudness/caption standards, and monetization/thumbnail research. The main gap is a dedicated job-status tool — download_media and transcribe_video return a job_status_url to poll, but no tool in the set handles that polling, which could dead-end long jobs.

Available Tools

9 tools
creator_monetizationCreator monetization dataA
Read-onlyIdempotent
Inspect

Look up sourced 2026 creator-income data. topic=programs lists monetization programs with eligibility (subscribers, watch hours, views) and status; rpm_by_niche and rpm_by_country give earnings per 1,000 views as low, high and median; engagement_benchmarks gives typical engagement rates; sponsorship_rates gives price ranges per post. Every row carries its sources. Use it to answer 'how much does X pay' or 'what do I need to monetize'; for a concrete earnings estimate from a view count use estimate_youtube_earnings instead. Offline data, max 40 rows.

NameRequiredDescriptionDefault
nicheNoOptional niche filter for rpm_by_niche and sponsorship_rates, substring: finance, tech, gaming, beauty, education ...
topicNoWhich table to read.programs
countryNoOptional country filter for rpm_by_country: ISO code (US, DE, IN) or English name.
platformNoOptional platform filter, substring: YouTube, TikTok, Instagram, Facebook, X, Snapchat ...

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/openWorld=false/idempotent/non-destructive, and the description adds genuinely new traits: the dataset is offline, capped at 40 rows, and every row carries its sources. Those operational constraints are not derivable 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?

Front-loaded with the verb and resource, and each sentence earns its place (topic semantics, sourcing, usage, alternative, row limit). It is dense and long, but no sentence is pure 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?

With no output schema, the description carries the return-value burden and does so by describing what each topic yields, plus the source-per-row guarantee and the 40-row cap. Usage, alternatives and limits are all covered for a zero-required-param lookup tool.

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 baseline is 3. The description goes beyond the enum labels by explaining the shape of each topic's output (programs returns eligibility thresholds; rpm tables return low/high/median per 1,000 views). It adds meaning for the enum but says little extra about the niche/country/platform filters, which the schema already covers.

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 ('look up') and a concrete resource ('sourced 2026 creator-income data'), then decomposes exactly what each topic returns. It explicitly contrasts itself with the sibling estimate_youtube_earnings, so an agent can select it without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Gives explicit use cases ('how much does X pay', 'what do I need to monetize') and names the condition that routes to the alternative ('for a concrete earnings estimate from a view count use estimate_youtube_earnings instead'). Nothing is left to inference.

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

download_mediaDownload mediaA
Idempotent
Inspect

Create a temporary download of a public post. Returns a job object with status and, when done, download_url (valid 15 minutes) plus job_status_url to poll if it is still running after about 100 seconds. Use kind=video for MP4, audio for MP3, image for photo posts and carousels, thumbnail for the cover, frame for a still at one timestamp. For the spoken text use transcribe_video instead. Videos up to 12 hours. Only for content the user made, has permission to use, or that is freely licensed. Music is refused: songs, music videos, YouTube Music and copyrighted sounds return an error, do not try to work around it.

NameRequiredDescriptionDefault
atNoTimestamp of the still for kind=frame. Time as '1:05', '0:01:05' or seconds ('65').
endNoOptional end of the section, must be after start. Time as '1:05', '0:01:05' or seconds ('65').
urlYesLink to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail.
kindNoWhat to save: video (MP4), audio (MP3), image (photo/carousel), thumbnail (cover image) or frame (one still, needs 'at').video
startNoOptional start of a section to cut. Time as '1:05', '0:01:05' or seconds ('65').
qualityNoMaximum video height in pixels, e.g. 720, 1080, 2160. Omit for the best available. Only for kind=video.

TDQS

A4.6/5.0
Behavior5/5

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

Beyond annotations, the description discloses key behavior: it returns a job object, the download URL expires after 15 minutes, and job_status_url should be polled if the job is still running after about 100 seconds. It also states failure conditions for private/login-only content and refused music content, which is valuable operational context.

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?

The description is front-loaded and efficient for a tool with job polling, media-kind variants, and licensing restrictions. Some sentences repeat schema details, such as the kind-to-format mapping, but the overall structure is clear and most content earns its place.

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?

Given the tool's complexity and the absence of an output schema, the description is complete enough: it explains the job response shape, polling behavior, URL expiry, media-kind options, and all major restrictions. An agent has what it needs to call the tool and handle its result correctly.

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 all six parameters, including enum meanings and timestamp formats. The description reinforces the kind mapping and adds contextual constraints like the 12-hour video limit, but it does not add much parameter meaning beyond what the schema already provides.

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 states a specific verb and resource: 'Create a temporary download of a public post.' It also distinguishes the tool from its sibling by naming transcribe_video for spoken text, so an agent can tell what this tool is for without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

It gives explicit usage guidance: which kind value to use for each media type, when to use transcribe_video instead, the 12-hour video limit, and the permission/licensing constraints. It also explicitly says music is refused and warns not to work around the error.

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

estimate_youtube_earningsEstimate YouTube earningsA
Read-onlyIdempotent
Inspect

Estimate YouTube ad revenue for a channel from its monthly views. Returns the RPM range in USD, monthly and yearly USD ranges, the model used and a link to the interactive calculator. Ads only, no sponsorships or memberships. Use creator_monetization for the underlying RPM tables and program requirements.

NameRequiredDescriptionDefault
nicheNoContent niche, drives the ad rate. Ignored when shorts=true.education
shortsNotrue = views are YouTube Shorts views (pooled Shorts revenue, much lower RPM).
monthly_viewsYesViews per month, e.g. 250000.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds useful behavioral context beyond that: the output contents (RPM range, monthly/yearly ranges, model used, calculator link) and the scope boundary that sponsorships/memberships are excluded. It stops short of stating the model's assumptions or accuracy limits.

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?

Three short sentences, front-loaded with what it computes and returning before the scope caveat and sibling pointer. No filler, every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description carries the burden of describing the return value, which it does by enumerating RPM range, monthly/yearly USD ranges, model used, and calculator link. It leaves only minor gaps such as the assumptions behind the RPM estimate.

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% and all three parameters (niche, shorts, monthly_views) are documented in the schema itself, including the niche enum and the interaction ('Ignored when shorts=true'). The description adds no parameter-level detail beyond 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Estimate YouTube ad revenue for a channel') plus the key input ('from its monthly views'), so the agent knows exactly what the tool computes. It also delimits itself from the sibling creator_monetization, making the scope unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Explicitly names the alternative and the condition that selects it: 'Use creator_monetization for the underlying RPM tables and program requirements.' It also states a clear scope exclusion ('Ads only, no sponsorships or memberships'), so an agent knows when this tool is the wrong one.

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

get_video_infoRead video infoA
Read-onlyIdempotent
Inspect

Read the metadata of a public Instagram, YouTube, TikTok, X, Facebook or Pinterest post without downloading it. Returns platform, title, uploader, duration in seconds, available video heights, whether it has video/audio, gallery size, caption, hashtags and thumbnail URL. Use it first to check a link or pick a quality; use download_media to get the file and transcribe_video for the spoken words. Shares the website's limit of 30 requests per minute.

NameRequiredDescriptionDefault
urlYesLink to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/open-world, so the safety profile is covered. The description adds genuinely new behavioral context: a 30-requests-per-minute rate limit and the failure mode that private/login-only content fails. It stops short of describing auth requirements or pagination, keeping it at a 4 rather than a 5.

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?

Three sentences, front-loaded with the core action, then the return payload, then routing to alternatives and the rate limit. Every sentence carries distinct information with no padding.

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, the description compensates by enumerating the returned fields (platform, title, uploader, duration, heights, video/audio flags, gallery size, caption, hashtags, thumbnail). Combined with rate limits and failure modes, an agent has everything needed to call and interpret it.

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?

Only one parameter with 100% schema description coverage, so the schema already documents the URL, its example formats, and the private-post failure case. The description restates the platform set and failure condition but adds no syntax or format detail beyond the schema. Baseline 3 is appropriate.

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?

Specific verb+resource ('Read the metadata of a public Instagram, YouTube, TikTok, X, Facebook or Pinterest post') with the explicit qualifier 'without downloading it'. It then enumerates the returned fields, so the agent knows exactly what this tool yields versus its siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Explicitly states when to use it ('use it first to check a link or pick a quality') and names the two alternatives with their selection conditions: download_media to get the file, transcribe_video for the spoken words. Nothing is left to inference.

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

loudness_and_subtitlesLoudness and subtitle standardsA
Read-onlyIdempotent
Inspect

Look up delivery standards for audio and captions. topic=loudness_targets gives integrated loudness (LUFS) and true-peak limits for Spotify, Apple Music, YouTube, Netflix, Prime Video, EBU R128, ATSC A/85, podcasts and social video; subtitle_standards gives characters per line, lines, reading speed and timing rules (Netflix, BBC and others); frame_rates_timecode explains frame rates and drop-frame timecode. Every value sourced. Use it when mixing, exporting or captioning for a platform. Offline data, max 40 rows.

NameRequiredDescriptionDefault
nameNoOptional filter, case-insensitive substring across the row, e.g. Netflix, Spotify, podcast, 29.97.
topicNoWhich table to read.loudness_targets

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds behavioral context the annotations do not: 'Every value sourced' (provenance) and 'Offline data, max 40 rows' (a result cap), which materially affects how the agent should call and interpret it.

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 purpose, then topic-by-topic payoff, then a when-to-use clause, then operational limits — each sentence carries distinct information. It is dense and slightly long in the middle enumeration, but nothing is redundant.

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?

For a two-parameter, zero-required lookup with no output schema, the description supplies everything an agent needs: what each topic returns, the filter semantics, provenance, and a row cap. Return-value explanation is present even though no output schema exists to carry it.

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 description coverage is 100%, so the baseline is 3, but the description goes beyond 'Which table to read' by spelling out what each enum value actually yields — LUFS/true-peak targets, characters-per-line and reading-speed rules, frame-rate and drop-frame explanation. That adds real semantic value over the raw enum.

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 and resource ('Look up delivery standards for audio and captions') and enumerates exactly what each topic returns, so an agent knows the domain is audio/caption delivery specs rather than video specs. It never names the nearest sibling (social_video_specs) to draw the boundary explicitly, which keeps it from a 5.

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 a clear triggering context: 'Use it when mixing, exporting or captioning for a platform.' That maps the tool to concrete workflows, but there are no exclusions or named alternatives, so an agent facing both this and social_video_specs gets no explicit routing rule.

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

social_video_specsSocial video specs 2026A
Read-onlyIdempotent
Inspect

Look up 2026 upload specs for Instagram, TikTok, YouTube, Facebook, X, LinkedIn, Pinterest, Snapchat and Threads: aspect ratio, resolution, max length, file size, caption and hashtag limits, each row with official source links, plus recent spec changes. Use it before exporting or cropping a video for a platform. Offline data, no network calls; empty filters return every row.

NameRequiredDescriptionDefault
formatNoFormat filter, substring: Reels, Stories, Feed, Shorts, Long-form, Spotlight ... Empty = all formats of the platform.
platformNoPlatform name filter, case-insensitive substring: Instagram, TikTok, YouTube, Facebook, X, LinkedIn, Pinterest, Snapchat, Threads. Empty = all platforms.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false. The description adds value beyond that by explicitly stating 'Offline data, no network calls' and the empty-filter behavior ('empty filters return every row'), which is useful operational context an agent would otherwise have to infer.

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-loads the purpose in the first clause, then the usage cue and the offline/empty-filter behavior. The platform and field enumeration is dense but earns its place by scoping what data the tool returns.

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, yet the description describes the returned row contents (spec fields plus official source links and recent changes), the offline nature, and filter fallback behavior. Combined with 100%-covered parameters, an agent has everything needed to call and interpret this tool.

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 both the format and platform filters are already fully documented with substring semantics and empty-value behavior. The description adds no filter syntax or format detail beyond the schema, so it sits at the 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?

States a specific verb and resource ('look up 2026 upload specs') and enumerates exactly what is returned (aspect ratio, resolution, length, file size, caption/hashtag limits). This is clearly distinguishable from siblings like get_video_info or transcribe_video, which operate on actual videos rather than reference specs.

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 explicit when-to-use context: 'Use it before exporting or cropping a video for a platform.' It doesn't name an alternative tool or state when not to use it, but no sibling covers the same reference-data job, so the guidance is clear and actionable.

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

transcribe_videoTranscribe videoA
Idempotent
Inspect

Transcribe the speech of a public video, Reel, TikTok or Short with Whisper on the server. Returns the plain text plus segments with start and end times; waits up to 4 minutes, otherwise returns job_status_url to poll. Use it for captions, quotes, summaries or hooks; use get_video_info if you only need the written caption. Up to 20 minutes of audio per run, one transcription at a time server-wide, so cut long videos with start/end.

NameRequiredDescriptionDefault
endNoOptional end of the part to transcribe. Time as '1:05', '0:01:05' or seconds ('65').
urlYesLink to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail.
startNoOptional start of the part to transcribe. Time as '1:05', '0:01:05' or seconds ('65').
languageNoSpoken language as ISO 639-1 code (en, de, es, pt, fr, ja ...). Omit to auto-detect; setting it improves accuracy for short clips.
translate_to_englishNotrue returns an English translation instead of the original language.

TDQS

A4.9/5.0
Behavior5/5

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

The annotations only declare a generic safety profile (readOnlyHint=false, idempotentHint=true), but the description adds the operationally decisive facts: a 4-minute synchronous wait then a job_status_url polling fallback, a 20-minute audio cap, server-wide single-concurrency, and that private/login-only URLs fail. These are exactly the traits an agent needs and none are recoverable from the schema or annotations.

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?

Front-loaded with the action and return shape, then constraints, then routing to the alternative. Two dense sentences with no filler; every clause (wait/poll, audio cap, concurrency, private-content failure) carries distinct 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, the description compensates by describing the return payload (plain text plus segments with start/end times, or a job_status_url when the wait times out). Combined with the input limits and the sibling routing, an agent has everything needed to call and interpret this tool.

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, and the description goes beyond it by tying start/end to a concrete purpose (cutting videos that exceed the 20-minute limit) and by naming the target platforms for url. It still doesn't add meaning for language or translate_to_english, but the schema carries those well.

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 precise verb+resource ('Transcribe the speech of a public video, Reel, TikTok or Short') and names the underlying engine ('Whisper on the server'), so the agent knows exactly what operation runs. It also explicitly carves itself apart from the sibling get_video_info, which is the closest competitor in the toolset.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

Gives both positive use cases ('captions, quotes, summaries or hooks') and an explicit alternative with its selecting condition ('use get_video_info if you only need the written caption'). The 20-minute ceiling and the instruction to 'cut long videos with start/end' further tell the agent when this tool is and isn't appropriate.

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

youtube_channel_idFind YouTube channel IDA
Read-onlyIdempotent
Inspect

Resolve a YouTube channel to its permanent channel ID (UC...). Returns channel ID, name, handle, channel URL and the RSS feed URL. Use it when an API, embed, RSS reader or analytics tool needs the UC ID; any video link of the channel works too. Not for statistics like subscriber counts.

NameRequiredDescriptionDefault
queryYes@handle (e.g. @mkbhd), channel URL (youtube.com/@name, /c/, /user/) or any video or Shorts URL of the channel.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds value the annotations do not: the concrete return payload (ID, name, handle, channel URL, RSS feed URL) and the fact that any video link is a valid lookup, which matters given there is no output schema.

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?

Three short sentences in a deliberate order: what it does, what it returns, when to use it and when not to. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

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 so explicitly, and the usage boundary is stated. Minor gap: nothing about failure modes for an open-world lookup (unresolvable handle, ambiguous query), which an agent might want before committing to a call.

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% for the single `query` parameter and it already enumerates @handle, channel URL forms and video/Shorts URLs. The description's "any video link of the channel works too" restates rather than extends that, so the baseline 3 applies.

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 (resolve a YouTube channel to its permanent UC... ID) and enumerates exactly what comes back. It also sets a boundary that separates it from siblings such as estimate_youtube_earnings ("Not for statistics like subscriber counts").

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 concrete when-to-use triggers (an API, embed, RSS reader or analytics tool needs the UC ID) plus a when-not (statistics). No sibling tool is named explicitly as the alternative, so it stops short of a 5, but the routing signal is clear.

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.

  1. 9 tool updates
    • Changedcreator_monetization5 fields changed
      • addedInput schema / properties / country / description
        Added value: +"Optional country filter for rpm_by_country: ISO code (US, DE, IN) or English name."
      • addedInput schema / properties / niche / description
        Added value: +"Optional niche filter for rpm_by_niche and sponsorship_rates, substring: finance, tech, gaming, beauty, education ..."
      • addedInput schema / properties / platform / description
        Added value: +"Optional platform filter, substring: YouTube, TikTok, Instagram, Facebook, X, Snapchat ..."
      • addedInput schema / properties / topic / default
        Added value: +"programs"
      • addedInput schema / properties / topic / description
        Added value: +"Which table to read."
    • Changeddownload_media7 fields changed
      • changedInput schema / properties / at / description
        Previous value: -"timestamp for kind=frame"New value: +"Timestamp of the still for kind=frame. Time as '1:05', '0:01:05' or seconds ('65')."
      • addedInput schema / properties / end / description
        Added value: +"Optional end of the section, must be after start. Time as '1:05', '0:01:05' or seconds ('65')."
      • addedInput schema / properties / kind / default
        Added value: +"video"
      • addedInput schema / properties / kind / description
        Added value: +"What to save: video (MP4), audio (MP3), image (photo/carousel), thumbnail (cover image) or frame (one still, needs 'at')."
      • changedInput schema / properties / quality / description
        Previous value: -"max height, e.g. 1080"New value: +"Maximum video height in pixels, e.g. 720, 1080, 2160. Omit for the best available. Only for kind=video."
      • addedInput schema / properties / start / description
        Added value: +"Optional start of a section to cut. Time as '1:05', '0:01:05' or seconds ('65')."
      • addedInput schema / properties / url / description
        Added value: +"Link to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail."
    • Changedestimate_youtube_earnings6 fields changed
      • addedInput schema / properties / monthly_views / description
        Added value: +"Views per month, e.g. 250000."
      • addedInput schema / properties / monthly_views / minimum
        Added value: +0
      • addedInput schema / properties / niche / default
        Added value: +"education"
      • addedInput schema / properties / niche / description
        Added value: +"Content niche, drives the ad rate. Ignored when shorts=true."
      • addedInput schema / properties / shorts / default
        Added value: +false
      • addedInput schema / properties / shorts / description
        Added value: +"true = views are YouTube Shorts views (pooled Shorts revenue, much lower RPM)."
    • Changedget_video_info1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Public post URL"New value: +"Link to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail."
    • Changedloudness_and_subtitles3 fields changed
      • changedInput schema / properties / name / description
        Previous value: -"filter, e.g. Netflix, Spotify, 29.97"New value: +"Optional filter, case-insensitive substring across the row, e.g. Netflix, Spotify, podcast, 29.97."
      • addedInput schema / properties / topic / default
        Added value: +"loudness_targets"
      • addedInput schema / properties / topic / description
        Added value: +"Which table to read."
    • Changedsocial_video_specs2 fields changed
      • changedInput schema / properties / format / description
        Previous value: -"e.g. Reels, Shorts, Stories"New value: +"Format filter, substring: Reels, Stories, Feed, Shorts, Long-form, Spotlight ... Empty = all formats of the platform."
      • changedInput schema / properties / platform / description
        Previous value: -"e.g. Instagram, TikTok, YouTube (empty = all)"New value: +"Platform name filter, case-insensitive substring: Instagram, TikTok, YouTube, Facebook, X, LinkedIn, Pinterest, Snapchat, Threads. Empty = all platforms."
    • Changedtranscribe_video6 fields changed
      • addedInput schema / properties / end / description
        Added value: +"Optional end of the part to transcribe. Time as '1:05', '0:01:05' or seconds ('65')."
      • changedInput schema / properties / language / description
        Previous value: -"ISO code like en, de, es (optional, auto-detect if empty)"New value: +"Spoken language as ISO 639-1 code (en, de, es, pt, fr, ja ...). Omit to auto-detect; setting it improves accuracy for short clips."
      • addedInput schema / properties / start / description
        Added value: +"Optional start of the part to transcribe. Time as '1:05', '0:01:05' or seconds ('65')."
      • addedInput schema / properties / translate_to_english / default
        Added value: +false
      • addedInput schema / properties / translate_to_english / description
        Added value: +"true returns an English translation instead of the original language."
      • addedInput schema / properties / url / description
        Added value: +"Link to a public post or video, e.g. https://www.instagram.com/reel/..., https://www.tiktok.com/@user/video/..., https://youtu.be/... Private posts and login-only content fail."
    • Changedyoutube_channel_id1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"@handle, channel URL or video URL"New value: +"@handle (e.g. @mkbhd), channel URL (youtube.com/@name, /c/, /user/) or any video or Shorts URL of the channel."
    • Changedyoutube_thumbnail_trends1 field changed
      • changedInput schema / properties / niche / description
        Previous value: -"gaming, vlog, fitness, finance, food, tech, travel, education, podcast, beauty (empty = overview)"New value: +"One of gaming, vlog, fitness, finance, food, tech, travel, education, podcast, beauty. Empty = overview of all niches."
  2. 9 tool updates
    • First observedcreator_monetization
    • First observeddownload_media
    • First observedestimate_youtube_earnings
    • First observedget_video_info
    • First observedloudness_and_subtitles
    • First observedsocial_video_specs
    • First observedtranscribe_video
    • First observedyoutube_channel_id
    • First observedyoutube_thumbnail_trends

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Transforms social media links (TikTok, Instagram, YouTube) and videos into text context with transcription, OCR, and metadata for AI agents like Claude and Cursor.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables extracting video and post metadata, creator feeds, comments, direct media streams, and transcripts from YouTube, TikTok, Instagram, and Threads, with no API keys or logins required for most sources. Combines Faster-Whisper audio transcription with ffmpeg keyframe and carousel OCR so videos that have no captions or consist of screenshots and text slides still yield full text.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables agents to research and analyze public short-form video content on Instagram Reels, TikTok, and YouTube Shorts for trend spotting, creator research, competitive briefs, and content ideation.
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.