Sanitize public installation metadata

This commit is contained in:
Mikei386
2026-08-29 19:48:15 +02:00
parent 454bb111fe
commit 5d2550668a
4 changed files with 33 additions and 21 deletions
+12
View File
@@ -20,6 +20,18 @@ Thumbs.db
/tmp/ /tmp/
*.tmp *.tmp
# Local configuration and secrets
.env
.env.*
!.env.example
mua.conf
credentials*
secrets*
*.key
*.pem
*.p12
*.pfx
# Build artifacts # Build artifacts
node_modules/ node_modules/
build/ build/
+14 -14
View File
@@ -3,8 +3,8 @@
MCP-Server für Unraid: Docker-Container, Netzwerk und System-Tools. MCP-Server für Unraid: Docker-Container, Netzwerk und System-Tools.
Kompiliertes Bun-Binary (TypeScript), läuft als SysVinit-Service auf Unraid. Kompiliertes Bun-Binary (TypeScript), läuft als SysVinit-Service auf Unraid.
- **MCP-Endpunkt:** `http://<unraid-ip>:3002/mcp` (Streamable HTTP, POST-only, JSON-RPC 2.0) - **MCP-Endpunkt:** `http://UNRAID-IP:3002/mcp` (Streamable HTTP, POST-only, JSON-RPC 2.0)
- **Health-Check:** `http://<unraid-ip>:3002/health` (offen, ohne Auth) - **Health-Check:** `http://UNRAID-IP:3002/health` (offen, ohne Auth)
- **Config-Server:** `http://127.0.0.1:3013/config` (localhost + separater Admin-Token) - **Config-Server:** `http://127.0.0.1:3013/config` (localhost + separater Admin-Token)
- **Auth:** API-Key (Bearer-Token) für `/mcp` - **Auth:** API-Key (Bearer-Token) für `/mcp`
- **Tools:** 35 (Docker, Community Applications, Netzwerk, Unraid-System und optionale Toolbox) - **Tools:** 35 (Docker, Community Applications, Netzwerk, Unraid-System und optionale Toolbox)
@@ -22,7 +22,7 @@ Kurzform für Hermes:
```bash ```bash
hermes mcp add unraid \ hermes mcp add unraid \
--url http://192.168.1.2:3002/mcp \ --url http://UNRAID-IP:3002/mcp \
--auth header \ --auth header \
--connect-timeout 30 --connect-timeout 30
hermes mcp test unraid hermes mcp test unraid
@@ -38,7 +38,7 @@ erneute MUA-Installation nötig.
``` ```
┌─────────────────────────────────────────────────────────┐ ┌─────────────────────────────────────────────────────────┐
│ Unraid (192.168.1.2) │ │ Unraid (UNRAID-IP) │
│ │ │ │
│ /usr/local/bin/mua (kompiliertes Bun-Binary) │ │ /usr/local/bin/mua (kompiliertes Bun-Binary) │
│ ├── MCP-Server 0.0.0.0:3002 (Bearer-Auth) │ │ ├── MCP-Server 0.0.0.0:3002 (Bearer-Auth) │
@@ -99,10 +99,10 @@ Oder manuell:
```bash ```bash
# .txz von Gitea laden # .txz von Gitea laden
curl -O http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.24.r022-x86_64-1.txz curl -O https://git.casaderoll.de/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.29.r027-x86_64-1.txz
# Installieren # Installieren
upgradepkg --install-new mua-2026.08.24.r022-x86_64-1.txz upgradepkg --install-new mua-2026.08.29.r027-x86_64-1.txz
``` ```
### 2. Service starten ### 2. Service starten
@@ -116,7 +116,7 @@ Der Service startet automatisch bei jedem Boot (SysVinit).
### 3. Health-Check ### 3. Health-Check
```bash ```bash
curl http://192.168.1.2:3002/health curl http://UNRAID-IP:3002/health
# → {"status":"ok","version":"2026.08.24.r022","auth":"required"} # → {"status":"ok","version":"2026.08.24.r022","auth":"required"}
``` ```
@@ -141,7 +141,7 @@ MUA ist ein **Standard-MCP-Server** (Streamable HTTP, POST-only, JSON-RPC 2.0).
Jeder MCP-Client kann es nutzen — URL + Bearer-Token reichen: Jeder MCP-Client kann es nutzen — URL + Bearer-Token reichen:
``` ```
URL: http://192.168.1.2:3002/mcp URL: http://UNRAID-IP:3002/mcp
Auth: Authorization: Bearer <dein-api-key> Auth: Authorization: Bearer <dein-api-key>
``` ```
@@ -159,7 +159,7 @@ direkt mit diesem MUA-Endpunkt.
# Direkte Anbindung ohne MCPHub # Direkte Anbindung ohne MCPHub
mcp_servers: mcp_servers:
unraid: unraid:
url: http://192.168.1.2:3002/mcp url: http://UNRAID-IP:3002/mcp
headers: headers:
Authorization: Bearer <dein-api-key> Authorization: Bearer <dein-api-key>
timeout: 1800 timeout: 1800
@@ -175,24 +175,24 @@ keine eigene SSH- oder MUA-Konfiguration.
```bash ```bash
# Health-Check (ohne Auth) # Health-Check (ohne Auth)
curl http://192.168.1.2:3002/health curl http://UNRAID-IP:3002/health
# MCP-Initialisierung (mit Auth) # MCP-Initialisierung (mit Auth)
curl -X POST http://192.168.1.2:3002/mcp \ curl -X POST http://UNRAID-IP:3002/mcp \
-H "Authorization: Bearer <dein-api-key>" \ -H "Authorization: Bearer <dein-api-key>" \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \ -H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
# Tool-Liste # Tool-Liste
curl -X POST http://192.168.1.2:3002/mcp \ curl -X POST http://UNRAID-IP:3002/mcp \
-H "Authorization: Bearer <dein-api-key>" \ -H "Authorization: Bearer <dein-api-key>" \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \ -H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
# Tool aufrufen # Tool aufrufen
curl -X POST http://192.168.1.2:3002/mcp \ curl -X POST http://UNRAID-IP:3002/mcp \
-H "Authorization: Bearer <dein-api-key>" \ -H "Authorization: Bearer <dein-api-key>" \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \ -H "Accept: application/json, text/event-stream" \
@@ -202,7 +202,7 @@ curl -X POST http://192.168.1.2:3002/mcp \
### Ohne API-Key → 401 ### Ohne API-Key → 401
```bash ```bash
curl -X POST http://192.168.1.2:3002/mcp \ curl -X POST http://UNRAID-IP:3002/mcp \
-H "Content-Type: application/json" \ -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}'
# → 401 Unauthorized # → 401 Unauthorized
+3 -3
View File
@@ -30,7 +30,7 @@ Ein geeigneter kurzer Auftrag lautet:
Der offene Health-Endpunkt benötigt keinen API-Key: Der offene Health-Endpunkt benötigt keinen API-Key:
```bash ```bash
curl -fsS http://192.168.1.2:3002/health curl -fsS http://UNRAID-IP:3002/health
``` ```
Erwartet wird JSON mit `"status":"ok"` und `"auth":"required"`. Dann läuft Erwartet wird JSON mit `"status":"ok"` und `"auth":"required"`. Dann läuft
@@ -63,7 +63,7 @@ Im Hermes-Container liegt die CLI in dieser Installation unter
```bash ```bash
hermes mcp add unraid \ hermes mcp add unraid \
--url http://192.168.1.2:3002/mcp \ --url http://UNRAID-IP:3002/mcp \
--auth header \ --auth header \
--connect-timeout 30 --connect-timeout 30
``` ```
@@ -84,7 +84,7 @@ HTTP-Server angelegt werden:
| Feld | Wert | | Feld | Wert |
|---|---| |---|---|
| Name | `unraid` | | Name | `unraid` |
| URL | `http://192.168.1.2:3002/mcp` | | URL | `http://UNRAID-IP:3002/mcp` |
| Authentifizierung | Header/Bearer | | Authentifizierung | Header/Bearer |
| Token | MUA-API-Key ohne `Bearer ` | | Token | MUA-API-Key ohne `Bearer ` |
| Connect timeout | `30` Sekunden | | Connect timeout | `30` Sekunden |
+4 -4
View File
@@ -4,10 +4,10 @@
<!ENTITY author "Michael"> <!ENTITY author "Michael">
<!ENTITY version "2026.08.29.r027"> <!ENTITY version "2026.08.29.r027">
<!ENTITY launch "Settings/mua"> <!ENTITY launch "Settings/mua">
<!ENTITY pluginURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/plugin/mua.plg"> <!ENTITY pluginURL "https://git.casaderoll.de/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/plugin/mua.plg">
<!ENTITY pluginLOC "/boot/config/plugins/&name;"> <!ENTITY pluginLOC "/boot/config/plugins/&name;">
<!ENTITY emhttpLOC "/usr/local/emhttp/plugins/&name;"> <!ENTITY emhttpLOC "/usr/local/emhttp/plugins/&name;">
<!ENTITY txzURL "http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.29.r027-x86_64-1.txz"> <!ENTITY txzURL "https://git.casaderoll.de/michael/MUA-Mikes-Unraid-Agent/raw/branch/main/dist/mua-2026.08.29.r027-x86_64-1.txz">
<!ENTITY txzSHA256 "f7fcbc3b3de260f6df0d413ac072d0f3e674bc25425e6a50b8a11b78a4e5007c"> <!ENTITY txzSHA256 "f7fcbc3b3de260f6df0d413ac072d0f3e674bc25425e6a50b8a11b78a4e5007c">
]> ]>
@@ -18,8 +18,8 @@
pluginURL="&pluginURL;" pluginURL="&pluginURL;"
icon="cubes" icon="cubes"
min="7.0.0" min="7.0.0"
support="http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent" support="https://git.casaderoll.de/michael/MUA-Mikes-Unraid-Agent"
project="http://192.168.1.2:4000/michael/MUA-Mikes-Unraid-Agent" project="https://git.casaderoll.de/michael/MUA-Mikes-Unraid-Agent"
> >
<CHANGES> <CHANGES>