Discourse MCP server
io.github.discourse/mcp·v0.3.1·79 starsDiscourse MCP CLI server (stdio) exposing Discourse tools via MCP
79 stars3.2k downloads/wk
Reviews
Write oneNobody has reviewed Discourse yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Discourse tools
No tool declarations could be read from the package source. They show once the server is installed.
Public scan report
scanner v0.1.10 · 2026-10-31 · same rubric, same numbers if you re-run it
- Code scan327 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 10 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
How Discourse compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 94/100
- higher than 96% of 48,243 servers
- GitHub stars
- 79
- more than 95% of 28,706 servers
- Downloads a week
- 3,214
- more than 95% of 12,306 servers with a package
Install Discourse in Claude Code, Cursor or VS Code
Runs npx -y @discourse/mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp -- npx -y @discourse/mcp
What the publisher says
From the Discourse repository's README, as published. We do not edit it. Read it on GitHub
Discourse MCP
A Model Context Protocol (MCP) stdio server that exposes Discourse forum capabilities as tools and resources for AI agents.
- Entry point: src/index.ts → compiled to dist/index.js (binary name: discourse-mcp)
- SDK: @modelcontextprotocol/sdk
- Node: >= 24
- Version: 0.3.1 (simplifies write opt-in so --allowwrites is sufficient and deprecates readonly=false; 0.3.0 added operator-selectable toolsets, structured directory output, and expanded opt-in administration capabilities; 0.2.x introduced breaking changes from 0.1.x, including JSON-only tool output; category/group resources remain deprecated compatibility surfaces alongside canonical list tools)
Quick start (release)
- Run (read‑only, recommended to start)
npx -y @discourse/mcp@latestThen, in your MCP client, either:
- Call the discourseselectsite tool with { "site": "https://try.discourse.org" } to choose a site, or
- Start the server tethered to a site using --site https://try.discourse.org (in which case discourseselectsite is hidden).
- Enable writes (opt‑in, safe‑guarded)
npx -y @discourse/mcp@latest --allow_writes --auth_pairs '[{"site":"https://try.discourse.org","api_key":"'$DISCOURSE_API_KEY'","api_username":"system"}]'- Run with only Data Explorer built-in tools
npx -y @discourse/mcp@latest --toolsets data_explorer --tools_mode discourse_api_onlyThis exposes discourseselectsite plus the read-only Data Explorer tools. Add --site, authentication, and the write flags as needed; see Built-in toolsets.
- Use in an MCP client (example: Claude Desktop) — via npx
{
"mcpServers": {
"discourse": {
"command": "npx",
"args": ["-y", "@discourse/mcp@latest"],
"env": {}
}
}
}Alternative: if you prefer a global binary after install, the package exposes discourse-mcp.
json
{
"mcpServers": {
"discourse": { "command": "discourse-mcp", "args": [] }
}
}
Configuration
The server registers tools under the MCP server name @discourse/mcp. Choose a target Discourse site either by:
- Using the discourseselectsite tool at runtime (validates via /about.json), or
- Supplying --site to tether the server to a single site at startup (validates via /about.json and hides discourseselectsite).
- Auth
- None by default.
- Admin API Keys (require admin permissions): --authpairs '[{"site":"https://example.com","apikey":"...","apiusername":"system"}]'**
- User API Keys (any user can generate): --authpairs '[{"site":"https://example.com","userapikey":"...","userapiclientid":"..."}]'
- HTTP Basic Auth (for sites behind a reverse proxy): Add httpbasicuser and httpbasicpass to any auth_pairs entry. This is useful for Discourse sites protected by HTTP Basic Authentication at the reverse proxy level.
- You can include multiple entries in authpairs; the matching entry is used for the selected site. If both userapikey and apikey are provided for the same site, userapikey takes precedence.
- Write safety
- Writes are disabled by default.
- Built-in write tools are only registered when --allow_writes is enabled. This includes post, topic, private-message, category, user, upload, draft, and saved Data Explorer query mutations.
- Private-message listing and reading also require a matching authenticated site because PM data is never public.
- Toolset selection does not bypass write safety. A selected write tool remains absent unless writes are enabled.
- Write tools require a matching auth_pairs entry for the selected site; otherwise they return an error.
- A ~1 req/sec rate limit is enforced for write actions.
- Flags & defaults
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Discourse: common questions
- Is Discourse MCP server safe?
- Yes, by our scan: it is graded A (94/100). Read the Discourse safety report
- How do I install Discourse?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Discourse need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Discourse maintained?
- The last commit was 15 days ago (2026-10-21). The latest release is v0.3.1.
- How does Discourse compare with other MCP servers?
- safety score 94/100 (higher than 96% of 48,243 servers); github stars 79 (more than 95% of 28,706 servers); downloads a week 3,214 (more than 95% of 12,306 servers with a package). Full comparison.