Skip to main content
Glama
Iseenope

bilibili-mcp-server

by Iseenope

Bilibili MCP Server

English | 中文

B 站的 MCP 服务。提供视频搜索、评论管理、弹幕字幕、用户信息、动态专栏、扫码登录、直播截图视觉分析等功能,共 31 个工具。

工具列表

类别

工具

数量

评论

bilibili_replybilibili_delete_commentbilibili_like_comment

3

搜索

bilibili_searchbilibili_search_hot

2

视频

bilibili_video_infobilibili_video_commentsbilibili_video_subtitlebilibili_video_danmakubilibili_hot

5

用户

bilibili_user_infobilibili_user_videosbilibili_user_favoritesbilibili_user_followbilibili_user_unfollowbilibili_user_followingsbilibili_user_followers

7

内容

bilibili_user_dynamicsbilibili_article_infobilibili_user_articles

3

消息

bilibili_detect_repliesbilibili_notifications

2

直播

bilibili_live_infobilibili_live_screenshot

2

登录

bilibili_loginbilibili_login_check

2

系统

bilibili_refresh_cookie

1

下载

bilibili_video_downloadbilibili_article_downloadbilibili_download_list

3

弹幕

bilibili_send_danmaku

1

Related MCP server: BiliStalkerMCP

快速开始

