Token导航 LogoToken导航TokenDH.com
MCP Video Analyzer logo
音视频未说明官方级别未说明来源级核验

MCP Video Analyzer

MCP Server

MCP服务器用于视频分析,提取转录、关键帧和元数据。支持Loom、直接视频文件(.mp4、.webm)等。

工具数

7

提示词数

0

GitHub Stars

5

资源数

0
视频分析TypeScriptClaudeClaude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

guimatheus92

提供方

guimatheus92

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

mcp视频分析仪

精选于 很棒的mcp服务器.

用于视频分析的MCP服务器--从视频URL中提取转录本、关键帧和元数据。支持Loom、直接视频文件(.mp4、.webm)等。

没有现有的视频MCP组合 文字记录+视觉框架+元数据 在一个工具中。这个确实如此。

安装

先决条件

  • Node.js 18+ --需要通过以下方式运行服务器 npx
  • yt-dlp (可选)--通过ffmpeg实现帧提取。安装时使用 pip install yt-dlp
  • 铬/铬 (可选)--如果yt-dlp不可用,则返回帧提取
没有yt-dlp或Chrome,服务器仍然可以工作——你会得到成绩单、元数据和评论,只是没有框架。

克劳德代码(CLI)

claude mcp add video-analyzer -- npx mcp-video-analyzer@latest

然后重新启动Claude Code或开始新的对话。

VS代码/光标

添加到MCP设置文件中:

  • VS Code: File → Preferences → Settings → search "MCP" 或编辑 ~/.vscode/mcp.json / %APPDATA%\Code\User\mcp.json (Windows)
  • 光标: Settings → MCP Servers → Add
{
  "servers": {
    "mcp-video-analyzer": {
      "type": "stdio",
      "command": "npx",
      "args": ["mcp-video-analyzer@latest"]
    }
  }
}

然后重新加载窗口(Ctrl+Shift+P → “开发人员:重新加载窗口”)。

克劳德桌面版

添加到您的Claude Desktop配置文件中:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "video-analyzer": {
      "command": "npx",
      "args": ["mcp-video-analyzer@latest"]
    }
  }
}

然后重新启动Claude Desktop。

验证它是否正常工作

安装后,询问您的AI助手:

Analyze this video: https://www.loom.com/share/bdebdfe44b294225ac718bad241a94fe

如果服务器已连接,它将自动调用 analyze_video 工具。

工具

analyze_video --完整视频分析

在一次调用中从视频URL中提取所有内容:

> Analyze this video: https://www.loom.com/share/abc123...

退货:

  • 转录本 带有时间戳和发言人
  • 关键帧 通过场景变化检测提取(自动去重)
  • OCR文本 从帧中提取(代码、错误消息、屏幕上可见的UI文本)
  • 带注释的时间线 将文字记录+框架+OCR合并为统一的“何时发生”视图
  • 元数据 (标题、持续时间、平台)
  • 评论 来自观众
  • 章节AI摘要 (可用时)

AI将 自动地 当它看到视频URL时调用此工具——无需询问。

选项:

  • detail --分析深度: "brief" (元数据+截断的转录,无帧), "standard" (默认), "detailed" (密集采样,更多帧)
  • fields --要返回的特定字段数组,例如。 ["metadata", "transcript"]。可用: metadata, transcript, frames, comments, chapters, ocrResults, timeline, aiSummary
  • maxFrames (1-60,默认值取决于细节级别)--提取帧的上限
  • threshold (0.0-1.0,默认值0.1)--场景更改灵敏度
  • forceRefresh --绕过缓存并重新分析
  • skipFrames --仅用于转录分析的跳过帧提取

get_transcript --仅提供成绩单

> Get the transcript from this video

快速转录提取。当没有可用的本地转录本时,返回Whisper转录。

get_metadata --仅元数据

> What's this video about?

返回元数据、评论、章节和AI摘要,而无需下载视频。

get_frames --仅限框架

> Extract frames from this video with dense sampling

两种模式:

  • 场景变化检测 (默认)--捕获视觉过渡
  • 密集采样 (dense: true)--全覆盖时为1帧/秒

analyze_moment --在一定时间范围内深潜

> Analyze what happens between 1:30 and 2:00 in this video

将突发帧提取+过滤转录+OCR+带注释的时间线相结合,用于聚焦片段。当你需要准确了解特定时刻发生的事情时使用。

get_frame_at --时间戳上的单帧

> Show me the frame at 1:23 in this video

人工智能读取记录,发现关键时刻,并要求精确的帧来查看屏幕上的内容。

get_frame_burst --时间范围内的N帧

> Show me 10 frames between 0:15 and 0:17 of this video

对于运动、振动、动画或快速滚动,突发模式在一个狭窄的窗口中捕获N帧,这样AI就可以看到逐帧的变化。

细节级别

级别转录OCR时间线用例
brief前10个条目快速检查——这段视频是关于什么的?
standard最多20个(场景更改)完整默认--完整分析
detailed高达60(1fps密集)完整深度分析-每秒捕获

缓存

结果将在内存中缓存10分钟。具有相同URL和选项的后续调用会立即返回。使用 forceRefresh: true 绕过缓存。

支持的平台

平台转录元数据评论框架授权
织布机Yes
直接URL (.mp4、.webm)仅持续时间

帧提取策略

