Skip to main content
Glama
limuzi23

bilibili-video-reader-mcp

by limuzi23

Bilibili Video Reader v2.1

A read-only ChatGPT/Codex plugin built as Skill + stateless MCP server, now targeting Cloudflare Workers so it can run without Render or a credit card.

MCP tools

  • get_bilibili_video_parts(url) — title, author, description, all P numbers and CIDs.

  • get_bilibili_part_transcript(url, part, language, max_chars) — official/AI subtitle tracks and timestamped transcript for one P.

The Worker calls Bilibili's metadata/player/subtitle endpoints directly. No video download is needed for subtitle mode.

Deploy to Cloudflare Workers

Dashboard path

  1. Create/sign in to a Cloudflare account.

  2. Open Workers & PagesCreateImport a repository (wording may vary slightly).

  3. Connect GitHub and select limuzi23/bilibili-video-reader-mcp.

  4. Keep the repository root as the root directory.

  5. Cloudflare should detect wrangler.jsonc automatically.

  6. Use the default deploy command: npx wrangler deploy.

  7. Deploy.

The Worker name must remain bilibili-video-reader-mcp because it matches wrangler.jsonc.

After deployment, Cloudflare will give you a URL similar to:

https://bilibili-video-reader-mcp.<your-subdomain>.workers.dev

Health check:

https://bilibili-video-reader-mcp.<your-subdomain>.workers.dev/health

MCP endpoint:

https://bilibili-video-reader-mcp.<your-subdomain>.workers.dev/mcp

For public subtitles, no runtime secret is required.

Optional private login state

If a subtitle is only visible while logged in, the Worker can read an optional Cloudflare secret named BILI_COOKIE. Configure it only inside Cloudflare's encrypted Variables and Secrets UI. Never paste raw cookies into ChatGPT and never commit them to GitHub.

Connect to ChatGPT

  1. ChatGPT → Settings → Security and login → enable Developer mode.

  2. Open Plugins, press +, and register the deployed URL ending in /mcp.

  3. Copy the technical ID from the created connection. It begins with plugin_asdk_app_.

  4. Run python scripts/configure_plugin.py plugin_asdk_app_YOUR_ID if the plugin packaging flow requires an app reference.

The OpenAI plugin manifest lives at .codex-plugin/plugin.json and the workflow Skill is in skills/bilibili-video-reader/.

Local development

npm install
npm run dev

Deploy from a local terminal if desired:

npm run deploy

Endpoints:

GET  /health
MCP  /mcp

Architecture

The current production path is:

ChatGPT Skill
    ↓
Cloudflare Workers /mcp
    ↓
Bilibili metadata/player/subtitle APIs
    ↓
structured multi-P metadata + timestamped subtitles

The old server/ Python implementation remains in the repository only as a reference/legacy implementation; Cloudflare does not use it.

Current scope

v2.1 focuses on multi-P metadata + official/AI subtitles. It does not yet download audio/video, run Whisper ASR, or OCR source code from video frames. Those are planned only after this subtitle path is verified end-to-end.

-
license - not tested
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Fetch transcripts, subtitles, chapters, metadata and frames from YouTube and 10+ video platforms

  • MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.

  • MCP server for Hailuo (MiniMax) AI video generation

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/limuzi23/bilibili-video-reader-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server