qbt-kit
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| QBT_URL | No | Base URL of the qBittorrent WebUI server. | http://127.0.0.1:8080 |
| QBT_API_KEY | No | API key for qBittorrent 5.2+; preferred when present (sent as a Bearer token). | |
| QBT_PASSWORD | No | WebUI password, used for cookie login on any qBittorrent version. | |
| QBT_USERNAME | No | WebUI username, used for cookie login on any qBittorrent version. | |
| QBT_READ_ONLY | No | Set to '1', 'true' or 'yes' to refuse everything that changes state, including via qbt_call. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_torrentsC | List torrents, with the fields that usually matter. |
| torrent_detailB | Properties, trackers and files for one torrent. |
| swarm_healthA | Judge whether each torrent can actually finish. |
| transfer_statusB | Global transfer rates, limits and connection status. |
| server_infoB | Server version, auth mode and endpoint availability. |
| add_torrentC | Add a torrent by magnet or URL, or several at once. |
| control_torrentsA | Start, stop, recheck or reannounce torrents. Note that force_start makes a torrent ignore share limits, so a stop-on-complete rule stops applying to it. |
| delete_torrentsA | Remove torrents. |
| move_torrentsA | Move a torrent's data to a new location. qBittorrent performs the move and the torrent stays valid; the call returns before the move finishes. A recheck afterwards is optional because it rehashes everything. |
| categoriesC | List, create, edit or remove categories. |
| tagsC | List, create, delete, add or remove tags. |
| preferencesA | Read preferences, or write a subset. Keys that would sever this connection or weaken the server's security (WebUI port, password, host-header validation and similar) are refused outright, with no override. |
| searchA | Run a plugin search: start it, poll until it settles, return the results. Requires qBittorrent to have search plugins installed. |
| qbt_callA | Call any qBittorrent endpoint directly as scope/name, for anything the tools above do not cover. Parameters are validated against the endpoint spec, and the same safety gates apply: destructive endpoints need confirm, and read-only mode refuses anything that mutates state. |
| list_endpointsA | List every endpoint qbt_call can reach, with its shape. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
This server cannot be deployed
TDQS
Scored across 15 tools
Each tool targets a distinct resource or concern (list vs detail vs swarm health vs control vs move vs delete), and the status/config tools are clearly separated. The main soft overlap is qbt_call acting as an escape hatch for anything the others cover, but it is explicitly framed as a fallback, so the boundaries stay readable.
There is a mix of verb_noun tools (list_torrents, add_torrent, delete_torrents, move_torrents, control_torrents), noun-phrase tools (torrent_detail, transfer_status, server_info, swarm_health), and bare-noun names (categories, tags, preferences, search). Plural bulk nouns versus a singular add_torrent and the multi-action bundle names break a uniform pattern.
15 tools sits at the top of the well-scoped range and each maps to a real qBittorrent capability. Multi-action tools (categories, tags, control_torrents, preferences) sensibly bundle related operations instead of exploding the count.
Core lifecycle is covered: list, detail, add, control, move, delete, plus transfer/server status, categories, tags, preferences, and search. Gaps exist for RSS feed/automation-rule management and per-torrent file/peer priority, though qbt_call provides a raw fallback for those.