プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

videoctx

作者:dunfredバージョン 0.1.5i★ –iパソコンで動く
レジストリ名io.github.dunfred/videoctx

インストール

概要

作者による説明(英語の原文)

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

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: その他

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

必要なもの

  • PyPIPythonのuvのインストール(uvxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "videoctx": {
      "command": "uvx",
      "args": [
        "videoctx",
        "mcp"
      ]
    }
  }
}

ターミナルでこれを実行します

claude mcp add videoctx -- uvx videoctx mcp

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "videoctx": {
      "command": "uvx",
      "args": [
        "videoctx",
        "mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "videoctx": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "videoctx",
        "mcp"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント dunfred で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

その他のほかのサーバーとの比較i

  • このカテゴリのほかの32564件のうち0%よりスターが多い
  • このカテゴリのほかの32564件のうち71%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの32564件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

videoctxは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.1.5)がレジストリに届いたのは15 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。

代わりに使えるものは?

同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Tools MCP

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Remote Desktop Commander

作者:desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

クラウドで動く★ 211昨日更新
インストール

Tools MCP

作者:First-CH

Web production tools for AI agents: contrast, JP text, WebP, JSON-LD, slugs, dates and 40+ more

パソコンで動く今日更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

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:

  • Lectures and courses: "Summarize this 50-minute lecture." "Where does she explain backpropagation, and what's on the slide at that moment?"
  • Meetings and interviews: "List the action items with timestamps." "Find the moment the client pushed back on pricing."
  • Screen recordings: "At what time does the error appear, and what does the dialog say?"
  • Content creation: "Find the three strongest moments for short clips." "Generate chapter markers."
  • Video archives: index a folder of talks once, then every future question across all of them costs pennies and answers in seconds.
  • AI agents: give any MCP-capable agent (Claude Code, Cursor, ...) the ability to read video at all.

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):

MethodAccuracy$/question
videoctx v0.484.7%$0.025
videoctx v0.382.0%$0.025
videoctx v0.280.7% (equivalent configs ranged 80.7-85.3%)$0.025
Uniform frame sampling74.0%$0.0172
Gemini Flash-Lite native (pilot 30)70.0%$0.0009
Gemini Flash native (pilot 30)53.3%$0.0047

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

MethodAccuracy$/question
Uniform frame sampling80.0%$0.081
videoctx v0.7 (contact sheet 60@512 in cached prefix)70.0%$0.092 first-touch, ~$0.02 follow-up
videoctx v0.2 through v0.666.7% (near-identical failure set)$0.051-0.062
Gemini Flash-Lite native70.0%$0.0034

Medium is our weakest cell and remains the named target: naive leads on raw accuracy. Ten questions failed identically across five configs (prompt rules, a text-view bug fix, dense captions, a 24-thumb contact sheet); the sixth config, a 60-thumbnail 512px contact sheet baked into the cached prefix, recovered one. The receipts tell a consistent story: these videos are fast-cut and fully captioned, and the remaining gap is visual detail bandwidth at question time, naive's one structural advantage. We publish the ladder rather than only its best rung.

Correction (2026-10-21): a text-view bug had been dropping the header line (duration, shot count) on every OCR-enriched index since OCR shipped; all v0.2/v0.3 numbers were measured under that bug. v0.4 is the corrected configuration (short +2.7 points, long back to 80.0%, medium unchanged).

Long videos, 30-60 minutes (n=30):

MethodAccuracy$/questionFollow-up $/question
videoctx v0.5 (dense captions)83.3%$0.109 cold (measured $0.047, see note)$0.021
videoctx v0.480.0%$0.099$0.019
videoctx v0.2 / v0.380.0% / 76.7% (n=30 noise band)$0.098$0.019

Cost correction (2026-10-22): the v0.5 long run started 57 minutes after the v0.4 run, and for the 7 of 10 videos whose text views were unchanged by dense captioning, it silently inherited v0.4's still-live 1-hour prompt caches, flattering first-question costs. $0.109/q is the cold-equivalent (first question $0.285, follow-ups $0.021 as measured). Benchmark runs are now cache-salted per config so this cannot recur. | Uniform frame sampling (60-frame cap) | 70.0% | $0.133 | $0.133 | | Gemini Flash-Lite native | 76.7% | $0.022 | $0.022 (5-9 min latency/q) | | Native ingestion (published Pro rates, est.) | pending | ~$0.50 | ~$0.50 |

One-time index cost: ~$0.10-0.25 per hour of video (captions + local OCR + local embeddings), pennies otherwise.

*Cost correction history: early short-video figures ($0.0067/q) undercounted prompt-cache write premiums; the metering was fixed 2026-10-18 and all figures above are fully loaded. Details in the paper's Section 7.3.*

Install

git clone <repo> && cd videoctx

uv venv && uv pip install -e .

Requires ffmpeg on PATH. videoctx index and the MCP server's core tools run fully locally with no API key. videoctx ask uses the Anthropic API (ANTHROPIC_API_KEY or an ant auth login profile).

MCP server: let any agent read videos

claude mcp add videoctx -- $(pwd)/.venv/bin/videoctx-mcp

The calling agent's own model reads the text layer and frames directly; the server makes no model calls and needs no key. Tools: video_overview (cheap text layer), survey_video (one thumbnail per shot), get_frames(path, t0, t1, detail), transcript_search, find_moments (semantic visual search, needs videoctx embed once per index), index_video. The server's instructions carry the evidence rule: visual answers must cite fetched frames, never general knowledge.

Reproduce the benchmark

uv pip install -e ".[eval]"

python eval/prepare_videomme.py --duration short --videos 100 --out eval/data python eval/split_dev_test.py eval/data/videomme_short.jsonl python eval/run.py eval/data/videomme_short_test.jsonl --methods videoctx,naive

eval/methods.py documents each baseline. Cost accounting counts cache writes at their real premium (1.25x / 2x by TTL); see the paper's Section 7.3 for the accounting traps this avoids.

Format

The .vctx directory is plain JSON + JPEG: manifest.json (provenance, parameters, source hash), index.json (shots, keyframes, transcript, captions), frames/. Consumers must ignore unknown keys; enrichment layers (OCR, embeddings) are reserved in SPEC.md v0.1.

Status and roadmap

Working and benchmarked: indexing, query loop, MCP server, eval harness. Next: medium-duration subset, Pro-tier native baseline, cross-model portability runs (same indexes via non-Claude models), OCR and per-shot embedding layers, spec v1.0.

License

Apache-2.0. Copyright 2026 Fred Dunyo.

PopNxに聞く