环境要求

  • Node.js 22+

  • B 站账号(用于需要登录的操作)

  • ffmpeg(视频下载工具需要;macOS: brew install ffmpeg,Windows: choco install ffmpeg,Linux: apt install ffmpeg

安装

# 直接运行
npx bilibili-mcp-server

# 或全局安装
npm install -g bilibili-mcp-server
bilibili-mcp-server

配置

支持环境变量或项目目录下的 .env 文件:

# 必填 - 从浏览器开发者工具 → Application → Cookies → bilibili.com 获取
export BILIBILI_SESSDATA=你的sessdata
export BILIBILI_BILI_JCT=你的bili_jct
export BILIBILI_DEDE_USER_ID=你的uid

# 可选 - Cookie 自动刷新
# 获取方式: bilibili.com → F12 → Console → 输入:
#   console.log(localStorage.getItem('ac_time_value'))
export BILIBILI_REFRESH_TOKEN=你的refresh_token

# 可选 - 完整 Cookie(热搜等功能需要)
# export BILIBILI_FULL_COOKIE="buvid3=xxx; buvid4=xxx; _uuid=xxx; ..."

# 可选
export BILIBILI_AUTO_REFRESH=true
export BILIBILI_COOKIE_FILE=/path/to/cookie.json
export BILIBILI_DETECT_FILE=/path/to/detect.json

MCP 客户端配置

{
  "mcpServers": {
    "bilibili": {
      "command": "npx",
      "args": ["-y", "bilibili-mcp-server"],
      "env": {
        "BILIBILI_SESSDATA": "你的sessdata",
        "BILIBILI_BILI_JCT": "你的bili_jct",
        "BILIBILI_DEDE_USER_ID": "你的uid"
      }
    }
  }
}

扫码登录

不想手动复制 Cookie 的话,可以调扫码登录:

  1. bilibili_login 获取二维码

  2. 手机 B 站 App 扫码

  3. bilibili_login_check 检测登录状态

  4. 登录成功自动保存 Cookie

工具说明

登录与认证

工具

功能

参数

bilibili_login

生成扫码登录二维码

-

bilibili_login_check

轮询扫码状态,登录成功自动保存

loginKey, maxRetries?

bilibili_refresh_cookie

手动触发 Cookie 刷新

-

评论管理

工具

功能

参数

bilibili_reply

发布评论或回复

videoId, message, parentRpid?

bilibili_delete_comment

删除自己的评论

videoId, rpid

bilibili_like_comment

点赞/取消赞

videoId, rpid, action

视频与搜索

工具

功能

参数

bilibili_search

搜索视频

keyword, order?, page?, duration?

bilibili_video_info

视频详情

videoId

bilibili_video_comments

获取评论列表

videoId, max?

bilibili_video_subtitle

获取字幕

videoId, lang?

bilibili_video_danmaku

获取弹幕

videoId, segment?

bilibili_hot

热门视频

page?, max?

bilibili_search_hot

热搜关键词

-

用户

工具

功能

参数

bilibili_user_info

用户信息

uid

bilibili_user_videos

UP 主视频列表

uid, max?

bilibili_user_favorites

收藏夹

uid, folderId?, max?

动态与专栏

工具

功能

参数

bilibili_user_dynamics

UP 主最新动态

uid, max?

bilibili_article_info

专栏文章详情

cvid

bilibili_user_articles

UP 主专栏列表

uid, max?

关注管理

工具

功能

参数

bilibili_user_follow

关注 UP 主

uid

bilibili_user_unfollow

取消关注

uid

bilibili_user_followings

关注列表

uid, page?, pageSize?

bilibili_user_followers

粉丝列表

uid, page?, pageSize?

关注/取关操作会被 B 站风控监控,不建议短时间内大量操作。

弹幕

工具

功能

参数

bilibili_send_danmaku

发送弹幕

videoId, cid, progress, message, color?, mode?

弹幕发送是高风控操作,建议每天不超过 5 条。

下载

工具

功能

参数

bilibili_video_download

下载视频(需 ffmpeg)

videoId, cid?, quality?, outputDir?

bilibili_article_download

下载专栏为 Markdown

cvid, outputDir?, downloadImages?

bilibili_download_list

查看已下载列表

outputDir?

视频下载会自动下载 DASH 音视频并用 ffmpeg 合并为 mp4。默认保存到 ./bilibili-downloads/

消息通知

工具

功能

参数

bilibili_detect_replies

检测新回复

max?

bilibili_notifications

查看未读通知

-

直播

工具

功能

参数

bilibili_live_info

查询直播间信息

uid

bilibili_live_screenshot

截取直播间当前画面(视觉分析)

uid

bilibili_live_screenshot 会把关键帧截图作为图片返回给模型,让具备视觉能力的 AI 分析直播内容。如模型无视觉能力,仅返回文字元数据。

项目结构

src/
├── index.ts
├── env.ts
├── config.ts
├── api/
│   ├── http.ts
│   ├── bilibili.ts
│   ├── wbi.ts
│   ├── cookie.ts
│   ├── login.ts
│   └── danmaku.ts
├── tools/
│   ├── comment.ts
│   ├── video.ts
│   ├── user.ts
│   ├── content.ts
│   ├── message.ts
│   ├── login.ts
│   └── live.ts
└── types/
    └── index.ts

开发

npm install
npm run dev    # 开发模式
npm run build  # 构建
npm test       # 测试

许可证

MIT

Available Tools

21 tools
bilibili_article_infoB

获取 B站 专栏文章的详细内容,包含标题、正文、发布时间、作者、数据统计等

ParametersJSON Schema
NameRequiredDescriptionDefault
cvidYes专栏文章 ID(CV 号,如 123456)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It lists output fields but does not disclose safety profile (read-only vs. destructive), authentication needs, rate limits, or error behavior (e.g., invalid cvid). For a tool with no annotations, this lack of behavioral context is a significant shortfall.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is front-loaded with core purpose and content details. Every word serves a purpose; no redundancy or filler. Excellent conciseness for a simple retrieval tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a straightforward info retrieval tool with one parameter and no output schema, the description covers purpose and output fields. However, it lacks usage guidelines, behavioral transparency, and error handling context. Adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter (cvid) already described as '专栏文章 ID(CV 号,如 123456)'. The description adds no additional meaning to the parameter beyond what the schema provides. Baseline of 3 is appropriate since schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool retrieves detailed content of Bilibili column articles, listing included fields (title, text, publication time, author, data statistics). The verb '获取' and resource '专栏文章的详细内容' are specific, and it is easily distinguished from sibling tools like bilibili_video_info (videos) or bilibili_user_articles (list of articles).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. No conditions or prerequisites mentioned, such as requiring login or a valid cvid. There is no indication of when not to use it, which is a gap given the many sibling tools covering Bilibili features.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_detect_repliesA

检测 B站视频/评论下的新回复,列出上次检查之后的新内容。不自动回复,需要人工确认后操作。

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNo最多检查几条(默认 20)
videoIdNo可选:指定视频 BV 号(如 BV1xx)过滤该视频的回复,不指定则查所有回复通知

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description carries full burden. It states it lists new content since last check and does not auto-reply, but does not disclose how 'last check' is tracked (stateful?), or any side effects, rate limits, or auth requirements. More detail on state management would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no fluff. Purpose is front-loaded, and every sentence adds value. Very concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description could explain the return format (e.g., list of reply objects). It says 'list new content' but not how results are structured. Also lacks details on pagination or what constitutes 'new'. Adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with clear descriptions for both parameters (max and videoId). The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool detects new replies under Bilibili videos/comments, listing new content since last check. It distinguishes from auto-reply by explicitly stating it does not auto-reply, which differentiates it from sibling siblings like 'bilibili_reply'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for detecting new replies and explicitly states it requires manual confirmation before operation, advising against auto-reply usage. However, it lacks explicit when-to-use and when-not-to-use guidance compared to alternatives like bilibili_video_comments or bilibili_notifications.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_download_listA

查看已下载的文件列表(按时间倒序)

ParametersJSON Schema
NameRequiredDescriptionDefault
outputDirNo下载目录,默认 ./bilibili-downloads./bilibili-downloads

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It correctly implies a read-only operation by stating 'view list', but does not explicitly confirm no side effects or other behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, front-loaded with the main purpose, and includes ordering detail. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional parameter and no output schema, the description is complete. It conveys the action and sort order adequately.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. The description adds no parameter details beyond the schema, which already documents the outputDir parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists downloaded files in reverse chronological order. It uses a specific verb ('view') and resource ('file list'), which distinguishes it from sibling tools like download or search. However, it does not explicitly differentiate from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor any conditions or prerequisites. The description only states the function without context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_hotC

获取 B站当前热门视频列表,包含播放量、弹幕数、点赞数等数据

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNo每页数量,默认 10
pageNo页码,默认 1

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so description must disclose behavioral traits. It only states it 'gets' data, implying read-only, but does not explicitly confirm safety, side effects, or authorization needs. No mention of data freshness, rate limits, or result size limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence front-loads the core purpose, including data fields. No unnecessary words. Could add structure like bullet points for clarity, but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, no annotations. Description provides minimal context: it returns a list with specific metrics. Lacks details on pagination, error handling, or data format. For a simple tool with two optional params, this is borderline adequate but still leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% as both parameters (max, page) have descriptions in the schema. The tool description adds no additional meaning beyond the schema. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool retrieves current hot video list from Bilibili with data like play count, danmaku count, likes. It uses a specific verb '获取' and resource '热门视频列表', making purpose clear. However, it does not explicitly differentiate from sibling tools like bilibili_search_hot, which may also return hot videos.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. No mention of prerequisites, typical use cases, or exclusions. The description lacks context about when this tool is appropriate compared to other Bilibili tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_live_infoB

查询 B站 UP 主的直播间信息。输入 uid(用户 ID),返回直播状态(是否开播)、直播间标题、人气值(热度)、关注数、直播分类、弹幕热词等。注意:人气值是热度指标,非真实观看人数

ParametersJSON Schema
NameRequiredDescriptionDefault
uidYesUP 主的用户 uid(可通过 bilibili_search 搜索获取)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations to rely on, so the description must disclose behavioral traits. It mentions that '人气值' is a heat indicator, not real viewership, which is helpful. However, it does not disclose whether authentication or cookies are required, what happens on invalid input, rate limits, or any side effects. For a read-like operation, basic safety is assumed but not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with only two short sentences. The first sentence states the core purpose, and the second lists key outputs with a crucial clarification. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (1 param, no output schema), so the description covers basic input-output expectations. It lists return fields and clarifies the popularity metric. However, it does not specify error handling (e.g., non-existent uid), authentication needs, or return format structure. Given no output schema, more detail on the response would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'uid', so baseline is 3. The description adds that uid can be obtained via bilibili_search, providing useful context beyond the schema. However, no additional semantic depth is added (e.g., format constraints, example values).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '查询' (query) and the resource 'B站 UP 主的直播间信息' (Bilibili UP主's live room information). It lists specific return fields (live status, title, popularity, followers, category, danmaku hot words), making the tool's function distinct from siblings like bilibili_user_info or bilibili_video_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternative sibling tools. No prerequisites, exclusions, or context for appropriate usage are mentioned. The only additional note is about the popularity metric, which is a behavioral clarification, not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_loginA

生成 B站 扫码登录二维码。返回二维码图片(Base64)和 login_key,将 login_key 传给 bilibili_login_check 检查登录状态

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only states the output (Base64 image and login_key) but does not disclose behavioral traits such as authentication requirements, rate limits, error handling, or QR code expiration. Minimal behavioral context beyond basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two concise sentences. The first sentence states the purpose directly, and the second adds return values and next steps. Every sentence is essential and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains the return values (Base64 image and login_key) and the next step. However, it omits potential details like QR code expiration time or error scenarios, which would improve completeness for a login tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so schema coverage is 100%. The description correctly focuses on the output, as there are no parameters to describe. This meets the baseline of 4 for no-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a Bilibili login QR code, returns a Base64 image and login_key, and instructs to pass the key to bilibili_login_check. This is specific and distinguishes from sibling tools like search or refresh.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for login by providing follow-up instructions (pass login_key to bilibili_login_check), but does not explicitly state when to use this tool vs alternatives like bilibili_login_check or bilibili_refresh_cookie. No when-not-to-use guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_login_checkA

检查 B站 扫码登录状态。调用 bilibili_login 获取二维码后,传入返回的 loginKey 进行轮询检查。扫码成功后自动保存 Cookie

ParametersJSON Schema
NameRequiredDescriptionDefault
loginKeyYesbilibili_login 返回的 loginKey
maxRetriesNo最多轮询次数(每次间隔 2 秒),默认 30 次约 60 秒

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses polling behavior (2-second intervals, max retries) and auto-saving cookies on success, but does not explain what happens on failure, timeout, or expired QR codes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with the primary function, and contains no unnecessary words. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite moderate complexity and no output schema, the description does not mention the return value or response structure. It is incomplete regarding what the tool outputs after polling (e.g., success/failure).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and descriptions for both parameters are adequate. The description adds context that loginKey comes from 'bilibili_login', but otherwise does not add meaning beyond schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks Bilibili scan login status, specifying the action ('检查 B站 扫码登录状态') and distinguishing from the sibling tool 'bilibili_login' which gets the QR code.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description instructs to call this tool after obtaining a loginKey from 'bilibili_login', providing clear context on when to use it. It does not explicitly mention when not to use or alternatives, but the sequential dependency is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_notificationsA

查看 B站未读消息概览,包含回复、@提及、点赞等通知

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description simply states what the tool does (view overview of unread messages). Does not disclose behavioral traits beyond the obvious (e.g., read-only nature, no side effects). Could be more transparent about return format or limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded, no wasted words. Perfectly concise for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but tool is simple and parameterless. Description provides enough context for an agent to understand the purpose. Could mention it returns a list/overview, but not necessary for basic understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist. Schema coverage is 100% (empty schema). Baseline for 0 params is 4; description adds no parameter info but none is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb '查看' (view) and the resource 'B站未读消息概览' (Bilibili unread message overview) with examples (replies, mentions, likes). Distinguishes from sibling tools like search, replies, video info, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. Usage is implied: when the agent needs to view unread notifications. No mention of alternatives or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_replyC

在 B站视频下发布评论或回复他人评论

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo评论区类型:1=视频(默认),12=专栏,17=动态
messageYes评论内容,最大 1000 字符
videoIdYes视频 BV 号(如 BV1xx)或 avid(数字)
rootRpidNo根评论 rpid(二级以上回复时使用)
parentRpidNo要回复的评论 rpid(楼中楼回复时使用)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must cover behavioral aspects. It only states the action (post/reply) but omits critical details: authentication needs, rate limits, idempotency, or the distinction between root and parent replies. The schema descriptions don't compensate for these gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no redundancy, directly communicates the core action. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has 5 parameters and no output schema or annotations. The description is too brief to cover usage scenarios (e.g., when to use rootRpid vs parentRpid, character limits, response handling). Leaves the agent needing to infer important behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 5 parameters. The description adds no extra meaning beyond the schema; it only summarizes the action. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states verb '发布评论或回复' (post/reply) and resource 'B站视频下' (under Bilibili videos), clearly distinguishing from siblings like bilibili_video_comments (view comments) and bilibili_send_danmaku (send danmaku). However, the schema includes 'type' for columns and dynamics, making the scope slightly narrower than described.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives (e.g., bilibili_send_danmaku for scrolling messages). No prerequisites like login requirement or context about replying to existing comments.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_search_hotA

获取 B站热搜关键词列表

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It only states 'get list' without mentioning authentication, rate limits, or data freshness, leaving significant gaps for a parameterless tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, direct verb-object structure, no redundant words. Highly concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the tool is simple, the description omits details about the response format and how 'hot' is defined. Given no output schema and no siblings comparisons, it is minimally complete but could be improved.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has zero parameters and schema coverage is 100%. Baseline 4 applies; no additional parameter description is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a list of Bilibili hot search keywords, which is specific and distinguishable from siblings like 'bilibili_search' and 'bilibili_hot'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as 'bilibili_hot' or 'bilibili_search'. The description lacks context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_send_danmakuA

向视频发送一条弹幕。B 站对此操作有极严格的风控,新账号或操作频繁的账号可能直接被风控拦截。建议每天不超过 5 条。

ParametersJSON Schema
NameRequiredDescriptionDefault
cidYes视频分 P 的 cid(通过 bilibili_video_info 获取)
modeNo弹幕模式:1=滚动, 4=底部, 5=顶部, 7=高级
colorNo弹幕颜色(十进制 RGB),默认 16777215(白色)
messageYes弹幕内容(最多 100 字符)
videoIdYes视频 BV 号或 avid
progressYes弹幕出现时间点(毫秒),例如 30000 = 第 30 秒

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses critical behavioral traits: strict risk control, potential blocking for new or frequent accounts, and a daily limit recommendation. With no annotations, description carries full burden and handles it well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first states purpose, second adds crucial risk warning. No filler, highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose and risk, but lacks information about authentication prerequisites and expected return (success/failure). For a sending tool, this is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds no extra parameter-specific info beyond what the schema already provides in parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends a danmaku to a video, with specific verb '发送' and resource '视频'. It distinguishes from siblings like bilibili_video_danmaku which retrieves danmakus.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides strong guidance on when not to use: warns about strict risk control and advises maximum 5 per day. Lacks explicit mention of alternatives for getting danmakus, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_user_articlesB

获取指定 UP 主发布的专栏文章列表,包含阅读数、发布时间等

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNo最多返回几条专栏(默认 10)
uidYesUP主 UID

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must disclose behavioral traits. It mentions the returned fields (read count, publish time) but fails to note auth requirements, error handling, pagination, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence. However, it could be more concise by omitting redundant phrasing, or more structured with additional context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity and no output schema, the description provides adequate but minimal context. It lacks information on list ordering, total count, or error states.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description adds no additional meaning beyond the schema, thus baseline score 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool retrieves a list of column articles from a specified UP host, including read count and publish time. This clearly distinguishes it from sibling tools like bilibili_video_info or bilibili_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for fetching articles by a UP host, but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or limitations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_user_dynamicsA

获取指定 UP 主的最新动态(包括视频投稿、转发、图文等)

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNo最多返回几条动态(默认 10)
uidYesUP主 UID

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility. It does not disclose behavioral traits such as pagination, rate limits, authentication requirements, error handling, or how to interpret the output. Only the basic content type is mentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no filler. It efficiently conveys the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 params, full schema coverage, no output schema), the description covers the main function. It lacks usage context but is sufficient for a basic retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (both 'uid' and 'max' described in schema). The description does not add any additional meaning or context beyond what is already in the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取'), resource ('指定 UP 主的最新动态'), and what is included ('视频投稿、转发、图文等'). It distinguishes from sibling tools like bilibili_user_info and bilibili_video_info by focusing on dynamics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving user dynamics but provides no explicit guidance on when to use this tool versus alternatives like bilibili_user_articles or bilibili_user_followers. No exclusion criteria or scenarios for not using it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_user_followersB

查询指定用户的粉丝列表(谁关注了 TA)

ParametersJSON Schema
NameRequiredDescriptionDefault
uidYes用户 UID
pageNo页码,默认 1
pageSizeNo每页数量,默认 20

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as authentication requirements, rate limits, pagination behavior, or what data is returned. The description only states the basic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that immediately conveys the purpose. No irrelevant or redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple paginated list tool, the description is minimally adequate. However, it lacks information on authentication, return format, and pagination details, which would be helpful given the absence of an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (all parameters have descriptions). The description adds no extra meaning beyond the schema; it does not explain how to interpret the uid or how pagination works.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action (query) and resource (follower list of a specified user). It effectively distinguishes from sibling tools, which cover different Bilibili operations like search, videos, or login.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., bilibili_user_following or bilibili_user_info). No prerequisites or context for usage are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_user_infoA

