yutu
A fully functional MCP server and CLI for YouTube
claude mcp add --transport stdio eat-pray-ai-yutu docker run -i -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest
How to use
yutu is a CLI-powered MCP server and AI agent designed to automate YouTube workflows, including uploading videos, optimizing metadata, managing comments, handling playlists, and managing channel branding. As an MCP server, it exposes a set of skills and actions that can be composed into prompts or workflows within the MCP ecosystem. To run it via Docker, pull the image and start the container; you can then interact with the server through MCP-compatible clients or tooling that communicates with the running MCP server on the exposed port (default 8216). The included CLI capabilities help you authenticate and control YouTube-related tasks programmatically, while the Go-based engine provides the server-side logic for orchestrating actions and responses. Tools available through yutu focus on automating the end-to-end YouTube lifecycle, from content ingestion and metadata optimization to comment moderation and audience engagement enhancements.
Once running, you can leverage the server’s skills by issuing MCP-style requests to trigger tasks such as video upload automation, title/description optimization, thumbnail selection, commenting workflows, playlist management, and branding updates. The server is designed to work with your YouTube project credentials (OAuth client secret and tokens), which you supply via the credential and cache token files described in the prerequisites. Environment variables can be used to customize default file locations and log verbosity, aligning the server with your deployment environment.
How to install
Prerequisites:
- Docker installed and running (recommended) or go tooling if you prefer a native build
- Access to a Google Cloud project with YouTube Data API v3 enabled and OAuth credentials as described in the prerequisites of the README
- A working YouTube credential file named client_secret.json and a cached token file named youtube.token.json unless you override via environment variables
Installation options:
Option 1: Docker (recommended for quick start)
- Pull and run the image:
docker pull ghcr.io/eat-pray-ai/yutu:latest
docker run --rm -i -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest
Option 2: Native Go build (Gopher method referenced in docs)
- Ensure Go is installed
- Install the latest release of yutu:
go install github.com/eat-pray-ai/yutu@latest
- Run the binary (adjust path to your Go bin folder if needed):
yutu
Option 3: Other installation methods (as described in the docs)
- Linux/macOS installer script:
curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash
- Homebrew (macOS):
brew install yutu
- Windows via winget:
winget install yutu
Note: If you want to run via Docker, ensure client_secret.json is in the current directory or mount the path accordingly and expose port 8216 for MCP communications.
Additional notes
Environment variables you may want to configure for smoother operations:
- YUTU_CREDENTIAL: path, base64, or JSON of OAuth client secret (default: client_secret.json)
- YUTU_CACHE_TOKEN: path, base64, or JSON of cached OAuth token (default: youtube.token.json)
- YUTU_ROOT: root directory for file resolution (default: current working directory)
- YUTU_LOG_LEVEL: log level (DEBUG, INFO, WARN, ERROR) (default: INFO)
Common issues:
- Ensure Google OAuth credentials are valid and have the YouTube Data API v3 enabled for your project
- If the server cannot access YouTube APIs, verify network access and that the OAuth tokens are correctly generated and accessible
- When using Docker, bind the correct port and ensure client_secret.json and youtube.token.json are accessible to the container if required by your workflow
Configuration tips:
- Keep your credentials secure and avoid embedding them directly in commands or images
- Use environment variables to point to credentials so you can rotate them without rebuilding the container
- Monitor logs (YUTU_LOG_LEVEL) to diagnose integration issues with YouTube APIs or MCP client interactions
Related MCP Servers
dify
Production-ready platform for agentic workflow development.
lobehub
The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.
AstrBot
Agentic IM Chatbot infrastructure that integrates lots of IM platforms, LLMs, plugins and AI feature, and can be your openclaw alternative. ✨
ai-guide
程序员鱼皮的 AI 资源大全 + Vibe Coding 零基础教程,分享大模型选择指南(DeepSeek / GPT / Gemini / Claude)、最新 AI 资讯、Prompt 提示词大全、AI 知识百科(RAG / MCP / A2A)、AI 编程教程、AI 工具用法(Cursor / Claude Code / OpenClaw / TRAE / Lovable / Agent Skills)、AI 开发框架教程(Spring AI / LangChain)、AI 产品变现指南,帮你快速掌握 AI 技术,走在时代前沿。本项目为开源文档版本,已升级为鱼皮 AI 导航网站
archestra
Secure cloud-native MCP registry, gateway & orchestrator
papersgpt-for-zotero
A powerful Zotero AI and MCP plugin with ChatGPT, Gemini 3.1, Claude, Grok, DeepSeek, OpenRouter, Kimi 2.5, GLM 5, SiliconFlow, GPT-oss, Gemma 3, Qwen 3.5