Files
AI-Profile-Router/services/arr-mcp

Mikes ARR-MCP

Ein kleiner, eigenständiger Docker-Container für Sonarr und Radarr. Das Dockerfile basiert bereits auf Debian Slim; ein leerer Debian-Container muss nicht vorher angelegt oder nachträglich verändert werden.

MCP-Endpunkt nach der Standardinstallation:

http://<UNRAID-IP>:8207/mcp

Warum nicht einfach der unveränderte Knuckles-MCP?

Stand 28. August 2026 wurde Knuckles-Team/arr-mcp 2.1.0 geprüft. Übernommen werden dessen Python-3.14-Slim-Basis, /health-Check, Prozess-Init und begrenzte Docker-Logs. Nicht übernommen wird die generische Oberfläche mit sonarr_action(action, params_json) und radarr_action(action, params_json). Ein kleines Modell muss dabei Methodennamen und Parameter erraten und kann versehentlich eine Schreibaktion wählen. Das Paket 2.1.0 selbst wird noch nicht als Basis verwendet: Seine veröffentlichte PyPI-Version verlangt derzeit ein nicht öffentlich verfügbares agent-utilities >=2.0.0. Die reproduzierbar installierbare Basis bleibt deshalb vorläufig arr-mcp[mcp]==1.0.1.

Dieser Fork bietet stattdessen eindeutige Werkzeuge mit festen Parametern:

sonarr_find_series
sonarr_get_season_summary
sonarr_search_releases
sonarr_system_status
radarr_find_movie
radarr_movie_codec_inventory
radarr_search_releases

Alle sieben sind rein lesend. Es gibt keinen Raw-Request und kein generisches Action-Werkzeug. sonarr_search_releases ändert insbesondere kein Monitoring und startet weder automatische Suche noch Download.

Nur mit ARR_MCP_WRITE=1 erscheinen zusätzlich:

sonarr_preview_release_grab
sonarr_grab_release
sonarr_preview_episode_search
sonarr_start_episode_search

Die beiden ausführenden Werkzeuge verlangen eine vorherige Vorschau, eine ausdrückliche Bestätigung und ein kurzlebiges Ticket. Radarr-Schreibwerkzeuge sind absichtlich nicht enthalten.

Installation auf Unraid

Im vollständigen Checkout als root genau einen Befehl ausführen:

./services/arr-mcp/install-on-unraid.sh

Beim ersten Lauf wird nur diese Datei angelegt:

/mnt/nvme-storage/appdata/ARR-MCP/arr-mcp.env

Dort SONARR_TOKEN und RADARR_TOKEN eintragen und denselben Befehl erneut starten. Das Skript baut mike-ai/arr-mcp:1.1.0, startet ausschließlich ARR-MCP und installiert die vorhandene Unraid-DockerMan-Vorlage. Eine vorhandene Env-Datei wird weder angezeigt noch überschrieben.

Kurzer Auftrag für Hermes/Qwen

Installiere Mikes ARR-MCP aus
ssh://git@192.168.1.2:33/michael/AI-Profile-Router.git auf Unraid. Lies dazu
services/arr-mcp/README.md und führe ausschließlich
services/arr-mcp/install-on-unraid.sh aus. Erfinde keinen eigenen Container und
keine andere ARR-Konfiguration. Falls SONARR_TOKEN oder RADARR_TOKEN fehlen,
stoppe und nenne mir nur die fehlenden Variablennamen; zeige keine vorhandenen
Werte an. Melde am Ende nur Containerstatus, Healthcheck, MCP-URL und die
angebotenen Werkzeugnamen.

Vorhandener nackter Debian-Slim-Container

Nur als Alternative, wenn bewusst bereits ein persistenter Debian-Slim- Container mit dem kompletten Repository läuft:

./services/arr-mcp/install-in-debian-slim.sh

Danach startet /usr/local/bin/run-arr-mcp den Server. Dieser Weg ist weniger reproduzierbar; bei Neuerstellung des Containers geht die nachträgliche Installation verloren. Der Dockerfile-Build oben ist deshalb empfohlen.

MCP-Client eintragen

mcp_servers:
  arr:
    url: http://192.168.1.2:8207/mcp
    timeout: 600

Danach die Werkzeugliste neu laden oder einen neuen Chat öffnen.

Test, Update und Entfernung

Offline-Tests:

python3 -m unittest dev/test_sonarr_release_grab.py dev/test_radarr_patch.py

Update nach git pull: denselben Installationsbefehl erneut ausführen.

Entfernung:

./services/arr-mcp/install-on-unraid.sh uninstall

Die Appdata-Konfiguration bleibt dabei als Rückfall erhalten.