GitHub 仓库中未启用问题(Issues),但如果我应该在其他地方发布此信息,请告诉我!
当我运行用户 API 密钥生成器时,我收到以下错误:
Decrypting payload…
[2025-12-01T16:38:59.409Z] ERROR Failed to decrypt payload: RSA_PKCS1_PADDING is no longer supported for private decryption.
看起来自 nodejs 20 以来,这默认就不再受支持了。
虽然该帖子提到了重新启用填充选项的解决方法,但该方法似乎已被禁用。
$ NODE_OPTIONS='--security-revert=CVE-2023-46809' npx @discourse/mcp@latest generate-user-api-key --site https://example.com --save-to discourse-mcp.json --scopes "read"
node: --security-revert= is not allowed in NODE_OPTIONS
我有点困惑,因为这段代码是几个月前在 discourse-mcp/src/user-api-key-generator.ts at 51f144fff8847647d1ba7354d5bc1fe661110a43 · discourse/discourse-mcp · GitHub 中添加的。也许大家只是在使用管理员生成的密钥?
Falco
(Falco)
拆分了此话题
3
一篇帖子已被拆分到新主题:MCP 的默认查询参数幻觉
Falco
(Falco)
4
您运行的是什么操作系统、NodeJS 和 OpenSSL 版本?
我在以下环境中运行正常:
Linux
Node 24.5
OpenSSL 3.6.0
◄ 0s ◎ npx @discourse/mcp@latest generate-user-api-key \
--site https://meta.discourse.org \
--save-to profile.json
🔑 Discourse 用户 API 密钥生成器
站点: https://meta.discourse.org
范围: read,write
正在生成 RSA 密钥对...
✓ 密钥对已生成
请访问此 URL 以授权应用程序:
https://meta.discourse.org/user-api-key/new?application_name=Discourse+MCP&client_id=discourse-mcp&scopes=read%2Cwrite&public_key=-----BEGIN+PUBLIC+KEY-----blablabla----END+PUBLIC+KEY-----%0A&nonce=1764619683010
授权后,您将被重定向到一个类似以下的 URL:
discourse://auth_redirect?payload=<encrypted_payload>
或者您可能会在页面上看到加密的 payload。
在此处粘贴加密的 payload: longkey
正在解密 payload...
✓ 用户 API 密钥已成功检索
✓ 保存到配置文件: profile.json
{
"success": true,
"profile": "profile.json"
}
◄ 16s ◎ node --version
v24.5.0
◄ 0s ◎ openssl --version
OpenSSL 3.6.0 1 Oct 2025 (Library: OpenSSL 3.6.0 1 Oct 2025)
2 个赞
$ node --version
v22.15.0
$ openssl -v
OpenSSL 3.6.0 1 Oct 2025 (Library: OpenSSL 3.6.0 1 Oct 2025)
我刚刚通过 nvm 切换到 node 24,它奏效了!这引导我找到了 https://github.com/nodejs/node/issues/55628,该问题以“这在 node < 24 上_永远_不会工作”的说法结束。
我猜 discourse-mcp/package.json at 858e5bd5092c7d31693554046db34f98671a8cb9 · discourse/discourse-mcp · GitHub 应该更新为 >=24。
谢谢!
2 个赞