Skip to main content

Boson-Video

Get the point of any video without watching all of it. Paste a YouTube link or drop a video file. Every line of the summary, the transcript and the screen text carries the second it came from, and questions are answered from the video and checked against it.

A video read in Boson-Video: the player and the ribbon on the left, the terms explained on the right

  • The ribbon: the whole video on one strip (scenes, chapters, most replayed). Hover to see any second's frame and words.
  • Summary: sections with their frames; every sentence timed and checked (✓ ? ✗).
  • Transcript: the original with English beneath, technical terms explained, on-screen text read in.
  • Ask: answers that cite their moments and show the frames, with background kept apart.
  • Your own AI: the same document as an MCP plugin for Claude, Cursor, Codex and more.

Built for long talks, lectures and finance videos in a language you half know (Chinese and English today).

In your own AI

One line, nothing else to install (uv runs it):

claude mcp add boson-video -- uvx boson-video mcp

Claude Desktop (claude_desktop_config.json) or Cursor (.cursor/mcp.json):

{ "mcpServers": { "boson-video": { "command": "uvx", "args": ["boson-video", "mcp"] } } }

Codex (~/.codex/config.toml):

[mcp_servers.boson-video]
command = "uvx"
args = ["boson-video", "mcp"]

Then ask your AI about any YouTube link. It opens the video, reads the transcript, looks at the frames that matter at full resolution, searches, and checks its claims, citing every moment. No keys needed. Everything runs on your computer. In apps that show interactive pages (Claude Desktop, claude.ai, ChatGPT, Cursor), the video's page opens right in the chat: the player, the ribbon, the transcript with English beneath, terms and scenes, and questions you ask there go to your AI. Details: docs/plugin.md.

Run the page

uvx boson-video web             # http://127.0.0.1:8770; the first run prints your invite code

Keys make it fuller: INCEPTION_API_KEY (Mercury writes the summary, the English and the terms) and TYPESAFE_API_KEY (Jev checks every sentence and answers questions). Put them in a .env file in the folder you start from, or in ~/.boson-video/.env; the server warns at start when one is missing. Without them you still get the scenes, the transcript and search. Any OpenAI-compatible model can write instead of Mercury: set BOSON_WRITER_BASE_URL, BOSON_WRITER_MODEL and BOSON_WRITER_API_KEY. Optional and off by default: with OPENAI_API_KEY and BOSON_SCREEN_CHECK=1, a sentence the words can't confirm gets a second look at the frames on screen (OpenAI's Decisions API, about a cent a video).

Tested videos

Measured, one run each unless a range is shown. Mac: M5 MacBook with Apple's transcriber. Windows: a 12-thread laptop with SenseVoice or Parakeet on the CPU. Full tables: docs/measured.md.

Video Length Scene map Words Transcript errors¹ Screen text Summary ✓
Money or Life 美股频道, Meta and AI (zh, talking head) 24:53 1.3 s 13.8 s (Mac) no human captions — 13 / 13
Money or Life 美股频道, AI drug discovery (zh, slides) 28:24 1.1 s 18.5 s (Mac) not scored 36 moments read 15 / 16
程序员老王, LLM abliteration (zh, animated diagrams) 11:35 — 10.0 s (Windows) not scored 88 moments; subtitles apart at 85 21–22 / 22–23 (several runs)
陳永儀, TEDxTaipei (zh, talk) 14:29 — 7.1 s (Mac) 5.3% chars (Mac), 4.8% (SenseVoice) — 14 / 14
Ken Robinson, TED (en, talk) 20:06 — 9.9 s (Mac) 10.0% words (Mac), 10.5% (Parakeet) — 22 / 25
Sean's AI Stories, agent observability (en, screen recording) 20:48 1.5 s 13.2 s (Mac) not scored none: YouTube refused full resolution 23 / 26
Andrej Karpathy, Intro to LLMs (en, slides) 59:48 1.6 s 30.5 s (Mac) only automatic captions 19 of 20 slides right 22 / 23
Rick Astley, Never Gonna Give You Up (fast cuts) 3:33 0.7 s — — — —

¹ Against human captions (scripts/accuracy.py); about half the English errors are filler words the captions leave out. Summary ✓: sentences confirmed against what was said (Jev and code).

Command line

uvx boson-video <link | id | file>        # build a video: scenes, words, screen text, summary
uvx boson-video ask <video> "question"    # the moment that answers it
uvx boson-video models                    # fetch the local speech models now instead of on first use

From a clone: uv sync, then uv run boson-video …; uv run pytest runs the tests (offline).

More

MIT licensed. YouTube's terms don't allow automated access for products, so everything that touches YouTube runs on your own computer.

Metadata

Release files for boson-video 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for boson-video 0.3.0
File Size Uploaded
boson_video-0.3.0.tar.gz 649.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for boson-video 0.3.0
File Interpreter ABI Platform
boson_video-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 803.6 kB

Release files / boson_video-0.3.0.tar.gz

Download URL boson_video-0.3.0.tar.gz
Size 649.3 kB
Tags Source
SHA-256 checksum
How to use checksums
92eebdaef727c6fd019aafeaef3983602e91eba8ebfbc1750ebd5b6103f54fe1
BLAKE2b-256 checksum
How to use checksums
04cfb969942930af67d11c036d1337593c85fcdd317170b163881fb466dd9970
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / boson_video-0.3.0-py3-none-any.whl

Download URL boson_video-0.3.0-py3-none-any.whl
Size 154.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
60c7bbef27dcea3ddbb0289fde2fb4991b6f78196c3ff31dbcaf686827dfbced
BLAKE2b-256 checksum
How to use checksums
f7c93b1131d13bbdb3b7d6b727c84d777c8dcd240fa0f3c2335b3b926b032149
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.4.0

2 release files

This release

0.3.0 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page