Discourse MCP Einrichtung im OpenCode CLI

Dieser Leitfaden enthält erprobte Anweisungen zur Installation des Discourse MCP in der OpenCode CLI. Wenn Sie einen anderen MCP-Client verwenden, habe ich auch Anleitungen für die Codex CLI geschrieben.

VERWENDEN SIE IHR LLM! LLMs sind sehr gut darin, Anweisungen zu befolgen und können die Einrichtung für Sie übernehmen. Weisen Sie das LLM auf diese Anleitung über die URL hin und bitten Sie es, die Einrichtung vorzunehmen. Sie können es auch bitten, Schritte zu erklären, die Sie nicht verstehen.

Voraussetzungen:

  • Node.js installiert (24 LTS empfohlen)
  • OpenCode CLI installiert
  • Zugriff auf das beabsichtigte Discourse-Forum als regulärer Benutzer (keine Admin-Rechte erforderlich!)

Es ist wichtig zu erkennen, dass hier drei separate Komponenten beteiligt sind:

  1. Das entfernte Discourse-Forum, das die Datenquelle und das Ziel für Aktionen ist.

{\text{Die vollständige URL des Forums, mit dem Sie sich verbinden}}[default=“https://discourse.example.com”]

  1. Der Discourse MCP-Server, ein Open-Source-Tool, das lokal ausgeführt wird, sich mit Discourse verbindet und eine API für OpenCode bereitstellt, um mit Discourse zu interagieren. Dieser wird als NPX-Paket installiert und bei Bedarf von der OpenCode CLI gestartet.

{\text{Vollständiger Pfad zum Speichern der Discourse MCP-Profil-Datei}}[default=“~/.config/opencode/discourse-profiles”]

  1. OpenCode CLI, der MCP-Client, der sich mit dem MCP-Server verbindet und die Schnittstelle zur Interaktion mit Discourse über die MCP-API bereitstellt.

{\text{Pfad zu Ihrer OpenCode-Konfigurationsdatei}}[default=“~/.config/opencode/opencode.jsonc”]

{\text{Kurzer Name für diese Discourse-Instanz}}[default=“example”]


1. Generieren Sie den Benutzer-API-Schlüssel

Dies authentifiziert Sie bei Discourse und ist der Weg, wie Sie Ihren API-Schlüssel erhalten. npx lädt den Code herunter und führt ihn aus; im herkömmlichen Sinne muss nichts installiert werden.

Führen Sie in einem Terminal aus:

npx @discourse/mcp@latest generate-user-api-key \
  --site =DISCOURSE-FORUM= \
  --save-to =PROFILE-PATH/=NAME=.json

Beispiel:

npx @discourse/mcp@latest generate-user-api-key \
  --site https://meta.discourse.org \
  --save-to ~/.config/opencode/discourse-profiles/meta.json

Bestätigen Sie die Browser-Zustimmung und kopieren Sie die verschlüsselten Daten zurück, was Ihre Fähigkeit zur Anmeldung nachweist und einen API-Schlüssel generiert, der unter =PROFILE-PATH= für die Verwendung durch den MCP-Server gespeichert wird.

Der API-Schlüssel hat den gleichen Zugriff auf das Forum wie Sie als Benutzer.

2. Fügen Sie den MCP-Server zur OpenCode CLI hinzu

Bearbeiten Sie Ihre OpenCode-Konfigurationsdatei unter ~/.config/opencode/opencode.jsonc und fügen Sie den folgenden Eintrag zum Abschnitt mcp hinzu:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    // ... andere MCP-Server ...
    "discourse-=NAME=-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@discourse/mcp@latest",
        "--profile",
        "=PROFILE-PATH/=NAME=.json",
      ],
      "enabled": true,
      "environment": {},
    },
  },
}

Beispiel:

"discourse-meta-mcp": {
  "type": "local",
  "command": [
    "npx",
    "-y",
    "@discourse/mcp@latest",
    "--profile",
    "/home/marcus/.config/opencode/discourse-profiles/meta.json"
  ],
  "enabled": true,
  "environment": {},
},

