Skip to main content
Glama
pickpppcc

qBittorrent MCP

by pickpppcc
README.md
# qBittorrent MCP Service

qBittorrent MCP is a service based on FastMCP that provides functional interfaces for interacting with the qBittorrent WebUI API.

## Feature List

This service provides the following features:

### Torrent Management
- `add_torrent`: Add torrent files to qBittorrent
- `delete_torrent`: Delete specified torrents (optionally delete files)
- `pause_torrent`: Pause torrent downloads
- `resume_torrent`: Resume torrent downloads
- `get_torrent_list`: Get list of all torrents
- `search_torrents`: Search torrents

### Trackers and Tags
- `get_torrent_trackers`: Get tracker list for a torrent
- `add_trackers_to_torrent`: Add new trackers to a torrent
- `add_torrent_tags`: Add tags to a torrent

### Speed and Priority Control
- `set_global_download_limit`: Set global download speed limit
- `set_global_upload_limit`: Set global upload speed limit
- `set_torrent_download_limit`: Set download speed limit for a specific torrent
- `set_torrent_upload_limit`: Set upload speed limit for a specific torrent
- `set_file_priority`: Set download priority for a specific file

### System Information
- `get_application_version`: Get qBittorrent application version

## Configuration

The service uses the following configuration parameters:
- `DEFAULT_HOST`: qBittorrent WebUI host address
- `DEFAULT_USERNAME`: qBittorrent WebUI username
- `DEFAULT_PASSWORD`: qBittorrent WebUI password

## Usage

1. Ensure required dependencies are installed:
   ```
   pip install httpx mcp
   ```

2. Run the MCP service:
   ```
   python main.py
   ```

## Development

The service is divided into two main files:
- `main.py`: Defines MCP service interface and configuration parameters
- `api.py`: Implements interaction logic with qBittorrent WebUI
```json
   "mcp_servers": [
        {
            "command": "uv",
            "args": [
                "--directory",
                "/workspace/PC-Canary/apps/qBittorrent/qbittorrent_mcp",
                "run",
                "qbittorrent.py"
            ]
        }
    ]
```