yt-analytics-mcp
Analyzes YouTube channels: extracts transcripts, computes quantitative metrics (WPM, profanity, humor, rhetoric, title formula), and generates multi-creator comparison dashboards.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yt-analytics-mcpanalyze @MrBeast's channel with 10 videos"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
yt-analytics-mcp
MCP server for YouTube channel deep analytics. Extracts transcripts, computes quantitative metrics (WPM, profanity, humor taxonomy, rhetoric fingerprint, title formula, posting schedule), and generates multi-creator comparison dashboards.


Tools
Tool | Description |
| Analyze a channel: download transcripts, compute metrics, cache results |
| List all cached channel analyses |
| Retrieve full cached analysis JSON for a channel |
| Remove a cached analysis |
| Build a tabbed HTML comparison dashboard from cached analyses |
Related MCP server: YouTube MCP
Quick Start
# Install
cd yt-analytics-mcp
npm install
# Add to Claude Code settings
# ~/.claude/settings.json → mcpServersClaude Code Config
{
"mcpServers": {
"yt-analytics": {
"command": "node",
"args": ["/path/to/yt-analytics-mcp/src/index.js"],
"env": {
"YT_ANALYTICS_DATA": "/path/to/yt-analytics-mcp/data"
}
}
}
}Usage
Analyze a single channel
Analyze @BennJordan's channel (20 videos, tech niche)
→ calls yt_analyze_channel with channel="@BennJordan", limit=20, niche="tech"Returns structured JSON with per-video and aggregate metrics:
WPM (words per minute) with niche baseline comparison
Profanity density per minute
Humor taxonomy (crude, self-deprecating, confrontational, hyperbolic, absurd)
Rhetoric fingerprint (connector word frequencies: but, so, because, if you, etc.)
Title formula (CAPS usage, exclamation marks, parentheticals)
Posting schedule (day-of-week distribution, monthly activity, cadence gaps)
Build a comparison dashboard
Compare all analyzed channels in a tabbed dashboard
→ calls yt_compare_creatorsGenerates a self-contained HTML file with:
Sticky tab bar for switching between creators
KPI cards (videos, words, runtime, median WPM, profanity, avg length)
WPM horizontal bar chart with niche average line
Video structure timeline
Humor taxonomy doughnut chart
Profanity density bar chart
Rhetoric radar chart
Video length vs. speech rate bubble chart
Posting schedule — day-of-week bar chart, monthly activity line chart, cadence stats
Title formula badges
Opening line pattern breakdown
Connector language grid
Per-video data table
Written analysis
Workflow
1. yt_analyze_channel → analyze @Creator1 (cached)
2. yt_analyze_channel → analyze @Creator2 (cached)
3. yt_analyze_channel → analyze @Creator3 (cached)
4. yt_compare_creators → build tabbed dashboard from all cached analysesThe companion /yt-analytics skill adds Gemini qualitative analysis on top — editing mechanics, humor quotes, video structure timelines, energy modulation — then merges with the MCP's quantitative data.
Filtering by date
Analyze @RyanHumiston — last 2 years only, 20 videos
→ yt_analyze_channel with channel="@RyanHumiston", limit=20, max_age_days=730The --max-age-days flag filters out videos older than N days before analysis.
Niche Baselines
Niche | Avg WPM |
Fitness | ~170 |
Tech | ~160 |
Commentary | ~190 |
Educational | ~150 |
Gaming | ~180 |
News | ~175 |
Woodworking | ~175 |
Music | ~165 |
Requirements
Node.js 18+
Python 3.10+ with
yt-dlpandyoutube-transcript-apiinstalledNo API keys needed
Data Storage
Analyses are cached as JSON files in the data/ directory (configurable via YT_ANALYTICS_DATA env var). Transcript files are stored in data/transcripts/.
Architecture
yt-analytics-mcp/
├── src/
│ └── index.js # MCP server + HTML generator
├── scripts/
│ └── analyze_channel.py # Transcript extraction + quantitative analysis
├── docs/ # Example screenshots
├── data/ # Cached analyses (JSON) + transcripts
├── package.json
└── README.mdThe MCP server wraps the Python analysis script and adds:
Result caching and management
Multi-creator comparison HTML generation
Structured tool interfaces for Claude Code
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/KewkLW/yt-analytics-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server