Downloads a YouTube video (video+audio) to the local filesystem. Returns the file path.
AI agents invoke download_video to trigger actions in Youtube. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.
This tool fetches external content from YouTube and writes it to the local filesystem. It triggers an external network operation and causes a side effect (file creation on disk). While it is not purely destructive, it executes a download operation with real-world consequences: consuming disk space, bandwidth, and potentially downloading copyrighted material.
From the tool's definition 'Downloads a YouTube video (video+audio) to the local filesystem. Returns the file path.'
Documented attack patterns abuse exactly the kind of access download_video gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and Youtube, and nothing reaches the server without passing your rules. This is the rule we recommend for download_video:
{
"version": "1",
"default": "deny",
"tools": {
"download_video": {
"limits": [
{
"counter": "download_video_rate",
"window": "minute",
"max": 10,
"scope": "grant"
}
]
}
}
} download_video stays usable, but rate-capped — a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Downloads a YouTube video (video+audio) to the local filesystem. Returns the file path. It is categorised as a Execute tool in the Youtube MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Youtube MCP server in PolicyLayer and add a rule for download_video: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Youtube. Nothing to install.
download_video is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the download_video rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for download_video. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
download_video is provided by the Youtube MCP server (umbertotancorre/youtube-mcp-cli). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from Youtube, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.
Free to start. No card required.
11 Youtube tools catalogued and risk-classified — across an index of 43,000+ MCP servers.