¡Discourse MCP está aquí!

,

Tan pronto como Anthropic hizo de código abierto su propuesta de Protocolo de Contexto de Modelo (MCP) para interactuar con agentes de IA hace casi un año, nos entusiasmamos con la gran compatibilidad que tenía con Discourse. 


Este es un tema de discusión complementario para la entrada original en https://blog.discourse.org/2025/10/discourse-mcp-is-here
26 Me gusta

Aquí hay un buen ejemplo de los flujos de trabajo que son posibles con Discourse MCP, integración de Discourse → Jira

17 Me gusta

Impresionante, aunque me sorprende que uses Jira y no Discourse :wink:

4 Me gusta

Sé que estás bromeando, pero estaba buscando un buen ejemplo ilustrativo para grandes empresas con muchos canales de atención al cliente que centralizan las cosas en Jira por razones históricas :wink:

¿Alguien tiene más ideas para integraciones como esa? Podría hacer un par de capturas de pantalla más.

7 Me gusta

Así es como me siento al respecto :smiley:

Pero en serio, una adición fantástica.

¿Dónde podemos encontrar la documentación final sobre los posibles valores de los argumentos y todos los comandos/herramientas disponibles?

Por ejemplo, me gustaría añadir el MCP a mi IDE pero limitarlo a categorías específicas como Dev y Documentation > Developer Guides.

4 Me gusta

La documentación se mantiene en GitHub - discourse/discourse-mcp: MCP client for Discourse sites

Esto también se muestra en la interfaz de usuario de su cliente MCP, por ejemplo, Claude Code muestra

Actualmente puedes pedirlo de alguna manera con algo como:

Al buscar o filtrar, a través de discourse_filter_topics o discourse_search, añade category:dev,documentation a la query para que solo busques información relevante.

2 Me gusta

Pregunta sobre el uso de Discourse MCP. Si un usuario usa MCP, ¿cuenta para su fecha de inicio de sesión? ¿para que puedan obtener la insignia de Devoto fácilmente?

1 me gusta

Los Meta TOS prohíben usar esto de todos modos :thinking:

No puede automatizar el acceso al foro, ni monitorear el foro, como con un rastreador web, un complemento o un complemento del navegador, u otro programa informático que no sea un navegador web. Puede rastrear el foro para indexarlo para un motor de búsqueda disponible públicamente, si ejecuta uno.

3 Me gusta

Una publicación fue dividida en un nuevo tema: Discourse MCP User API Key Generator Error Nodejs 20

Excelentes noticias, y esto genera toda una buena ideación de proyectos ambiciosos (moonshot). Me encantaría ver Discourse MCP disponible en Cursor. Esto abriría la puerta a usuarios de la comunidad de todos los niveles en desarrollo o codificación. Esta integración serviría como una fuente abundante de casos de uso y comentarios prácticos.

5 Me gusta

Oh, lo está, solo necesitas agregarlo a tu configuración de mcp :hugs:

5 Me gusta

Hasta ahora, ¡el MCP funciona a las mil maravillas!

Pero otra pregunta: ¿Hay alguna manera de añadir un argumento para recuperar una traducción específica del tema?

Nuestro caso de uso: Tenemos una gran base de conocimiento en alemán que luego se traduce al inglés. Nuestros mantenedores son hablantes de alemán con conocimientos limitados de inglés.

Por lo tanto, nos gustaría mantener el contenido en alemán pero recuperar el contenido localizado en inglés.

¿Es eso factible?

1 me gusta

Actualmente no, pero añadir un parámetro extra a la herramienta de lectura para pasar una configuración regional (locale) sería una buena característica.

2 Me gusta

Podría estar relacionado con mi solicitud de función aquí: Support for tl=[lang] parameters in REST API (for non-anon users)

Desde la perspectiva del usuario, sería genial tener un parámetro idéntico y un conjunto de valores para MCP, así como para la API REST.

¿Tiene sentido?

1 me gusta

@falco, ¿aceptas PRs? Aunque la MCP de Discourse tiene una herramienta para crear nuevas categorías, no hay un argumento de permisos.

Podría enviar el siguiente PR:

Cambios Propuestos para Discourse

src/tools/builtin/create_category.ts

  • Actualizar el esquema zod para aceptar un campo opcional permissions.

    • Tipo: z.record(z.string(), z.number()).optional().

    • Descripción: Mapa de nombres de grupos a niveles de permiso.

    • Formato: { "nombre_grupo": tipo_permiso_int }

    • Valores de tipo de permiso (del esquema de Discourse):

      • 1: completo (Ver, Responder, Crear)

      • 2: crear_publicacion (Solo Responder)

      • 3: solo_lectura (Solo Ver)

  • Pasar permissions en la carga útil a client.post('/categories.json', payload).

Sí, siéntete libre de enviar PRs.

1 me gusta