Tubescout

io.github.not0luckyPublished by GitHub account not0luckyv0.1.1Updated Oct 24, 2026

YouTube as a research engine: keyless search, video intel, resilient transcripts, demand signals.

Overview

AI-generated overview

A local MCP server that turns YouTube into a research source, letting an assistant search videos, pull metadata and transcripts, and read channel and keyword-需求

What you can do
Search videos with filters for upload window, duration and sort order, and get autocomplete suggestions as keyword demand signals. Fetch full metadata and engagement figures for a single video, including a likes-per-1k-views resonance signal. Retrieve transcripts one at a time or in batches of up to 10, with per-video error tolerance and a reported source. List a channel's recent uploads with view counts for channel positioning. Analysis is left to the assistant; the server only supplies data.
When to use it
Useful when researching a niche, validating a product idea, or analyzing creator claims and numbers from YouTube videos. Good for local, ad-hoc research where transcripts and view data are needed without an API key.
Requirements
Runs as a local stdio process, typically launched with npx from the npm package. No API key, account or configuration is declared. Network access to YouTube is required; an optional local yt-dlp install serves as a transcript fallback.
Before you install
It relies on YouTube's internal API and caption scraping, which the README calls a terms-of-service gray area; YouTube may rate-limit datacenter IPs and change internals without notice. Videos with captions disabled cannot be transcribed. Intended for local research, not a hosted paid product.

Installation

In SourceWeft

  1. Open Tubescout in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

TubeScout 🔭

Turn YouTube into a research engine for your AI agent. An MCP server (no API key) plus a skill pack that make Claude Code, Codex, and OpenCode search YouTube like a database, read transcripts at scale, and mine videos for evidence — claims, numbers, demand signals — instead of vibes.

Idea-engine tools scan Reddit and forums. YouTube is where founders show receipts — revenue dashboards, playbooks, real numbers on camera — and nothing mines it. TubeScout does.

Quickstart (60 seconds)

Claude Code

bash
claude mcp add --scope user tubescout -- npx -y tubescout

Codex

bash
codex mcp add tubescout -- npx -y tubescout

OpenCode — add to ~/.config/opencode/opencode.json under "mcp":

json
"tubescout": { "type": "local", "command": ["npx", "-y", "tubescout"], "enabled": true }

That's it — no API key, no config. Then ask your agent things like:

"Find the 5 most-viewed videos about n8n from the last month and summarize what people are struggling with."

Easiest all-in-one (Claude Code): install as a plugin — MCP server + all 6 skills in two commands:

/plugin marketplace add not0lucky/tubescout/plugin install tubescout@tubescout

Or install the skill pack manually (works for Claude Code, Codex, and OpenCode):

bash
git clone https://github.com/not0lucky/tubescout && cd tubescout./scripts/install-skills.sh   # installs into ~/.claude/skills, ~/.codex/skills, ~/.config/opencode/skills

Tools

ToolWhat it does
search_videosSearch with filters (upload window, duration, sort by views/date)
get_videoFull metadata + engagement (likesPer1kViews resonance signal)
get_transcriptPlain-text transcript via a resilient 3-strategy fallback chain
get_transcriptsBatch transcripts (up to 10 videos), per-video error tolerant
get_channel_videosChannel positioning + recent uploads with view counts
get_search_suggestionsYouTube autocomplete = real search demand for keyword research

Skills (the research methods)

SkillUse it to
/yt-breakdown <urls>Skeptic's analysis of videos: extract every claim and number, stress-test for incentives, survivorship bias, verifiability
/yt-idea-mine <niche>Mine a niche for product ideas backed by demand signals + pains real builders describe on camera
/yt-validate <idea>Go/no-go verdict: demand, saturation, what competitors' numbers actually show
/yt-channel-intel <channel>Read a channel's strategy: cadence, outliers, what performs vs what they publish
/yt-playbook <tutorial url>Turn a tutorial into executable steps — exact commands, settings, and the gotchas said in passing — adapted to your stack
/yt-gap <niche>Find demand-vs-supply gaps: heavily searched topics served by weak, old, or misfit videos — for content plans or product angles

All skills are context-aware: they read the conversation for what you're building, your stack, and videos already analyzed, and tailor verdicts to your actual leverage instead of giving generic advice.

See a real /yt-breakdown run on three "how I make $X/month" videos — including what survived the skeptic pass and what didn't.

How it works (honestly)

There's no magic here, and that's the point:

  • youtubei.js talks to YouTube's internal InnerTube API — the same one the site uses. No key, no quota.
  • Transcripts are YouTube's own captions, fetched through a fallback chain: the ANDROID-client timedtext track → the InnerTube transcript endpoint (known to 400 intermittently — retried with backoff) → local yt-dlp if you have it. Each response tells you which source served it.
  • All analysis happens in your agent. The server ships data; the skills ship method.

Limitations

  • Run it locally. YouTube aggressively rate-limits datacenter IPs — this is a local stdio server by design, not a hosted service.
  • YouTube changes internals without notice; when it breaks, update (npx always pulls latest) and file an issue with the failing video ID.
  • Videos with captions disabled can't be transcribed (rare; the error says so explicitly).
  • Caption scraping lives in YouTube ToS gray area — fine for local research tooling, don't build a hosted paid product on it.

Development

bash
npm install && npm run buildnpm test          # unit tests (offline)npm run test:live # live smoke tests against real videos — run before publishingnpm run inspect   # MCP Inspector against the built server

MIT — see LICENSE.


Built by Anir — I automate things. More at agramprojects.com.

Source: README.md at commit ced42fc

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts