使用说明
MCP Stack (WSL)
MCP-Server-Stack für Claude Code in WSL. Zwei Gateway-Instanzen für Catalog-Server und Proxmox.
Architektur
Claude Code (WSL)
├── localhost:3000/sse → mcp-gateway (Docker MCP Gateway)
│ ├── github-official
│ ├── n8n
│ ├── obsidian
│ ├── prometheus
│ ├── ffmpeg
│ ├── youtube_transcript
│ └── docker-docs
│
└── localhost:3001/sse → mcp-proxmox (Supergateway + Python)
└── 40+ Proxmox VE Tools
→ Architektur-Details und Migrationspläne: docs/architecture.md
Voraussetzungen
- Docker Engine in WSL (systemd-managed)
~/.docker/mcp/mit Konfigurationsdateien
Konfiguration
Secrets (.env)
.env.example kopieren und ausfüllen (nicht committen):
cp .env.example .env
Enthält:
GITHUB_PERSONAL_ACCESS_TOKEN,OBSIDIAN_API_KEY,N8N_API_KEY,N8N_API_URLPROXMOX_HOST,PROXMOX_USER,PROXMOX_TOKEN_NAME,PROXMOX_TOKEN_VALUE
Aktive Catalog-Server (registry.yaml)
~/.docker/mcp/registry.yaml – Server eintragen/entfernen:
registry:
github-official:
ref: ""
n8n:
ref: ""
# weiterer Server:
# context7:
# ref: ""
Server-Konfiguration (config.yaml)
~/.docker/mcp/config.yaml:
n8n:
api_url: http://<HOST_IP>:5678/
Claude Code registrieren (~/.claude.json)
{
"mcpServers": {
"MCP_DOCKER": { "type": "sse", "url": "http://localhost:3000/sse" },
"proxmox": { "type": "sse", "url": "http://localhost:3001/sse" }
}
}
Starten / Stoppen
# Erstes Mal: mcp-proxmox Image bauen (dauert einige Minuten)
docker compose build mcp-proxmox
# Alle Services starten
docker compose up -d
# Nur mcp-gateway starten (ohne Proxmox)
docker compose up -d mcp-gateway
# Logs
docker logs mcp-gateway -f
docker logs mcp-proxmox -f
# Stoppen
docker compose down
# Via systemd (automatisch beim WSL-Start)
sudo systemctl start mcp-stack
sudo systemctl stop mcp-stack
sudo systemctl status mcp-stack
Proxmox API-Token erstellen
In der Proxmox Web-UI:
- Datacenter → Permissions → API Tokens → Add
- User:
root@pam, Token ID:claude - „Privilege Separation" deaktivieren für vollen Zugriff
- Token-UUID in
.enveintragen alsPROXMOX_TOKEN_VALUE
Catalog-Server hinzufügen (Option A)
Eintrag in ~/.docker/mcp/registry.yaml:
registry:
context7:
ref: ""
→ docker compose restart mcp-gateway
Eigenen MCP-Server hinzufügen (Option B)
Neuen Service in docker-compose.yml:
mcp-meinserver:
image: supercorp/supergateway
ports:
- "3002:8000"
command: >
--stdio "npx -y @modelcontextprotocol/server-meinserver"
--port 8000
--ssePath /sse
--messagePath /message
restart: unless-stopped
In ~/.claude.json registrieren:
"mein-server": { "type": "sse", "url": "http://localhost:3002/sse" }
Automatischer Start
systemd-Service startet automatisch nach WSL-Boot:
/etc/systemd/system/mcp-stack.service → docker compose up -d
Migration zum Heimserver (LXC 101)
Wenn der Stack auf Proxmox LXC 101 umzieht:
mcp-stack/auf LXC kopieren~/.docker/mcp/auf LXC kopieren.envauf LXC anlegendocker compose up -d- In
~/.claude.jsonURLs auf LXC-IP ändern:http://<lxc-ip>:3000/ssehttp://<lxc-ip>:3001/sse
