Bilibili
Interact with the Bilibili video website, enabling actions like searching for videos, retrieving video information, and accessing user data.
bilibili-mcp
[NOTE]: Currently in development!!!
Description
A mcp agent which allows LLMs to interact with the Bilibili video website.
Features
Installation
Prerequisites
Make sure uv
is installed correctly.
Installation
git clone https://github.com/KitsuneX07/bilibili-mcp.git
cd bilibili-mcp
uv sync
Usage
First, edit the .env file correctly.
cd /path/to/your/bilibili-mcp
cp .env.example .env
vi .env
# edit the .env file correctly, instructions can be found at https://nemo2011.github.io/bilibili-api/#/get-credential
To run the mcp:
uv run --directory /path/to/your/bilibili-mcp /path/to/your/bilibili-mcp/server.py
Use in json format:
"mcpServers": {
"bilibili-mcp": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/your/bilibili-mcp",
"/path/to/your/bilibili-mcp/server.py"
]
}
}
Technologies Used
MCP Tools
This project exposes several functionalities as MCP tools, allowing external systems to interact with Bilibili video features.
Video Management
get_video_comments(bvid: str, page_index: int = 1, time_order: bool = False)
: Retrieves comments for a given Bilibili video.send_comment(bvid: str, message: str)
: Sends a comment to a specified Bilibili video.download_video_best_quality(bvid: str, part_name: Optional[str] = None, out_dir: str = os.getenv("DOWNLOAD_DIR", "downloads"))
: Downloads a Bilibili video in the best available quality.get_hot_videos(num_videos: int = 10)
: Retrieves a list of hot videos from Bilibili.search_video(keyword: str, num_results: int = 10, descending: bool = True, order_type: search.OrderVideo = search.OrderVideo.TOTALRANK)
: Searches for videos on Bilibili based on a keyword.get_video_info(bvid: str)
: Retrieves detailed information about a Bilibili video.pay_video_coin(bvid: str, num: int = 1, like: bool = False)
: Pays coins to a Bilibili video.triple_video(bvid: str)
: Performs a "triple" action (like, coin, favorite) on a Bilibili video.add_video_to_toview(bvid: str)
: Adds a Bilibili video to the "Watch Later" list.delete_video_from_toview(bvid: str)
: Deletes a Bilibili video from the "Watch Later" list.like_video(bvid: str, like: bool = True)
: Likes or unlikes a Bilibili video.
Favorite List Management
create_video_favorite_list(title: str, introduction: str = "", private: bool = True)
: Creates a new video favorite list.delete_video_favorite_list(favorite_list_name: str)
: Deletes a video favorite list by its name.set_video_favorite(bvid: str, favorite_list_name: str)
: Adds a video to a specified favorite list.unset_video_favorite(bvid: str, favorite_list_name: str)
: Removes a video from a specified favorite list.
Contribution Guidelines
Guidelines for how others can contribute to this project.
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a Pull Request.
Licensing Information
Information about the license under which your project is distributed.
This project is licensed under the [LICENSE NAME] - see the LICENSE file for details.
Related Servers
MCP Server Collector
Discovers and collects MCP servers from the internet.
Website to Markdown MCP Server
Fetches and converts website content to Markdown with AI-powered cleanup, OpenAPI support, and stealth browsing.
Cloudflare Playwright
Control a browser for web automation tasks like navigation, typing, clicking, and taking screenshots using Playwright on Cloudflare Workers.
Steel Puppeteer
Provides browser automation capabilities using Puppeteer and Steel, configurable for local or cloud instances.
LinkedIn Profile Scraper
Fetches LinkedIn profile information using the Fresh LinkedIn Profile Data API.
Career Site Jobs
A MCP server to retrieve up-to-date jobs from company career sites.
Wayback Machine
Access the Internet Archive's Wayback Machine to retrieve archived web pages and check for available snapshots of URLs.
Scrapeless
Integrate real-time Scrapeless Google SERP(Google Search, Google Flight, Google Map, Google Jobs....) results into your LLM applications. This server enables dynamic context retrieval for AI workflows, chatbots, and research tools.
MCP YouTube Transcript Server
Retrieves transcripts from YouTube videos for content analysis and processing.
Scrapezy
Extract structured data from websites using the Scrapezy API.