Initial import from bf-network-r6.opencode — opencode migration

This commit is contained in:
2026-08-26 12:44:21 +02:00
commit 5ee0716dda
297 changed files with 72324 additions and 0 deletions

41
mcp/portainer/README.md Normal file
View File

@@ -0,0 +1,41 @@
# portainer-mcp (offiziell) — BF
Überblick über die Docker-Landschaft via Portainer. Übersicht aller MCPs: [../INVENTORY.md](../INVENTORY.md).
## Ist-Stand (2026-06-09)
- **Portainer-Server läuft** auf `https://10.40.41.126:9443`, **v2.40.0**, managed **5 Endpoints**:
`pve` (lokal), `nas-bf (ds923+)`, `odroid-m1`, `macmini`, `nas-fm (ds415+)`.
- **API-Token** vorhanden (admin) → in `.env` (gitignored).
- **Blocker:** `portainer-mcp` gibt es nur als **2.41.x / 2.42.x**, jeweils = gleiche Portainer-Minor.
**2.40 hat keinen passenden MCP** → Portainer auf `.126` auf **2.42.x** bumpen (sauberster Weg).
## Weg A — lokal stdio via uvx (least-invasive, kein Portainer-Touch nötig zum Probieren)
Voraussetzung: `uv` installieren (`brew install uv` oder `curl -LsSf https://astral.sh/uv/install.sh | sh`).
```
# NACH Portainer-Bump auf 2.42 (oder Versuch 2.41 gegen 2.40):
claude mcp add portainer -s user \
-e PORTAINER_URL=https://10.40.41.126:9443 \
-e PORTAINER_API_KEY=ptr_... \
-e PORTAINER_TLS_VERIFY=0 \
-- uvx --from "mcp-portainer~=2.42.0" mcp-portainer
```
Read-only erzwingen: über MCP-Config/Profil (siehe portainer-mcp `docs/configuration.md` → „read-only capabilities").
## Weg B — Docker HTTP auf Mac mini (.167), zentral hinter FQDN (wie ha-mcp/MikroMCP-Ziel)
```
docker run -d --name portainer-mcp -p 17717:17717 \
-e PORTAINER_URL=https://10.40.41.126:9443 \
-e PORTAINER_API_KEY=ptr_... \
-e PORTAINER_TLS_VERIFY=0 \
-e PORTAINER_MCP_AUTH_TOKEN=<gate-secret> \
-e PORTAINER_MCP_ALLOWED_HOSTS=<fqdn-or-167-ip>:17717 \
portainer/portainer-mcp:2.42
# Client:
claude mcp add portainer --transport http http://<mini>:17717/mcp \
--header "Authorization: Bearer <gate-secret>" \
--header "X-Portainer-API-Key: ptr_..."
```
## Versions-Policy (Doku)
Match MCP-Minor = Portainer-Minor. Tabelle: nur 2.41.x↔2.41.x, 2.42.x↔2.42.x. Kein 2.40.
TLS: self-signed → `PORTAINER_TLS_VERIFY=0`.