YouTube Runtime Skill
SkillSearchOperate a connected YouTube account through the YouTube MCP. Use for video or channel search, video details, comments, caption-track metadata, resumable video uploads from public HTTPS URLs, owned-video metadata updates, ratings, and playlists. Use a verified Chrome route for Studio-only controls.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the YouTube Runtime Skill skill
What this skill tells your AI
The instructions your AI receives, as published by manor-os/manor-ai in packages/core/ai/skills/mcp_youtube/SKILL.md and read by ahel’s review.
Use this skill to operate YouTube through the YouTube MCP (mcp__youtube__*) — public search/read plus authenticated actions on the user's own channel.
Connection
Authenticate through Google OAuth with the YouTube scopes supplied by the Integration. On an auth or scope error, stop and ask the user to reconnect. Call get_channel(mine=true) for the authenticated user's channel; never imply that an empty get_channel() call selects it.
Parallel Route Boundary
- This built-in Skill is the default guidance for the YouTube MCP. It is not a Marketplace install and appears only when the YouTube MCP surface is connectable.
- The YouTube MCP and Manor local Chrome are parallel capability routes. Use this MCP only when its current tools support the requested operation; otherwise hand control back to the parent workflow before any side effect so it can try the Chrome route.
- The optional
youtube-studio-publisherMarketplace Skill adds a professional Chrome/Studio workflow. If it is unavailable, recommend installation without blocking: directchromeSkill operation or a capable YouTube MCP route may still proceed. - This MCP includes a real resumable
upload_videotool for video files reachable at a public standard-port HTTPS URL. Local-only file selection, thumbnails, caption-file upload, Checks, Premiere, and other Studio-only controls still need a verified Chrome/Studio route. - Execute one write on one route. Before a side effect, the parent may choose another verified route. After a write starts or its result is uncertain, do not retry it through Chrome until the original MCP outcome is verified not to have occurred.
Core Tools
Read / search:
search(reqquery),get_video(reqvideo_id),get_channel(one ofmine=true,channel_id, orhandle),list_comments(reqvideo_id),list_captions(reqvideo_id),list_my_videos.
Write (high-impact — see Guardrails):
upload_video(reqvideo_url,title; private by default; optional description/tags/category/privacy/Made for Kids/schedule/subscriber notification).post_comment(reqvideo_id,text),reply_comment(reqparent_id,text),delete_comment(reqcomment_id).rate_video(reqvideo_id; like/dislike/clear).update_video(reqvideo_id; title/description/tags — your own videos).create_playlist(reqtitle),add_to_playlist(reqplaylist_id,video_id).
Common Recipes
Research a topic / video
searchwith aquery. 2.get_videofor stats;list_commentsfor audience sentiment.
Update your video's metadata
list_my_videos→ thevideo_id. 2.get_videoto read current title/description. 3. Confirm the new metadata with the user. 4.update_video.
Upload a video
- Verify that
video_urlis the exact approved public HTTPS asset. 2. Confirm title, description, tags, category, Made for Kids answer, visibility, schedule, and subscriber notification. 3. Default toprivacy=privateandnotify_subscribers=falsewhen the user has not explicitly approved broader release. 4. Callupload_videoonce and retain the returned video ID.
Comment on a video
- Draft the
text. 2. Confirm (public action). 3.post_commentorreply_comment.
Guardrails
- Reads do not authorize writes. Before each write, show the exact target and payload and obtain the required user/runtime approval.
upload_videotransfers a full media file and creates a channel video: confirm the exact source URL and upload payload immediately before the call. Never infer the Made for Kids answer. Private upload approval does not authorize Unlisted/Public visibility or subscriber notification.post_comment/reply_commentare public: confirm the exact text and video or parent comment before posting; never repeat a failed-looking call without verifying whether it succeeded.update_videochanges live public metadata: read the current video first, confirm only the exact fields changing, and do not replace a full description unless requested.delete_commentis permanent: confirm the exact comment ID and ownership context immediately before deletion.rate_videochanges the account's public rating: use only when the user explicitly asks for the exact video and rating.- Playlist writes affect the user's channel: confirm title, privacy, playlist ID, and video ID as applicable. Creating a private playlist does not authorize making it public later.
- Execute one write through one route. If a write result is uncertain, verify the original MCP state before retrying through MCP or Chrome.
Edge Cases & Errors
- Quota: the YouTube API is quota-limited; batch reads and avoid redundant
searchcalls. update_video/delete_commentonly work on content you own — a permission error there is expected for others' content.get_channelresolves bychannel_id,handle, ormine=true; if none is supplied, correct the call instead of claiming a channel result.- Auth/scope errors → stop and ask the user to reconnect.
Signals
- GitHub stars
- 171
- Forks
- 52
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
mcp-youtube- Source
- github.com/manor-os/manor-ai