获取 B站用户信息,包含昵称、签名、等级、粉丝数、关注数、直播间信息等

ParametersJSON Schema
NameRequiredDescriptionDefault
uidYes用户 UID

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must convey behavioral traits. It only lists output fields but does not explicitly state that the tool is read-only, requires authentication, or has rate limits. The description is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is a single, front-loaded sentence that states the action and includes a list of example outputs. No redundant or extraneous words; every part of the sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has one parameter and no output schema, the description lists several output fields but ends with '等' (etc.), leaving some vagueness. It covers essential information for a simple info retrieval tool but could be more explicit about the full output structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% as the single parameter 'uid' is described as '用户 UID'. The tool description adds no additional meaning beyond the schema; it focuses on output fields rather than enriching parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action ('获取 B站用户信息') and lists specific fields (昵称, 签名, 等级, 粉丝数, 关注数, 直播间信息), distinguishing it from sibling tools like bilibili_user_dynamics or bilibili_live_info. The verb+resource combination is specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance is provided. While the purpose is clear, it does not differentiate from alternatives like bilibili_user_dynamics or bilibili_live_info, leaving the agent to infer based on tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_video_commentsA

获取 B站视频的评论列表,包含评论内容、作者信息、点赞数等

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNo最多返回几条评论(默认 10)
videoIdYes视频 BV 号或 avid

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full behavioral burden. It discloses the action and result contents but does not mention pagination, ordering, or authentication requirements. For a read operation, it is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-front-loaded sentence conveying the main purpose. It is conciseness but could be slightly more structured (e.g., listing inclusion details).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should compensate. It mentions included fields but omits ordering, pagination, and any rate limits or authentication. Given the tool's simplicity, it is mostly complete but has gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% as both parameters (videoId, max) have descriptions. The description adds no extra meaning beyond the schema, meeting the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb '获取' (get), the resource 'B站视频的评论列表' (Bilibili video comment list), and specifies included data (content, author info, likes). It effectively distinguishes from sibling tools like bilibili_video_info or bilibili_video_danmaku.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies straightforward usage for retrieving comments. It does not explicitly state when to use or alternatives, but given the simple read nature, the context is clear. Sibling tools are not mentioned, so some guidance is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_video_danmakuB

