1. Conduid
  2. Developer Tools
  3. Youtube Trending MCP
MCP server · Developer Tools

Youtube Trending MCP

MCP server for YouTube trending video collection - search by category, collect daily rankings, filter by views. Works with Claude Desktop, Cline, Cursor and any MCP-compatible client.

Unclaimed MIT last commit 7 months ago devtools
53Fair

Scored 4 months ago · breakdown

About Youtube Trending MCP

Youtube Trending MCP is an MCP server published by AIKONG2024 in the Developer Tools category: mCP server for YouTube trending video collection - search by category, collect daily rankings, filter by views. Works with Claude Desktop, Cline, Cursor and any MCP-compatible client. It has been installed 0 times through Conduid.

The repository has 1 stars and 0 forks, with the last commit 7 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues (0) before depending on it in production.

Install

Install
npx youtube-trending-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

Ask AI about Youtube Trending MCP

Powered by Claude · Grounded in docs

I know everything about Youtube Trending MCP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ·README presentNot checked yet.
  • ·License declaredNot checked yet.
  • ·Tests presentNot checked yet.
  • ·Dependencies pinnedNot checked yet.
  • ·No dynamic code executionNot checked yet.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

YouTube Trending MCP Server

PyPI version Python MCP

Collect trending YouTube videos without web scraping! This MCP server provides stable, API-based YouTube data collection using yt-dlp. No web scraping, no API keys required, no quotas!

Features

  • No Web Scraping - Uses yt-dlp's stable API access
  • No API Keys - Completely free forever
  • No Quotas - Unlimited data collection
  • Category Filtering - Any topic: Music, Gaming, Cooking, Tech, etc.
  • Daily Rankings - Track trending videos over time
  • RSS Fallback - Alternative data source
  • SQLite Storage - Built-in database support

Installation

pip install youtube-trending-mcp

Or install from source:

git clone https://github.com/AIKONG2024/youtube-trending-mcp.git
cd youtube-trending-mcp
pip install -e .

Quick Start

Claude Code

Add to your MCP config:

{
  "mcpServers": {
    "youtube-trending": {
      "command": "python",
      "args": ["-m", "youtube_trending_mcp"],
      "env": {
        "DATA_DIR": "/path/to/data"
      }
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "youtube-trending": {
      "command": "python",
      "args": ["-m", "youtube_trending_mcp"]
    }
  }
}

OpenAI Codex

{
  "mcpServers": {
    "youtube-trending": {
      "command": "python",
      "args": ["-m", "youtube_trending_mcp"],
      "env": {
        "DATA_DIR": "./data"
      }
    }
  }
}

LLM Tool Reference

Tools Overview

Tool Description
search_trending_videos Search trending videos by category
search_custom_videos Search any topic with custom query
get_video_metadata Get detailed metadata for a video
collect_daily_ranking Collect and save daily rankings
get_youtube_rss_feed Fetch RSS feed from channel/playlist
filter_videos Filter videos by views, likes, duration

search_trending_videos

Parameters:
  category: string (default: "all") - "all", "pets", "music", "gaming", "entertainment", or any topic
  max_results: int (default: 20, range: 1-100)
  region: string (default: "US") - Country code

Returns: { success, count, category, videos: [VideoObject] }

search_custom_videos

Parameters:
  query: string (required) - Any search term
  max_results: int (default: 20)
  min_views: int (default: 0) - Filter by minimum views
  sort_by: string (default: "relevance") - "relevance", "views", "date"

Returns: { success, query, count, videos: [VideoObject] }

get_video_metadata

Parameters:
  video_id: string (required) - YouTube video ID (11 chars)

Returns: { success, video: VideoObject }

collect_daily_ranking

Parameters:
  category: string (default: "all")
  max_results: int (default: 50)
  save_to_db: bool (default: true)
  save_to_json: bool (default: true)

Returns: { success, count, output_paths: [...] }

get_youtube_rss_feed

Parameters:
  channel_id: string - Channel ID (starts with "UC...")
  playlist_id: string - Playlist ID
  (At least one required)

Returns: { success, count, feed_type, videos: [VideoObject] }

filter_videos

Parameters:
  videos: array (required) - List of VideoObjects
  min_views: int - Minimum view count
  min_likes: int - Minimum like count
  max_duration: int - Max duration in seconds
  exclude_keywords: array - Keywords to exclude

Returns: { success, original_count, filtered_count, videos: [VideoObject] }

VideoObject Schema

{
  "video_id": "dQw4w9WgXcQ",
  "title": "Video Title",
  "channel": "Channel Name",
  "channel_id": "UCuAXFkgsw1L7xaCfnd5JJOw",
  "views": 1500000000,
  "likes": 16000000,
  "upload_date": "20091025",
  "duration": 212,
  "description": "Description (max 1000 chars)",
  "categories": ["Music"],
  "tags": ["tag1", "tag2"],
  "thumbnail": "https://i.ytimg.com/vi/.../maxresdefault.jpg",
  "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
}

Common Workflows

# Find popular videos on any topic
search_custom_videos(query="machine learning", max_results=30, sort_by="views")

# Get trending by category
search_trending_videos(category="gaming", max_results=50, region="KR")

# Filter results
videos = search_custom_videos(query="cooking", max_results=100)
filter_videos(videos=videos, min_views=50000, max_duration=600)

# Save daily rankings
collect_daily_ranking(category="music", max_results=100)

Notes

  • Video IDs: 11 characters (e.g., dQw4w9WgXcQ)
  • Channel IDs: Start with UC + 22 characters
  • Duration: In seconds
  • Upload date: YYYYMMDD format

Why yt-dlp Instead of Web Scraping?

Web Scraping yt-dlp Approach
Requires Playwright (heavy) No browser needed
Breaks with site changes Stable internal APIs
Anti-bot protection issues Community maintained (143k+ stars)
Legal concerns (ToS) Weekly updates
High maintenance Reliable & fast

Development

git clone https://github.com/AIKONG2024/youtube-trending-mcp.git
cd youtube-trending-mcp
pip install -e ".[dev]"
pytest tests/ -v

Related Projects

  • yt-dlp-mcp - Download videos and transcripts via MCP

License

MIT License - see LICENSE file for details.


Made with love by AIKONG2024

README mirrored from the source repository 4 months ago. The original is authoritative.

Questions

About Youtube Trending MCP

How do I install Youtube Trending MCP?

Run npx youtube-trending-mcp, then add the server to your MCP client's configuration. Conduid has recorded 0 installs, so the command is known to work with current clients.

Is Youtube Trending MCP safe to use with an AI agent?

Its trust score is 53 out of 100 (fair). It passes 0 of 1 static security checks; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Youtube Trending MCP still maintained?

The last commit was 7 months ago, with 0 open issues. That's long enough that you should check whether the maintainer is responding to issues before depending on it.