
Elicitation Auditor
io.github.4hmetuyar由 GitHub 账号 4hmetuyar 发布v0.1.1更新于 Oct 24, 2026
MCP elicitation anti-patterns: secrets in forms, third-party authorize URLs, credentials in URLs
概览
本地 MCP 服务器,静态扫描 MCP 服务器源码中的 elicitation 反模式,例如表单中索取密钥、URL 中携带凭据。
- 可以做什么
- 扫描源码字符串、单个文件或递归扫描整个目录,查找 elicitation 反模式
- 列出内置检查项(表单模式索取密钥、第三方 authorize 链接、URL 中嵌入凭据、明文 HTTP、表单中的可点击链接、把表单答案当作身份、忽略 decline/cancel)
- 输出检查结果供审阅,命令行还可输出 text、JSON 或 SARIF 格式
- 适用场景
- 适合在开发或审查使用 elicitation 的 MCP 服务器时,按 2026-07-28 规范中表单模式与 URL 模式的界限做一次快速静态检查。
- 运行要求
- 以 npm 包 @guardbee/mcp-elicitation-auditor 通过 stdio 在本机运行,需要 Node.js 与 npx。无需 API 密钥,未声明环境变量,也不需要认证。
安装
在 SourceWeft 中
- 打开 控制台中的 Elicitation Auditor,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
@guardbee/mcp-elicitation-auditor
🇬🇧 English | 🇹🇷 Türkçe | 🇨🇳 中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇧🇷 Português | 🇪🇸 Español | 🇩🇪 Deutsch
[npm version] [npm downloads] [License: MIT]
An MCP server that scans MCP server source for elicitation anti-patterns in the 2026-07-28 specification.
That revision deprecated sampling and roots. Elicitation is the remaining way a server asks the client for something. Form mode collects structured data through the client. URL mode sends the user to a page the client must not read. The spec draws a hard line between them.
Telemetry is off by default. With
GUARDBEE_TELEMETRY=1it sends the server, tool, success, duration and short parameter values such as a file path; longer strings and fields likecontent,tokenorpasswordare replaced with a placeholder. See@guardbee/mcp-telemetry.
What it flags
- Form-mode secrets.
elicitInput/ctx.elicit/elicitation/createwith mode omitted orform, whose schema asks forpassword,apiKey,access_token,cvv, and the same family. A name and email form is allowed by the spec and is not flagged.secretQuestionis not treated assecret. - Direct third-party authorize. URL mode whose
urlpath containsauthorize,oauth, oroauth2, unless the path goes through your own/connectroute. That is the forwarded-link phishing case in the spec: the user who opens the link must be checked against the MCP user before any redirect. - Credential or personal data in the URL. Query keys such as
access_token,code, oremail. The URL is shown to the MCP client. - Cleartext HTTP, except
localhostand127.0.0.1. - Clickable URL in a form. A form message or field description that contains an
httplink. The spec says that link belongs in URL mode. - Form answer used as identity. The submitted email or username is passed to
findUser,loginAs, or assigned toreq.user, with no comparison to the tokensubclaim. - Ignored decline/cancel. Code reads
.contentand never looks at.action,decline, orcancel. Checkingaction !== "accept"is enough. Sending the email as a notification address is not treated as an identity check.
Tools
CLI
guardbee.yml:
No API key. Static analysis only.
Feedback
Questions, ideas, or a false positive? Start a thread in GitHub Discussions or open an issue. If GuardBee is useful to you, a ⭐ on the repository helps others find it.
来源:packages/elicitation-auditor/README.md,提交 82be7b9
工具
0版本历史
1- v0.1.1最新Sep 30, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分