MCP.Market

Vidlens MCP server

by thatsrajan·io.github.thatsrajan/vidlens-mcp·v1.4.1·35 stars

Video as a queryable local asset for AI agents — 47 tools for YouTube, social, and local media.

D42/100grade D
What users say
No reviews yet
Be the first
Safety scan
D42/100

full report

Adoption
Growing

35 stars112 downloads/wk

Reviews

Write one

Nobody has reviewed Vidlens yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Vidlens tools (49, 5 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • analyzePlaylist

    Expand and analyze a playlist in one call with partial success and aggregate benchmarks. [~5-20s, scales with playlist size]

  • analyzeVideoSetwrite action

    Run multiple analyses across a video set with partial success, item-level errors, and provenance. [~5-20s, scales with video count]

  • buildVideoDossier

    Build a one-shot video dossier with core metadata/transcript readiness, optionally extended with comments, sentiment, and provenance. [~3-10s]

  • checkImportReadiness

    Diagnose whether a video is importable, including transcript availability, sparse-transcript warnings, and yt-dlp/API issues. [~1-3s]

  • checkSystemHealth

    Check setup and provider health: yt-dlp, YouTube API, Gemini embeddings, and local storage. [~3-10s]

  • clearActiveCollection

    Clear the active collection so transcript search fans back out across all collections. [~instant]

  • clearActiveCommentCollection

    Clear the active comment collection so comment search fans back out across all comment collections. [~instant]

  • compareShortsVsLong

    Compare recent Shorts vs long-form performance for a channel and suggest a format mix. [~3-10s]

  • discoverNicheTrends

    Discover what's trending in a niche right now. Returns top-performing and recent videos, momentum signals (accelerating/steady/decelerating), saturation analysis, content gap opportunities, keyword patterns, and format breakdown. Grounded in YouTube search data with honest limitations disclosed. [~5-15s]

  • downloadAsset

    Download or ingest a video, audio track, or thumbnail to local storage. Supports YouTube, X/Twitter, Instagram, TikTok, generic URLs via yt-dlp, and local video files for video ingestion. Does NOT perform visual indexing. Downloaded assets persist across sessions — call recallWorkspace or listMediaAssets first to avoid re-downloading. [~30-120s, downloads media]

  • expandPlaylist

    Expand a playlist into individual videos for downstream analysis and batch workflows. [~1-3s]

  • exploreNicheCompetitors

    Discover active channels in a niche by analyzing who ranks in YouTube search results. Returns channel-level stats, top videos, and a landscape summary. Useful for competitive reconnaissance before entering a niche. [~5-20s]

  • exploreSourcedVideos

    Opt-in universal exploration surface that routes through source search and merges platform discovery results. Set VIDLENS_ENABLE_UNIVERSAL_EXPLORE=1 to expose. [~1-5s]

  • exploreYouTube

    ALWAYS use this tool FIRST when the user wants to find, discover, or explore YouTube videos. Do NOT use web search for YouTube video discovery — use this tool instead. Searches YouTube directly with intelligent multi-query ranking and parallel enrichment. Returns ranked videos with transcript summaries, key moments, and readiness for follow-up. IMPORTANT: When results contain benchmark scores, sta

  • extractKeyframes

    Extract keyframe images from a locally downloaded video at regular intervals using ffmpeg. Requires the video to be downloaded first via downloadAsset. Does NOT do visual search or classification — produces raw frame images. [~30-60s, requires ffmpeg]

  • findSimilarFrames

    Find frames that visually look like a reference frame using Apple Vision image feature prints. Accepts a frame assetId or a direct framePath and returns image-backed matches. [~30-60s, vision comparison]

  • findSourcedVideos

    Opt-in universal video search across YouTube, local assets, and configured social/web fallback providers. Set VIDLENS_ENABLE_UNIVERSAL_EXPLORE=1 to expose. [~1-5s]

  • findVideos

    Search YouTube videos by intent. Returns compact ranked results with provenance and engagement hints. [~1-3s]

  • importComments

    Import a video's comments into the local comment knowledge base for semantic search. Fetches comments via the existing comment pipeline and indexes them for searchComments. Imports persist across sessions — call recallWorkspace or listCommentCollections first to avoid re-importing. [~3-10s]

  • importPlaylist

    Import a playlist into the local transcript knowledge base for semantic search in Claude Desktop. Unlike raw yt-dlp, imports persist across sessions and become searchable — call recallWorkspace or listCollections first to avoid re-importing what you already have. [~5-30s, ~2s per video]

  • importVideoSources

    Import one or more video URLs or local files into the local VidLens media store, optionally building a visual index or transcript. Supports YouTube, X/Twitter, Instagram, TikTok, generic URLs via yt-dlp, and local video files via ffmpeg. [~30-180s]

  • importVideos

    Import one or more videos into a local transcript collection for later semantic search. Unlike raw yt-dlp, imports persist across sessions and become searchable — call recallWorkspace or listCollections first to avoid re-importing what you already have. [~5-20s, ~2s per video]

  • indexVisualContent

    Build a real visual index for a video using extracted frames, Apple Vision OCR, Apple Vision feature prints, and optional Gemini frame descriptions. Returns frame evidence with local image paths. The index persists across sessions and is queryable via searchVisualContent — call recallWorkspace first to avoid re-indexing. [~30-120s, downloads + OCR + vision]

  • inspectChannel

    Inspect a channel with summary stats and posting cadence heuristics. [~3-10s]

  • inspectVideo

    Inspect a single video with compact metadata, normalized ratios, and transcript availability. [~1-3s]

  • inspectVideoSource

    Resolve any supported video input (YouTube, X/Twitter, Instagram, TikTok, generic URL, or local file) into VidLens source metadata and capability flags. Works for Claude and Codex through the same MCP server. [~instant]

  • listChannelCatalog

    List a channel's recent catalog in compact creator-analysis shape. [~3-10s]

  • listCollections

    List local transcript collections, active search focus, and indexed video/chunk counts. [~instant]

  • listCommentCollections

    List local comment collections, active search focus, and indexed comment counts. [~instant]

  • listMediaAssets

    List locally stored media assets. Filter by video or kind. Shows file paths, sizes, and manifest metadata. [~instant]

  • measureAudienceSentiment

    Heuristic audience sentiment analysis from comments with themes, risk signals, and quote samples. [~3-10s]

  • mediaStoreHealth

    Check health of the local media store: disk usage, asset counts, ffmpeg/yt-dlp availability. [~instant]

  • readComments

    Read top-level comments with optional replies and structured provenance. [~1-3s]

  • readTranscript

    Read transcript in summary, key moments, chapters, or paginated full mode with long-video safeguards. [~1-3s]

  • recallWorkspace

    Recall what VidLens already has stored from previous sessions — imported transcript and comment collections, downloaded media assets, and visual indexes. CALL THIS FIRST in a new session before searching or importing: unlike raw yt-dlp, VidLens imports persist across sessions and become searchable, so re-importing wastes time and API quota. Returns a compact digest with a hint on what to do next.

  • recommendUploadWindowswrite action

    Recommend upload windows from recent publishing history for a given timezone. [~3-10s]

  • removeCollectionwrite action

    Delete a local transcript collection and its search index. [~instant]

  • removeCommentCollectionwrite action

    Delete a local comment collection and its search index. [~instant]

  • removeMediaAssetwrite action

    Remove stored media assets. Specify assetId to remove one, or videoIdOrUrl to remove all assets for a video. [~instant]

  • researchTagsAndTitles

    Research title structures, keywords, and tag patterns around a seed topic. [~3-10s]

  • scoreHookPatterns

    Heuristically score first-30-second hooks across one or more videos. [~3-10s, ~1s per video]

  • searchComments

    Search imported comment collections with ranked results. Returns matching comments with author, like count, and relevance score. Uses active comment collection by default. [~instant]

  • searchSocialTrends

    Search social platforms through ScrapeCreators and return a playlist-like ranked list of posts/videos with engagement metrics and importable URLs where VidLens can ingest them. Supports TikTok, Instagram, Threads, Pinterest, Reddit, and handle-based X lookups when SCRAPECREATORS_API_KEY is configured. [~2-10s]

  • searchTranscripts

    Search imported transcript-text collections with active-collection focus by default and return ranked timestamped chunks. [~instant]

  • searchVideoSources

    Search video sources across native YouTube, local VidLens assets, and capability-aware social/web fallback guidance. For X, Instagram, TikTok, and generic web pages, pass discovered URLs to importVideoSources/downloadAsset for reliable ingest. Material imported in previous sessions is already available — call recallWorkspace first to reuse it instead of re-fetching. [~1-5s]

  • searchVisualContent

    Search the actual visual content of a video or your indexed frame library. Uses Apple Vision OCR, optional Gemini frame descriptions, and optional Gemini semantic embeddings. Always returns frame/image evidence with timestamps. [~1-3s if indexed, ~60-120s if auto-indexing]

  • setActiveCollection

    Set the default collection that transcript search should focus on when collectionId is omitted. [~instant]

  • setActiveCommentCollection

    Set the default comment collection that searchComments should focus on when collectionId is omitted. [~instant]

  • transcribeVideoSource

    Transcribe a YouTube, X/Twitter, Instagram, TikTok, generic URL, or local video source into the transcript knowledge base using native captions or the configured STT provider. [~30-180s]

Public scan report

scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it

1 high2 medium
  • Code scan133 source files scanned3/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 35 days ago12/15
  • Maintainer identityregistry namespace matches repository owner6/10

Findings (3)

  • mediumnpm install lifecycle script presentinstall.script
  • highShell command built from a string (injection risk)exec.shell-concat
    dist/lib/cli-runtime.js: …_process"); execSync(`npm install -g ${pkgName}`, { stdio: "inherit" }); …
  • mediumnpm install lifecycle script presentinstall.script
    package.json: …t && node dist/cli.js update-deps", "postinstall": "node -e \"console.log('\\nVidLens MCP …
Overall 42/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Vidlens compares

Against every graded Media MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
42/100
higher than 6% of 1,337 Media servers
Tools
49
the typical Media server has 7
Tools that change things
10%
typical: 4%. Fewer write tools means less an agent can break
GitHub stars
35
more than 92% of 715 Media servers
Downloads a week
112
more than 63% of 365 Media servers with a package

What its tools let an agent do: 38 read · 4 create · 4 change · 3 delete

Install Vidlens in Claude Code, Cursor or VS Code

Runs npx -y vidlens-mcp on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add vidlens-mcp -- npx -y vidlens-mcp
Add to Cursor

Vidlens: common questions

Is Vidlens MCP server safe?
Not recommended: it is graded D (42/100). Read the Vidlens safety report
How do I install Vidlens?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Vidlens need an API key?
Yes. The registry entry asks for YOUTUBE_API_KEY, GEMINI_API_KEY, OPENAI_API_KEY, SCRAPECREATORS_API_KEY and 1 more.
Is Vidlens maintained?
The last commit was 74 days ago (2026-08-22). The latest release is v1.4.1.
What can I use instead of Vidlens?
Servers from other publishers that do the same job: BeatDesign MCP server, transcript1 MCP server and Openshorts MCP server.
How does Vidlens compare with other Media MCP servers?
safety score 42/100 (higher than 6% of 1,337 Media servers); tools 49 (the typical Media server has 7); tools that change things 10% (typical: 4%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to Vidlens

Same job from other publishers: the closest match first, then the best rated.

  • BeatDesign
    Local-first open-source AI media workbench with Canvas, video editor, Assets, and MCP tools.
    B
  • transcript1
    Transcribe YouTube, TikTok, Instagram, X and 7 more social media platforms, or audio/video files.
    A
  • Openshorts
    Turn long videos into viral vertical shorts and publish them to TikTok, Instagram and YouTube.
    A
  • Transloadit Media Processing
    Process video, audio, images and documents with Transloadit Robots. Connect by URL with OAuth.
    A
  • SuperCMO
    Marketing media generation — image, video, voice — for AI agents. BYO keys.
    B