MCP.Market

videoctx MCP server

by dunfred·io.github.dunfred/videoctx·v0.1.5·1 stars

Read videos like images: index once locally, query the text layer, fetch frames on demand.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

full report

Adoption
Growing

1 stars819 downloads/wk

Reviews

Write one

Nobody has reviewed videoctx yet.

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

videoctx tools (6)

write = sends, deletes, buys or posts

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

  • find_moments

    Semantic visual search: find the moments that best match a natural language description (e.g. 'a red car at night'), using local CLIP embeddings. Returns the top matches as timestamped thumbnails: use the timestamps to zoom in with get_frames. Requires embeddings built once with `videoctx embed <index>`; cheaper and more targeted than survey_video when you know what you are looking for.

  • get_frames

    Frames evenly spaced across [start_s, end_s]. Frames are expensive: use the narrowest range the question allows, and raise max_frames (up to 8) only when a sparse sample missed the moment. Set detail='high' (2x resolution, ~4x token cost) when small text, colors, patterns, or fine object details matter.

  • index_video

    Index a video file for querying (shots, keyframes, speech transcript). Runs locally; takes roughly 10-20% of the video's duration. Idempotent - returns immediately if the video is already indexed. The other tools auto-index too, so calling this first is only needed to control when the wait happens.

  • survey_video

    One small thumbnail per shot across the whole video (subsampled to at most 24), each labeled with its timestamp. Cheap visual sweep for locating the relevant moment before zooming in with get_frames.

  • transcript_search

    Case-insensitive search over the transcript. Returns matching segments with surrounding context and timestamps: use the timestamps to target get_frames.

  • video_overview

    The cheap text layer of a video: shot list with timestamps and visual captions (when present), interleaved with the speech transcript. Read this before fetching any frames: it answers most questions by itself.

Public scan report

scanner v0.1.10 · 2026-10-25 · same rubric, same numbers if you re-run it

no findings
  • Code scan87 source files scanned25/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 qualitylocal package, no credentials required12/15
  • Maintenancelast push 3 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 92/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How videoctx compares

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

Safety score
92/100
higher than 95% of 48,255 servers
Tools
6
the typical server has 7
Tools that change things
0%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
1
more than 65% of 28,688 servers
Downloads a week
819
more than 93% of 12,191 servers with a package

What its tools let an agent do: 6 read

Install videoctx in Claude Code, Cursor or VS Code

claude mcp add videoctx -- uvx videoctx
Add to Cursor

What the publisher says

From the videoctx repository's README, as published. We do not edit it. Read it on GitHub

videoctx

<!-- mcp-name: io.github.dunfred/videoctx -->

Index a video once. Query it cheaply, forever, with any LLM.

videoctx ("video context") turns any video into an open, portable Video Context index (.vctx, see SPEC.md) using only local, model-free tools: ffmpeg keyframes, PySceneDetect shot boundaries, faster-whisper transcripts, and optional one-line visual captions from any cheap VLM. An agent answers most questions from the index's text layer for fractions of a cent, and pulls individual frames on demand only when a question needs pixels.

videoctx index lecture.mp4          # one-time, local, free
videoctx show  lecture.vctx         # the text view the model reads
videoctx ask   lecture.vctx "What diagram is shown when she explains backprop?"

What people use it for

Ask questions about videos the way you'd ask about a document:

she explain backpropagation, and what's on the slide at that moment?"

  • Lectures and courses: "Summarize this 50-minute lecture." "Where does

"Find the moment the client pushed back on pricing."

  • Meetings and interviews: "List the action items with timestamps."

the dialog say?"

  • Screen recordings: "At what time does the error appear, and what does

"Generate chapter markers."

  • Content creation: "Find the three strongest moments for short clips."

question across all of them costs pennies and answers in seconds.

  • Video archives: index a folder of talks once, then every future

ability to read video at all.

  • AI agents: give any MCP-capable agent (Claude Code, Cursor, ...) the

Who this is for: developers and anyone comfortable running a few terminal commands. You'll need Python, ffmpeg, and an Anthropic API key for question-answering (indexing itself is free and offline). If that's not you yet, star/watch the repo: a no-install version is on the roadmap.

Why

Native video ingestion re-tokenizes the whole video on every question: an hour of footage is ~250-350k tokens, every single time. Proprietary video platforms index into closed representations behind per-minute pricing. videoctx is the third option: an open on-disk format any model can consume, produced by free tools, where the marginal cost of a follow-up question on an hour-long video is about $0.02.

Benchmark results (Video-MME, Oct 2026)

Full protocol and honest cost accounting (including prompt-cache write premiums) in paper/draft.md. Query model: Claude Opus 4.8.

Numbers below are single-touch runs of the frozen configs (v0.2: captions + OCR + evidence rules, Opus 4.8 loop; v0.3, 2026-10-21: adds text-evidence rules, verbatim transcript quotes and a final letter-vs-evidence check) under full cost accounting. Where we measured the same configuration more than once, we report the observed range: on n=150, single runs wobble by 2-3 questions; on n=30, by 2-3 questions (= 7-10 points). Treat sub-3-point deltas on this benchmark as noise.

Subset composition caveat: videos were taken in Video-MME dataset order, which clusters by domain. The medium and long cells are entirely Knowledge-domain videos; the short cells are 76-88% Knowledge (remainder Film & Television). Read these as Knowledge-dominated subsets of Video-MME, not the full benchmark; future splits will be domain-stratified.

Short videos, held-out test half (n=150):

Medium videos, 4-15 min (n=30, wide error bars):

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

videoctx: common questions

Is videoctx MCP server safe?
Yes, by our scan: it is graded A (92/100). Read the videoctx safety report
How do I install videoctx?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does videoctx need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is videoctx maintained?
The last commit was 13 days ago (2026-10-22). The latest release is v0.1.5.
How does videoctx compare with other MCP servers?
safety score 92/100 (higher than 95% of 48,255 servers); tools 6 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.