MCP server for video transcripts, screenshots, and OCR on YouTube and web videos.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

An asynchronous Model Context Protocol (MCP) server that gives AI models "eyes and ears" to process web videos. It extracts transcripts and captures screenshots from YouTube and other video platforms.
--ocr flag)See BENCHMARK.md for performance benchmarks and a deep competitive analysis against all major video transcript, screenshot, and OCR tools in the MCP and CLI ecosystem.
list[int] type hints)--ocr flag)macOS:
Windows:
Linux:
Or manually:
The MCP server gives AI models direct access to video transcripts and screenshots.
Quick Install β No installation needed. Just add the config to your MCP client below.
Config: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Config: .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
Config: ~/.codeium/windsurf/mcp_config.json
Config: ~/.config/zed/settings.json
Config: .vscode/mcp.json
Config: ~/.opencode/config.json
By default, the transcript is printed to stdout and copied to your clipboard. Paste it into Claude Web, ChatGPT, or any AI chat.
| Flag | Description |
|---|---|
-h, --help | Show help message |
-v, --version | Show version number |
--stdout | Print transcript to stdout only (no clipboard, no file) |
--no-clipboard | Skip clipboard copy |
--output <file> | Write context to a specific file path |
--json | Output raw JSON (metadata + transcript) for programmatic use |
--detail <level> | Screenshot capture mode: overview, balanced, deep, auto (default: auto) |
--ocr | Extract text from screenshots using Tesseract OCR |
--force | Bypass cache and re-process the video |
--verbose | Show detailed progress information |
--quiet | Suppress summary and status messages |
--check | Check system dependencies (Python, FFmpeg, Whisper, Tesseract) |
--list-cached | List all cached videos with titles |
--cache-info | Show cache statistics (count, size, oldest/newest) |
--clear-cache | Delete all cached transcripts and screenshots |
YouTube may block transcript access for age-restricted or private videos. To fix this, export your browser cookies:
cookies.txt~/.cache/ocular_audio_mcp/cookies.txt~/.config/ocular_audio_mcp/cookies.txt./cookies.txt (in the project directory)The server will automatically detect and use the cookies file.
get_ocular_audio_capabilitiesReturns system capabilities and dependency status. Use this to check what features are available.
Parameters: None
Returns: System info including Python version, FFmpeg, Whisper, Tesseract, OpenCV, and cookie status.
get_ocular_audio_metadataExtracts only video metadata (title, creator, duration, views, chapters) without transcript. Much faster than getting the full transcript.
Parameters:
url (string): Video URLget_ocular_audio_transcriptExtracts the complete transcript, video chapters, and metadata from a video.
Parameters:
url (string): Video URLuse_local_whisper (boolean, default: true): Enable Whisper fallback if captions unavailableget_ocular_audio_chaptersExtracts only video chapters with timestamps. Returns chapter titles with start times in [MM:SS] format.
Parameters:
url (string): Video URLget_ocular_audio_video_screenshotsCaptures screenshots at specific timestamps.
Parameters:
url (string): Video URLtimestamps_secs (array of integers): Timestamps to capture (e.g., [45, 120, 300])enable_ocr (boolean, default: false): If true, run OCR on each captured frame to extract visible textget_ocular_audio_video_contextExtracts transcript, metadata, and intelligent screenshots in one call. Automatically analyzes the transcript to find visually important moments and captures screenshots at those timestamps.
Parameters:
url (string): Video URLdetail_level (string, default: "auto"): Controls screenshot capture mode:
"auto" - Adapts to video length and content importance"overview" - Transcript and metadata only, no screenshots (fastest)"balanced" - Screenshots only at visually important moments (strong signals)"deep" - Screenshots at every visually significant moment (all signals)use_local_whisper (boolean, default: true): Enable Whisper fallback if captions unavailableenable_ocr (boolean, default: false): If true, run OCR on captured screenshots to extract visible textlist_ocular_audio_cacheLists all cached videos with their metadata (title, uploader, duration, when cached).
Parameters: None
clear_ocular_audio_cacheClears cached video data.
Parameters:
video_id (string, optional): Video ID to clear specific video. If empty, clears all cache.Processed videos are cached in ~/.cache/ocular_audio_mcp/ for 7 days. Use the CLI flags to manage the cache:
Or manually:
Install a Whisper engine:
ffmpeg -versionEnsure Python is in your PATH. Try:
If not found, reinstall Python from python.org and check "Add Python to PATH" during installation.
python /path/to/ocular_audio_mcp.pypip list | grep -E "mcp|whisper|yt-dlp"MIT
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/ocular-audio-mcp)<a href="https://allmcps.com/mcp/ocular-audio-mcp"><img src="https://allmcps.com/api/badge/ocular-audio-mcp?style=directory" alt="Ocular Audio Mcp on AllMCPs" /></a>