Skip to main content
Glama
Lqueed

rutracker_mcp

by Lqueed

rutracker_mcp

MCP-Server für RuTracker — Suche nach Torrents und Herunterladen von .torrent-Dateien direkt aus Claude (Desktop / Code / API) und allen MCP-kompatiblen Clients.

⚠️ Dies ist ein Fork. Basiert auf CarrySauce/rutracker-mcp-server (der wiederum ein Fork von notnooblord/rutracker-mcp-server ist), auf FastMCP + py-rutracker-client. Der ursprüngliche MCP-Server (server.py) und die Tool-Sammlung wurden unverändert beibehalten. Der Fork fügt Umgehung von Blockaden für den Zugriff aus Russland hinzu.

Warum der Fork

Das Original meldet sich mit einem normalen POST an login.php an. Unter russischen Bedingungen funktioniert das nicht:

  1. Cloudflare Managed Challenge. RuTracker ist durch die Anti-Bot-Prüfung von Cloudflare geschützt; ein einfacher HTTP-Client (aiohttp) besteht sie nicht und erhält 403.

  2. RKN-Blockade + Bindung von cf_clearance an die IP. Die Website ist bei russischen Providern blockiert, und das Cloudflare-Token ist an IP und User-Agent gebunden.

Was hinzugefügt wurde

Datei

Zweck

cookie_auth.py

CookieRuTrackerClient: Login per Cookie (Cloudflare umgehen) + Socket-Bindung an den VPN-Adapter (erzwungener Ausgang über VPN statt über den russischen Provider)

get_cookies_pr.py

Cookie-Beschaffung (bb_session + cf_clearance) über echtes Chrome unter patchright — ein Stealth-Browser besteht Cloudflare auf einer sauberen VPN-IP

test_cookie.py

Test „Login per Cookie + Suche“

Mehr Details in docs/USER_GUIDE_RU.md (für Menschen) und AGENTS.md (für KI-Agenten).

Related MCP server: RuTracker MCP Server

So funktioniert es

get_cookies_pr.py  --(patchright + настоящий Chrome через VPN)-->  проходит Cloudflare, логинится
                   --> cookies.json (bb_session, cf_clearance, User-Agent)

server.py (MCP) --> CookieRuTrackerClient:
                    • вливает cookies.json в aiohttp-сессию (без login.php)
                    • биндит сокет к IP TAP-адаптера VPN (тот же IP, что у Chrome)
                    • тот же User-Agent -> cf_clearance валиден

Anforderungen

  • Python 3.13+

  • RuTracker-Konto

  • VPN mit TAP-Adapter (getestet mit ZoogVPN). Aus Russland — zwingend erforderlich.

  • Google Chrome (für die Cookie-Beschaffung über patchright)

Schnellstart

git clone https://github.com/Lqueed/rutracker_mcp.git
cd rutracker_mcp
python -m venv .venv
.venv/Scripts/python -m pip install -r requirements.txt
.venv/Scripts/python -m pip install patchright psutil
.venv/Scripts/python -m patchright install chromium

cp .env.example .env          # вписать RUTRACKER_LOGIN и RUTRACKER_PASSWORD
# включить VPN, затем добыть cookie:
.venv/Scripts/python get_cookies_pr.py
# проверить:
.venv/Scripts/python test_cookie.py     # -> "УСПЕХ: получено результатов: N"

Verbindung zu Claude Code

claude mcp add rutracker --scope user \
  --env HTTP_PROXY= --env HTTPS_PROXY= \
  -- /abs/path/.venv/Scripts/python.exe /abs/path/server.py --transport stdio

Leere HTTP_PROXY/HTTPS_PROXY — damit Python nicht über einen möglichen System-Proxy läuft.

MCP-Tools

Tool

Beschreibung

search_torrents

Suche nach Schlüsselwörtern auf der Seite (50 Ergebnisse), mit Magnet-Links

search_all_pages

Parallele Suche über mehrere Seiten

get_torrent_info

Vollständige Beschreibung des Torrents (Qualität, Codec, Beitragstext, Magnet)

download_torrent

.torrent nach topic_id herunterladen (MCP-Anhang)

get_topic_url

Themen-URL und direkte Download-URL nach topic_id

Der Server liefert nur .torrent- und Magnet-Links, nicht den Inhalt selbst — zum Herunterladen verwenden Sie einen BitTorrent-Client (qBittorrent, Transmission).

VPN-Bindung konfigurieren

Der Client sucht automatisch nach einem Adapter, dessen Name zoog enthält. Überschreiben:

  • RUTRACKER_VPN_ADAPTER — Teilstring des Adapternamens (Standard: zoog);

  • RUTRACKER_BIND_IP — explizite IP für die Socket-Bindung.

Wenn beide nicht gesetzt sind und kein Adapter gefunden wird, wird die Bindung deaktiviert (Python nimmt den normalen Weg).

Sicherheit

.env, cookies.json, .chrome-profile/ enthalten Zugangsdaten/Sitzung und sind von git ausgeschlossen (.gitignore). Committen Sie sie nicht.

Danksagungen / Lizenz

Die ursprünglichen MCP-Server und die Bibliothek stammen von CarrySauce, notnooblord. Die Lizenz wird vom ursprünglichen Projekt übernommen.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Allows users to search and browse torrents on rutracker.org, retrieving detailed metadata including magnet links and file lists. It automatically handles authentication by extracting session cookies from the Brave browser on macOS.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables searching and downloading torrents from YggTorrent via MCP tools such as search_torrents, get_torrent_details, get_magnet_link, and download_torrent_file.
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    MCP server for rTorrent BitTorrent automation, enabling torrent management (add/list/pause/delete), multi-source searching (Nyaa, Pirate Bay, etc.), and post-processing workflows via natural language.
    7
    1
    MIT