Skip to main content

bilibili-mcp

· 5 min read

bilibili-mcp 是把 B 站 27 个 高频操作打包成 MCP 工具的服务器。

  1. 核心定位:B 站官方 API 之外的 AI 接入通道,覆盖 登录/采集/发布/分析/互动 五类场景。
  2. 最大特色:登录由 AI 直接展示二维码,全程不需要切到终端。
  3. 采集能力:搜索、评论、字幕、弹幕、视频详情一步到位,支持批量采集。
  4. 发布能力:视频、图文动态、图文专栏(Opus)三类内容都能用 AI 代发。
  5. 数据分析:热门视频、热搜词、每周必看、17 个分区排行榜、内置 UP 主画像。
  6. 互动运营:私信、回复评论、未读消息、收藏夹查询。谨慎使用避免封号
  7. 接入成本:Python 3.10+,一个 git clone + pip install 就能跑。

它解决什么问题

B 站官方至今没开放 Web API 给第三方 AI 客户端。想让 Claude Code / Cursor / Codex 直接搜视频、抓评论、看字幕、发评论、发动态、发私信,常规做法是一条条调 bilibili-api 库自己写脚本——这件事的本质是把 B 站开放平台的能力"对齐"到 MCP 协议上。

bilibili-mcp 的思路很直接:把 B 站日常能用到的 27 个操作封成 MCP tool,AI 直接喊一句话触发。

mcp_server.py 是一个文件,bili_login.py 是一个文件,没有数据库、没有后端服务,本质就是 bilibili-api-python + FastMCP 的薄封装。

27 个工具的五类分布

类别工具数代表工具
登录认证3bili_login / bili_login_check / bili_check_credential
数据采集7bili_search / bili_comments / bili_subtitle / bili_danmaku / bili_video_info / bili_reply / bili_crawl
内容发布5bili_send_dynamic / bili_upload_video / bili_upload_video_multi / bili_send_opus / bili_video_zones
数据分析7bili_hot_videos / bili_hot_buzzwords / bili_weekly_hot / bili_rank / bili_user_info / bili_user_videos
互动运营5bili_favorite_lists / bili_favorite_content / bili_send_message / bili_unread_messages / bili_received_replies / bili_received_at_and_likes

数据采集和数据分析加起来占了一半,是项目最实的部分——这也是绝大多数人装 bilibili-mcp 的真实诉求:让 AI 帮我看 B 站。

最有特色的一点:登录由 AI 完成

传统登录 B 站的流程:开浏览器、找登录入口、等二维码弹出、打开 B 站 App 扫码、等 WebSocket 回调、确认。

bilibili-mcp 把这件事压缩到一句话:

用户:登录 B 站

AI:调用 bili_login → 生成 base64 二维码图片 → 直接在对话窗口展示

用户:用 B 站 App 扫一下图中的二维码

AI:轮询 bili_login_check → 登录成功 → 凭证自动写到 bili_credential.json

整个过程 完全在 AI 对话里闭环,不需要打开终端、不需要复制粘贴。凭证是浏览器标准的 Cookie 格式,写在本地,不上传任何服务器

接入三个常见客户端

Claude Code 在项目根目录写 .mcp.json

{
"mcpServers": {
"bilibili-mcp": {
"command": "python",
"args": ["/path/to/bilibili-mcp/mcp_server.py"]
}
}
}

OpenClaw 用 mcporter 一行:

npm i -g mcporter
npx mcporter config add bilibili-mcp "python /path/to/bilibili-mcp/mcp_server.py"

或者直接把 GitHub 仓库链接 粘到 OpenClaw 对话框,让它自动拉配置。

Cursor / Cline 在 MCP 设置里加一条 Server,command 填 python,args 填 mcp_server.py 的绝对路径。

启动后用 MCP Inspector 验证:

npx @modelcontextprotocol/inspector python mcp_server.py

实际用起来什么样

接入后,AI 看到 B 站相关的任务会自动调对应工具:

  • "搜索 B 站上关于 AI Agent 的热门视频,按播放量排前 10" → bili_search
  • "把这个视频的字幕和热门评论都抓下来,做个内容摘要" → bili_crawl 一把梭
  • "看看科技区现在排行榜前三是谁" → bili_rank
  • "我有多少条未读私信" → bili_unread_messages
  • "把这条评论回复一下,措辞客气点" → bili_reply
  • "把 /tmp/demo.mp4 上传到科技区" → bili_upload_video

技术栈

依赖角色
bilibili-api-python底层 B 站 API 封装,扛下 Cookie / 风控 / 接口签名
MCPAnthropic 提的开放协议,标准化 AI ↔ 工具的交互
FastMCPMCP 官方 Python SDK,把函数声明成 tool

请求间隔自动控制是 bilibili-api-python 兜底——这件事不能省,B 站对高频请求会直接封 IP。

五个使用上的注意点

  1. 首次登录 AI 一句话就够,不用切终端。
  2. 凭证保存在 bili_credential.json,不上传任何服务器——但要自己加进 .gitignore
  3. 回复评论 / 发私信谨慎使用,B 站社区规则对这类自动化操作比较敏感,频繁触发容易被限流。
  4. 视频上传未指定封面时,自动从第 3 秒截取,需要装 ffmpeg。
  5. 项目仅用于学习和研究,别拿来做营销号矩阵。

References

  1. Kimi-Gao/bilibili-mcp GitHub —— Kimi Gao
  2. Nemo2011/bilibili-api —— bilibili API Python 封装库
  3. Model Context Protocol 协议规范
  4. MCP Python SDK (FastMCP)