使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 实现的 B站视频搜索服务器。它提供了一个名为 'bilibili-search' 的工具,允许 MCP 客户端通过发送符合 MCP 协议的 JSON-RPC 请求来搜索 B站 视频,并获取结构化的视频信息。
主要功能点
- B站视频搜索: 提供关键词搜索 B站 视频的功能。
- 分页查询: 支持通过参数控制搜索结果的页码。
- 结果数量限制: 支持限制单次搜索返回的视频数量。
- 结构化视频信息: 返回清晰的视频信息,包括标题、作者、播放量、时长、发布日期、视频链接、封面图片等。
- MCP 标准接口: 完全遵循 MCP 协议,易于与任何兼容 MCP 协议的客户端集成。
安装步骤
-
安装 Node.js: 确保你的环境中安装了 Node.js (>= 20.12.0)。推荐使用 Node.js 官网 下载安装。
-
克隆仓库: 将 GitHub 仓库 'https://github.com/34892002/bilibili-mcp-js' 克隆到本地。
git clone https://github.com/34892002/bilibili-mcp-js cd bilibili-mcp-js -
安装依赖: 根据你选择的包管理器,运行以下命令安装项目依赖。
-
使用 bun (推荐): 如果你的环境安装了 bun, 运行:
bun i -
使用 npm: 如果你使用 npm,运行:
npm i
-
服务器配置
MCP 客户端需要配置以下信息才能连接到此 B站视频搜索 MCP 服务器。以下是 JSON 格式的配置信息,请复制到你的 MCP 客户端配置中。
{ "serverName": "bilibili-search", "command": "node", "args": [ "--loader", "ts-node/esm", "bilibili-mcp-server.ts" ], "transport": "stdio" }
配置参数说明:
- 'serverName': 服务器名称,这里设置为 'bilibili-search',用于在 MCP 客户端中标识该服务。
- 'command': 启动服务器的命令,这里使用 'node' 运行 Node.js 代码。
- 'args': 启动命令的参数列表。
- '--loader ts-node/esm': 使用 'ts-node/esm' loader 允许直接运行 TypeScript 代码,方便开发和测试。(注意:生产环境建议先将 TypeScript 代码编译为 JavaScript,并直接运行 JavaScript 文件,例如 'node bilibili-mcp-server.js',并相应修改 'args' 配置)
- 'bilibili-mcp-server.ts': 服务器入口文件,指向 'bilibili-mcp-server.ts'。
- 'transport': 传输协议,这里使用 'stdio',表示通过标准输入输出流进行通信。
基本使用方法
-
启动服务器: 根据你选择的包管理器,运行以下命令启动 MCP 服务器。
-
使用 bun:
bun bilibili-mcp-server.ts -
使用 npm:
npm run start
启动成功后,你会在控制台看到 'Bilibili Search MCP server running on stdio' 的提示信息。
-
-
MCP 客户端发送请求: 使用任何兼容 MCP 协议的客户端,按照以下步骤操作:
-
列出可用工具 (可选): 发送 'tools/list' 请求,可以获取服务器提供的工具列表,确认 'bilibili-search' 工具是否可用。
请求示例 (JSON-RPC):
{ "jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": { "version": "1.0" } } -
调用 B站 搜索工具: 发送 'tools/call' 请求,调用 'bilibili-search' 工具进行视频搜索。你需要提供 'keyword' 参数作为搜索关键词。还可以选择性地提供 'page' (页码) 和 'limit' (每页结果数) 参数。
请求示例 (JSON-RPC):
{ "jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": { "version": "0.1.0", "name": "bilibili-search", "arguments": { "keyword": "猫和老鼠", "limit": 5 } } }
-
-
接收响应: MCP 服务器会将搜索结果以 JSON-RPC 响应的形式返回给客户端。响应内容会包含搜索到的 B站 视频列表,每个视频包含标题、作者、播放量等详细信息。
响应示例 (JSON-RPC, 简化):
{ "jsonrpc": "2.0", "id": 2, "result": { "content": [ { "type": "text", "text": "[{\"title\":\"猫和老鼠\",\"author\":\"...\", ...}, {\"title\":\"...\":\"...\", ...}, ...]" } ] } }客户端需要解析 'content' 中的 JSON 字符串,以获取结构化的视频搜索结果。
通过以上步骤,你就可以使用此 B站视频搜索 MCP 服务器为你的 LLM 应用提供 B站 视频搜索能力。
信息
分类
网页与API