← Back to search

YouTube MCP

mrsknetwork Scanned 1d ago

Interact with public YouTube data via the official Data API v3

A
96.1 / 100

Versions

1.0.10latest
first seen Jun 5, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 19

list_video_comments
annotations: verified low

Fetch top-level comment threads for a video or all comments on a channel. Returns snippet.topLevelComment (authorDisplayName, textDisplay, likeCount, publishedAt) and replies.comments[] for threaded replies. Use search_terms to filter comments containing a specific phrase. Use page_token to paginate.

readOnlyHint true openWorldHint true
list_comment_replies
annotations: verified low

Fetch replies to a specific comment thread using parent_comment_id, or fetch individual comments by comma-separated comment_ids. Returns snippet (textDisplay, authorDisplayName, likeCount, publishedAt, parentId). Use page_token to paginate through large reply threads.

readOnlyHint true openWorldHint true
search_content
annotations: verified low

Search YouTube for videos, channels, or playlists. Returns items[].id (videoId/channelId/playlistId) and items[].snippet (title, description, thumbnails, channelTitle, publishedAt). Use content_type to filter by resource type. Use page_token from a previous response to paginate additional pages.

readOnlyHint true openWorldHint true
list_subscriptions
annotations: verified low

List a channel's public subscriptions by channel_id (requires API Key), or list your own subscriptions with mine=true (requires OAuth). Returns snippet (title, description, resourceId.channelId) and contentDetails (totalItemCount, newItemCount). Use for_channel_id to check if a channel is subscribed to specific channels. Use page_token to paginate.

readOnlyHint true openWorldHint true
list_channel_members
annotations: verified low

List current paying members of the authenticated user's channel. Requires OAuth with the YouTube channel membership scope and an active memberships program on the channel. Returns snippet (memberDetails.channelId, creatorChannelId, membershipsDetails.highestActiveLevel.displayName).

readOnlyHint true openWorldHint true idempotentHint true destructiveHint false
list_membership_levels
annotations: verified low

List the membership tier pricing levels configured for the authenticated user's channel. Requires OAuth. Returns items[].snippet.levelDetails.displayName for each tier (e.g., 'Member', 'Super Fan'). Use alongside list_channel_members to understand which tier each member belongs to.

readOnlyHint true openWorldHint true idempotentHint true destructiveHint false
revoke_oauth_token
annotations: verified low

Revoke the stored OAuth token and sign the user out of the YouTube MCP server. Calls Google's token revocation endpoint, deletes the local token file (~/.ytmcp_tokens.json), and clears the in-process auth cache. After revoking, any tool that requires OAuth will prompt the user to re-authenticate. Requires OAuth.

readOnlyHint false openWorldHint false idempotentHint true destructiveHint false
list_supported_languages
annotations: verified low

List all languages supported by YouTube (e.g., for caption and UI localization). Returns items[].snippet.hl (language code) and items[].snippet.name (human-readable name). Optionally pass language_code to get names localized in that language.

readOnlyHint true openWorldHint true idempotentHint true
list_supported_regions
annotations: verified low

List all geographic regions supported by YouTube content targeting. Returns items[].snippet.gl (region code, e.g., 'US') and items[].snippet.name. Use region codes with list_video_categories or search_content to geo-filter results.

readOnlyHint true openWorldHint true idempotentHint true
get_channel_metadata
annotations: verified low

Fetch channel profile, statistics, and content details by channel ID or @handle. Returns snippet (title, description, country, thumbnails), statistics (subscriberCount, videoCount, viewCount), and contentDetails (uploads playlist ID - use with list_playlist_items to browse all channel videos). Accepts either channel_ids (comma-separated) or handle (e.g., '@MrBeast').

readOnlyHint true openWorldHint true
list_channel_activities
annotations: verified low

Get a chronological feed of a channel's recent actions such as uploads, playlist additions, and recommendations. Returns snippet (type, publishedAt, title) and contentDetails (upload.videoId, playlist.playlistId). Useful for tracking what a channel has posted recently. Use page_token to paginate.

readOnlyHint true openWorldHint true
list_channel_sections
annotations: verified low

Get the shelf and section layout of a YouTube channel page (e.g., 'Featured Videos', 'Popular Uploads', 'Single Playlist'). Returns snippet (title, type, style, position) and contentDetails (playlists[], channels[]). Useful for understanding how a channel organizes and surfaces its content.

readOnlyHint true openWorldHint true
list_playlists
annotations: verified low

List playlists belonging to a channel or fetch specific playlists by ID. Returns snippet (title, description, channelId, thumbnails) and contentDetails (itemCount). Use list_playlist_items with the returned playlist id to browse all videos inside a playlist. Use page_token to paginate.

readOnlyHint true openWorldHint true
list_playlist_items
annotations: verified low

List video entries inside a YouTube playlist in order. Returns snippet (title, description, position, videoOwnerChannelTitle, thumbnails) and contentDetails (videoId). Use the videoId values with get_video_metadata or get_video_transcript for further detail. Use page_token to walk through all items.

