Skip to main content
Glama

List channel videos

list_channel_videos
Read-only

List a creator's items, newest first by default. Accepts a YouTube channel (@handle, UC… id, or URL), a TikTok profile URL (tiktok.com/@user), or an Instagram profile URL. On YouTube, tab picks the videos, shorts or live tab, sort orders it, and query searches inside the channel. Every row's url can be passed straight to get_transcript. To read what the videos say rather than only their titles, set transcripts to N: the caption transcripts of the first N rows (at most 5) come back in the same call.

Input Schema

NameRequiredDescriptionDefault
tabNoYouTube only. videos (default), shorts, or live (streams, past and upcoming). A tab the channel does not have returns no rows and a notice saying so. For playlists or podcasts, use list_channel_playlists.videos
sortNoYouTube only. newest (default), popular, or oldest. popular is YouTube's Popular order, most viewed first, and leaves out videos with no views.newest
limitNoMax results to return (1–50). Defaults to 5.
queryNoYouTube only. Search inside the channel and return its matching videos. Leave tab and sort unset.
channelYesYouTube handle/ID/URL, or a TikTok or Instagram profile URL.
transcriptsNoAlso return the caption transcripts of the first N videos (1-5), each cut at 12,000 characters. Captions only: a video without captions (most Instagram reels) comes back with outcome no_transcript, and get_transcript transcribes its audio. 1 credit per transcript delivered, on top of the listing's; failures are free.

Output Schema

NameRequiredDescriptionDefault
countNoNumber of videos returned.
noticeNoWhy a list is empty or may be incomplete, when the source says: e.g. "This channel has no Live tab."
videosNoMatching videos with ids, titles, and URLs.
balanceNoRemaining credit balance after this call, when known.
creditsSpentNoCredits charged for this call (0 on failure or for admins).
creditsNoticeNoCredits words for the user, with the link that acts on them: why the call was refused for credits, or a note once the balance runs low. Pass it on to the user.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and destructiveHint=false, so safety is covered; the description adds real behavioral context beyond them: default newest-first ordering, that transcripts come back in the same call, and the cap of 5 rows. It does not mention the credit cost of transcripts or the 12,000-character truncation, but those live in the schema.

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?

Four sentences, front-loaded with the core listing behavior and platform acceptance, then edge behavior (tab/sort/query) and finally the transcripts option. Dense but every clause carries functional information; 'creator's items' is the only slightly loose phrasing.

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?

An output schema exists, so return values need no explanation, and annotations cover safety. The description covers multi-platform input, per-platform parameter applicability, and the optional transcript augmentation, which is sufficient for an agent to invoke it correctly. Only the sibling-routing for playlists and channel search is left to the schema.

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 explains tab, sort, query, limit and transcripts in detail (including enum behavior and edge cases). The description restates the roles compactly (tab picks videos/shorts/live, sort orders, query searches inside the channel) but adds only the cross-tool hint about row urls, which is the baseline-plus level for full coverage.

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 ('List a creator's items, newest first by default') and enumerates the accepted channel identifier forms across YouTube, TikTok, and Instagram. It is easy to distinguish from get_transcript and list_playlist_videos, though the playlist/podcast split is only made in the schema's tab description, not in the description text itself.

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?

'To read what the videos say rather than only their titles, set transcripts to N' gives an explicit use condition and an alternative path (get_transcript for audio-only videos). It also flags the cross-tool flow ('Every row's url can be passed straight to get_transcript'). It does not state when to prefer this over list_channel_playlists or search_videos, which are siblings an agent must choose between.

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.