YouTube MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| YOUTUBE_MCP_DIR | No | Folder containing the OAuth client JSON and token.json | ~/.config/youtube-mcp-server |
| YOUTUBE_CONFIRM_MODE | No | How replies and moderation are confirmed: auto, elicitation, or token | auto |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| channelB | Авторизованный канал: id, название, @handle, подписчики, просмотры, число видео. |
| videosA | Последние загрузки канала, включая Shorts, от новых к старым: название, дата публикации, длительность в секундах, доступ (public/unlisted/private), просмотры, лайки и число комментариев. |
| commentsB | Ветки комментариев к видео канала, от новых к старым, с ответами и названием видео. mine=true помечает сообщения самого канала. Ответить в ветку — инструментом reply по её thread_id. |
| comment_threadC | Одна ветка комментариев со всеми ответами. |
| replyA | Ответить в ветку комментариев от имени канала (50 единиц квоты). Перед публикацией пользователь видит предпросмотр и подтверждает его. |
| edit_replyA | Заменить текст комментария или ответа самого канала (50 единиц квоты). Перед изменением пользователь видит старый и новый текст и подтверждает замену. |
| moderateA | Сменить статус модерации комментариев зрителей (50 единиц квоты за вызов). Перед изменением пользователь видит список комментариев и действие и подтверждает его. |
| analyticsA | Готовый отчёт YouTube Analytics по каналу или одному видео. Данные отстают на 2–3 дня. |
| analytics_queryA | Произвольный запрос reports.query к YouTube Analytics API v2 по каналу — для того, чего нет в готовых отчётах analytics. |
| confirm_actionA | Выполнить подготовленную операцию. Вызывайте ТОЛЬКО после того, как пользователь увидел preview и явно согласился выполнить именно эту операцию. |
| cancel_actionA | Отменить подготовленную операцию, если пользователь отказался. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct resource or action: channel info, video list, comment threads (list vs. single), reply/edit/moderate actions, analytics (ready vs. custom), and confirmation meta-actions. Boundaries between similar tools (comments vs. comment_thread, analytics vs. analytics_query, reply vs. edit_reply) are clearly defined in descriptions.
All names use consistent snake_case, and there is a logical split: nouns for retrieval (channel, videos, comments, analytics) and verbs for mutations (reply, edit_reply, moderate). Minor deviations exist, such as confirm_action/cancel_action using an _action suffix while other actions do not, and inconsistent pluralization (videos/comments plural vs. channel/analytics singular).
11 tools is well-scoped for a YouTube channel management and analytics server. Each tool earns its place, covering core read, write, and meta-operation needs without excessive overlap or missing obvious utilities.
The surface covers channel overview, recent uploads, comment listing/threading, replying/editing/moderating comments, and both ready-made and custom analytics. Minor gaps remain: no way to retrieve a specific video by ID (only recent uploads), no video search, and no comment deletion tool, but core workflows are supported.