私はDiscourse MCPを試していましたが、Codex CLIを使用するためのMetaの既存のドキュメントには、Codex CLIに関する記述がなく、どのドキュメント部分が適用されるのかを理解するのが少し混乱しました。
npxを使うのか、npm installを使うのか?- セットアップのうち、Codexに関係する部分とDiscourse MCPに関係する部分はどれか?
read_only: falseのような設定はどこに記述するのか?
そこで、かなりの試行錯誤の結果、Discourse MCPをCodex CLIにインストールするためのテスト済みのガイドをここに示します。数日中に、Claude Code CLIとopencode用のガイドも公開する予定です。使用したい他のMCPクライアントがあれば、コメントで教えてください。対応できるよう努めます。
前提条件:
- Node.jsがインストールされていること(24 LTS推奨)
- Codex CLIがインストールされていること
- 一般ユーザーとしてhttps://discourse.example.comにアクセスできること
ここで3つの別々のコンポーネントがあることを理解することが重要です。
- リモートのDiscourseフォーラム。データのソースであり、アクションのターゲットとなります。
- Discourse MCPサーバー。これは、Discourseに接続し、CodexがDiscourseと対話するためのAPIを提供する、オープンソースのローカルで実行されるツールです。これはSTDIOサーバーとしてインストールされ、Codex CLIによってオンデマンドで起動されます。
- Codex CLI。これはMCPクライアントであり、MCPサーバーに接続し、MCP APIを介してDiscourseと対話するためのインターフェースを提供します。
1. ユーザーAPIキーの生成
これによりDiscourseへの認証が行われ、APIキーを取得する方法となります。npxはコードをダウンロードして実行するため、従来の意味でインストールする必要があるものはありません。
ターミナルで以下を実行します。
npx @discourse/mcp@latest generate-user-api-key \
--site =DISCOURSE-FORUM= \
--save-to =MCP-CONFIG=
ブラウザの同意を承認し、暗号化されたデータをコピーして戻します。これにより、ログイン能力が証明され、MCPサーバーが使用するために=MCP-CONFIG=に保存されるAPIキーが生成されます。
APIキーは、ユーザーとしてのフォーラムへのアクセスレベルと同じレベルのアクセス権を持ちます。
2. Codex CLIへのMCPサーバーの追加:
ターミナルで以下を実行します(Codex CLI内ではありません)。
codex mcp add discourse \
-- npx -y @discourse/mcp@latest \
--profile =MCP-CONFIG=
これはSTDIOサーバーとしてインストールされるため、Codex CLIの起動時にnpxによってオンデマンドで起動されます。
=MCP-CONFIG=にあるプロファイルを使用するように設定されており、デフォルトでは読み取り専用です。
3. Codex CLIの再起動
Codexを完全に再起動して、config.tomlとプロファイルを再読み込みします。
エラーなしで起動した場合、設定に問題はなく、Codex CLI内で/mcpの「スラッシュ」コマンドを実行すると、MCPサーバーが一覧表示されるはずです。
Codex CLI内で、CodexにこのDiscourseを参照して情報(特にアクセス権はあるが公開されていない情報)を取得するように依頼することで、あなたとして接続されていることを確認できます。
設定の編集
いずれかの時点で、Discourseへの書き込み機能を有効にするために設定を編集したくなる場合があります。これはDiscourseの設定で行います。
紛らわしいことに、設定が保存される2つの場所があり、CodexのドキュメントとDiscourseのドキュメントの間で、Codex CLIに属する部分とMCP STDIOサーバー自体に属する部分を区別するのが非常に困難です。
2つの主要なファイルがあります。
-
=CODEX-CONFIG=- これはCodex CLIの設定ファイルで、MCPサーバーの設定が含まれます。 -
=MCP-CONFIG=- これはDiscourse MCPサーバーのプロファイルで、APIキーやDiscourseへの接続に関するその他の設定が含まれます。
Codex CLIの設定
MCPへの接続設定は=CODEX-CONFIG=にあり、次のような外観になります。MCPサーバーにオプションを追加したい場合は、ここにそれらを追加します。
# =CODEX-CONFIG=
[mcp_servers.discourse]
command = "npx"
args = ["-y", "@discourse/mcp@latest", "--profile", "=MCP-CONFIG="]
Codex MCP設定ドキュメント Model Context Protocol
Discourse MCPの設定
Discourse MCPサーバー自体の設定は=CODEX-CONFIG=にあります
# =MCP-CONFIG=
{
"profiles": [
{
"site": "=DISCOURSE-FORUM=",
"user_api_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"user_api_client_id": "discourse-mcp"
}
]
}
Discourse MCP設定ドキュメント参照 GitHub - discourse/discourse-mcp: MCP client for Discourse sites · GitHub