bilibili-mcp
bilibili-mcp 是把 B 站 27 个 高频操作打包成 MCP 工具的服务器。
- 核 心定位:B 站官方 API 之外的 AI 接入通道,覆盖 登录/采集/发布/分析/互动 五类场景。
- 最大特色:登录由 AI 直接展示二维码,全程不需要切到终端。
- 采集能力:搜索、评论、字幕、弹幕、视频详情一步到位,支持批量采集。
- 发布能力:视频、图文动态、图文专栏(Opus)三类内容都能用 AI 代发。
- 数据分析:热门视频、热搜词、每周必看、17 个分区排行榜、内置 UP 主画像。
- 互动运营:私信、回复评论、未读消息、收藏夹查询。谨慎使用避免封号。
- 接入成本: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 个工具的五类分布
| 类别 | 工具数 | 代表工具 |
|---|---|---|
| 登录认证 | 3 | bili_login / bili_login_check / bili_check_credential |
| 数据采集 | 7 | bili_search / bili_comments / bili_subtitle / bili_danmaku / bili_video_info / bili_reply / bili_crawl |
| 内容发布 | 5 | bili_send_dynamic / bili_upload_video / bili_upload_video_multi / bili_send_opus / bili_video_zones |
| 数据分析 | 7 | bili_hot_videos / bili_hot_buzzwords / bili_weekly_hot / bili_rank / bili_user_info / bili_user_videos |
| 互动运营 | 5 | bili_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