3.2 KiB
GitHub MCP: sicherer Lese- und Wartungsmodus
Normalbetrieb
Athena startet den offiziellen GitHub MCP grundsätzlich im Nur-Lesen-Modus. Sichtbar sind exakt:
search_repositoriesget_repository_treeget_file_contentssearch_code
Der Token liegt ausschließlich in /etc/mike-ai/github-mcp.env (Modus 0600).
Er steht weder in Open WebUI noch in Git, der Dokumentation oder dem Platform
Context MCP. Der Container besitzt keinen Host-Port.
Status anzeigen:
sudo /opt/mike-ai/stack/platform/mcp/github-mcp-mode.sh status
Bewusster Wartungstermin mit Schreibzugriff
Wenn Dateien in einem eigenen Repository geändert werden sollen, aktiviert der Administrator den begrenzten Wartungsmodus:
sudo /opt/mike-ai/stack/platform/mcp/github-mcp-mode.sh maintenance --confirm
Zusätzlich zu den Lesewerkzeugen werden nur diese Operationen angeboten:
- Branches auflisten und einen neuen Branch anlegen
- eine oder mehrere Dateien committen
- einen Pull Request anlegen
Absichtlich fehlen Löschen, Mergen, Repository-Erstellung, Workflow-Ausführung, Issue-Veränderungen und administrative Werkzeuge. Trotzdem ist dies echter Schreibzugriff. Vor jeder Änderung muss das Modell den aktuellen Dateiinhalt lesen, auf einem neuen Branch arbeiten und Ziel, Dateien und Wirkung nennen.
Nach der Arbeit sofort zurückschalten:
sudo /opt/mike-ai/stack/platform/mcp/github-mcp-mode.sh read
Beide Umschaltungen starten nur den GitHub-MCP-Container neu und danach kurz das Open-WebUI-Backend, damit dessen Werkzeugcache sicher zum aktiven Modus passt. LLM-Profile, Router, VPN und andere MCPs werden nicht neu gestartet.
Token-Rechte
Die serverseitige Werkzeugliste ersetzt keine saubere Tokenbegrenzung. Für den
Normalbetrieb ist ein nur lesender Fine-grained PAT ideal. Ein Token, der auch
schreiben darf, sollte nur Zugriff auf ausdrücklich ausgewählte Repositories und
den geringsten benötigten Contents-Umfang erhalten. Geschützte Hauptbranches
und verpflichtende Pull Requests bilden die zweite Schutzschicht.
Nach Tokenwechsel oder Rechteänderung:
sudo /opt/mike-ai/stack/platform/mcp/github-mcp-mode.sh read
Fehlerbehebung
Failed to connect to MCP server 'github-local' war am 23. August 2026 kein
Tokenfehler. Supergateway beantwortete den regulären MCP-Handshake von Open
WebUI fehlerhaft. Produktiv wird deshalb der offizielle GitHub MCP 1.10.1 über
mcp-proxy 0.12.0 bereitgestellt. Der Pfad wurde mit Open WebUIs eigenem
Python-MCP-Client und einer echten öffentlichen Repositorysuche geprüft.
Falls ein Werkzeug stattdessen einen Code für github.com/login/device
ausgibt, ist der PAT nicht im GitHub-stdio-Unterprozess angekommen. Der
produktive Proxy verwendet deshalb ausdrücklich --pass-environment. Der PAT
darf nicht in den Chat kopiert und die Geräteanmeldung nicht als Dauerlösung
verwendet werden.
Der Normalmodus ist Teil des Installationsskripts. Skript, Compose-Override und diese Anleitung liegen im Git-Repository und werden vom Recovery-Koffer mitgeführt. Das Platform Context MCP kann diese Anleitung lesen, erhält aber weder Token noch die Fähigkeit, den Modus selbst unbemerkt umzuschalten.