帧提取使用双策略回退链——不需要单个依赖关系:

策略工作原理速度要求
yt-dlp+ffmpeg (主要)下载视频,通过场景检测提取帧快速、精确yt-dlp (pip install yt-dlp)
浏览器 (回退)在无头Chrome中打开视频,寻求时间戳,截图速度较慢,无需下载已安装Chrome或Chromium

回退是自动的——如果yt-dlp不可用,服务器会通过以下方式尝试基于浏览器的提取 puppeteer-core如果两者都不可用,分析仍然会返回成绩单+元数据+评论,只是没有框架。

后处理管道

帧提取后,管道会自动应用:

步骤它做什么为什么
帧重复数据删除使用感知哈希(dHash+Hamming距离)删除几乎相同的连续帧屏幕广播通常有很长的静态时刻——dedup删除冗余帧,节省令牌
光学字符识别从每个帧中提取屏幕上可见的文本(通过tesseract.js)捕获转录本未覆盖的代码、错误消息、终端输出、UI文本
带注释的时间线将转录时间戳+帧时间戳+OCR文本合并到一个按时间顺序排列的视图中为AI提供统一的“在每个时刻说了什么,视觉上发生了什么变化,出现了什么文本”

OCR步骤需要 tesseract.js (作为依赖项包含在内)。如果加载失败,分析将在没有OCR的情况下继续进行,不会丢失任何帧或转录。

补充工具

Chrome开发工具MCP

对于 实时web调试 除了视频分析,还可以将此服务器与 Chrome开发工具MCP:

claude mcp add chrome-devtools npx @anthropic-ai/mcp-devtools@latest

何时使用每个:

场景工具
Bug报告记录为Loom视频mcp-video-analyzer --从录音中提取转录、帧和错误文本
实时调试网页Chrome DevTools MCP——检查DOM、控制台、网络,截图
视频显示UI问题,需要再现它两者都用:先分析视频,然后在Chrome DevTools中打开页面进行再现

这两个MCP相辅相成:视频分析仪理解 记录的 内容,DevTools与 生活 页。

输出示例

examples/loom-demo/ 文件夹包含 实际产出 从分析公共织机视频(Boost应用内演示视频, 2:55).

文件显示内容
metadata.json标题、期限、平台
transcript.json42个带有扬声器ID的带时间戳的条目
timeline.json统一的时间顺序视图(转录+帧合并)
moment-transcript-0m30s-0m45s.json已筛选的成绩单 analyze_moment (0:30–0:45)
full-analysis.json完成 analyze_video 输出

帧图像 (共19人) examples/loom-demo/frames/):

  • scene_*.jpg --场景变化检测(关键视觉过渡)
  • dense_*.jpg --1fps密集采样(每10帧保存为样本)
  • burst_*.jpg --用于矩分析的突发提取(0:30–0:45)
更改后重新生成: npx tsx examples/generate.ts --需要yt-dlp+网络访问。

发展

# Install dependencies
npm install

# Run all checks (format, lint, typecheck, knip, tests)
npm run check

# Build
npm run build

# Run E2E tests (requires network)
npm run test:e2e

# Open MCP Inspector for manual testing
npm run inspect

建筑

src/
├── index.ts                    # Entry point (shebang + stdio)
├── server.ts                   # FastMCP server + tool registration
├── tools/                      # MCP tool definitions (7 tools)
│   ├── analyze-video.ts        # Full analysis with detail levels + caching
│   ├── analyze-moment.ts       # Deep-dive on a time range
│   ├── get-transcript.ts       # Transcript-only with Whisper fallback
│   ├── get-metadata.ts         # Metadata + comments + chapters
│   ├── get-frames.ts           # Frames-only (scene-change or dense)
│   ├── get-frame-at.ts         # Single frame at timestamp
│   └── get-frame-burst.ts      # N frames in a time range
├── adapters/                   # Platform-specific logic
│   ├── adapter.interface.ts    # IVideoAdapter interface + registry
│   ├── loom.adapter.ts         # Loom: authless GraphQL
│   └── direct.adapter.ts       # Direct URL: any mp4/webm link
├── processors/                 # Shared processing
│   ├── frame-extractor.ts      # ffmpeg scene detection + dense + burst extraction
│   ├── browser-frame-extractor.ts # Headless Chrome fallback for frames
│   ├── audio-transcriber.ts    # Whisper fallback (HF transformers → CLI → OpenAI)
│   ├── image-optimizer.ts      # sharp resize/compress
│   ├── frame-dedup.ts          # Perceptual dedup (dHash + Hamming distance)
│   ├── frame-ocr.ts            # OCR text extraction (tesseract.js)
│   └── annotated-timeline.ts   # Unified timeline (transcript + frames + OCR)
├── config/
│   └── detail-levels.ts        # brief / standard / detailed config
├── utils/
│   ├── cache.ts                # In-memory TTL cache with LRU eviction
│   ├── field-filter.ts         # Selective field filtering for responses
│   ├── url-detector.ts         # Platform detection from URL
│   ├── vtt-parser.ts           # WebVTT → transcript entries
│   └── temp-files.ts           # Temp directory management
└── types.ts                    # Shared TypeScript interfaces

许可证

麻省理工学院

目录标签

目录标签

视频分析TypeScriptClaude本地部署转录提取关键帧提取元数据提取OCR文本提取

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP