概要
What is Bilibili Subtitle Fetch?
Bilibili Subtitle Fetch is an MCP server that retrieves subtitles from Bilibili videos. It supports multiple input formats (BV numbers, full video URLs, and short links), language selection, and output formatting. It is intended for developers and users who need programmatic access to Bilibili subtitles.
How to use Bilibili Subtitle Fetch?
Install the server with uv tool install --python 3.13 bilibili-subtitle-fetch. Run bilibili-subtitle-fetch init to configure your Bilibili cookie, then fetch subtitles with bilibili-subtitle-fetch fetch <BV or URL>. The fetched subtitle is printed to stdout and automatically copied to the clipboard.
Key features of Bilibili Subtitle Fetch
- Accepts BV numbers, full video links, and short URLs.
- Configurable preferred subtitle language.
- Output formats: plain text or timestamped.
- Automatic ASR (Whisper) fallback when no subtitle exists.
- Automatic cookie refresh when credentials are provided.
- Copied to clipboard after fetching.
Use cases of Bilibili Subtitle Fetch
- Extract subtitles for language learning or translation.
- Save subtitles for offline reading or analysis.
- Integrate subtitle retrieval into AI or automation workflows.
- Compare timestamped subtitles with video content.
FAQ from Bilibili Subtitle Fetch
How do I configure Bilibili credentials?
Run bilibili-subtitle-fetch init and paste your Bilibili cookie. The configuration is saved to ~/.config/bilibili-subtitle-fetch/config.toml (Linux/macOS) or %APPDATA%\bilibili-subtitle-fetch\config.toml (Windows).
What is the ASR fallback feature?
If a video has no built-in subtitles, the server can automatically download the audio and generate subtitles using OpenAI Whisper. This is enabled or disabled via the [asr] config section or the --asr/--no-asr flags.
What output formats are available?
Two formats: text (plain subtitle text) and timestamped (subtitle content with timestamps). The default can be overridden with --output-format.
Can I use a custom configuration file path?
Yes, use the --config /path/to/config.toml argument when running the server or CLI commands.
What dependencies does the server require?
Python 3.13, the uv tool, and optionally Whisper for ASR fallback. A valid Bilibili cookie is required for subtitle access.