YouTube

Search, video, channel, playlist, comments, trending and related items from YouTube. Hosted by the p

사용해야 할까요

품질 및 안전성

B
설명 품질
88%
스키마 완전성
71%
이름 품질
81%
오염 위험
100%
권한 일치
90%
프로토콜 준수
100%

발견 사항 (6)

  • LOWTool 'youtube_home_feed' description lacks action verbyoutube_home_feed에서
  • LOWTool 'youtube_trending' description lacks action verbyoutube_trending에서
  • LOWTool 'youtube_hype' description lacks action verbyoutube_hype에서
  • LOWTool 'youtube_hashtag' description lacks action verbyoutube_hashtag에서
  • LOWTool 'connect' description lacks action verbconnect에서
  • LOWTool 'youtube_resolve_url' suggests web access but openWorldHint=falseyoutube_resolve_url에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~5,395토큰 (도구 정의)
~759 B일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 4.21%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "youtube-mcp": {
      "url": "https://api.mcp.ai/p_youtube"
    }
  }
}

원격 엔드포인트

https://api.mcp.ai/p_youtubestreamable-http

할 수 있는 일

도구 목록

도구 (35)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢youtube_home_feed(geo, lang, token)

YouTube home feed (anonymous, geo/lang aware).

입력 스키마