获取 B站视频的弹幕列表,包含弹幕内容、出现时间、类型、颜色等

ParametersJSON Schema
NameRequiredDescriptionDefault
segmentNo弹幕分段索引(每 6 分钟一段),默认 1
videoIdYes视频 BV 号或 avid

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only lists return fields (content, time, type, color) but omits behavioral traits such as authentication requirements, rate limits, pagination, or error handling. Minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no unnecessary words. It efficiently conveys the purpose and key return fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, the description lists the return fields but does not specify the structure (e.g., array of objects, field types). It also lacks details on the segment parameter's behavior or limits, and does not mention error conditions or empty results. Adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with descriptions for both videoId and segment. The description adds a note that segment indexes 6-minute intervals, which is slightly more than the schema. However, it doesn't explain how segments are numbered or the range, so value added is moderate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a list of danmaku (bullet comments) for a Bilibili video, and specifies the fields included (content, time, type, color). This distinguishes it from sibling tools like bilibili_send_danmaku and bilibili_video_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives (e.g., when to use bilibili_video_info instead). The description doesn't mention prerequisites or context, leaving the agent to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_video_downloadA

下载 B 站视频到本地。自动下载视频+音频并用 ffmpeg 合并为 MP4。要求系统已安装 ffmpeg。⚠️ 仅供个人备份使用,请勿传播。

