YouTube Uploader MCP
This project provides a command-line tool and supporting Go packages for uploading videos to YouTube using the Model Context Protocol (MCP). It includes OAuth2 authentication, token management, and video upload functionality.
Features
- Upload videos to YouTube via command line
- OAuth2 authentication flow
- Access token and refresh token management
- Modular Go package structure
Getting Started
Visit the Releases page and download the appropriate binary for your operating system:
youtube-uploader-mcp-linux-amd64
youtube-uploader-mcp-darwin-arm64
youtube-uploader-mcp-windows-amd64.exe
- etc.
> You can use the latest versioned tag, e.g., v1.0.0
.
2. Make it Executable (Linux/macOS)
chmod +x path/to/youtube-uploader-mcp-<os>-<arch>
3. Configure MCP (e.g., in Claude Desktop or Cursor)
{
"mcpServers": {
"youtube-uploader-mcp": {
"command": "/absolute/path/to/youtube-uploader-mcp-<os>-<arch>",
"args": [
"-client_secret_file",
"/absolute/path/to/client_secret.json(See Below)"
]
}
}
}
4. Set Up Google OAuth 2.0
To upload to YouTube, you must configure OAuth and get a client_secret.json file from the Google Developer Console.
➡️ Follow the guide in youtube_oauth2_setup.md for a step-by-step walkthrough.
Usage
main.go
: Entry point for the CLImain/
: Additional main package filesyoutube/
: YouTube API integration (OAuth, video upload, config)tool/
: Command-line tools for authentication, token, and uploadhook/
,logn/
: Supporting packages