Skip to main content

B2A (Bilibili to Agents) — 让 AI Agent 能「观看」B站视频,现已原生支持 MCP 协议

Project description

B2A (Bilibili to Agents) - 哔哩哔哩 MCP 插件

让 AI Agent(Claude、Cursor、Windsurf、Antigravity 等)原生具备「观看」和「倾听」B站视频能力的多模态 MCP 插件。

🌟 核心能力

B2A 为各种 Agent 提供了三条信息获取轨道:

  • CC 字幕(最快):直接拉取视频自带的字幕文本及精准时间戳。
  • ASR 语音识别(听觉):通过火山引擎大模型将音频转为文字,解决无字幕视频痛点。
  • 视觉抽帧(视觉):自动下载视频片段并按间隔抽帧,让多模态大模型能够使用内置 Vision 能力“看到”画面。

📦 安装说明

1. 安装 FFmpeg (前置依赖)

视觉抽帧和长音频处理依赖网络串流和 FFmpeg。

  • Windows: winget install Gyan.FFmpeg (安装后需重启终端)
  • macOS: brew install ffmpeg
  • Linux: apt install ffmpeg

2. 安装 B2A 插件

pip install b2a777

🔌 MCP 接入指南 (核心用法)

安装完成后,无论是你在使用本地终端命令行 AI,还是桌面级 AI IDE,配置都非常标准化。

1. Antigravity / Claude Code (命令行端)

如果你正在终端使用 Antigravity 或官方的 Claude Code,只需直接在对话输入框内执行以下斜杠命令:

/mcp add b2a-vision b2a-mcp

(执行完毕后可输入 /mcp list 查看是否处于 Running 运行状态)

2. Cursor

  1. 打开 Cursor Settings -> Features -> MCP
  2. 点击 + Add New MCP Server
  3. Type: 选择 command
  4. Name: b2a-vision
  5. Command: b2a-mcp (注意:如果是虚拟环境,请填入环境内 b2a-mcp 的绝对路径)

3. Windsurf / Claude Desktop

在配置目录下的 mcp_config.jsonclaude_desktop_config.json 中添加:

{
  "mcpServers": {
    "b2a-vision": {
      "command": "b2a-mcp",
      "args": []
    }
  }
}

💬 与 Agent 互动的提示词示例

配置好 MCP 后,你不需要写任何代码,直接用自然语言向 Agent 发送包含 B站链接的任务:

  • "总结一下这个视频的核心观点:BV1xx411c7mD" (Agent 会自调度获取 CC 字幕)
  • "这没字幕,帮我听一下这个视频的 1分30秒 到 3分钟 说了什么:https://b23.tv/xxxx" (Agent 会自动调度 ASR 识别)
  • "看看这个 BV1xx411c7mD 视频的画面,前两分钟里展示了哪些代码?" (Agent 会提取关键帧并使用自己的视觉能力识图)

🛠️ 进阶:作为 CLI 工具独立使用

B2A 同时也可以作为极简的命令行工具在未接入 MCP 的环境中独立运行。

基础用法

# 获取视频信息与字幕
b2a BV1xx411c7mD

# 结构化 JSON 输出
b2a BV1xx411c7mD --format json

更多参数

  --asr              启用语音识别(提取音频轨并转文字)
  --visual           启用视觉提取(抽取视频关键帧截图)
  --start TIME       截取开始时间(如 01:30)
  --end TIME         截取结束时间(如 02:40)
  --page N           指定分P编号(从1开始)

🔑 ASR 语音识别配置 (可选)

ASR 功能依赖火山引擎(豆包)API Key。不配置时不影响获取 CC 字幕和抽取关键帧。 在工程运行目录或用户目录创建 .env 文件:

VOLC_ENV=production
VOLC_PROD_API_KEY=你的火山引擎API_Key

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

b2a777-0.4.2.tar.gz (20.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

b2a777-0.4.2-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file b2a777-0.4.2.tar.gz.

File metadata

  • Download URL: b2a777-0.4.2.tar.gz
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for b2a777-0.4.2.tar.gz
Algorithm Hash digest
SHA256 b8216ecef712de052a13e9f8d5d574d2d30b0761f7662dc413240077fc9fbe9b
MD5 936c2b2ca5b59791005d0559dd5a5319
BLAKE2b-256 2bad9bc888af0dc44609461f197dacabedf8c7378d2096e10f387272ab68bc83

See more details on using hashes here.

Provenance

The following attestation bundles were made for b2a777-0.4.2.tar.gz:

Publisher: publish.yml on e8b298/B2A

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file b2a777-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: b2a777-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 21.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for b2a777-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5882b4559b82acc8efad8a7441a68e271eb92c2994acb7e0d40a80993b2b1810
MD5 c86ad5ca6f6f4d7b9be0381c53c53d12
BLAKE2b-256 0d797d31faf345733681d1f56c9dd29a404f72ecf7cd41b620b6d82e567d9983

See more details on using hashes here.

Provenance

The following attestation bundles were made for b2a777-0.4.2-py3-none-any.whl:

Publisher: publish.yml on e8b298/B2A

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page