ParametersJSON Schema
NameRequiredDescriptionDefault
cidNo分 P 的 cid(不指定则取第一 P)
qualityNo画质,默认 1080P(大会员才能看 4K/1080P+)1080P
videoIdYes视频 BV 号或 avid
outputDirNo输出目录,默认 ./bilibili-downloads./bilibili-downloads

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool automatically downloads and merges video/audio into MP4, and mentions the ffmpeg requirement and non-sharing warning. However, it does not mention potential issues like the need for a valid cookie for high-quality downloads, rate limits, or behavior on errors. The description provides adequate but not exhaustive transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences and a warning line. It front-loads the primary purpose and then gives prerequisite and restriction. Minimal waste, though could be slightly more structured (e.g., bullet points) but not necessary. Efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should cover return values and failure behavior. It does not mention what the tool returns (e.g., file path) or what happens on error (e.g., missing ffmpeg). While parameters are well-documented in schema, the overall completeness for a download tool is lacking essential behavioral context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter (videoId, cid, quality, outputDir) with descriptions including defaults and notes (e.g., VIP requirement for 4K). The description text adds no additional parameter context beyond what the schema provides, meriting a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific verb '下载' (download), resource 'B站视频到本地', and key actions: auto-download video+audio and merge to MP4 using ffmpeg. It distinguishes from siblings like bilibili_video_info or bilibili_video_danmaku which are non-download tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions a prerequisite (ffmpeg installed) and a usage restriction (personal backup only). However, it does not explicitly guide when to use this tool versus alternatives like bilibili_download_list for managing downloads or bilibili_video_info for metadata. The context is clear but lacks exclusions or comparisons.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

