Tubemcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Tubemcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
MCP server that lets AI agents search YouTube and fetch transcripts. Zero config — just install and go.
What is MCP? Model Context Protocol lets AI assistants like Claude call external tools. TubeMCP gives your AI agent the ability to search YouTube and read any video's transcript — useful for summarization, Q&A, research, and content analysis.
pip install tubemcpor
uv tool install tubemcpThen add it to your client:
Claude Code:
claude mcp add tubemcp -- tubemcpClaude Desktop — add to your claude_desktop_config.json:
{
"mcpServers": {
"tubemcp": {
"command": "tubemcp"
}
}
}Cursor — add to .cursor/mcp.json:
{
"mcpServers": {
"tubemcp": {
"command": "tubemcp"
}
}
}Windsurf — add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"tubemcp": {
"command": "tubemcp"
}
}
}youtube_get_transcriptFetch the English transcript and metadata for any YouTube video.
Input: A YouTube URL or video ID in any of these formats:
https://www.youtube.com/watch?v=VIDEO_IDhttps://youtu.be/VIDEO_IDhttps://www.youtube.com/embed/VIDEO_IDhttps://www.youtube.com/v/VIDEO_IDVIDEO_ID (bare 11-character ID)Returns:
video_id — the video IDtitle — video titlechannel_name — channel namethumbnail_url — thumbnail URLduration_seconds — video durationpublish_date — publish datetranscript — full transcript textfrom_cache — whether the result was served from cacheyoutube_searchSearch YouTube with multiple queries for broader coverage. Results are deduplicated by video ID. Returns metadata only — no transcripts.
Input:
queries (list[str]) — search queries to run. Use 2–3 from different angles for best results.max_results_per_query (int, default 3) — max results returned per query.Returns a list of results, each containing:
video_id — the video IDtitle — video titlechannel_name — channel nameurl — video URLduration_seconds — video durationTranscripts are cached locally in ~/.tubemcp/cache.db (SQLite). Subsequent requests for the same video are served instantly from cache.
spawn uvx ENOENTThis means your MCP client can't find the uvx command. Three fixes:
uvx in your config (find yours with which uvx): "command": "/Users/you/.local/bin/uvx"pip install tubemcp and use "command": "tubemcp" in your config (see pip installation above).Verify uv is working:
uvx --versiongit clone https://github.com/BlockBenny/tubemcp.git
cd tubemcp
pip install -e ".[dev]"
pytestSee CONTRIBUTING.md for development setup and guidelines.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.