@xzxzzx/bilibili-mcp 1.7.2 → 1.9.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
@@ -4,9 +4,9 @@
4
4
  [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
5
5
  [![npm downloads](https://img.shields.io/npm/dm/@xzxzzx/bilibili-mcp.svg)](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp)
6
6
 
7
- Bilibili MCP server — 让 Claude、Cursor、Codex 等 AI 客户端直接读取 Bilibili 视频字幕、转录、元数据和热门评论的 MCP server。
7
+ Bilibili MCP server — 让 Claude、Cursor、Codex 等 AI 客户端直接搜索 Bilibili 视频,并读取字幕、转录、元数据和热门评论的 MCP server。
8
8
 
9
- 🌐 [English Documentation](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/README_EN.md) · 📜 [更新日志](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/CHANGELOG.md) · 📦 [npm](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp) · 🚀 [Release v1.7.2](https://github.com/XZXZZX-Ai/bilibili-mcp/releases/tag/v1.7.2)
9
+ 🌐 [English Documentation](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/README_EN.md) · 📜 [更新日志](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/CHANGELOG.md) · 📦 [npm](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp) · 🚀 [Release v1.8.0](https://github.com/XZXZZX-Ai/bilibili-mcp/releases/tag/v1.8.0)
10
10
 
11
11
  > [!TIP]
12
12
  > ⚠️ 你可以把下方“用 agent 工具帮你安装”的提示词复制给 Codex、Claude Code、Cursor 等 agent,让它帮你完成 MCP 客户端接入和 Cookie 配置引导。为了稳定获取字幕、转录和评论,安装后仍需配置 B 站 Cookie(agent会引导你);不要把 Cookie 写进 MCP 客户端配置。Metadata 可能无需 Cookie。详见 [**凭证配置**](#️-凭证配置)。
@@ -85,8 +85,9 @@ npx -y @xzxzzx/bilibili-mcp@latest check
85
85
  - [3. 视频转录 (`get_video_transcript`)](#3-视频转录-get_video_transcript)
86
86
  - [4. 视频元数据 (`get_video_metadata`)](#4-视频元数据-get_video_metadata)
87
87
  - [5. 视频章节 (`get_video_chapters`)](#5-视频章节-get_video_chapters)
88
- - [6. 凭证助手工具](#6-凭证助手工具)
89
- - [7. 行为说明与错误处理](#7-行为说明与错误处理)
88
+ - [6. 视频发现 (`search_bilibili_videos`)](#6-视频发现-search_bilibili_videos)
89
+ - [7. 凭证助手工具](#7-凭证助手工具)
90
+ - [8. 行为说明与错误处理](#8-行为说明与错误处理)
90
91
  - [📋 环境要求](#-环境要求)
91
92
  - [🚀 客户端接入方式](#-客户端接入方式)
92
93
  - [⚙️ 凭证配置](#️-凭证配置)
@@ -124,6 +125,7 @@ npx -y @xzxzzx/bilibili-mcp@latest check
124
125
  - 支持指定偏好语言(默认按 `zh-Hans` > `ai-zh` > `zh-CN` > `zh-Hant` > `en` 优先级选择)
125
126
  - 支持多P分集选择、时间戳输出和时间区间过滤
126
127
  - 支持可选关键词搜索:返回带上下文的时间戳匹配列表(大小写不敏感字面匹配)
128
+ - 成功调用会同时返回向后兼容的格式化 JSON 文本和内容相同的 MCP `structuredContent`
127
129
  - 可选参数:
128
130
  - `preferred_lang`: 偏好字幕语言代码
129
131
  - `fallback_to_description`: 字幕不可用时是否降级为视频描述(默认 `false`)
@@ -136,6 +138,9 @@ npx -y @xzxzzx/bilibili-mcp@latest check
136
138
  - 默认不降级:无字幕时返回 `SUBTITLE_UNAVAILABLE` 错误
137
139
  - 时间戳/区间过滤/关键词搜索与描述降级不兼容:请求 timed 输出或搜索时不会静默降级
138
140
  - Cookie 失效时始终返回 `COOKIE_EXPIRED`,不静默降级
141
+ - 证据链接:
142
+ - 成功结果根字段 `source_url`:指向当前选中 Part 的 Bilibili 浏览器源 URL(多 P 视频附加 `p=<page>`)
143
+ - 关键词搜索的每个 `matches[]` 项附带 `timestamp_url`:在 `source_url` 基础上叠加 `t=<start_seconds>`,直达命中字幕的播放时刻
139
144
 
140
145
  ### 4. 视频元数据 (`get_video_metadata`)
141
146
  - 返回视频标题、作者、时长、发布时间、描述、标签、播放/点赞/投币等统计信息
@@ -147,13 +152,19 @@ npx -y @xzxzzx/bilibili-mcp@latest check
147
152
  - 无章节时返回空列表(`chapters: []`),不推断章节
148
153
  - 可选参数 `page`:多P视频分集编号
149
154
 
150
- ### 6. 凭证助手工具
155
+ ### 6. 视频发现 (`search_bilibili_videos`)
156
+
157
+ - 按关键词返回 Bilibili 综合排序的普通视频候选;默认 5 条,最多 10 条。
158
+ - 候选只包含可选择和传给现有工具的元数据,不自动获取字幕、评论,也不进行 AI 重排。
159
+ - 必须先配置且登录 Bilibili Cookie;成功结果同时提供格式化 JSON 文本和内容相同的 MCP `structuredContent`。
160
+
161
+ ### 7. 凭证助手工具
151
162
 
152
163
  - `get_credential_setup_instructions`: 返回安全的 Bilibili Cookie 配置命令和说明。AI agent 安装此 MCP 后可调用此工具引导用户完成配置。
153
164
  - `check_bilibili_credentials`: 检查凭证是否已配置并处于登录状态,不返回任何 Cookie 值。配置缺失或失效时返回下一步操作指引。
154
165
  - `check_mcp_update`: 检查本地包版本与 npm latest 是否一致,并返回 `npx @latest` 或全局安装的安全更新指引。
155
166
 
156
- ### 7. 行为说明与错误处理
167
+ ### 8. 行为说明与错误处理
157
168
 
158
169
  - **Cookie 过期智能检测**:当字幕获取为空时自动验证登录状态,区分“无字幕视频”与“凭证失效”,并抛出明确的 `COOKIE_EXPIRED` 错误,避免静默降级。
159
170
 
@@ -162,6 +173,7 @@ npx -y @xzxzzx/bilibili-mcp@latest check
162
173
  - 部分公开视频元数据(`get_video_metadata`)可能在未登录状态下工作。
163
174
  - 字幕(`get_video_info`、`get_video_transcript`)在未登录时可能无法获取、不完整或返回空结果。
164
175
  - 评论(`get_video_comments`)在未登录时可能不完整、被限流或返回空列表。
176
+ - 视频发现(`search_bilibili_videos`)强制检查已配置且有效的登录凭证;不提供匿名降级。
165
177
  - 不建议依赖无 Cookie 模式获取字幕或评论。
166
178
 
167
179
  #### Cookie 凭据来源
@@ -1246,6 +1258,7 @@ BILIBILI_DEDEUSERID=<your_dedeuserid>
1246
1258
 
1247
1259
  | 目标 | 推荐工具 | 返回重点 |
1248
1260
  |---|---|---|
1261
+ | 只有主题,还没有视频链接 | `search_bilibili_videos` | 最多 10 个普通视频候选及可继续调用的 BVID;不自动抓取字幕或评论 |
1249
1262
  | 想让 AI 总结一个视频 | `get_video_info` | 字幕优先;无字幕时返回标题、简介、标签 |
1250
1263
  | 只想拿完整转录文本或关键词定位 | `get_video_transcript` | 纯字幕文本、语言、数据来源;支持时间戳、区间过滤和关键词搜索 |
1251
1264
  | 想查看标题、作者、播放量等结构化信息 | `get_video_metadata` | 标题、作者、时长、发布时间、标签、统计数据、多P分集列表(`pages`) |
@@ -1304,6 +1317,24 @@ BILIBILI_DEDEUSERID=<your_dedeuserid>
1304
1317
 
1305
1318
  返回内容:`current_version`、`latest_version`、`update_available`、`recommended_mcp_config`、`update_commands`,以及双语 `notes_en` / `notes_zh`;不会自动更新包。
1306
1319
 
1320
+ ### `search_bilibili_videos`
1321
+
1322
+ **适合**:只有一个主题,需要先在 Bilibili 内找到少量候选视频。
1323
+
1324
+ 请求示例:
1325
+
1326
+ ```json
1327
+ {
1328
+ "name": "search_bilibili_videos",
1329
+ "arguments": {
1330
+ "query": "MCP 入门",
1331
+ "limit": 5
1332
+ }
1333
+ }
1334
+ ```
1335
+
1336
+ 返回内容:综合排序的普通视频候选及其 `bvid`、标题、作者、时长、发布时间、播放量、简介片段和源链接。搜索需要有效登录凭证,且不会自动读取候选视频的字幕或评论。
1337
+
1307
1338
  ### `get_video_transcript`
1308
1339
 
1309
1340
  **适合**:需要把视频内容交给 AI 做摘要、笔记、问答或知识整理。
@@ -1510,7 +1541,7 @@ npm run watch
1510
1541
 
1511
1542
  1. **初版生成**:由 **Claude Code** (搭载 **GLM-4.7** 模型) 快速搭建核心架构与基础逻辑。
1512
1543
  2. **调试与优化**:在 **Antigravity** 环境下,利用 **Claude** 和 **Gemini** 模型进行深度的 Bug 修复与功能增强,确保了字幕提取与评论分析的稳定性。
1513
- 3. **迭代与扩展**:由 **Codex** 进行架构决策与计划分解,通过 **Paseo** 启动 **Claude Code** 执行实现;目前覆盖 30+ AI 客户端的 MCP 接入配置、8 个 MCP 工具、286 个单元测试。
1544
+ 3. **迭代与扩展**:由 **Codex** 进行架构决策、计划分解和直接实现,或按任务通过 **Paseo** 启动 **Claude Code**;目前覆盖 30+ AI 客户端的 MCP 接入配置、9 个 MCP 工具、327 个单元测试。
1514
1545
 
1515
1546
  ---
1516
1547
 
@@ -1522,4 +1553,3 @@ npm run watch
1522
1553
  - **项目讨论**:在 [GitHub Discussions](https://github.com/XZXZZX-Ai/bilibili-mcp/discussions) 中交流。
1523
1554
 
1524
1555
  感谢您的支持!
1525
-
package/README_EN.md CHANGED
@@ -4,9 +4,9 @@
4
4
  [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
5
5
  [![npm downloads](https://img.shields.io/npm/dm/@xzxzzx/bilibili-mcp.svg)](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp)
6
6
 
7
- MCP server that gives AI clients access to Bilibili video subtitles, transcripts, metadata, and popular comments.
7
+ MCP server that lets AI clients search Bilibili videos and access subtitles, transcripts, metadata, and popular comments.
8
8
 
9
- View in [简体中文](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/README.md) · 📜 [Changelog](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/CHANGELOG_EN.md) · 📦 [npm](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp) · 🚀 [Release v1.7.2](https://github.com/XZXZZX-Ai/bilibili-mcp/releases/tag/v1.7.2)
9
+ View in [简体中文](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/README.md) · 📜 [Changelog](https://github.com/XZXZZX-Ai/bilibili-mcp/blob/master/CHANGELOG_EN.md) · 📦 [npm](https://www.npmjs.com/package/@xzxzzx/bilibili-mcp) · 🚀 [Release v1.8.0](https://github.com/XZXZZX-Ai/bilibili-mcp/releases/tag/v1.8.0)
10
10
 
11
11
  > [!TIP]
12
12
  > ⚠️ You can copy the "Install With Your Agent" prompt below to Codex, Claude Code, Cursor, or another agent and let it add this MCP server to your client and guide Cookie setup. For reliable subtitles, transcripts, and comments, you still need to configure Bilibili Cookies after installation; do not write Cookies into MCP client config. Metadata may work without cookies. See [**Credential Configuration**](#-credential-configuration).
@@ -85,8 +85,9 @@ After the MCP server is connected, if available, call get_credential_setup_instr
85
85
  - [3. Video Transcript (`get_video_transcript`)](#3-video-transcript-get_video_transcript)
86
86
  - [4. Video Metadata (`get_video_metadata`)](#4-video-metadata-get_video_metadata)
87
87
  - [5. Video Chapters (`get_video_chapters`)](#5-video-chapters-get_video_chapters)
88
- - [6. Credential Helper Tools](#6-credential-helper-tools)
89
- - [7. Behavior and Error Handling](#7-behavior-and-error-handling)
88
+ - [6. Video Discovery (`search_bilibili_videos`)](#6-video-discovery-search_bilibili_videos)
89
+ - [7. Credential Helper Tools](#7-credential-helper-tools)
90
+ - [8. Behavior and Error Handling](#8-behavior-and-error-handling)
90
91
  - [📋 Requirements](#-requirements)
91
92
  - [🚀 Client Setup](#-client-setup)
92
93
  - [⚙️ Credential Configuration](#-credential-configuration)
@@ -123,6 +124,7 @@ After the MCP server is connected, if available, call get_credential_setup_instr
123
124
  - Returns clean subtitle text, joined by newlines.
124
125
  - Supports preferred language selection (defaults to `zh-Hans` > `ai-zh` > `zh-CN` > `zh-Hant` > `en` priority).
125
126
  - Supports multi-Part selection, timestamp output, time-range filtering, and optional keyword search.
127
+ - Successful calls return both the backward-compatible formatted JSON text and the same data as MCP `structuredContent`.
126
128
  - Optional parameters:
127
129
  - `preferred_lang`: Preferred subtitle language code.
128
130
  - `fallback_to_description`: Fall back to video description if subtitles unavailable (default `false`).
@@ -135,6 +137,9 @@ After the MCP server is connected, if available, call get_credential_setup_instr
135
137
  - By default, returns `SUBTITLE_UNAVAILABLE` error when no subtitles exist.
136
138
  - Timestamps/range filtering/keyword search is incompatible with description fallback.
137
139
  - Cookie expiration always returns `COOKIE_EXPIRED`, never silently falls back.
140
+ - Evidence links:
141
+ - Root `source_url` on every successful result: browser URL of the selected Part (multi-Part videos append `p=<page>`).
142
+ - `timestamp_url` on each search `matches[]` item: same as `source_url` plus `t=<start_seconds>`, opening the player at the matched subtitle.
138
143
 
139
144
  ### 4. Video Metadata (`get_video_metadata`)
140
145
  - Returns video title, author, duration, publish date, description, tags, and stats (views, likes, coins, etc.).
@@ -146,13 +151,19 @@ After the MCP server is connected, if available, call get_credential_setup_instr
146
151
  - Returns empty `chapters` array when no Chapters exist; never infers Chapters.
147
152
  - Accepts optional `page` parameter for multi-Part videos.
148
153
 
149
- ### 6. Credential Helper Tools
154
+ ### 6. Video Discovery (`search_bilibili_videos`)
155
+
156
+ - Returns normal Video candidates in Bilibili's comprehensive order; 5 by default and at most 10.
157
+ - Candidate metadata is for selection and follow-up calls only; the tool does not fetch subtitles/comments or apply AI re-ranking.
158
+ - Requires configured, logged-in Bilibili Cookies; success returns formatted JSON text plus identical MCP `structuredContent`.
159
+
160
+ ### 7. Credential Helper Tools
150
161
 
151
162
  - `get_credential_setup_instructions`: Returns safe setup commands for Bilibili Cookie configuration. AI agents installing this MCP can call this tool to guide users through setup.
152
163
  - `check_bilibili_credentials`: Checks whether credentials are configured and logged in without returning Cookie values. Returns next steps when credentials are missing or invalid.
153
164
  - `check_mcp_update`: Checks the local package version against npm latest and returns safe update guidance for `npx @latest` or global installs.
154
165
 
155
- ### 7. Behavior and Error Handling
166
+ ### 8. Behavior and Error Handling
156
167
 
157
168
  - **Intelligent Cookie Expiration Detection**: Automatically verifies login status when subtitles are empty, distinguishing between "videos without subtitles" and "invalid credentials," and throwing a clear `COOKIE_EXPIRED` error to prevent silent degradation.
158
169
 
@@ -161,6 +172,7 @@ After the MCP server is connected, if available, call get_credential_setup_instr
161
172
  - Some public video metadata (`get_video_metadata`) may work without authentication.
162
173
  - Subtitles (`get_video_info`, `get_video_transcript`) may be unavailable, incomplete, or fail without authentication.
163
174
  - Comments (`get_video_comments`) may be incomplete, empty, or rate-limited without authentication.
175
+ - Video discovery (`search_bilibili_videos`) requires configured, valid login credentials and never falls back to anonymous search.
164
176
  - Do not rely on cookie-less mode for reliable subtitle or comment access.
165
177
 
166
178
  #### Credential Sources
@@ -1245,6 +1257,7 @@ Do not share cookies with others. Do not paste them into public chats, issues, P
1245
1257
 
1246
1258
  | Goal | Recommended tool | What you get |
1247
1259
  |---|---|---|
1260
+ | Start from a topic without a video link | `search_bilibili_videos` | Up to 10 normal Video candidates with reusable BVIDs; no automatic subtitle or comment retrieval |
1248
1261
  | Summarize a video | `get_video_info` | Subtitles first; falls back to title, description, tags |
1249
1262
  | Get clean transcript text or locate keywords | `get_video_transcript` | Plain subtitle text, language, data source; supports timestamps, range filtering, and keyword search |
1250
1263
  | See structured metadata | `get_video_metadata` | Title, author, duration, publish date, tags, stats, multi-Part listing |
@@ -1303,6 +1316,24 @@ Request:
1303
1316
 
1304
1317
  Returns: `current_version`, `latest_version`, `update_available`, `recommended_mcp_config`, `update_commands`, and bilingual `notes_en` / `notes_zh`; never updates packages automatically.
1305
1318
 
1319
+ ### `search_bilibili_videos`
1320
+
1321
+ **Best for**: starting with a topic and finding a small candidate set on Bilibili.
1322
+
1323
+ Request:
1324
+
1325
+ ```json
1326
+ {
1327
+ "name": "search_bilibili_videos",
1328
+ "arguments": {
1329
+ "query": "MCP tutorial",
1330
+ "limit": 5
1331
+ }
1332
+ }
1333
+ ```
1334
+
1335
+ Returns: normal Video candidates in comprehensive order with `bvid`, title, author, duration, publish time, view count, bounded description, and source URL. Search requires valid logged-in credentials and never fetches candidate subtitles or comments automatically.
1336
+
1306
1337
  ### `get_video_transcript`
1307
1338
 
1308
1339
  **Best for**: feeding video content into AI for summarization, note-taking, Q&A, or knowledge management.
@@ -1506,7 +1537,7 @@ This project is a crystal of AI-collaborative development, spanning from prototy
1506
1537
 
1507
1538
  1. **Initial Generation**: Core architecture and base logic were rapidly built by **Claude Code** (powered by **GLM-4.7** model).
1508
1539
  2. **Debugging & Optimization**: Bugs were fixed and features enhanced using **Claude** and **Gemini** models within the **Antigravity** environment, ensuring stable subtitle extraction and comment analysis.
1509
- 3. **Iteration & Expansion**: **Codex** handles architectural decisions and planning, launching **Claude Code** via **Paseo** for implementation; now covers 30+ AI client MCP configurations, 8 MCP tools, and 286 unit tests.
1540
+ 3. **Iteration & Expansion**: **Codex** handles architecture, planning, and direct implementation, or launches **Claude Code** through **Paseo** when appropriate; the project now covers 30+ AI client MCP configurations, 9 MCP tools, and 327 unit tests.
1510
1541
 
1511
1542
  ---
1512
1543
 
@@ -0,0 +1,3 @@
1
+ import type { VideoSearchData } from "./types.js";
2
+ export declare function searchBilibiliVideos(query: string, limit?: number): Promise<VideoSearchData>;
3
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/bilibili/search.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,YAAY,CAAC;AA+FxE,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,MAAM,EACb,KAAK,SAAI,GACR,OAAO,CAAC,eAAe,CAAC,CAyC1B"}
@@ -0,0 +1,113 @@
1
+ import { credentialManager } from "../utils/credentials.js";
2
+ import { BilibiliAPIError } from "../utils/errors.js";
3
+ import { isValidBVId } from "../utils/bvid.js";
4
+ import { checkLoginStatus, fetchWithoutWBI } from "./http.js";
5
+ const VIDEO_SEARCH_PATH = "/x/web-interface/wbi/search/type";
6
+ const DESCRIPTION_LIMIT = 200;
7
+ function createCredentialError() {
8
+ return new BilibiliAPIError('Current Bilibili credentials are expired or not logged in. Run "npx -y @xzxzzx/bilibili-mcp@latest config", then "npx -y @xzxzzx/bilibili-mcp@latest check", or update environment variables.', "COOKIE_EXPIRED");
9
+ }
10
+ function isRecord(value) {
11
+ return typeof value === "object" && value !== null;
12
+ }
13
+ function cleanSearchText(value) {
14
+ if (typeof value !== "string")
15
+ return "";
16
+ return value.replace(/<\/?em\b[^>]*>/gi, "").trim();
17
+ }
18
+ function parseDurationSeconds(value) {
19
+ if (typeof value !== "string")
20
+ return 0;
21
+ const parts = value.trim().split(":");
22
+ if ((parts.length !== 2 && parts.length !== 3) ||
23
+ parts.some((part) => !/^\d+$/.test(part))) {
24
+ return 0;
25
+ }
26
+ const values = parts.map(Number);
27
+ if (values.some((part) => !Number.isSafeInteger(part)))
28
+ return 0;
29
+ if (parts.length === 2) {
30
+ const [minutes, seconds] = values;
31
+ if (seconds >= 60)
32
+ return 0;
33
+ const total = minutes * 60 + seconds;
34
+ return Number.isSafeInteger(total) ? total : 0;
35
+ }
36
+ const [hours, minutes, seconds] = values;
37
+ if (minutes >= 60 || seconds >= 60)
38
+ return 0;
39
+ const total = hours * 3_600 + minutes * 60 + seconds;
40
+ return Number.isSafeInteger(total) ? total : 0;
41
+ }
42
+ function toPublishedAt(value) {
43
+ if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
44
+ return "";
45
+ }
46
+ const date = new Date(value * 1_000);
47
+ return Number.isNaN(date.getTime()) ? "" : date.toISOString();
48
+ }
49
+ function toViewCount(value) {
50
+ if (typeof value !== "number" || !Number.isFinite(value) || value < 0) {
51
+ return 0;
52
+ }
53
+ return Math.trunc(value);
54
+ }
55
+ function truncateDescription(value) {
56
+ const description = cleanSearchText(value);
57
+ const codePoints = Array.from(description);
58
+ if (codePoints.length <= DESCRIPTION_LIMIT)
59
+ return description;
60
+ return `${codePoints.slice(0, DESCRIPTION_LIMIT).join("")}…`;
61
+ }
62
+ function normalizeCandidate(value) {
63
+ if (!isRecord(value) || value.type !== "video")
64
+ return undefined;
65
+ if (typeof value.bvid !== "string" || !isValidBVId(value.bvid)) {
66
+ return undefined;
67
+ }
68
+ const title = cleanSearchText(value.title);
69
+ if (!title)
70
+ return undefined;
71
+ return {
72
+ bvid: value.bvid,
73
+ title,
74
+ author: cleanSearchText(value.author),
75
+ duration_seconds: parseDurationSeconds(value.duration),
76
+ published_at: toPublishedAt(value.pubdate),
77
+ view_count: toViewCount(value.play),
78
+ description: truncateDescription(value.description),
79
+ source_url: `https://www.bilibili.com/video/${value.bvid}/`,
80
+ };
81
+ }
82
+ export async function searchBilibiliVideos(query, limit = 5) {
83
+ const normalizedQuery = query.trim();
84
+ const authHeaders = credentialManager.getAuthHeaders();
85
+ if (typeof authHeaders.Cookie !== "string" ||
86
+ authHeaders.Cookie.trim().length === 0) {
87
+ throw createCredentialError();
88
+ }
89
+ const loginStatus = await checkLoginStatus();
90
+ if (!loginStatus.isLogin) {
91
+ throw createCredentialError();
92
+ }
93
+ const data = await fetchWithoutWBI(VIDEO_SEARCH_PATH, {
94
+ search_type: "video",
95
+ keyword: normalizedQuery,
96
+ page: 1,
97
+ page_size: limit,
98
+ }, authHeaders);
99
+ const rows = isRecord(data) && Array.isArray(data.result) ? data.result : [];
100
+ const results = [];
101
+ for (const row of rows) {
102
+ const candidate = normalizeCandidate(row);
103
+ if (candidate)
104
+ results.push(candidate);
105
+ if (results.length === limit)
106
+ break;
107
+ }
108
+ return {
109
+ query: normalizedQuery,
110
+ results,
111
+ };
112
+ }
113
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/bilibili/search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subtitle.d.ts","sourceRoot":"","sources":["../../src/bilibili/subtitle.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAIV,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,UAAU,GAAG,aAAa,CAAC;IACxC,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AA4LD;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,qBAAqB,CAAC,EAAE,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,OAAO,EAC3B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,uBAAuB,GACtC,OAAO,CAAC,mBAAmB,CAAC,CA+J9B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,CAAC,CAuJvB"}
1
+ {"version":3,"file":"subtitle.d.ts","sourceRoot":"","sources":["../../src/bilibili/subtitle.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAKV,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,UAAU,GAAG,aAAa,CAAC;IACxC,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH;AAkND;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,qBAAqB,CAAC,EAAE,OAAO,EAC/B,IAAI,CAAC,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,OAAO,EAC3B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,uBAAuB,GACtC,OAAO,CAAC,mBAAmB,CAAC,CAwK9B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,CAAC,CAuJvB"}
@@ -103,7 +103,7 @@ function mergeSubtitleText(body, includeTimestamps) {
103
103
  /**
104
104
  * 在过滤后的字幕段中搜索关键词,返回 Transcript Match 列表和紧凑 transcript。
105
105
  */
106
- function searchTranscript(body, query, maxMatches, contextSegments) {
106
+ function searchTranscript(body, query, maxMatches, contextSegments, sourceUrl) {
107
107
  if (body.length > MAX_SUBTITLE_BODY_ITEMS) {
108
108
  throw new Error("Subtitle body item count exceeds maximum limit");
109
109
  }
@@ -125,11 +125,14 @@ function searchTranscript(body, query, maxMatches, contextSegments) {
125
125
  for (let j = start; j <= end; j++) {
126
126
  contextIndices.add(j);
127
127
  }
128
+ const timestampUrl = new URL(sourceUrl);
129
+ timestampUrl.searchParams.set("t", String(hit.from));
128
130
  matches.push({
129
131
  start_seconds: hit.from,
130
132
  end_seconds: hit.to,
131
133
  content: hit.content,
132
134
  context: mergeSubtitleText(body.slice(start, end + 1), true),
135
+ timestamp_url: timestampUrl.toString(),
133
136
  });
134
137
  }
135
138
  const sortedIndices = [...contextIndices].sort((a, b) => a - b);
@@ -140,6 +143,18 @@ function searchTranscript(body, query, maxMatches, contextSegments) {
140
143
  compactTranscript: mergeSubtitleText(compactBody, true),
141
144
  };
142
145
  }
146
+ /**
147
+ * 构建 Part-aware Bilibili 浏览器源 URL。
148
+ * 单 P 视频不附加 `p`;多 P 视频附加 `p=<resolved page>`。
149
+ * 保留 extractBVId 返回的精确大小写。
150
+ */
151
+ function buildTranscriptSourceUrl(bvid, pages, resolvedPage) {
152
+ const url = new URL(`https://www.bilibili.com/video/${bvid}/`);
153
+ if (pages.length > 1) {
154
+ url.searchParams.set("p", String(resolvedPage));
155
+ }
156
+ return url.toString();
157
+ }
143
158
  /**
144
159
  * 获取纯视频转录文本
145
160
  *
@@ -157,6 +172,8 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
157
172
  const { cid, pages, videoData } = await resolvePartCid(bvidOrUrl, page);
158
173
  const title = videoData.title;
159
174
  const description = videoData.desc || "";
175
+ const resolvedPage = page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page;
176
+ const sourceUrl = buildTranscriptSourceUrl(bvid, pages, resolvedPage);
160
177
  // 获取字幕列表
161
178
  try {
162
179
  const subtitleData = await getVideoSubtitle(bvid, cid);
@@ -172,7 +189,8 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
172
189
  data_source: "description",
173
190
  transcript: description,
174
191
  title,
175
- page: page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page,
192
+ source_url: sourceUrl,
193
+ page: resolvedPage,
176
194
  };
177
195
  }
178
196
  throw new NoSubtitleError(`Video ${bvid} has no subtitles available`);
@@ -188,7 +206,8 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
188
206
  data_source: "description",
189
207
  transcript: description,
190
208
  title,
191
- page: page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page,
209
+ source_url: sourceUrl,
210
+ page: resolvedPage,
192
211
  };
193
212
  }
194
213
  throw new NoSubtitleError(`No suitable subtitle found for video ${bvid}`);
@@ -204,22 +223,23 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
204
223
  data_source: "description",
205
224
  transcript: description,
206
225
  title,
207
- page: page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page,
226
+ source_url: sourceUrl,
227
+ page: resolvedPage,
208
228
  };
209
229
  }
210
230
  throw new NoSubtitleError(`Subtitle body is empty for video ${bvid}`);
211
231
  }
212
- const resolvedPage = page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page;
213
232
  const body = filterSegmentsByRange(subtitleContent.body, startSeconds, endSeconds);
214
233
  if (wantsSearch) {
215
234
  const { query, max_matches, context_segments } = searchOptions;
216
- const { matches, totalMatches, compactTranscript } = searchTranscript(body, query, max_matches, context_segments);
235
+ const { matches, totalMatches, compactTranscript } = searchTranscript(body, query, max_matches, context_segments, sourceUrl);
217
236
  return {
218
237
  bvid,
219
238
  data_source: "subtitle",
220
239
  language: bestSubtitle.lan,
221
240
  transcript: compactTranscript,
222
241
  title,
242
+ source_url: sourceUrl,
223
243
  page: resolvedPage,
224
244
  query,
225
245
  total_matches: totalMatches,
@@ -235,6 +255,7 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
235
255
  language: bestSubtitle.lan,
236
256
  transcript,
237
257
  title,
258
+ source_url: sourceUrl,
238
259
  page: resolvedPage,
239
260
  };
240
261
  }
@@ -255,7 +276,8 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
255
276
  data_source: "description",
256
277
  transcript: description,
257
278
  title,
258
- page: page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page,
279
+ source_url: sourceUrl,
280
+ page: resolvedPage,
259
281
  };
260
282
  }
261
283
  // Other errors: fallback to description if enabled, else rethrow
@@ -268,7 +290,8 @@ export async function getVideoTranscriptData(bvidOrUrl, preferredLang, fallbackT
268
290
  data_source: "description",
269
291
  transcript: description,
270
292
  title,
271
- page: page ?? matchPartIdentity(videoData.cid, pages, videoData.title).page,
293
+ source_url: sourceUrl,
294
+ page: resolvedPage,
272
295
  };
273
296
  }
274
297
  throw error;
@@ -1 +1 @@
1
- {"version":3,"file":"subtitle.js","sourceRoot":"","sources":["../../src/bilibili/subtitle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subtitle.js","sourceRoot":"","sources":["../../src/bilibili/subtitle.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACxH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAkB,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAuB3D;;GAEG;AACH,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACzE,MAAM,uBAAuB,GAAG,KAAK,CAAC;AACtC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAEzC;;GAEG;AACH,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc;IACvD,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,4BAA4B,CAAC,IAAY;IACtD,MAAM,CAAC,IAAI,CACT,qDAAqD,EACrD,EAAE,IAAI,EAAE,EACR,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,gBAAgB,CACxB,SAAS,IAAI,yNAAyN,EACtO,gBAAgB,EAChB,SAAS,EACT,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,CACrB,CAAC;IACJ,CAAC;AACH,CAAC;AAID;;GAEG;AACH,SAAS,kBAAkB,CACzB,SAAiC,EACjC,aAAsB;IAEtB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;IACnB,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QACtG,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,SAAS;IACT,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAe;IACtC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACnC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACrG,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAC5B,IAAwB,EACxB,YAAqB,EACrB,UAAmB;IAEnB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,IAAI,YAAY,KAAK,SAAS,IAAI,GAAG,CAAC,EAAE,GAAG,YAAY;YAAE,OAAO,KAAK,CAAC;QACtE,IAAI,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,GAAG,UAAU;YAAE,OAAO,KAAK,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,IAAwB,EACxB,iBAA2B;IAE3B,IAAI,IAAI,CAAC,MAAM,GAAG,uBAAuB,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,iBAAiB;YAC5B,CAAC,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,OAAO,EAAE;YAC9E,CAAC,CAAC,OAAO,CAAC;QACZ,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,WAAW,IAAI,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,WAAW,GAAG,wBAAwB,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CACvB,IAAwB,EACxB,KAAa,EACb,UAAkB,EAClB,eAAuB,EACvB,SAAiB;IAMjB,IAAI,IAAI,CAAC,MAAM,GAAG,uBAAuB,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;IACzC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAElD,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,eAAe,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,GAAG,eAAe,CAAC,CAAC;QAE7D,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAErD,OAAO,CAAC,IAAI,CAAC;YACX,aAAa,EAAE,GAAG,CAAC,IAAI;YACvB,WAAW,EAAE,GAAG,CAAC,EAAE;YACnB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;YAC5D,aAAa,EAAE,YAAY,CAAC,QAAQ,EAAE;SACvC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1D,OAAO;QACL,OAAO;QACP,YAAY;QACZ,iBAAiB,EAAE,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC;KACxD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAC/B,IAAY,EACZ,KAAiB,EACjB,YAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,kCAAkC,IAAI,GAAG,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,SAAiB,EACjB,aAAsB,EACtB,qBAA+B,EAC/B,IAAa,EACb,iBAA2B,EAC3B,YAAqB,EACrB,UAAmB,EACnB,aAAuC;IAEvC,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,gBAAgB,GAAG,iBAAiB,IAAI,YAAY,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC;IACrG,MAAM,WAAW,GAAG,aAAa,KAAK,SAAS,CAAC;IAChD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAC9B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,IAAI,iBAAiB,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;IAC3F,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAEtE,SAAS;IACT,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEvD,IACE,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS;YAClC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAC5C,CAAC;YACD,MAAM,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,4FAA4F,CAC1G,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,IAAI;oBACJ,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE,WAAW;oBACvB,KAAK;oBACL,UAAU,EAAE,SAAS;oBACrB,IAAI,EAAE,YAAY;iBACnB,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,6BAA6B,CAC3C,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,kBAAkB,CACrC,YAAY,CAAC,QAAQ,CAAC,SAAS,EAC/B,aAAa,CACd,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,eAAe,CACvB,wCAAwC,IAAI,iEAAiE,CAC9G,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,IAAI;oBACJ,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE,WAAW;oBACvB,KAAK;oBACL,UAAU,EAAE,SAAS;oBACrB,IAAI,EAAE,YAAY;iBACnB,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,eAAe,CACvB,wCAAwC,IAAI,EAAE,CAC/C,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAC9C,YAAY,CAAC,YAAY,CAC1B,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChE,IAAI,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,eAAe,CACvB,oCAAoC,IAAI,iEAAiE,CAC1G,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,IAAI;oBACJ,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE,WAAW;oBACvB,KAAK;oBACL,UAAU,EAAE,SAAS;oBACrB,IAAI,EAAE,YAAY;iBACnB,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,eAAe,CACvB,oCAAoC,IAAI,EAAE,CAC3C,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAEnF,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,aAAc,CAAC;YAChE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAAG,gBAAgB,CACnE,IAAI,EACJ,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,SAAS,CACV,CAAC;YAEF,OAAO;gBACL,IAAI;gBACJ,WAAW,EAAE,UAAU;gBACvB,QAAQ,EAAE,YAAY,CAAC,GAAG;gBAC1B,UAAU,EAAE,iBAAiB;gBAC7B,KAAK;gBACL,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,YAAY;gBAClB,KAAK;gBACL,aAAa,EAAE,YAAY;gBAC3B,gBAAgB,EAAE,OAAO,CAAC,MAAM;gBAChC,SAAS,EAAE,YAAY,GAAG,WAAW;gBACrC,OAAO;aACR,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QAE9D,OAAO;YACL,IAAI;YACJ,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,YAAY,CAAC,GAAG;YAC1B,UAAU;YACV,KAAK;YACL,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;QAChC,IACE,KAAK,YAAY,gBAAgB;YACjC,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAC/B,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,qDAAqD;QACrD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,IAAI,CAAC,qBAAqB,IAAI,WAAW;gBAAE,MAAM,KAAK,CAAC;YACvD,IAAI,gBAAgB;gBAAE,MAAM,KAAK,CAAC;YAClC,OAAO;gBACL,IAAI;gBACJ,WAAW,EAAE,aAAa;gBAC1B,UAAU,EAAE,WAAW;gBACvB,KAAK;gBACL,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,YAAY;aACnB,CAAC;QACJ,CAAC;QACD,iEAAiE;QACjE,IAAI,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,IAAI,eAAe,CACvB,mCAAmC,IAAI,iEAAiE,CACzG,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,IAAI;gBACJ,WAAW,EAAE,aAAa;gBAC1B,UAAU,EAAE,WAAW;gBACvB,KAAK;gBACL,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,YAAY;aACnB,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,SAAiB,EACjB,aAAsB,EACtB,IAAa;IAEb,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAEpC,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;QAC9E,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,QAAQ,CAA6B,CAAC;QACnF,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1E,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAE3E,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAEjE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC9B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAClC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvE,SAAS;QACT,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAEvD,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,IAAI,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvF,MAAM,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBAEzC,qBAAqB;gBACrB,MAAM,CAAC,IAAI,CACT,wDAAwD,EACxD,EAAE,IAAI,EAAE,EACR,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;gBAEF,MAAM,MAAM,GAAiB;oBAC3B,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE;wBACV,KAAK;wBACL,WAAW,EAAE,WAAW,IAAI,YAAY;wBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;wBACtC,OAAO,EAAE,aAAa;wBACtB,iBAAiB,EAAE,OAAO;qBAC3B;iBACF,CAAC;gBACF,6BAA6B;gBAC7B,MAAM,CAAC,KAAK,CACV,qDAAqD,EACrD,EAAE,IAAI,EAAE,EACR,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;gBACF,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,SAAS;YACT,MAAM,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAExF,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAiB;oBAC3B,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE;wBACV,KAAK;wBACL,WAAW,EAAE,WAAW,IAAI,YAAY;wBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;wBACtC,OAAO,EAAE,aAAa;wBACtB,iBAAiB,EAAE,OAAO;qBAC3B;iBACF,CAAC;gBACF,6BAA6B;gBAC7B,MAAM,CAAC,KAAK,CACV,qDAAqD,EACrD,EAAE,IAAI,EAAE,EACR,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;gBACF,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,SAAS;YACT,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAE5E,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChE,MAAM,MAAM,GAAiB;oBAC3B,WAAW,EAAE,aAAa;oBAC1B,UAAU,EAAE;wBACV,KAAK;wBACL,WAAW,EAAE,WAAW,IAAI,YAAY;wBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;wBACtC,OAAO,EAAE,aAAa;wBACtB,iBAAiB,EAAE,OAAO;qBAC3B;iBACF,CAAC;gBACF,6BAA6B;gBAC7B,MAAM,CAAC,KAAK,CACV,qDAAqD,EACrD,EAAE,IAAI,EAAE,EACR,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;gBACF,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,SAAS;YACT,MAAM,YAAY,GAAG,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAiB;gBAC3B,WAAW,EAAE,UAAU;gBACvB,UAAU,EAAE;oBACV,KAAK;oBACL,WAAW;oBACX,IAAI;oBACJ,aAAa,EAAE,YAAY;oBAC3B,OAAO,EAAE,aAAa;oBACtB,iBAAiB,EAAE,OAAO;iBAC3B;aACF,CAAC;YACF,OAAO;YACP,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iCAAiC;YACjC,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACzE,MAAM,KAAK,CAAC;YACd,CAAC;YACD,sBAAsB;YACtB,MAAM,CAAC,IAAI,CACT,uDAAuD,EACvD,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAC/D,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;YAEF,MAAM,MAAM,GAAiB;gBAC3B,WAAW,EAAE,aAAa;gBAC1B,UAAU,EAAE;oBACV,KAAK;oBACL,WAAW,EAAE,WAAW,IAAI,YAAY;oBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACtC,OAAO,EAAE,aAAa;oBACtB,iBAAiB,EAAE,OAAO;iBAC3B;aACF,CAAC;YACF,uBAAuB;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CACV,wCAAwC,EACxC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,EAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CAAC;QACF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -133,6 +133,7 @@ export interface TranscriptMatch {
133
133
  end_seconds: number;
134
134
  content: string;
135
135
  context: string;
136
+ timestamp_url: string;
136
137
  }
137
138
  export interface VideoTranscriptData {
138
139
  bvid: string;
@@ -140,6 +141,7 @@ export interface VideoTranscriptData {
140
141
  language?: string;
141
142
  transcript: string;
142
143
  title: string;
144
+ source_url: string;
143
145
  page?: number;
144
146
  query?: string;
145
147
  total_matches?: number;
@@ -147,6 +149,20 @@ export interface VideoTranscriptData {
147
149
  truncated?: boolean;
148
150
  matches?: TranscriptMatch[];
149
151
  }
152
+ export interface VideoSearchCandidate {
153
+ bvid: string;
154
+ title: string;
155
+ author: string;
156
+ duration_seconds: number;
157
+ published_at: string;
158
+ view_count: number;
159
+ description: string;
160
+ source_url: string;
161
+ }
162
+ export interface VideoSearchData {
163
+ query: string;
164
+ results: VideoSearchCandidate[];
165
+ }
150
166
  export interface TranscriptSearchOptions {
151
167
  query: string;
152
168
  max_matches: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/bilibili/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/bilibili/types.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,12 @@ export declare function handleToolCall(name: string, args: ToolArgs): Promise<{
4
4
  type: "text";
5
5
  text: string;
6
6
  }[];
7
+ } | {
8
+ structuredContent: Record<string, unknown>;
9
+ content: {
10
+ type: "text";
11
+ text: string;
12
+ }[];
7
13
  }>;
8
14
  export {};
9
15
  //# sourceMappingURL=tool-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-handlers.d.ts","sourceRoot":"","sources":["../../src/server/tool-handlers.ts"],"names":[],"mappings":"AAoCA,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAEpD,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;;;;;GA0KhE"}
1
+ {"version":3,"file":"tool-handlers.d.ts","sourceRoot":"","sources":["../../src/server/tool-handlers.ts"],"names":[],"mappings":"AAsCA,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAEpD,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;;;;;;uBA0Hf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GA2ExE"}
@@ -2,6 +2,7 @@ import { getVideoChaptersData } from "../bilibili/chapters.js";
2
2
  import { getVideoCommentsData } from "../bilibili/comments.js";
3
3
  import { checkLoginStatus } from "../bilibili/http.js";
4
4
  import { getVideoMetadataData } from "../bilibili/metadata.js";
5
+ import { searchBilibiliVideos } from "../bilibili/search.js";
5
6
  import { getVideoInfoWithSubtitle, getVideoTranscriptData, } from "../bilibili/subtitle.js";
6
7
  import { getPreferredLanguage } from "../config.js";
7
8
  import { buildCredentialSetupInstructions, buildCredentialStatus, } from "../utils/credential-guidance.js";
@@ -9,7 +10,7 @@ import { buildStructuredErrorPayload } from "../utils/error-guidance.js";
9
10
  import { NoSubtitleError } from "../utils/errors.js";
10
11
  import { sanitizeBVInput } from "../utils/sanitization.js";
11
12
  import { buildPackageUpdateInfo } from "../utils/update-check.js";
12
- import { validateBoolean, validateBVInput, validateCommentLimit, validateCommentSort, validateContextSegments, validateDetailLevel, validateLanguage, validateMaxMatches, validatePage, validateQuery, validateTimestampRange, } from "../utils/validation.js";
13
+ import { validateBoolean, validateBVInput, validateCommentLimit, validateCommentSort, validateContextSegments, validateDetailLevel, validateLanguage, validateMaxMatches, validatePage, validateQuery, validateSearchLimit, validateTimestampRange, } from "../utils/validation.js";
13
14
  import { buildValidationErrorPayload, toErrorTextContent, toTextContent, } from "./error-response.js";
14
15
  export async function handleToolCall(name, args) {
15
16
  switch (name) {
@@ -112,7 +113,10 @@ export async function handleToolCall(name, args) {
112
113
  : undefined;
113
114
  try {
114
115
  const result = await getVideoTranscriptData(sanitizedBvidOrUrl, normalizedLang, fallbackToDescription, page, includeTimestamps, startSeconds, endSeconds, searchOptions);
115
- return toTextContent(result);
116
+ return {
117
+ ...toTextContent(result),
118
+ structuredContent: result,
119
+ };
116
120
  }
117
121
  catch (error) {
118
122
  if (error instanceof NoSubtitleError) {
@@ -151,6 +155,27 @@ export async function handleToolCall(name, args) {
151
155
  const result = await getVideoChaptersData(sanitizedBvidOrUrl, page);
152
156
  return toTextContent(result);
153
157
  }
158
+ case "search_bilibili_videos": {
159
+ const rawQuery = args?.query;
160
+ const rawLimit = args?.limit;
161
+ try {
162
+ if (rawQuery === undefined) {
163
+ throw new Error("query is required");
164
+ }
165
+ validateQuery(rawQuery);
166
+ validateSearchLimit(rawLimit);
167
+ }
168
+ catch (error) {
169
+ return toErrorTextContent(buildValidationErrorPayload(error));
170
+ }
171
+ const query = rawQuery.trim();
172
+ const limit = rawLimit === undefined ? 5 : rawLimit;
173
+ const result = await searchBilibiliVideos(query, limit);
174
+ return {
175
+ ...toTextContent(result),
176
+ structuredContent: result,
177
+ };
178
+ }
154
179
  default:
155
180
  throw new Error(`Unknown tool: ${name}`);
156
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tool-handlers.js","sourceRoot":"","sources":["../../src/server/tool-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-handlers.js","sourceRoot":"","sources":["../../src/server/tool-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-schemas.d.ts","sourceRoot":"","sources":["../../src/server/tool-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE/D,eAAO,MAAM,WAAW,EAAE,IAAI,EAoM7B,CAAC"}
1
+ {"version":3,"file":"tool-schemas.d.ts","sourceRoot":"","sources":["../../src/server/tool-schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE/D,eAAO,MAAM,WAAW,EAAE,IAAI,EAqS7B,CAAC"}
@@ -136,6 +136,46 @@ export const toolSchemas = [
136
136
  },
137
137
  required: ["bvid_or_url"],
138
138
  },
139
+ outputSchema: {
140
+ type: "object",
141
+ properties: {
142
+ bvid: { type: "string" },
143
+ data_source: {
144
+ type: "string",
145
+ enum: ["subtitle", "description"],
146
+ },
147
+ language: { type: "string" },
148
+ transcript: { type: "string" },
149
+ title: { type: "string" },
150
+ page: { type: "integer" },
151
+ source_url: { type: "string" },
152
+ query: { type: "string" },
153
+ total_matches: { type: "integer" },
154
+ returned_matches: { type: "integer" },
155
+ truncated: { type: "boolean" },
156
+ matches: {
157
+ type: "array",
158
+ items: {
159
+ type: "object",
160
+ properties: {
161
+ start_seconds: { type: "number" },
162
+ end_seconds: { type: "number" },
163
+ content: { type: "string" },
164
+ context: { type: "string" },
165
+ timestamp_url: { type: "string" },
166
+ },
167
+ required: [
168
+ "start_seconds",
169
+ "end_seconds",
170
+ "content",
171
+ "context",
172
+ "timestamp_url",
173
+ ],
174
+ },
175
+ },
176
+ },
177
+ required: ["bvid", "data_source", "transcript", "title", "source_url"],
178
+ },
139
179
  },
140
180
  {
141
181
  name: "get_video_metadata",
@@ -170,5 +210,60 @@ export const toolSchemas = [
170
210
  required: ["bvid_or_url"],
171
211
  },
172
212
  },
213
+ {
214
+ name: "search_bilibili_videos",
215
+ description: "按关键词搜索 Bilibili 视频,返回最多 10 个平台综合排序的候选元数据。不自动获取字幕、评论或重新排序。必须先配置并登录 Bilibili Cookie;如需帮助,请调用 get_credential_setup_instructions。",
216
+ inputSchema: {
217
+ type: "object",
218
+ properties: {
219
+ query: {
220
+ type: "string",
221
+ minLength: 1,
222
+ maxLength: 100,
223
+ description: "Bilibili 视频搜索关键词。trim 后必须非空,最多 100 字符。",
224
+ },
225
+ limit: {
226
+ type: "integer",
227
+ minimum: 1,
228
+ maximum: 10,
229
+ description: "可选,候选视频数量。默认 5,最大 10。",
230
+ },
231
+ },
232
+ required: ["query"],
233
+ },
234
+ outputSchema: {
235
+ type: "object",
236
+ properties: {
237
+ query: { type: "string" },
238
+ results: {
239
+ type: "array",
240
+ items: {
241
+ type: "object",
242
+ properties: {
243
+ bvid: { type: "string" },
244
+ title: { type: "string" },
245
+ author: { type: "string" },
246
+ duration_seconds: { type: "integer" },
247
+ published_at: { type: "string" },
248
+ view_count: { type: "integer" },
249
+ description: { type: "string" },
250
+ source_url: { type: "string" },
251
+ },
252
+ required: [
253
+ "bvid",
254
+ "title",
255
+ "author",
256
+ "duration_seconds",
257
+ "published_at",
258
+ "view_count",
259
+ "description",
260
+ "source_url",
261
+ ],
262
+ },
263
+ },
264
+ },
265
+ required: ["query", "results"],
266
+ },
267
+ },
173
268
  ];
174
269
  //# sourceMappingURL=tool-schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-schemas.js","sourceRoot":"","sources":["../../src/server/tool-schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-schemas.js","sourceRoot":"","sources":["../../src/server/tool-schemas.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,10 @@ export declare function validateBoolean(value: unknown, name: string): void;
47
47
  * 验证搜索 query:trim 后非空,最多 100 字符
48
48
  */
49
49
  export declare function validateQuery(query: unknown): void;
50
+ /**
51
+ * 验证视频搜索候选数量:整数 1-10
52
+ */
53
+ export declare function validateSearchLimit(value: unknown): void;
50
54
  /**
51
55
  * 验证 max_matches:整数 1-20
52
56
  */
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,GAAE,iBAAsB,GAC9B,IAAI,CAgBN;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAWnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAapD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAIxD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAUzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAMhD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,OAAO,GAClB,IAAI,CAoBN;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAIlE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAYlD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAQvD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAQ5D"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,GAAE,iBAAsB,GAC9B,IAAI,CAgBN;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAWnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAapD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAIxD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAUzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAMhD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,OAAO,GAClB,IAAI,CAoBN;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAIlE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAYlD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAQxD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAQvD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAQ5D"}
@@ -135,6 +135,19 @@ export function validateQuery(query) {
135
135
  throw new Error("query must not exceed 100 characters");
136
136
  }
137
137
  }
138
+ /**
139
+ * 验证视频搜索候选数量:整数 1-10
140
+ */
141
+ export function validateSearchLimit(value) {
142
+ if (value === undefined)
143
+ return;
144
+ if (typeof value !== "number" || !Number.isInteger(value)) {
145
+ throw new Error("limit must be an integer between 1 and 10");
146
+ }
147
+ if (value < 1 || value > 10) {
148
+ throw new Error("limit must be between 1 and 10");
149
+ }
150
+ }
138
151
  /**
139
152
  * 验证 max_matches:整数 1-20
140
153
  */
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xzxzzx/bilibili-mcp",
3
- "version": "1.7.2",
3
+ "version": "1.9.0",
4
4
  "description": "Bilibili MCP tool for video metadata, transcripts, subtitles, and comment summarization",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",