bilibili_video_infoB

获取 B站视频的详细信息,包含标题、简介、播放量、弹幕数、评论数、点赞数、投币数、收藏数、分享数等

ParametersJSON Schema
NameRequiredDescriptionDefault
videoIdYes视频 BV 号或 avid

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose behavioral traits. It only says what the tool returns, but does not mention side effects, authentication needs (e.g., cookie required), rate limits, or error behavior. For a read operation, it is implicitly non-destructive, but not explicitly stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence in Chinese that front-loads the main purpose. Efficient and no wasted words, though could be slightly more structured by listing fields compactly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one parameter and no output schema, the description is fairly complete for a simple info tool. However, it omits context on authentication (e.g., whether login/cookie is needed) and the structure of the output. Sibling tools suggest auth may be relevant.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema is 100% covered with description for videoId (BV or avid). The tool description adds no extra detail beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets detailed Bilibili video info and lists specific fields like title, play count, danmaku, etc. It is a specific verb+resource and distinguishes from siblings like bilibili_video_comments and bilibili_video_danmaku.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., vs. bilibili_video_comments or bilibili_video_danmaku). Does not mention when not to use it or any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 21 tool updatesv1.2.0
    • First observedbilibili_article_info
    • First observedbilibili_detect_replies
    • First observedbilibili_download_list
    • First observedbilibili_hot
    • First observedbilibili_live_info
    • First observedbilibili_login
    • First observedbilibili_login_check
    • First observedbilibili_notifications
    • First observedbilibili_refresh_cookie
    • First observedbilibili_reply
    • First observedbilibili_search
    • First observedbilibili_search_hot
    • First observedbilibili_send_danmaku
    • First observedbilibili_user_articles
    • First observedbilibili_user_dynamics
    • First observedbilibili_user_followers
    • First observedbilibili_user_info
    • First observedbilibili_video_comments
    • First observedbilibili_video_danmaku
    • First observedbilibili_video_download
    • First observedbilibili_video_info

