io.github.lanternrow/youtube-organic-mcp
YouTube organic analytics — channel stats, video performance, watch time & audience insights.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
youtube-organic-mcpclaude mcp add youtube-organic-mcp -e 'YOUTUBE_CLIENT_ID=<YOUTUBE_CLIENT_ID>' -e 'YOUTUBE_CLIENT_SECRET=<your youtube_client_secret>' -e 'YOUTUBE_REFRESH_TOKEN=<your youtube_refresh_token>' -- npx -y youtube-organic-mcp@1.0.0
{
"mcpServers": {
"youtube-organic-mcp": {
"command": "npx",
"args": [
"-y",
"youtube-organic-mcp@1.0.0"
],
"env": {
"YOUTUBE_CLIENT_ID": "<YOUTUBE_CLIENT_ID>",
"YOUTUBE_CLIENT_SECRET": "<your youtube_client_secret>",
"YOUTUBE_REFRESH_TOKEN": "<your youtube_refresh_token>"
}
}
}
}
متغيرات البيئة
YOUTUBE_CLIENT_IDإلزامي Google OAuth client ID for the YouTube Data + Analytics APIsYOUTUBE_CLIENT_SECRETإلزامي سري Google OAuth client secretYOUTUBE_REFRESH_TOKENإلزامي سري Google OAuth refresh token (offline access) for the channel owner
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
youtube-organic-mcp
MCP server for YouTube organic analytics — channel stats, video performance, watch time, and audience engagement via the YouTube Data API v3 and YouTube Analytics API v2.
Built for Claude Code and any MCP-compatible AI tool. Gives your AI assistant direct, read-only access to your own channel's organic data — subscribers, views, watch time, per-video engagement, and day-by-day trends.
Part of The SEO Engine toolkit by Rex Jones — AI-powered SEO and social media tooling for agencies and businesses.
Why this exists
- No good open-source YouTube organic MCP existed. Plenty of ad MCPs; organic channel analytics, nobody.
- YouTube has the richest organic API of the major platforms. Watch time, average view duration, subscribers gained/lost, traffic sources — none of it gated behind a multi-week review.
- Reuses your existing Google OAuth. If you already run the GA4 / GSC / Google Ads MCPs, the same OAuth client works here.
Tools
| Tool | Description |
|---|---|
list_accounts | List configured channels and the default |
get_channel_info | Channel profile + lifetime stats (subscribers, total views, video count, uploads playlist) |
get_videos | Paginated uploads with per-video views, likes, comments, duration |
get_video_details | Details for specific video IDs (batch up to 50) |
get_channel_analytics | Channel analytics over a date range: views, watch time, avg view duration/%, subs gained/lost, likes, comments, shares — optionally by day |
get_video_analytics | The same metrics for a single video over a date range |
All tools accept an optional account parameter for multi-account setups.
Getting connected
Step 1: Enable the APIs
In Google Cloud Console (any project — you can reuse an existing one), enable YouTube Data API v3 and YouTube Analytics API.
Step 2: Get a refresh token
Create an OAuth client of type Desktop app and download its client_secret JSON. Then run the helper (needs pip install google-auth-oauthlib):
python3 scripts/get_youtube_token.py /path/to/client_secret.json my-channel
Authorize with the Google account that owns the channel (pick the Brand Account if prompted). It prints the three YOUTUBE_* values to drop into your config and writes them to .youtube_account.json (gitignored).
Step 3: Configure
Add to your Claude Code MCP settings:
{
"mcpServers": {
"youtube-organic": {
"command": "node",
"args": ["/path/to/youtube-organic-mcp/dist/index.js"],
"env": {
"YOUTUBE_CLIENT_ID": "your_client_id.apps.googleusercontent.com",
"YOUTUBE_CLIENT_SECRET": "your_client_secret",
"YOUTUBE_REFRESH_TOKEN": "1//your_refresh_token"
}
}
}
}
Or set YOUTUBE_ACCOUNTS to a JSON array for multiple channels (see .env.example).
Architecture
src/
index.ts # MCP server entry point, tool registration
accounts.ts # Multi-account resolution (client_id/secret/refresh_token)
client.ts # OAuth token minting + Data/Analytics API HTTP client
types.ts # TypeScript interfaces for API responses
tools/
channel.ts # get_channel_info + uploads-playlist resolver
videos.ts # get_videos, get_video_details
analytics.ts # get_channel_analytics, get_video_analytics
- Zero external HTTP dependencies — native
fetch(Node 18+) - Auto-refreshing auth — access tokens minted from the refresh token, cached per process
- Multi-account support — monitor multiple channels from one server
License
MIT
الأسئلة الشائعة
ما هو io.github.lanternrow/youtube-organic-mcp؟
YouTube organic analytics — channel stats, video performance, watch time & audience insights.
كيف أثبّت io.github.lanternrow/youtube-organic-mcp؟
يعمل على جهازك. في Claude Code: claude mcp add youtube-organic-mcp -e 'YOUTUBE_CLIENT_ID=<YOUTUBE_CLIENT_ID>' -e 'YOUTUBE_CLIENT_SECRET=<your youtube_client_secret>' -e 'YOUTUBE_REFRESH_TOKEN=<your youtube_refresh_token>' -- npx -y youtube-organic-mcp@1.0.0. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.lanternrow/youtube-organic-mcp إلى مفتاح API؟
نعم. يتطلب YOUTUBE_CLIENT_ID, YOUTUBE_CLIENT_SECRET, YOUTUBE_REFRESH_TOKEN، وتضبطها في إعداداته.
هل io.github.lanternrow/youtube-organic-mcp مفتوح المصدر؟
شيفرته علنية على GitHub، لكن المستودع لا يعلن ترخيصًا قياسيًا.
من يصون io.github.lanternrow/youtube-organic-mcp؟
ينشره lanternrow. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.