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

如果你想参考这次 bilibili-mcp 的构建方式,把其他社交平台也转成 MCP,可以看:

工具列表

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 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", "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.1.tar.gz (13.8 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.1-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: astron_bilibili_mcp-0.2.1.tar.gz
  • Upload date:
  • Size: 13.8 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.1.tar.gz
Algorithm Hash digest
SHA256 69dbb5f0895069ddc75c1aab97c3fbfe2bf5a77c3645c46b2e0f6e0919f360b5
MD5 f4448b49fe5323f0931ec5132ce9de7e
BLAKE2b-256 bf67571367d07707e12dc4febd9a883fbe6cfbe0e57c2f820f3978fc3640a6e4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for astron_bilibili_mcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5a423528bcde0a26c58fd9854158a805ea41f30444b0c0a3753e88a105d421f1
MD5 60eaba49d35f15aa3f8b0af300dd5cc6
BLAKE2b-256 068eb699d2221f08be4167694f41f84679f9e8b6c87b26f39bd77d9819514096

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