TDQS

B3.4/5.0

Scored across 21 tools

Disambiguation4/5

Most tools target distinct resources (videos, users, articles, live, auth), making selection generally clear. Minor ambiguity exists between bilibili_hot vs bilibili_search_hot and bilibili_notifications vs bilibili_detect_replies, but descriptions resolve the differences.

Naming Consistency3/5

All tools share the bilibili_ prefix, but the pattern is mixed: some are resource_noun (video_info, user_followers), some are verb-only (search, hot, reply), and pairing is inconsistent (video_download vs download_list, search_hot vs hot). Still readable, but not a uniform verb_noun convention.

Tool Count4/5

21 tools is on the heavy side, but the server covers a broad Bilibili surface including auth, videos, users, articles, live, and downloads. Each tool has a concrete purpose, so the count feels slightly over a lean scope rather than bloated.

Completeness3/5

Coverage is solid for read operations and basic interactions (comments, danmaku, downloads), and auth is fully handled. Notable gaps exist: bilibili_search explicitly references a bilibili_user_videos tool that does not exist, and there are no like/coin/favorite, follow/unfollow, or comment moderation tools, leaving some workflows incomplete.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    An MCP server that enables users to search Bilibili videos, access trending rankings, and retrieve detailed information about videos, content creators, and anime schedules. It allows AI applications to interact directly with Bilibili content via simple API interfaces.
    47 npm
    192
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    BiliStalkerMCP is a Bilibili MCP server designed to analyze a specific Bilibili user by providing tools to retrieve user profiles, videos, dynamics, articles, and followings.
    35 PyPI
    9
    MIT