readOnlyHint true openWorldHint true
get_video_metadata
annotations: verified low

Fetch full metadata for one or more YouTube videos by ID, or retrieve the most popular videos chart. Returns snippet (title, description, channelId, tags, publishedAt), contentDetails (duration in ISO 8601, definition, caption), and statistics (viewCount, likeCount, commentCount). Provide comma-separated video_ids for lookup, or chart_type='mostPopular' for trending videos.

readOnlyHint true openWorldHint true
list_trending_videos
annotations: verified low

Fetch the currently most popular videos on YouTube for a given region and optional category. Returns snippet (title, channelTitle, publishedAt), contentDetails (duration), and statistics (viewCount, likeCount, commentCount) for each video. Use list_video_categories to discover valid category_id values for your region. Use page_token to paginate.

readOnlyHint true openWorldHint true idempotentHint true
list_video_categories
annotations: verified low

List standard YouTube video category names and IDs for a given region (e.g., 'US', 'IN'). Returns items[].id and items[].snippet.title. Use the returned category IDs with search_content or list_trending_videos to filter content by category.

readOnlyHint true openWorldHint true idempotentHint true
list_video_captions
annotations: verified low

List available caption track metadata for a video (requires API Key or OAuth). Returns items[].snippet with language (e.g., 'en'), name, trackKind ('standard', 'asr' for auto-generated, 'forced'), and lastUpdated. Use this to discover what caption languages exist for a video; use get_video_transcript to download the actual text.

readOnlyHint true openWorldHint true
get_video_transcript
annotations: verified low

Download the full spoken transcript of a YouTube video as clean plain text using yt-dlp - no API credentials required. Tries manual English captions first (or specified language_code), then auto-generated, then falls back to the first available language. Returns concatenated plain text plus metadata about which language and caption type was used. Ideal for content research without consuming YouTube API quota.

readOnlyHint true openWorldHint true

Permissions 3

network medium
Server uses network capabilities via: fetch()
filesystem low
Server uses filesystem capabilities via: fs sync ops
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 48

info
Tool 'list_video_comments' annotations are consistent annotation_checker · 80%
info
Tool 'list_comment_replies' annotations are consistent annotation_checker · 80%
info
Tool 'search_content' annotations are consistent annotation_checker · 80%
info
Tool 'list_subscriptions' annotations are consistent annotation_checker · 80%
info
Tool 'list_channel_members' annotations are consistent annotation_checker · 80%
info
Tool 'list_membership_levels' annotations are consistent annotation_checker · 80%
info
Tool 'revoke_oauth_token' annotations are consistent annotation_checker · 80%
info
Tool 'list_supported_languages' annotations are consistent annotation_checker · 80%
info
Tool 'list_supported_regions' annotations are consistent annotation_checker · 80%
info
Tool 'get_channel_metadata' annotations are consistent annotation_checker · 80%
info
Tool 'list_channel_activities' annotations are consistent annotation_checker · 80%
info
Tool 'list_channel_sections' annotations are consistent annotation_checker · 80%
info
Tool 'list_playlists' annotations are consistent annotation_checker · 80%
info
Tool 'list_playlist_items' annotations are consistent annotation_checker · 80%
info
Tool 'get_video_metadata' annotations are consistent annotation_checker · 80%
info
Tool 'list_trending_videos' annotations are consistent annotation_checker · 80%
info
Tool 'list_video_categories' annotations are consistent annotation_checker · 80%
info
Tool 'list_video_captions' annotations are consistent annotation_checker · 80%
info
Tool 'get_video_transcript' annotations are consistent annotation_checker · 80%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
info
package.json metadata manifest_parser · 100%
info
Tool: list_video_comments manifest_parser · 85%
info
Tool: list_comment_replies manifest_parser · 85%
info
Tool: search_content manifest_parser · 85%
info
Tool: list_subscriptions manifest_parser · 85%
info
Tool: list_channel_members manifest_parser · 85%
info
Tool: list_membership_levels manifest_parser · 85%
info
Tool: revoke_oauth_token manifest_parser · 85%
info
Tool: list_supported_languages manifest_parser · 85%
info
Tool: list_supported_regions manifest_parser · 85%
info
Tool: get_channel_metadata manifest_parser · 85%
info
Tool: list_channel_activities manifest_parser · 85%
info
Tool: list_channel_sections manifest_parser · 85%
info
Tool: list_playlists manifest_parser · 85%
info
Tool: list_playlist_items manifest_parser · 85%
info
Tool: get_video_metadata manifest_parser · 85%
info
Tool: list_trending_videos manifest_parser · 85%
info
Tool: list_video_categories manifest_parser · 85%
info
Tool: list_video_captions manifest_parser · 85%
info
Tool: get_video_transcript manifest_parser · 85%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (5) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
low
Permission: filesystem access detected permission_analyzer · 90%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 199 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%