Markus Michalski FAQ

Shopware Admin: Installation

Shopware Admin MCP-Server installieren: Voraussetzungen, Build aus dem Repository, Deployment-Verzeichnis, Registrierung in Claude Code, Update und Deinstallation.

English Version

Zurück zur Übersicht

Shopware Admin: Installation

Diese Dokumentation bezieht sich immer auf den aktuellen Stand des main-Branches.

Voraussetzungen

Anforderung Hinweis
Node.js 20 oder neuer Festgelegt über engines in der package.json.
npm Wird mit Node.js geliefert, wird für npm install und den Build gebraucht.
Claude Code Oder ein anderer MCP-Client mit stdio-Transport.
Shopware 6 Die Admin API muss vom Rechner mit dem MCP-Server erreichbar sein. Eine Mindestversion prüft der Code nicht.
Shopware-Integration Client-ID und Client-Secret, siehe Konfiguration.

Installationsweg

Der Server wird aus dem Repository gebaut. Eine Veröffentlichung über ein Paket-Register dokumentiert das Repository nicht.

1. Repository klonen und bauen

git clone https://github.com/markus-michalski/claude-mcp-shopwareadmin.git
cd claude-mcp-shopwareadmin
npm install
cp .env.example .env
# .env mit den Shopware-Zugangsdaten füllen
npm run build

Der Build (tsc) schreibt nach dist/. Der Einstiegspunkt ist dist/index.js.

2. Optional: Content-Profile anlegen

cp content-profiles.example.json content-profiles.json

Ohne diese Datei gelten die eingebauten Profile. Details stehen unter Konfiguration.

3. In das Deployment-Verzeichnis kopieren

mkdir -p ~/.claude/mcp-servers/shopwareadmin
cp -r dist node_modules package.json .env ~/.claude/mcp-servers/shopwareadmin/
# optional: content-profiles.json mitkopieren

Der Server liest seine .env zuerst aus ~/.claude/mcp-servers/shopwareadmin/.env. Gibt es diese Datei nicht, nimmt er die .env aus dem Arbeitsverzeichnis des Prozesses. Es wird immer nur eine der beiden Dateien gelesen.

4. In Claude Code registrieren

claude mcp add --scope user --transport stdio shopwareadmin -- \
  node ~/.claude/mcp-servers/shopwareadmin/dist/index.js

Mit claude mcp list prüfst du, ob der Server eingetragen ist.

Alternative: Variablen in der MCP-Konfiguration

Die Konfiguration kann auch über die Prozessumgebung kommen. Variablen aus der Umgebung haben Vorrang vor der .env-Datei.

{
  "mcpServers": {
    "shopwareadmin": {
      "command": "node",
      "args": ["/home/user/.claude/mcp-servers/shopwareadmin/dist/index.js"],
      "env": {
        "SHOPWARE_URL": "https://shop.example.com",
        "SHOPWARE_CLIENT_ID": "SWIA...",
        "SHOPWARE_CLIENT_SECRET": "...",
        "SHOPWARE_DEFAULT_TAX_ID": "...",
        "SHOPWARE_DEFAULT_SALES_CHANNEL_ID": "...",
        "WIKIJS_BASE_URL": "https://wiki.example.com"
      }
    }
  }
}

WIKIJS_BASE_URL muss gesetzt sein, auch wenn der Server die Wiki-Adresse nirgends verwendet. Ohne gültige URL startet er nicht. Details unter Konfiguration.

Update

cd claude-mcp-shopwareadmin
git pull
npm install
npm run build
cp -r dist node_modules package.json ~/.claude/mcp-servers/shopwareadmin/

Starte danach den MCP-Server beziehungsweise Claude Code neu. Konfiguration und Content-Profile werden nur beim Start eingelesen.

Deinstallation

  1. Registrierung entfernen: claude mcp remove shopwareadmin
  2. Verzeichnis löschen: rm -rf ~/.claude/mcp-servers/shopwareadmin (enthält die .env mit dem Client-Secret)
  3. In Shopware unter Einstellungen > System > Integrationen die Integration löschen, damit die Zugangsdaten ungültig werden.

Entwicklung

Befehle für den Entwicklungsbetrieb stehen unter Technische Details.