local-video-scenes-mcp
Extracts timestamped screenshots from local videos, enabling Claude to produce visual walkthroughs without audio analysis or cloud processing.
README
Local Video Scenes MCP
Local Video Scenes MCP extracts timestamped screenshots from local videos so Claude can produce a visual walkthrough. It does not use Whisper, audio transcription, or any hosted video-processing service.
What Stays Local
- The original video stays on your machine.
ffmpegandffproberun locally.- The MCP returns local screenshot paths and metadata.
- Claude analyzes only the screenshots you provide through the MCP result.
- Audio is not extracted or analyzed in V1.
Requirements
- Node.js 18.18+
ffmpegandffprobe
The server includes video.check_ffmpeg, which reports whether ffmpeg/ffprobe are available and gives platform-specific install guidance. It also includes video.install_ffmpeg, which dry-runs by default and only runs package-manager commands when called with execute: true.
When a package manager is detected, it suggests commands such as:
brew install ffmpeg
winget install --id Gyan.FFmpeg -e
choco install ffmpeg -y
sudo apt-get install -y ffmpeg
MCP Configuration
After installing or building the package, configure your MCP client to run:
{
"mcpServers": {
"local-video-scenes": {
"command": "npx",
"args": ["local-video-scenes-mcp"]
}
}
}
For local development from this repository:
{
"mcpServers": {
"local-video-scenes": {
"command": "node",
"args": ["/absolute/path/to/local-video-scenes-mcp/dist/server.js"]
}
}
}
Tools
video.extract_scenes
Input:
{
"path": "/path/to/bug-demo.mp4",
"sensitivity": 0.3,
"minGapSeconds": 1.5,
"mode": "auto"
}
Optional fields:
sensitivity: scene-change threshold between0and1; default0.3.maxFrames: maximum returned frames; defaultmin(80, max(12, ceil(durationSeconds / 3))).minGapSeconds: minimum gap between returned frames; default1.5.outputDir: output folder; default is a temp folder.mode:auto,scene, orsample; defaultauto.
Output includes:
durationsourcePathoutputDirextractionModemaxFramesperformanceEstimatewarningsframes[]withtimestamp,path,index, and optionalsceneScore
video.cleanup
Removes the generated frame directory:
{
"outputDir": "/tmp/video-context/abc123"
}
video.check_ffmpeg
Checks local ffmpeg/ffprobe availability and returns install guidance if either is missing.
video.install_ffmpeg
Returns the detected install commands by default:
{
"execute": false
}
To run the detected package-manager command, call it explicitly with:
{
"execute": true
}
Performance Defaults
The default frame budget is tuned for 1-minute screen recordings:
maxFrames = min(80, max(12, ceil(durationSeconds / 3)))
For a 60-second video, this returns about 20 frames by default. On an M2 with 16GB RAM, expected V1 behavior is:
- ffmpeg extraction: usually 1-5 seconds
- Claude visual walkthrough over 12-25 screenshots: roughly 10-30 seconds
- target end-to-end time for a 1-minute video: under about 30 seconds in normal cases
Claude Usage Guidance
When a user provides a video path:
- Call
video.extract_scenes. - Inspect the returned image paths as visual context.
- Produce a timestamped walkthrough of visible UI states, actions, errors, code, logs, and important text.
- Mention that audio was not analyzed.
- Use
video.cleanupwhen the generated screenshots are no longer needed.
Example:
The video shows the user opening the dashboard, navigating to Export, clicking the export action, and reaching a visible HTTP 500 error around 00:01:42. Audio was not analyzed.
Development
npm install
npm test
npm run typecheck
npm run build
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.