{
  "type": "object",
  "properties": {
    "geo": {
      "type": "string"
    },
    "lang": {
      "type": "string"
    },
    "token": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_trending(geo, type, lang)

Trending videos by region.

입력 스키마

{
  "type": "object",
  "properties": {
    "geo": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "lang": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_search(query, type, sort_by, duration, upload_date, ...)

Search videos, channels, playlists.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "sort_by": {
      "type": "string"
    },
    "duration": {
      "type": "string"
    },
    "upload_date": {
      "type": "string"
    },
    "geo": {
      "type": "string"
    },
    "lang": {
      "type": "string"
    },
    "token": {
      "type": "string"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_resolve_url(url)

Resolve a YouTube URL or share link to its videoId / pageType.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_download(id, cgeo, ids)

Stream/download metadata for a video (formats, audio/video URLs, status). Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "cgeo": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_hype(geo, lang, token)

YouTube Hype: viral / hyped videos feed.

입력 스키마

{
  "type": "object",
  "properties": {
    "geo": {
      "type": "string"
    },
    "lang": {
      "type": "string"
    },
    "token": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_hashtag(tag, type, token)

Posts under a hashtag (without leading #).

입력 스키마

{
  "type": "object",
  "properties": {
    "tag": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "token": {
      "type": "string"
    }
  },
  "required": [
    "tag"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_playlist(id, token, ids)

Playlist items by playlist id. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_comments(id, sort_by, token, ids)

Top-level comments thread for a video. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "sort_by": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_video_related(id, token, ids)

Related videos for a given video id. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_home(id, forUsername, token, ids)

Channel home page payload (featured shelves + meta). Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_about(id, forUsername, ids)

Channel description, links, country, subscriber count, banner. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_videos(id, forUsername, sort_by, token, ids)

Channel videos tab. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "sort_by": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_shorts(id, forUsername, token, ids)

Channel shorts tab. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_playlists(id, forUsername, sort_by, token, ids)

Channel playlists tab. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "sort_by": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_community(id, forUsername, token, ids)

Community posts tab for a channel. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_featured(id, forUsername, token, ids)

Featured channels listed on a channel. Note: YouTube deprecated the featured-channels tab; this route exists upstream but typically returns an empty/error envelope. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_store(id, forUsername, ids)

Store / merch shelf for a channel. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_search(id, forUsername, query, token, ids)

Search a channel's own videos and playlists. Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "query": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_videos_post(id, forUsername, params, token, ids)

POST variant of channel videos. Requires a `params` continuation token captured from a prior GET response — used to fetch deeper pages or filtered shelves that the GET surface can't address. Skip in daily smoke (no synthetic params). Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "params": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "params"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_channel_shorts_post(id, forUsername, params, token, ids)

POST variant of channel shorts. Requires a `params` continuation token from a prior GET response. Skip in daily smoke (no synthetic params). Bulk support: accepts ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "forUsername": {
      "type": "string"
    },
    "params": {
      "type": "string"
    },
    "token": {
      "type": "string"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "params"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_api(path, method, query, body)

Escape hatch: call any path on the YouTube backend. Pass path (e.g. /search), optional method (default GET), query map, and JSON body for POST. Prefer the named youtube_* tools when available; this is for routes not in the manifest.

입력 스키마

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET",
        "HEAD",
        "POST",
        "PUT",
        "PATCH",
        "DELETE"
      ]
    },
    "query": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          }
        ]
      }
    },
    "body": {}
  },
  "required": [
    "path"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_my_channels(account)

Lista os canais do YouTube conectados (os que podem responder e moderar comentários), com id, nome e estatísticas. Use antes de responder para confirmar de qual canal a resposta vai sair. Custa 1 unidade da cota.

입력 스키마

{
  "type": "object",
  "properties": {
    "account": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢youtube_comment_threads(video_id, channel_id, order, moderation_status, search_terms, ...)

Comentários de TOPO pela API oficial, com as respostas já existentes. É daqui que sai o `parent_id` usado em youtube_comment_reply (o id do thread), então prefira esta tool a youtube_comments quando a intenção for responder. Sem `video_id`, traz os comentários do canal conectado inteiro (bom para 'o que ainda não respondi'). Custa 1 unidade da cota. Bulk support: accepts video_ids, channel_ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "video_id": {
      "type": "string"
    },
    "channel_id": {
      "type": "string"
    },
    "order": {
      "type": "string",
      "enum": [
        "time",
        "relevance"
      ]
    },
    "moderation_status": {
      "type": "string",
      "enum": [
        "heldForReview",
        "likelySpam",
        "published"
      ]
    },
    "search_terms": {
      "type": "string"
    },
    "max_results": {
      "type": "number"
    },
    "page_token": {
      "type": "string"
    },
    "account": {
      "type": "string"
    },
    "video_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "channel_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪youtube_comment_reply(replies, account)

Responde comentários como o canal conectado. Aceita VÁRIAS respostas numa chamada (`replies`), e um item que falha não derruba os outros. `parent_id` tem que ser o id de um comentário de TOPO (campo `id` do thread devolvido por youtube_comment_threads), nunca o id de uma resposta. Cada resposta consome 50 unidades da cota da API do YouTube, então responda o que importa em vez de varrer o canal.

입력 스키마

{
  "type": "object",
  "properties": {
    "replies": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "parent_id": {
            "type": "string"
          },
          "text": {
            "type": "string"
          }
        },
        "required": [
          "parent_id",
          "text"
        ]
      }
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "replies"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡youtube_comment_post(video_id, text, account, video_ids)

Publica um comentário NOVO de topo em um vídeo, como o canal conectado. Para responder alguém, use youtube_comment_reply. Custa 50 unidades da cota. Bulk support: accepts video_ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "video_id": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "account": {
      "type": "string"
    },
    "video_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "video_id",
    "text"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡youtube_comment_update(comment_id, text, account, comment_ids)

Edita o texto de um comentário ou resposta PUBLICADO pelo canal conectado (corrigir um erro sem apagar e repostar, o que perderia as curtidas e o encadeamento). Só funciona em comentário de autoria do próprio canal. Custa 50 unidades da cota. Bulk support: accepts comment_ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "comment_id": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "account": {
      "type": "string"
    },
    "comment_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "comment_id",
    "text"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪youtube_comment_moderate(comment_ids, status, ban_author, account)

Modera comentários no canal conectado: publica (`published`), segura para revisão (`heldForReview`) ou rejeita (`rejected`). `ban_author` só é aceito junto de `rejected`. Vale apenas para comentários em vídeos do próprio canal. Custa 50 unidades por comentário.

입력 스키마

{
  "type": "object",
  "properties": {
    "comment_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "status": {
      "type": "string",
      "enum": [
        "published",
        "heldForReview",
        "rejected"
      ]
    },
    "ban_author": {
      "type": "boolean"
    },
    "account": {
      "type": "string"
    }
  },
  "required": [
    "comment_ids",
    "status"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴youtube_comment_delete(comment_id, account, comment_ids)

Apaga DEFINITIVAMENTE um comentário (não tem desfazer). Só funciona em comentário do próprio canal ou em vídeo do canal conectado. Para esconder sem apagar, prefira youtube_comment_moderate com `rejected`. Custa 50 unidades da cota. Bulk support: accepts comment_ids for batched execution.

입력 스키마

{
  "type": "object",
  "properties": {
    "comment_id": {
      "type": "string"
    },
    "account": {
      "type": "string"
    },
    "comment_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "comment_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢show_version

Show the current MCP platform and adapter versions.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡report_bug(message, context, conversation)

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

입력 스키마

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string"
    },
    "context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    }
  },
  "required": [
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢connect

Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢toolkit_info

Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡marketplace(action, query, mcp_id, limit, tier_slug, ...)

The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.

입력 스키마

{
  "type": "object",
  "properties": {
    "action": {
      "default": "search",
      "type": "string",
      "enum": [
        "search",
        "describe",
        "install",
        "uninstall",
        "subscribe",
        "cancel",
        "resume",
        "report_bug",
        "request_mcp",
        "list_tools",
        "invoke",
        "search_prompts",
        "get_prompt",
        "publish_prompt"
      ]
    },
    "query": {
      "default": "",
      "type": "string"
    },
    "mcp_id": {
      "default": "",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "type": "number"
    },
    "tier_slug": {
      "default": "",
      "type": "string"
    },
    "immediate": {
      "default": false,
      "type": "boolean"
    },
    "cancel_reason": {
      "type": "string",
      "enum": [
        "too_expensive",
        "missing_features",
        "switched_service",
        "unused",
        "customer_service",
        "too_complex",
        "low_quality",
        "other"
      ]
    },
    "cancel_comment": {
      "default": "",
      "type": "string"
    },
    "message": {
      "default": "",
      "type": "string"
    },
    "report_context": {
      "default": "",
      "type": "string"
    },
    "conversation": {
      "default": "[]",
      "type": "string"
    },
    "request_name": {
      "default": "",
      "type": "string"
    },
    "request_details": {
      "default": "",
      "type": "string"
    },
    "tool_id": {
      "default": "",
      "type": "string"
    },
    "arguments": {
      "default": "{}",
      "type": "string"
    },
    "prompt_slug": {
      "default": "",
      "type": "string"
    },
    "prompt_vars": {
      "default": "{}",
      "type": "string"
    },
    "prompt_category": {
      "default": "",
      "type": "string"
    },
    "prompt_tool": {
      "default": "",
      "type": "string"
    },
    "prompt_title": {
      "default": "",
      "type": "string"
    },
    "prompt_description": {
      "default": "",
      "type": "string"
    },
    "prompt_body": {
      "default": "",
      "type": "string"
    },
    "prompt_targets": {
      "default": [],
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "claude",
          "chatgpt",
          "cursor",
          "lovable"
        ]
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡authenticate(token)

MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.

입력 스키마

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 35개
검증됨버전이 기록되지 않음도구 35개