youtube-live-mcp
Enables AI assistants to control YouTube Live Streaming, including creating broadcasts, managing chat, and monitoring stream health via MCP tools.
README
YouTube Live MCP
MCP server for controlling YouTube Live Streaming from Claude Code, Claude Desktop, or any MCP client.
Create broadcasts, go live, manage chat, and monitor stream health — all through the Model Context Protocol.
What it does
This server wraps the YouTube Live Streaming API v3 and exposes it as MCP tools. Combined with obs-mcp, you get fully automated live streaming from your AI assistant.
Tools
Broadcasts (8 tools)
yt-create-broadcast— Create a new live broadcastyt-list-broadcasts— List broadcasts (filter by status)yt-get-broadcast— Get broadcast detailsyt-update-broadcast— Update title, description, privacyyt-delete-broadcast— Delete a broadcastyt-bind-stream— Bind a video stream to a broadcastyt-transition-broadcast— Go live, end broadcast (testing/live/complete)yt-insert-cuepoint— Insert ad break during live
Streams (4 tools)
yt-create-stream— Create stream, get RTMP URL + keyyt-list-streams— List your streamsyt-get-stream— Get stream details + healthyt-delete-stream— Delete a stream
Chat (6 tools)
yt-list-chat-messages— Read live chatyt-send-chat-message— Post to live chatyt-delete-chat-message— Remove a messageyt-list-moderators— List chat moderatorsyt-add-moderator— Add a moderatoryt-remove-moderator— Remove a moderator
Status (2 tools)
yt-get-broadcast-status— Broadcast lifecycle stateyt-get-stream-health— Real-time stream health
Videos
yt-search-videos— Search YouTube for videos by keyword. Params:query(required),maxResults(1–50, default 10),channelId(optional, restrict to one channel),order(relevance/date/viewCount/rating/title, default relevance). Returns{ videoId, title, channelTitle, channelId, publishedAt, url, description }per result. Note:search.listcosts 100 quota units per call (vs ~1 for list/get).
Prerequisites
- Node.js 18+
- Google Cloud project with the YouTube Data API v3 enabled
- OAuth2 credentials (Desktop application type)
Setting up Google Cloud
- Go to Google Cloud Console
- Create a project (or use an existing one)
- Enable the YouTube Data API v3
- Go to Credentials → Create Credentials → OAuth 2.0 Client ID
- Application type: Desktop app
- Note your Client ID and Client Secret
Installation
Claude Desktop / Claude Code
Add to your claude_desktop_config.json:
{
"mcpServers": {
"youtube-live": {
"command": "npx",
"args": ["-y", "youtube-live-mcp@latest"],
"env": {
"YOUTUBE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"YOUTUBE_CLIENT_SECRET": "your-client-secret"
}
}
}
}
Manual
npm install -g youtube-live-mcp
YOUTUBE_CLIENT_ID="..." YOUTUBE_CLIENT_SECRET="..." youtube-live-mcp
Authentication
On first run, the server opens your browser for Google OAuth consent. After authorizing, tokens are stored in ~/.youtube-live-mcp/tokens.json and refreshed automatically.
Required scope: https://www.googleapis.com/auth/youtube
Usage: Go Live in 7 Steps
With both youtube-live-mcp and obs-mcp installed:
1. yt-create-broadcast → Create the YouTube event
2. yt-create-stream → Get RTMP URL + stream key
3. obs-set-stream-settings → Configure OBS with RTMP details
4. yt-bind-stream → Connect stream to broadcast
5. obs-start-stream → Start sending video from OBS
6. yt-transition-broadcast → testing → validate feed
7. yt-transition-broadcast → live → YOU'RE LIVE
To end: yt-transition-broadcast complete + obs-stop-stream
Environment Variables
| Variable | Required | Description |
|---|---|---|
YOUTUBE_CLIENT_ID |
Yes | OAuth2 client ID |
YOUTUBE_CLIENT_SECRET |
Yes | OAuth2 client secret |
API Quota
YouTube API has a daily quota of 10,000 units. Read operations cost ~1 unit, write operations cost ~50 units. Normal streaming use stays well within limits.
One exception: search.list (used by yt-search-videos) costs 100 units per call — about 100 searches per day on the default quota. When the quota is spent, search tools return a clear quotaExceeded message; prefer yt-list-videos (by channel) for cheap listing.
License
MIT
Built by
Runway Services — a humanistic sales and marketing agency.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.