Bilibili MCP server for analyzing specific Bilibili users, with profile, video, dynamic, article, subtitle, and following tools
Project description
BiliStalkerMCP
Bilibili MCP Server for Specific User Analysis
BiliStalkerMCP is a Bilibili MCP server built on Model Context Protocol (MCP), designed for AI agents that need to analyze a specific Bilibili user or creator.
It is optimized for workflows that start from a target uid or username, then retrieve that user's profile, videos, dynamics, articles, subtitles, and followings with structured tools.
If you are searching for a Bilibili MCP server, a Bilibili Model Context Protocol server, or an MCP server for tracking and analyzing a specific Bilibili user, this repository is designed for that use case.
English | 中文说明
Installation
uvx bili-stalker-mcp
# or
pip install bili-stalker-mcp
Configuration (Claude Desktop, Recommended)
{
"mcpServers": {
"bilistalker": {
"command": "uv",
"args": ["run", "--directory", "/path/to/BiliStalkerMCP", "bili-stalker-mcp"],
"env": {
"SESSDATA": "required_sessdata",
"BILI_JCT": "optional_jct",
"BUVID3": "optional_buvid3"
}
}
}
}
Prefer
uv run --directory ...for faster local updates when PyPI release propagation is delayed. You can still useuvx bili-stalker-mcpfor quick one-off usage.
Auth: Obtain
SESSDATAfrom Browser DevTools (F12) > Application > Cookies >.bilibili.com.
Environment Variables
| Key | Req | Description |
|---|---|---|
SESSDATA |
Yes | Bilibili session token. |
BILI_JCT |
No | CSRF protection token. |
BUVID3 |
No | Hardware fingerprint (reduces rate-limiting risk). |
BILI_LOG_LEVEL |
No | DEBUG, INFO (Default), WARNING. |
BILI_TIMEZONE |
No | Output time zone for formatted timestamps (default: Asia/Shanghai). |
Available Tools
| Tool | Capability | Parameters |
|---|---|---|
get_user_info |
Profile & core statistics | user_id_or_username |
get_user_videos |
Lightweight video list | user_id_or_username, page, limit |
search_user_videos |
Keyword search in one user's video list | user_id_or_username, keyword, page, limit |
get_video_detail |
Full video detail + optional subtitles | bvid, fetch_subtitles (default: false), subtitle_mode (smart/full/minimal), subtitle_lang (default: auto), subtitle_max_chars |
get_user_dynamics |
Structured dynamics with cursor pagination | user_id_or_username, cursor, limit, dynamic_type |
get_user_articles |
Lightweight article list | user_id_or_username, page, limit |
get_article_content |
Full article markdown content | article_id |
get_user_followings |
Subscription list analysis | user_id_or_username, page, limit |
Dynamic Filtering (dynamic_type)
ALL(default): Text, Draw, and Reposts.ALL_RAW: Unfiltered (includes Videos & Articles).VIDEO,ARTICLE,DRAW,TEXT: Specific category filtering.
Pagination: Responses include next_cursor. Pass this to subsequent requests for seamless scrolling.
Subtitle Modes (get_video_detail)
smart(default whenfetch_subtitles=true): fetch metadata for all pages, download only one best-matched subtitle track text.full: download text for all subtitle tracks (higher cost).minimal: skip subtitle metadata and subtitle text fetching.
subtitle_lang can force a language (for example en-US); auto uses built-in priority fallback.
subtitle_max_chars caps returned subtitle text size to avoid token explosion.
Bundled Skill
The repository ships a ready-to-use AI agent skill in skills/bili-content-analysis/:
skills/bili-content-analysis/
├── SKILL.md # Workflow & output contract
└── references/
└── analysis-style.md # Detailed writing style rules
What It Does
Guides compatible AI agents (Gemini, Claude, etc.) through a structured 6-step workflow for deep Bilibili content analysis:
- Clarify target and scope (uid / bvid / keyword).
- Collect evidence — lightweight lists first, heavy detail only for high-value items.
- Reconstruct source structure before interpreting (timeline, chapters, speakers).
- Analyze — facts, logic chain, assumptions, themes, and shifts.
- Retain anchors — uid, bvid, article_id, timestamps, key source snippets.
- Handle failures — state blockers explicitly, stop speculation.
Usage
Copy the bili-content-analysis folder into your project's skill directory:
<project>/.agent/skills/bili-content-analysis/
The agent will automatically activate the skill when user requests involve Bilibili creator tracking, transcript interpretation, timeline reconstruction, or content analysis.
Development
# Setup
git clone https://github.com/222wcnm/BiliStalkerMCP.git
cd BiliStalkerMCP
uv pip install -e .[dev]
# Test
uv run pytest -q
# Integration & Performance (Requires Auth)
uv run python scripts/integration_suite.py -u <UID>
uv run python scripts/perf_baseline.py -u <UID> --tools dynamics -n 3
Release (Maintainers)
Prerequisite: Ensure that a
.pypircfile is configured in your user home directory to provide PyPI credentials.
# Build + test + twine check (no upload)
.\scripts\pypi_release.ps1
# Upload to TestPyPI
.\scripts\pypi_release.ps1 -TestPyPI -Upload
# Upload to PyPI
.\scripts\pypi_release.ps1 -Upload
Docker
Runs via stdio transport. No ports exposed.
docker build -t bilistalker-mcp .
docker run -e SESSDATA=... bilistalker-mcp
Troubleshooting
- 412 Precondition Failed: Bilibili anti-crawling system triggered. Refresh
SESSDATAor provideBUVID3. - Cloud IPs: Highly susceptible to blocking; local execution is recommended.
License
MIT
Disclaimer: For personal research and learning only. Bulk profiling, harassment, or commercial surveillance is prohibited.
This project is built and maintained with the help of AI.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bili_stalker_mcp-3.0.0.tar.gz.
File metadata
- Download URL: bili_stalker_mcp-3.0.0.tar.gz
- Upload date:
- Size: 147.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
527ec7b9cecfee5282126f171d19931bab6e8a4afbe682bbc91582db83e9d7e1
|
|
| MD5 |
3a256b90270cace54a4018105193b8bb
|
|
| BLAKE2b-256 |
65226521426a94598b95e7e95a9a07d8a76863dafab8d5c90a26944873e128e3
|
File details
Details for the file bili_stalker_mcp-3.0.0-py3-none-any.whl.
File metadata
- Download URL: bili_stalker_mcp-3.0.0-py3-none-any.whl
- Upload date:
- Size: 30.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f95c390b41aab94e2d9d7ecc51b596806316c9670106884ed49ef987f9b5e178
|
|
| MD5 |
2660be6fbe5c46ad3cb9451623cf26dd
|
|
| BLAKE2b-256 |
eca1f174036006d00f585179ab40b258a30043569fa20d37470cb427618f1938
|