Skip to directory

About video-mcp

Local video MCP for metadata, captions or Whisper transcripts, selected frames, OCR, and a merged timeline; optional yt-dlp handles platform URLs.

What you can use it for

  • Inspect timestamped video frames and speech
  • Read on-screen text with OCR
  • Check brief motion with frame bursts
Connection and setup
Hosting
Local Node.js MCP server
Transport
stdio
Endpoint
Local process; no hosted endpoint documented
Authentication
Local processing needs no API key. OPENAI_API_KEY is an optional cloud transcription fallback; yt-dlp cookies may be configured for restricted platform URLs.

Requirements

  • Node.js 18 or newer and FFmpeg.
  • yt-dlp for YouTube or other platform URLs.
  • Tesseract for OCR and local Whisper for transcription when captions are absent.

Setup steps

  1. Clone and build the repository with `npm install && npm run build`, or use the maintainer's release package.
  2. Run `video-mcp setup` and `video-mcp doctor` for local dependencies, then `video-mcp install --client codex` to configure Codex.
  3. For a YouTube URL, verify yt-dlp is available; use `video_analyze` or the smaller metadata, transcript, and frame tools.
Tools 9

Nine tool rows retained from the implementation source previously recorded.

  • video_check_deps

    Check availability of FFmpeg, yt-dlp, and transcription backends.

    01
  • video_info

    Probe video duration, resolution, codecs, and audio presence.

    Parameters: source
    02
  • video_transcribe

    Get timed speech from captions or a configured Whisper backend.

    Parameters: source
    03
  • video_get_frame

    Return one JPEG frame at a requested time.

    Parameters: source, time_sec, inline_image (optional), response_format (optional)
    04
  • video_get_frame_burst

    Return multiple frames across a short window.

    Parameters: source, start_sec, end_sec, count (optional), inline_images (optional), response_format (optional)
    05
  • video_extract_frames

    Select frames by scene changes, intervals, or both.

    Parameters: source, detail (optional), max_frames (optional), mode (optional), start_sec (optional), end_sec (optional), inline_images (optional), response_format (optional)
    06
  • video_analyze

    Combine probe, transcript, key frames, OCR, and timeline.

    Parameters: source
    07
  • video_ocr

    Read on-screen text from key frames or one image.

    Parameters: source, max_frames (optional), response_format (optional)
    08
  • video_search_transcript

    Find transcript segments matching a query.

    Parameters: source, query
    09
Limitations and notes
  • The maintainer's one-command installer is documented for macOS; Windows support was not independently tested.
  • A cloud Whisper fallback is used only if configured; keeping audio local requires a local backend.
  • The project also has a shoot-folder sorting CLI, but that CLI command is not an MCP tool.
Original sources

Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.