He estado experimentando con Discourse MCP, pero descubrí que la documentación existente en Meta para usarlo no incluía nada para Codex CLI, y fue un poco confuso averiguar qué partes de la documentación se aplicarían:
- ¿es
npxonpm install? - ¿qué partes de la configuración son de Codex y cuáles son de Discourse MCP?
- ¿dónde pongo las configuraciones como
read_only: false?
Así que, después de mucho trastear, aquí tienes una guía probada para instalar Discourse MCP en Codex CLI, y en los próximos días seguiré con una guía para Claude Code CLI y opencode. Si hay otros clientes de MCP que te gustaría usar, házmelo saber en las respuestas e intentaré ayudarte.
Prerrequisitos:
- Node.js instalado (se recomienda 24 LTS)
- Codex CLI instalado
- Acceso a https://discourse.example.com como usuario normal
Es importante darse cuenta de que hay tres componentes separados aquí:
- El foro remoto de Discourse, que es la fuente de datos y el objetivo de las acciones.
- El servidor Discourse MCP, que es una herramienta de código abierto que se ejecuta localmente y se conecta a Discourse y proporciona una API para que Codex interactúe con Discourse. Se instala como un servidor STDIO y se lanza a demanda por Codex CLI.
- Codex CLI, que es el cliente MCP que se conecta al servidor MCP y proporciona la interfaz para interactuar con Discourse a través de la API de MCP.
1. Generar la clave API de Usuario
Esto te autenticará en Discourse y es la forma en que obtendrás tu clave API. npx descargará y ejecutará el código, no es necesario instalar nada en el sentido tradicional.
En una terminal, ejecuta:
npx @discourse/mcp@latest generate-user-api-key \
--site =DISCOURSE-FORUM= \
--save-to =MCP-CONFIG=
Acepta el consentimiento del navegador y copia los datos cifrados, lo que demuestra tu capacidad para iniciar sesión y genera una clave API que se guarda en =MCP-CONFIG= para que la use el servidor MCP.
La clave API tendrá el mismo nivel de acceso al foro que tú tienes como usuario.
2. Añadir el servidor MCP a Codex CLI:
Ejecuta esto en una terminal (no dentro del propio Codex CLI)
codex mcp add discourse \
-- npx -y @discourse/mcp@latest \
--profile =MCP-CONFIG=
Se instala como un servidor STDIO, por lo que se lanzará a demanda con npx por Codex CLI cuando inicies Codex CLI.
Está configurado para usar el perfil en =MCP-CONFIG= y por defecto es de solo lectura.
3. Reiniciar Codex CLI
Reinicia completamente Codex para que recargue config.toml y el perfil.
Si se inicia sin errores, no hay problemas con la configuración y deberías ver el servidor MCP listado cuando ejecutes el comando de barra /mcp en Codex CLI.
En Codex CLI puedes pedirle a Codex que consulte este Discourse para obtener información, especialmente información a la que tienes acceso pero que no es pública, esto verificará que se está conectando como tú.
Edición de configuraciones
En algún momento es posible que desees editar las configuraciones para añadir la capacidad de escribir en Discourse, y lo harías en las configuraciones de Discourse.
Confusamente, hay dos lugares donde se almacenan las configuraciones y entre la documentación de Codex y la de Discourse es realmente confuso, especialmente para averiguar qué partes pertenecen a Codex CLI y cuáles son parte del servidor STDIO de MCP en sí.
Hay dos archivos principales:
-
=CODEX-CONFIG=: este es el archivo de configuración de Codex CLI, que incluye la configuración del servidor MCP. -
=MCP-CONFIG=: este es el perfil para el servidor Discourse MCP, que incluye la clave API y otras configuraciones para conectarse a Discourse.
Configuraciones de Codex CLI
Las configuraciones para conectarse al MCP están en =CODEX-CONFIG= y deberían verse de forma similar a esta. Si quieres añadir opciones al servidor MCP, añádelas aquí.
# =CODEX-CONFIG=
[mcp_servers.discourse]
command = "npx"
args = ["-y", "@discourse/mcp@latest", "--profile", "=MCP-CONFIG="]
Documentación de configuraciones de Codex MCP Model Context Protocol
Configuraciones de Discourse MCP
Las configuraciones para el servidor Discourse MCP en sí están en =CODEX-CONFIG=
# =MCP-CONFIG=
{
"profiles": [
{
"site": "=DISCOURSE-FORUM=",
"user_api_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"user_api_client_id": "discourse-mcp"
}
]
}
Referencia de la documentación de configuraciones de Discourse MCP GitHub - discourse/discourse-mcp: MCP client for Discourse sites · GitHub