@xzxzzx/bilibili-mcp 1.1.12 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,68 +1,122 @@
1
1
  # Bilibili MCP Tool
2
- 用claude code(glm4.7模型)做的总结B站视频的MCP
3
2
 
4
- [English](./README_EN.md)(**Please read the README.md file**)
3
+ [![npm version](https://img.shields.io/npm/v/@xzxzzx/bilibili-mcp.svg)](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp)
4
+ [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
5
+ [![npm downloads](https://img.shields.io/npm/dm/@xzxzzx/bilibili-mcp.svg)](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp)
5
6
 
6
- MCP工具包括两个tools,视频总结和评论获取
7
+ 用claude code(glm4.7模型)做的总结B站视频的MCP(经过antigravity里的claude,gemini模型修改bug)(提取字幕与评论)
7
8
 
8
- Bilibili MCP (Model Context Protocol) 工具,用于总结 Bilibili 视频和视频评论。支持在 Claude Code、Cursor、Trae 等多种 MCP 兼容平台上使用。
9
+ > [!TIP]
10
+ > ⚠️ **快速开始**:使用前请务必配置您的 B 站 Cookie,否则将无法提取视频字幕与评论。详见 [**⚙️ 凭证配置**](#️-凭证配置)。
9
11
 
12
+ View this document in [English](./README_EN.md).
10
13
 
11
14
  ---
12
15
 
13
- ## 功能特性
16
+ ## 📑 目录
17
+
18
+ - [Bilibili MCP Tool](#bilibili-mcp-tool)
19
+ - [📑 目录](#-目录)
20
+ - [⚡ 快速预检](#-快速预检)
21
+ - [🌟 功能特性](#-功能特性)
22
+ - [1. 视频总结 (`get_video_info`)](#1-视频总结-get_video_info)
23
+ - [2. 评论总结 (`get_video_comments`)](#2-评论总结-get_video_comments)
24
+ - [📋 环境要求](#-环境要求)
25
+ - [🚀 安装方式](#-安装方式)
26
+ - [🖱️ Cursor](#️-cursor)
27
+ - [Claude Code](#claude-code)
28
+ - [方法一:通过 CLI 命令快速安装(推荐)](#方法一通过-cli-命令快速安装推荐)
29
+ - [方法二:通过配置文件手动添加(高级)](#方法二通过配置文件手动添加高级)
30
+ - [方法三:通过 npm 全局安装](#方法三通过-npm-全局安装)
31
+ - [🏗️ Trae (字节跳动官方 IDE)](#️-trae-字节跳动官方-ide)
32
+ - [🌊 Windsurf (Codeium 官方 IDE)](#-windsurf-codeium-官方-ide)
33
+ - [⚡ Zed](#-zed)
34
+ - [♊ Gemini CLI (Google 官方命令行工具)](#-gemini-cli-google-官方命令行工具)
35
+ - [⌨️ Codex CLI (OpenAI 官方命令行工具)](#️-codex-cli-openai-官方命令行工具)
36
+ - [🪐 Antigravity (Google 官方 IDE)](#-antigravity-google-官方-ide)
37
+ - [📦 OpenCode](#-opencode)
38
+ - [⚙️ 凭证配置](#️-凭证配置)
39
+ - [🔑 第一步:获取 Bilibili Cookie](#-第一步获取-bilibili-cookie)
40
+ - [📝 第二步:应用凭证](#-第二步应用凭证)
41
+ - [方式 A:使用 CLI 向导(推荐,适用于全局安装)](#方式-a使用-cli-向导推荐适用于全局安装)
42
+ - [方式 B:手动配置环境变量(适用于本地开发或 Docker)](#方式-b手动配置环境变量适用于本地开发或-docker)
43
+ - [🔒 安全须知](#-安全须知)
44
+ - [💡 工具使用示例](#-工具使用示例)
45
+ - [🛡️ API 限流机制](#️-api-限流机制)
46
+ - [🛠️ 开发指南](#️-开发指南)
47
+ - [⚖️ 安全性与免责声明](#️-安全性与免责声明)
48
+ - [许可证](#许可证)
49
+
50
+ ---
51
+
52
+ ## ⚡ 快速预检
53
+
54
+ > [!IMPORTANT]
55
+ > **本工具需要 Bilibili 凭证 (Cookie) 才能发挥完整功能。**
56
+ > 如果没有正确配置凭证,您可能无法获取视频字幕、评论
57
+
58
+ 在开始安装前,请确保您已经了解[如何获取并配置 Cookie](#️-凭证配置)。
59
+
60
+ ---
61
+
62
+ ## 🌟 功能特性
14
63
 
15
64
  ### 1. 视频总结 (`get_video_info`)
16
65
  - 优先获取视频的 CC 或 AI 字幕
17
66
  - 无字幕时自动降级为视频标题、简介和标签
18
67
  - 支持多语言字幕选择(默认优先简体中文)
19
- - 可手动指定偏好字幕语言
68
+ - 可手动指定偏好字幕语言(如 `en`, `zh-Hant` 等)
20
69
 
21
70
  ### 2. 评论总结 (`get_video_comments`)
22
- - 获取视频热门评论
23
- - 自动过滤表情占位符(如 `[doge]`)
24
- - 优先保留包含时间戳的评论(如 `05:20`)
71
+ - 获取视频热门评论,辅助判断视频真实口碑
72
+ - 自动过滤表情占位符(如 `[doge]`)以保持文本整洁
73
+ - 优先保留包含时间戳的评论(如 `05:20`),方便定位高能片段
25
74
  - 支持两种详细程度:
26
- - `brief`: 10 条热门评论
27
- - `detailed`: 50 条热门评论 + 高赞回复
75
+ - `brief`: 10 条热门评论速览
76
+ - `detailed`: 50 条热门评论 + 高赞连带回复
28
77
 
29
- ## 安装方式
78
+ ---
30
79
 
31
- ### Claude Code
80
+ ## 📋 环境要求
32
81
 
33
- #### 方法一:通过 npm 直接安装(推荐)
82
+ - **Node.js**: v18.0.0 或更高版本
83
+ - Bilibili 账号凭证 (Cookie)
34
84
 
35
- 最简单的安装方式是直接通过 npm 全局安装:
85
+ ---
36
86
 
37
- ```bash
38
- npm install -g @xzxzzx/bilibili-mcp
39
- ```
87
+ ## 🚀 安装方式
40
88
 
41
- 安装完成后,你可以:
89
+ ### 🖱️ Cursor
42
90
 
43
- 1. 检查是否安装成功:
44
- ```bash
45
- bilibili-mcp --help
46
- ```
91
+ Cursor 同样原生支持 MCP,你可以通过图形界面快速添加:
47
92
 
48
- 2. 配置 Bilibili 凭证(首次使用时):
49
- ```bash
50
- bilibili-mcp config
51
- ```
93
+ 1. 打开 Cursor 设置:`Cursor Settings` > `Features` > `MCP Servers`
94
+ 2. 点击 **+ Add New MCP Server**
95
+ 3. 填写以下信息:
96
+ - **Name**: `bilibili-mcp` (或任意你喜欢的名字)
97
+ - **Type**: 选择 `command`
98
+ - **Command**: `npx -y @xzxzzx/bilibili-mcp` (如果 Windows 遇到路径问题,可尝试 `cmd /k npx -y @xzxzzx/bilibili-mcp`)
99
+ 4. 点击 **Add** 保存。配置完成后,可能需要点击列表旁的刷新按钮来加载工具库。
52
100
 
53
- 3. 检查配置状态:
54
- ```bash
55
- bilibili-mcp check
56
- ```
101
+ > **提示**:高级用户也可直接在项目根目录创建 `.cursor/mcp.json` 配置文件。
102
+
103
+ ### Claude Code
57
104
 
58
- 4. 直接在 Claude Code 中使用,无需额外配置
105
+ #### 方法一:通过 CLI 命令快速安装(推荐)
59
106
 
60
- #### 方法二:通过配置文件安装(适用于开发或自定义路径)
107
+ 直接在终端运行以下命令:
108
+
109
+ ```bash
110
+ claude mcp add bilibili-mcp --command "npx" --args "-y" --args "@xzxzzx/bilibili-mcp"
111
+ ```
112
+
113
+ 完成后重启 Claude Code 即可使用。
114
+
115
+ #### 方法二:通过配置文件手动添加(高级)
61
116
 
62
117
  1. 打开 Claude Code 配置文件(通常在 `~/.claude.json`)
63
- 2. 在 `mcpServers` 部分添加以下配置:
118
+ 2. 在 `mcpServers` 节点下添加:
64
119
 
65
- **使用 npx(推荐):**
66
120
  ```json
67
121
  {
68
122
  "mcpServers": {
@@ -73,317 +127,280 @@ npm install -g @xzxzzx/bilibili-mcp
73
127
  }
74
128
  }
75
129
  ```
130
+ 3. 保存后重启 Claude Code。
76
131
 
77
- **本地开发模式:**
78
- ```json
79
- {
80
- "mcpServers": {
81
- "bilibili-mcp": {
82
- "command": "node",
83
- "args": ["/path/to/bilibili-mcp/dist/index.js"]
84
- }
85
- }
86
- }
87
- ```
88
-
89
- 3. 保存配置文件
90
- 4. 重启 Claude Code 使配置生效
91
-
92
- #### 方法三:通过 CLI 命令安装(最简单)
132
+ #### 方法三:通过 npm 全局安装
93
133
 
94
- 直接运行以下命令:
134
+ 安装后可直接使用命令行工具管理配置:
95
135
 
96
136
  ```bash
97
- claude mcp add bilibili-mcp npx -y @xzxzzx/bilibili-mcp
137
+ npm install -g @xzxzzx/bilibili-mcp
98
138
  ```
99
139
 
100
- 然后重启 Claude Code 即可。
140
+ 安装验证与检查:
141
+ 1. `bilibili-mcp --help` (查看帮助)
142
+ 2. `bilibili-mcp config` (通过交互向导配置 Cookie)
143
+ 3. `bilibili-mcp check` (检查配置状态)
144
+
145
+ ### 🏗️ Trae (字节跳动官方 IDE)
101
146
 
102
- ### OpenCode
147
+ Trae 提供了非常便捷的 MCP 接入界面,国内/国际版操作一致:
103
148
 
104
- OpenCode 是一个开源的 AI 代码编辑器,同样支持 MCP 协议。
149
+ 1. 打开 Trae 设置:点击左下角齿轮 -> **Settings** (或 `Cmd/Ctrl + ,`)。
150
+ 2. 找到 **AI** 选项卡 -> **MCP**。
151
+ 3. 点击 **Add Server** 按钮。
152
+ 4. 在弹出窗口中填写:
153
+ - **Name**: `bilibili-mcp`
154
+ - **Type**: 选择 `command` (stdio)
155
+ - **Command**: `npx`
156
+ - **Arguments**: `["-y", "@xzxzzx/bilibili-mcp"]`
157
+ 5. 点击 **Save**。
105
158
 
106
- #### 方法一:通过配置文件安装
159
+ > **提示**:Trae 也会自动识别项目根目录下的 `.trae/mcp_config.json` 文件。
107
160
 
108
- 1. 创建或编辑 OpenCode 配置文件(位于 `~/.config/opencode/opencode.json`)
109
- 2. 在 `mcp` 部分添加以下配置:
161
+ ### 🌊 Windsurf (Codeium 官方 IDE)
110
162
 
163
+ Windsurf 同样支持通过标准 JSON 配置文件接入:
164
+
165
+ 1. 打开 Windsurf 设置:`Cmd/Ctrl + ,` -> 在左侧点击 **Advanced** -> **Cascade**。
166
+ 2. 点击 **Add custom server +** 或 **View raw config**(这将打开 `mcp_config.json`)。
167
+ 3. 如果是手动编辑,文件路径通常为:
168
+ - Windows: `%USERPROFILE%\.codeium\windsurf\mcp_config.json`
169
+ - macOS/Linux: `~/.codeium/windsurf/mcp_config.json`
170
+ 4. 在 `mcpServers` 节点下添加:
111
171
  ```json
112
172
  {
113
- "$schema": "https://opencode.ai/config.json",
114
- "mcp": {
173
+ "mcpServers": {
115
174
  "bilibili-mcp": {
116
- "type": "local",
117
- "command": ["npx", "-y", "@xzxzzx/bilibili-mcp"],
118
- "enabled": true
175
+ "command": "npx",
176
+ "args": ["-y", "@xzxzzx/bilibili-mcp"]
119
177
  }
120
178
  }
121
179
  }
122
180
  ```
181
+ 5. 保存并重启 Windsurf 后,在 Cascade 面板即可看到新添加的工具。
123
182
 
124
- 3. 保存配置文件
125
- 4. 重启 OpenCode 使配置生效
183
+ ### ⚡ Zed
126
184
 
127
- #### 方法二:本地开发模式
185
+ Zed 编辑器通过 `settings.json` 配置文件中的 `context_servers` 字段来支持 MCP:
128
186
 
129
- 如果你想在本地开发模式下使用:
187
+ 1. 打开 Zed 的设置文件:`Cmd + ,` (macOS) 或 `Ctrl + ,` (Windows/Linux)。
188
+ 2. 在 JSON 配置文件中添加 (或修改) `context_servers` 节点:
130
189
 
131
190
  ```json
132
191
  {
133
- "$schema": "https://opencode.ai/config.json",
134
- "mcp": {
192
+ "context_servers": {
135
193
  "bilibili-mcp": {
136
- "type": "local",
137
- "command": ["node", "/path/to/bilibili-mcp/dist/index.js"],
138
- "enabled": true
194
+ "command": "npx",
195
+ "args": ["-y", "@xzxzzx/bilibili-mcp"]
139
196
  }
140
197
  }
141
198
  }
142
199
  ```
200
+ 3. 保存文件。Zed 桌面端会自动重启 Context Server。
201
+ 4. 在编辑器中通过 `/` 触发 AI 辅助时,可以看到来自该服务器的 Context 或工具。
143
202
 
144
- ### 环境变量配置
145
-
146
- 1. 复制 `.env.example` 文件为 `.env`:
147
- ```bash
148
- cp .env.example .env
149
- ```
150
- 2. 打开 `.env` 文件,根据需要配置以下变量:
151
- - `BILI_JCT`:Bilibili 登录凭证(可选,用于获取评论)
152
- - `SESSDATA`:Bilibili 会话数据(可选,用于获取评论)
153
- - `BUVID3`:Bilibili 设备标识(可选)
154
-
155
- **注意**:这些变量通常可以从浏览器的开发者工具中获取(Cookie 存储)。
156
-
157
- #### 🔒 安全提示
158
-
159
- - **.env 文件不会被提交到 Git** - 已添加到 `.gitignore`
160
-
161
- - **请勿分享您的 .env 文件或 Cookie 值**
162
-
163
- - Cookie 定期会过期,需要重新获取
203
+ ### ♊ Gemini CLI (Google 官方命令行工具)
164
204
 
165
- #### 🔒 安全提示
205
+ Gemini CLI 通过全局或项目级的 `settings.json` 文件管理 MCP 服务器:
166
206
 
167
- - **.env 文件不会被提交到 Git** - 已添加到 `.gitignore`
168
- - **请勿分享您的 .env 文件或 Cookie 值**
169
- - Cookie 定期会过期,需要重新获取
170
- - 建议使用小号或测试账号的 Cookie
207
+ 1. 找到全局配置文件:
208
+ - Windows: `%USERPROFILE%\.gemini\settings.json`
209
+ - macOS/Linux: `~/.gemini/settings.json`
210
+ 2. 在 `mcpServers` 节点下添加:
171
211
 
172
- ## 工具使用示例
173
-
174
- ### 获取视频信息(含字幕)
175
212
  ```json
176
213
  {
177
- "name": "get_video_info",
178
- "arguments": {
179
- "bvid_or_url": "BV1xx4x1x7xx"
214
+ "mcpServers": {
215
+ "bilibili-mcp": {
216
+ "command": "npx",
217
+ "args": ["-y", "@xzxzzx/bilibili-mcp"]
218
+ }
180
219
  }
181
220
  }
182
221
  ```
222
+ 3. 如果您是通过项目级配置,请在项目根目录创建 `.gemini/settings.json`。
223
+ 4. 保存后,运行 `gemini` 命令时即可调用相关工具。
183
224
 
184
- ### 获取视频信息(指定语言)
225
+ > **国内版提示**:如果您在国内环境下使用,请确保已正确配置 `HTTP_PROXY` 或 `HTTPS_PROXY` 环境变量,以便 `npx` 顺利下载包以及 CLI 能够访问 Google API。
185
226
 
186
- ```json
187
- {
188
- "name": "get_video_info",
189
- "arguments": {
190
- "bvid_or_url": "BV1xx4x1x7xx",
191
- "preferred_lang": "en"
192
- }
193
- }
194
- ```
227
+ ### ⌨️ Codex CLI (OpenAI 官方命令行工具)
195
228
 
196
- ### 获取评论(简略模式)
229
+ Codex CLI 使用 TOML 格式的配置文件,并支持通过命令行快速添加:
197
230
 
198
- ```json
199
- {
200
- "name": "get_video_comments",
201
- "arguments": {
202
- "bvid_or_url": "BV1xx4x1x7xx",
203
- "detail_level": "brief"
204
- }
205
- }
231
+ **方式一:通过命令行添加(推荐)**
232
+ 直接在终端运行:
233
+ ```bash
234
+ codex mcp add bilibili-mcp -- npx -y @xzxzzx/bilibili-mcp
206
235
  ```
207
236
 
208
- ### 获取评论(详细模式)
237
+ **方式二:手动修改配置文件**
238
+ 1. 找到配置文件:
239
+ - 全局路径:`~/.codex/config.toml`
240
+ - 项目路径:`.codex/config.toml`
241
+ 2. 添加以下内容:
209
242
 
210
- ```json
211
- {
212
- "name": "get_video_comments",
213
- "arguments": {
214
- "bvid_or_url": "BV1xx4x1x7xx",
215
- "detail_level": "detailed"
216
- }
217
- }
243
+ ```toml
244
+ [mcp_servers.bilibili-mcp]
245
+ command = "npx"
246
+ args = ["-y", "@xzxzzx/bilibili-mcp"]
218
247
  ```
248
+ 保存后重启 Codex CLI 即可识别工具。
249
+
250
+ ### 🪐 Antigravity (Google 官方 IDE)
251
+
252
+ Antigravity 原生支持 MCP 协议。你可以通过 UI 界面或直接修改配置文件来添加:
219
253
 
220
- ## 返回数据格式
254
+ **方式一:通过界面添加(推荐)**
255
+ 1. 在编辑器侧边栏顶部点击 `...` 下拉菜单,打开 **MCP Store** 面板。
256
+ 2. 点击 **Manage MCP Servers -> View raw config**。
257
+ 3. 参考下方 JSON 格式填入配置。
221
258
 
222
- ### 视频信息返回格式
259
+ **方式二:手动修改配置文件**
260
+ - Windows 路径:`%USERPROFILE%\.gemini\antigravity\mcp_config.json`
261
+ - macOS/Linux 路径:`~/.gemini/antigravity/mcp_config.json`
223
262
 
263
+ 在 `mcpServers` 节点下添加:
224
264
  ```json
225
265
  {
226
- "data_source": "subtitle",
227
- "video_info": {
228
- "title": "视频标题",
229
- "description": "视频简介",
230
- "tags": ["标签1", "标签2"],
231
- "subtitle_text": "字幕内容..."
266
+ "mcpServers": {
267
+ "bilibili-mcp": {
268
+ "command": "npx",
269
+ "args": ["-y", "@xzxzzx/bilibili-mcp"]
270
+ }
232
271
  }
233
272
  }
234
273
  ```
274
+ 保存后配置即刻生效。
275
+
276
+ ### 📦 OpenCode
235
277
 
236
- 当 `data_source` 为 `description` 时,表示没有字幕,只有基本信息。
278
+ OpenCode 用户可以通过编辑配置文件接入:
237
279
 
238
- ### 评论返回格式
280
+ 1. 编辑 `~/.config/opencode/opencode.json`
281
+ 2. 在 `mcp` 节点下添加以下内容:
239
282
 
240
283
  ```json
241
284
  {
242
- "comments": [
243
- {
244
- "author": "用户名",
245
- "content": "评论内容",
246
- "likes": 123,
247
- "has_timestamp": true,
248
- "timestamp": "05:20"
285
+ "$schema": "https://opencode.ai/config.json",
286
+ "mcp": {
287
+ "bilibili-mcp": {
288
+ "type": "local",
289
+ "command": ["npx", "-y", "@xzxzzx/bilibili-mcp"],
290
+ "enabled": true
249
291
  }
250
- ],
251
- "summary": {
252
- "total_comments": 50,
253
- "comments_with_timestamp": 5
254
292
  }
255
293
  }
256
294
  ```
257
295
 
258
- ## 安全性
296
+ ---
259
297
 
260
- - ✅ 使用 Bilibili 公开 API
261
- - ✅ 敏感信息(Cookie)通过环境变量配置,不会提交到代码仓库
262
- - ✅ 不存储任何用户数据
263
- - ✅ 代码开源可审计
264
- - ✅ 错误输出使用 `console.error` 避免干扰 Stdio 协议
265
- - ⚠️ 用户需自行配置 B 站 Cookie(存储在本地 .env 文件中)
298
+ ---
266
299
 
267
- ## API 限流机制
300
+ ## ⚙️ 凭证配置
268
301
 
269
- 为了遵守 Bilibili 的 API 使用规范并防止被限制,本工具实现了请求限流机制:
302
+ 为了获取更完整的评论数据、绕过匿名访问限制并确保工具稳定运行,**必须**配置 B 站 Cookie。
270
303
 
271
- ### 限流配置
304
+ ### 🔑 第一步:获取 Bilibili Cookie
272
305
 
273
- | 配置项 | 值 |
274
- |--------|-----|
275
- | 请求间隔 | 500ms(0.5 秒) |
276
- | 请求方式 | 队列顺序执行,不并发 |
306
+ 1. 在电脑浏览器登录 [bilibili.com](https://www.bilibili.com)
307
+ 2. 按 `F12` 打开开发者工具(或在页面右键选择“检查”)。
308
+ 3. 切换到 **Application (应用)** 选项卡 -> 在左侧菜单找到 **Cookies** -> 点击 `https://www.bilibili.com`。
309
+ 4. 在右侧列表中找到以下三个关键变量,并记录它们的 **Value**:
310
+ - `SESSDATA`
311
+ - `bili_jct` (即 CSRF Token)
312
+ - `DedeUserID` (您的用户数字 ID)
277
313
 
278
- ### 为什么需要限流
314
+ > [!TIP]
315
+ > 如果您在 `Application` 找不到,也可以查看 `Network` (网络) 选项卡中的任意一个请求,在 `Headers` -> `Cookie` 字段中也能找到这些值。
279
316
 
280
- 1. **遵守 Bilibili API 规范** - 避免高频请求导致账号或 IP 被限制
281
- 2. **保证稳定性** - 降低 API 返回错误或被拒绝的风险
282
- 3. **尊重服务提供方** - 合理使用公共资源
317
+ ### 📝 第二步:应用凭证
283
318
 
284
- ### 对用户的影响
319
+ 您可以针对不同的使用习惯选择以下任一方式:
285
320
 
286
- | 操作 | 预计额外延迟 |
287
- |------|-------------|
288
- | 获取视频信息 | 约 1-1.5 秒(2-3 个 API 调用) |
289
- | 获取视频评论 | 约 1 秒(2 个 API 调用) |
321
+ #### 方式 A:使用 CLI 向导(推荐,适用于全局安装)
322
+ 如果您全局安装了 npm 包(`npm i -g @xzxzzx/bilibili-mcp`),直接运行:
323
+ ```bash
324
+ bilibili-mcp config
325
+ ```
326
+ 交互向导将引导您输入凭证并安全保存在**本地**配置目录(`~/.bilibili-mcp/config.json`)中。
290
327
 
291
- 对于视频总结的使用场景,这个延迟是**可接受**的,因为:
292
- - 用户通常一次只总结一个视频
293
- - 1-2 秒的等待时间在正常范围内
294
- - 避免被限流后完全无法使用的风险
328
+ #### 方式 B:手动配置环境变量(适用于本地开发或 Docker)
329
+ 在项目根目录创建 `.env` 文件,手动填入以下变量:
295
330
 
296
- ## 开发
331
+ | 变量名 | 说明 |
332
+ | :--- | :--- |
333
+ | **BILIBILI_SESSDATA** | `SESSDATA` 的值 |
334
+ | **BILIBILI_BILI_JCT** | `bili_jct` 的值 |
335
+ | **BILIBILI_DEDEUSERID** | `DedeUserID` 的值 |
297
336
 
298
- ```bash
299
- # 监听模式编译
300
- npm run watch
301
- ```
337
+ > [!WARNING]
338
+ > `.env` 文件仅供本地加载,**切勿提交到 Git 或公开仓库**。
302
339
 
303
- ## 许可证
340
+ #### 🔒 安全须知
304
341
 
305
- 本项目采用 **GNU General Public License v3.0** 许可证。
342
+ - **隐私保护**:您的凭证信息仅存储在您的本地设备上。本工具**绝不会**将其上传至除 Bilibili 官方 API 以外的任何第三方服务器。
343
+ - **配置隔离**:`.env` 文件已被 `.gitignore` 排除。
344
+ - **时效性**:Cookie 具有时效性。若遇到 `412` 或权限错误,请尝试更新 Cookie。
306
345
 
307
- 此许可证意味着:
308
- - 任何人都可以自由使用、修改和分发本软件
309
- - 修改后的代码必须以相同的 GPL-3.0 许可证开源
310
- - 禁止将代码用于闭源商业软件中(除非提供完整源代码)
346
+ ---
311
347
 
312
- 完整的许可证文本请参见 [LICENSE](./LICENSE) 文件。
348
+ ## 💡 工具使用示例
313
349
 
314
- ## 贡献与反馈
350
+ 在支持 MCP 的对话流中,你可以直接输入自然语言,底层会自动调用对应的 JSON 格式配置:
315
351
 
316
- ### 报告问题
352
+ ```json
353
+ // 获取默认语言视频信息
354
+ {
355
+ "name": "get_video_info",
356
+ "arguments": { "bvid_or_url": "BV1xx4x1x7xx" }
357
+ }
358
+
359
+ // 获取 10 条简短评估
360
+ {
361
+ "name": "get_video_comments",
362
+ "arguments": { "bvid_or_url": "BV1xx4x1x7xx", "detail_level": "brief" }
363
+ }
364
+ ```
317
365
 
318
- 如果您发现任何错误或有改进建议,请通过以下方式报告:
366
+ ---
319
367
 
320
- 1. 检查是否已存在类似问题
321
- 2. 点击 [Issues](https://github.com/365903728-oss/bilibili-mcp/issues) 页面上的 "New issue" 按钮
322
- 3. 选择适当的模板(Bug 报告或功能请求)
323
- 4. 填写详细信息,包括:
324
- - 遇到的问题描述
325
- - 复现步骤
326
- - 使用的操作系统和工具版本
327
- - 任何相关的错误信息或截图
368
+ ## 🛡️ API 限流机制
328
369
 
329
- ### 提交 Pull Request
370
+ 为保证工具长效可用并合规调用底层接口,已内置以下限流策略:
330
371
 
331
- 我们欢迎社区贡献代码:
372
+ - **请求间隔**:500ms(0.5秒)
373
+ - **执行方式**:加入队列顺序处理,禁止大并发请求。
332
374
 
333
- 1. Fork 项目
334
- 2. 创建一个新分支
335
- 3. 进行您的修改
336
- 4. 测试您的修改
337
- 5. 提交 Pull Request
375
+ ---
338
376
 
339
- ### 开发环境设置
377
+ ## 🛠️ 开发指南
340
378
 
341
379
  ```bash
342
- # 克隆仓库
380
+ # 1. 克隆仓库
343
381
  git clone https://github.com/365903728-oss/bilibili-mcp.git
344
-
345
- # 安装依赖
346
382
  cd bilibili-mcp
383
+
384
+ # 2. 安装依赖包
347
385
  npm install
348
386
 
349
- # 启动开发服务器
387
+ # 3. 启动监听与实时编译
350
388
  npm run watch
351
389
  ```
352
390
 
353
- ---
391
+ 本工具输出报错信息统一使用 `console.error`,以避免干扰 Stdio 协议数据。
354
392
 
355
- ## 免责声明
356
-
357
- > **重要法律声明:使用本工具前请仔细阅读以下条款**
358
-
359
- ### 商标声明
360
-
361
- **Bilibili (哔哩哔哩) 是哔哩哔哩公司的注册商标**,本项目为第三方开源工具,与哔哩哔哩公司无任何关联或合作关系。
362
-
363
- ### 非商业用途限制
364
-
365
- - 本项目**仅供个人学习和研究使用**
366
- - 严禁用于任何形式的商业分发或商业用途
367
- - 严禁用于大规模数据采集或爬虫行为
368
- - 严禁将本工具集成到商业产品或服务中
369
-
370
- ### 合规义务
393
+ ---
371
394
 
372
- 使用本工具时,您必须遵守:
373
- - **《中华人民共和国反不正当竞争法》**
374
- - Bilibili 的服务协议和用户协议
375
- - Bilibili 的 API 使用规范
395
+ ## ⚖️ 安全性与免责声明
376
396
 
377
- ### 责任自负
397
+ > **⚠️ 重要:使用本工具即代表您同意以下条款**
378
398
 
379
- - 开发者不对用户利用本工具进行的任何违规操作负责
380
- - 开发者不对因使用本工具导致的账号风险(包括但不限于账号封禁、IP 限制等)负责
381
- - 开发者不对因使用本工具可能产生的任何法律后果或经济损失负责
382
- - 用户应独立承担使用本工具的一切风险
399
+ - **商标声明**:Bilibili (哔哩哔哩) 是哔哩哔哩公司的注册商标。本项目为基于公开协议的第三方开源辅助工具。
400
+ - **协议精神**:本项目**仅供个人学习、辅助阅读使用**。坚决抵制任何用于商业剥削、大规模滥用抓取等违规操作。
401
+ - **责任归属**:所有请求均为用户本地发起。开发者不对由于高频使用等原因导致的账号风控或其他后果负责。
402
+ - **隐私保护**:本工具严格保护用户隐私,所有凭证信息仅在本地加密/非加密存储,除与 Bilibili 官方接口通信外,无任何后台上传行为。
383
403
 
384
- ### 其他注意事项
404
+ ### 许可证
385
405
 
386
- 1. **尊重版权** - 视频字幕、总结等内容可能受版权保护,请勿擅自传播
387
- 2. **数据隐私** - 本工具不存储、收集或传输任何用户的私密信息
388
- 3. **API 变更** - Bilibili 可能随时修改或关闭其 API,本工具可能因此无法正常工作
389
- 4. **请求限制** - 本工具已内置限流机制,但仍请合理使用,避免被限制
406
+ 基于 **GNU General Public License v3.0** 开源。