Der MCP-Server wird bei Bedarf durch npx von der OpenCode CLI gestartet, wenn Sie OpenCode starten. Er ist so konfiguriert, dass er das Profil unter =PROFILE-PATH= verwendet, und ist standardmäßig schreibgeschützt.

3. Starten Sie die OpenCode CLI neu

Starten Sie OpenCode vollständig neu, damit es die Konfiguration neu lädt und sich mit dem MCP-Server verbindet.

Wenn es ohne Fehler startet, funktioniert der Discourse MCP-Server. Sie können OpenCode bitten, sich auf Ihr Discourse-Forum für Informationen zu beziehen – insbesondere auf Informationen, zu denen Sie Zugriff haben, die aber nicht öffentlich sind –, um zu überprüfen, ob es sich als Sie anmeldet.

Verwaltung mehrerer Discourse-Instanzen

Sie können mehrere Discourse-Foren hinzufügen, indem Sie den Vorgang mit unterschiedlichen Profil-Dateien und MCP-Servernamen wiederholen:

"discourse-meta-mcp": {
  "type": "local",
  "command": [
    "npx", "-y", "@discourse/mcp@latest",
    "--profile", "/home/username/.config/opencode/discourse-profiles/meta.json"
  ],
  "enabled": true,
  "environment": {},
},
"discourse-mycommunity-mcp": {
  "type": "local",
  "command": [
    "npx", "-y", "@discourse/mcp@latest",
    "--profile", "/home/username/.config/opencode/discourse-profiles/mycommunity.json"
  ],
  "enabled": true,
  "environment": {},
},

Konfigurationsdateien

Es gibt zwei Hauptdateien:

  1. =OPENCODE-CONFIG= - OpenCode CLI-Konfigurationsdatei unter ~/.config/opencode/opencode.jsonc, die die MCP-Servereinstellungen enthält.

  2. =PROFILE-PATH= - Das Profil für den Discourse MCP-Server, das den API-Schlüssel und andere Einstellungen für die Verbindung zu Discourse enthält.

OpenCode-Einstellungen

Die Einstellungen für die Verbindung zum MCP-Server befinden sich in =OPENCODE-CONFIG= (normalerweise ~/.config/opencode/opencode.jsonc):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "discourse-=NAME=-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@discourse/mcp@latest",
        "--profile",
        "=PROFILE-PATH/=NAME=.json",
      ],
      "enabled": true,
      "environment": {},
    },
  },
}

OpenCode MCP-Einstellungsdokumentation: OpenCode-Dokumentation

Discourse MCP-Einstellungen

Die Einstellungen für den Discourse MCP-Server selbst befinden sich in =PROFILE-PATH/=NAME=.json=:

{
  "auth_pairs": [
    {
      "site": "=DISCOURSE-FORUM=",
      "user_api_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      "user_api_client_id": "discourse-mcp"
    }
  ]
}

Discourse MCP-Einstellungsdokumentation: GitHub - discourse/discourse-mcp

Sicherheitsempfehlungen

Es wird empfohlen:

  1. Profil-Dateien in einem dedizierten Verzeichnis zu speichern (z. B. ~/.config/opencode/discourse-profiles/)
  2. Dieses Verzeichnis zu .gitignore hinzuzufügen, wenn Sie Ihre Dotfiles in der Versionskontrolle verfolgen
  3. Beschreibende Namen für Ihre Profil-Dateien zu verwenden (z. B. meta.json, mycommunity.json)
  4. API-Schlüssel privat zu halten – sie haben die gleiche Zugriffsebene wie Ihr Benutzerkonto

Fehlerbehebung

  • Verbindungsprobleme: Überprüfen Sie, ob der Profilpfad in opencode.jsonc korrekt ist und die Datei existiert
  • Autorisierungsfehler: Überprüfen Sie, ob der API-Schlüssel in Ihren Discourse-Benutzereinstellungen nicht widerrufen wurde
  • Berechtigungsfehler: Stellen Sie sicher, dass Sie die erforderlichen Berechtigungen für die Discourse-Instanz haben
  • Neustart erforderlich: Änderungen an opencode.jsonc erfordern einen Neustart von OpenCode
2 „Gefällt mir“