Skip to main content

Astron-Bilibili-MCP: 基于哔哩哔哩游客态公开接口的自包含 MCP Server,支持 MCP 协议和 uvx 一键启动。

Project description

哔哩哔哩公开内容 MCP Server

概述

Astron-bilibili-mcp 是一个基于 MCP 协议的哔哩哔哩工具服务,直接调用哔哩哔哩游客态公开接口获取公开内容,无需额外部署后端服务。

当前推荐工程形态:

  • 使用 MCP Python SDK
  • 使用单文件 server.py 承载工具定义和 HTTP 调用
  • 通过独立 pyproject 打包
  • 支持 uvx 一键启动
  • 通过环境变量配置超时和 User-Agent

当前提供 6 个原子工具:

  • get_hot_list
  • get_feed_list
  • search_content
  • get_content_detail
  • get_author_profile
  • get_author_content_list

工具列表

1. 获取热榜 get_hot_list

  • 描述:读取 Bilibili 热榜。
  • 参数:
    • limit:返回条数,默认 20
    • refresh:是否刷新,默认 False

2. 获取信息流 get_feed_list

  • 描述:读取 Bilibili 公开信息流。
  • 参数:
    • channel:频道,当前游客态实现中保留该参数但不强依赖
    • cursor:分页游标,默认空,内部按页码处理
    • limit:返回条数,默认 20
    • refresh:是否刷新,默认 False

3. 搜索内容 search_content

  • 描述:搜索 Bilibili 公开视频内容。
  • 参数:
    • query:搜索词,必填
    • cursor:分页游标,默认空,内部按页码处理
    • limit:返回条数,默认 20

4. 获取内容详情 get_content_detail

  • 描述:读取 Bilibili 视频详情。
  • 参数:
    • content_id:内容 ID,例如 BV1RYXQBKEEd
    • url:内容完整 URL

5. 获取作者主页 get_author_profile

  • 描述:读取 Bilibili 作者公开主页。
  • 参数:
    • author_id:作者 ID 或作者名
    • url:作者主页 URL

6. 获取作者作品列表 get_author_content_list

  • 描述:读取 Bilibili 作者公开作品列表。
  • 参数:
    • author_id:作者 ID 或作者名
    • url:作者主页 URL
    • cursor:分页游标,默认空,内部按页码处理
    • limit:返回条数,默认 20

环境变量

这个包默认不需要认证信息。

可选环境变量:

export BILIBILI_MCP_TIMEOUT_SECONDS="30"
export BILIBILI_MCP_USER_AGENT="Mozilla/5.0 ..."

说明:

  • BILIBILI_MCP_TIMEOUT_SECONDS 控制公开接口请求超时。
  • BILIBILI_MCP_USER_AGENT 用于覆盖默认请求头。

安装与启动

推荐方式:使用 uvx 一键启动

由于 bilibili-mcp 这个项目名已被占用,当前包名使用 Astron-bilibili-mcp

uvx --from astron-bilibili-mcp astron-bilibili-mcp

如果你还没有安装 uv / uvx,可先执行:

curl -fsSL https://install.astral.sh/uv | bash

使用 pip 安装

pip install astron-bilibili-mcp
bilibili-mcp

本地源码运行

cd MCP/bilibili-mcp
PYTHONPATH=src python3 -m bilibili_mcp.server

客户端配置

使用 uvx

{
  "mcpServers": {
    "bilibili-mcp": {
      "command": "uvx",
      "args": ["--from", "astron-bilibili-mcp", "astron-bilibili-mcp"],
      "env": {
        "BILIBILI_MCP_TIMEOUT_SECONDS": "30"
      }
    }
  }
}

使用本地源码

{
  "mcpServers": {
    "bilibili-mcp": {
      "command": "python3",
      "args": ["-m", "bilibili_mcp.server"],
      "env": {
        "PYTHONPATH": "/path/to/MCP/bilibili-mcp/src",
        "BILIBILI_MCP_TIMEOUT_SECONDS": "30"
      }
    }
  }
}

平台差异说明

  1. 这个 MCP 直接请求哔哩哔哩游客态公开接口,不依赖额外的 Astron 后端服务。
  2. 当前仅面向公开内容能力,不包含登录态、私有内容或用户专属数据。
  3. 返回结果尽量保持结构化 JSON,便于 Cursor、Claude Desktop 等客户端继续消费。
  4. 游客态公开接口可能受网络、地区或平台风控影响,偶发失败时建议稍后重试。

发布说明

cd MCP/bilibili-mcp
rm -rf build dist src/*.egg-info
python3 -m build --no-isolation
python3 -m twine check dist/*
python3 -m twine upload dist/*

License

Apache License 2.0. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astron_bilibili_mcp-0.2.2.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

astron_bilibili_mcp-0.2.2-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file astron_bilibili_mcp-0.2.2.tar.gz.

File metadata

  • Download URL: astron_bilibili_mcp-0.2.2.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0rc1

File hashes

Hashes for astron_bilibili_mcp-0.2.2.tar.gz
Algorithm Hash digest
SHA256 6ab10ed317fa7a383d4beb934f9d50745f91128306f6e987ec2c15b5f439b98d
MD5 c0138e16b938c68ae1eed3706a4f950d
BLAKE2b-256 4fe0faf15021485bd7f5fb7647e20ed5584ff8b3a2acb1dc0a5b72081816989c

See more details on using hashes here.

File details

Details for the file astron_bilibili_mcp-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for astron_bilibili_mcp-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 57cff6b73131519054a69d314d31ee77922a29cae71df6a31cdffe91a87b8434
MD5 7395128eb05113153211f91c4bb77749
BLAKE2b-256 e1b2b1416f3e7828d88c3228d1aced25c00ffaaae96f7f409b41052e5459f83b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page