qBittorrent MCP Server
Connects to qBittorrent's Web API to search for torrents using search plugins, download torrents via URL or magnet links, and manage existing torrents (pause, resume, delete, get info).
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@qBittorrent MCP Server search for ubuntu 24.04 torrents"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
qBittorrent MCP Server
An MCP (Model Context Protocol) server that connects to qBittorrent's Web API to search and download torrents.
Features
Search Torrents: Search for torrents using qBittorrent's search plugins
Download Torrents: Add torrents by URL or magnet link
Manage Torrents: Get info, pause, resume, and delete torrents
List Plugins: View available search plugins
Related MCP server: Transmission MCP Server
Prerequisites
qBittorrent with Web UI enabled
Download from qbittorrent.org
Enable Web UI in qBittorrent:
Tools > Options > Web UINote your username, password, and port (default: 8080)
Search Plugins (for search functionality)
In qBittorrent:
View > Search EngineClick "Search plugins..." at bottom right
Install desired search plugins
Installation
Open qbittorent and go into Options -> Webui -> Enable web interface, create login and set it up
Install qbittorent search plugins
Clone this repository:
git clone <repository-url>
cd qbit-mcpInstall dependencies:
pip install uvConfigure environment variables:
cp .env.example .envEdit .env with your qBittorrent credentials:
QBITTORRENT_HOST=http://localhost:8080
QBITTORRENT_USERNAME=admin
QBITTORRENT_PASSWORD=your_passwordUsage
Running the MCP Server
In witsy, click on the AC plug on the left panel, add a new server.
type: stdio
label: qbit-mcp
command: uv
arguments: run --with fastmcp --with qbittorrent-api --with python-dotenv fastmcp run C:\directy\to\qbit-mcp\main.py
Open a new Chat, click on the + sign and enable the qbit-mcp server.
Ask the LLM to download a torrent for you.
Available Tools
search_torrents
Search for torrents using qBittorrent's search plugins.
Parameters:
query(string, required): Search queryplugins(string, optional): Plugin names or "all" (default: "all")category(string, optional): Filter by category (default: "all")
Example:
Search for "ubuntu 24.04" torrentsdownload_torrent
Download a torrent by URL or magnet link.
Parameters:
url(string, required): Torrent URL or magnet linksave_path(string, optional): Directory to save the torrentcategory(string, optional): Category to assigntags(string, optional): Comma-separated tagspaused(boolean, optional): Start paused (default: false)
Example:
Download torrent from magnet:?xt=urn:btih:...get_torrent_info
Get information about torrents in qBittorrent.
Parameters:
torrent_hash(string, optional): Specific torrent hash (returns all if not provided)
Example:
Show all torrents currently downloadinglist_search_plugins
List all available search plugins.
Example:
What search plugins are available?pause_torrent
Pause a torrent.
Parameters:
torrent_hash(string, required): Hash of the torrent
resume_torrent
Resume a paused torrent.
Parameters:
torrent_hash(string, required): Hash of the torrent
delete_torrent
Delete a torrent from qBittorrent.
Parameters:
torrent_hash(string, required): Hash of the torrentdelete_files(boolean, optional): Also delete files (default: false)
Troubleshooting
Connection Issues
Verify qBittorrent Web UI is enabled and running
Check that the host, port, username, and password are correct
Ensure no firewall is blocking the connection
Search Not Working
Install search plugins in qBittorrent's Search Engine
Verify plugins are enabled
Some plugins may require updating
Authentication Failed
Check your username and password in
.envDefault credentials are usually
admin/adminadminYou can change these in qBittorrent's Web UI settings
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Available Tools
7 toolsdelete_torrentB
Delete a torrent from qBittorrent.
Args: torrent_hash: Hash of the torrent to delete delete_files: Also delete downloaded files (default: False)
Returns: Status message
Inputs: torrent_hash (required), delete_files. Returns: object
download_torrentB
Download a torrent by URL or magnet link.
Args: url: Torrent URL or magnet link save_path: Directory to save the torrent (optional) category: Category to assign to the torrent (optional) tags: Comma-separated tags to assign (optional) paused: Start torrent in paused state (default: False)
Returns: Status information about the download
Inputs: url (required), category, paused, save_path, +1 more. Returns: object
get_torrent_infoB
Get information about torrents in qBittorrent.
Args: torrent_hash: Specific torrent hash to get info for (optional, returns all if not provided)
Returns: List of torrent information
Inputs: torrent_hash. Returns: result
list_search_pluginsB
List all available search plugins in qBittorrent.
Returns: List of search plugins with their status
Inputs: no named parameters. Returns: result
pause_torrentC
Pause a torrent.
Args: torrent_hash: Hash of the torrent to pause
Returns: Status message
Inputs: torrent_hash (required). Returns: object
resume_torrentB
Resume a paused torrent.
Args: torrent_hash: Hash of the torrent to resume
Returns: Status message
Inputs: torrent_hash (required). Returns: object
search_torrentsC
Search for torrents using qBittorrent's search plugins.
Args: query: Search query string plugins: Comma-separated list of plugin names or "all" for all enabled plugins category: Filter by category (all, movies, tv, music, games, anime, software, pictures, books)
Returns: List of search results with torrent information
Inputs: query (required), category, plugins. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool has a clearly distinct purpose: delete_torrent removes torrents, download_torrent adds new torrents, get_torrent_info retrieves status, list_search_plugins shows available plugins, pause_torrent and resume_torrent control torrent state, and search_torrents finds new torrents. There is no overlap or ambiguity between these functions.
All tool names follow a consistent verb_noun pattern using snake_case (e.g., delete_torrent, download_torrent, get_torrent_info). The naming is predictable and readable throughout the set, with no deviations or mixed conventions.
With 7 tools, the server is well-scoped for managing torrents in qBittorrent. It covers core operations like adding, removing, controlling, and querying torrents, plus search functionality, without being overly sparse or bloated.
The tool set provides comprehensive coverage for basic torrent management, including CRUD-like operations (download, delete, get info) and state control (pause/resume). A minor gap is the lack of tools for managing torrent properties (e.g., setting priorities, moving files) or categories/tags directly, but core workflows are well-supported.
Maintenance
Related MCP Connectors
Web search and page reading for AI agents, including JSON APIs, RSS feeds and YouTube.
Web data for agents. Extract web pages, crawl websites, discover URLs, and search the web.
Access the GitHub API, enabling file operations, repository management, search functionality, and…
Web search, URL content extraction to Markdown, site mapping, and recursive web crawler.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA service that provides programmatic access to qBittorrent's WebUI API, enabling management of torrents, trackers, tags, speed controls, and system information through natural language.29-
- AlicenseNot gradedqualityDmaintenanceProvides tools for interacting with the Transmission BitTorrent client via natural language, enabling users to manage torrents, configure download settings, and monitor download activity.3MIT
- AlicenseAqualityCmaintenanceMCP server exposing qBittorrent's WebUI API v2 as tools, enabling LLMs to manage torrents, categories, tags, RSS feeds, search plugins, and application settings.903MIT
- AlicenseAqualityCmaintenanceEnables control of a qBittorrent instance via its WebUI API, supporting torrent management, category management, and transfer information with cookie-session authentication.1483 npm1MIT