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

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

本機 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 金鑰,未宣告環境變數,也不需要驗證。
安裝前請注意
僅做靜態分析;它會讀取你指定的原始碼,請避免掃描含無關敏感檔案的目錄。遙測預設關閉,但設定 GUARDBEE_TELEMETRY=1 後會把伺服器、工具、成功與否、耗時及檔案路徑等短參數值傳送給第三方,較長字串與 content、token、password 等欄位會以佔位符取代。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Elicitation Auditor,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

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=1 it sends the server, tool, success, duration and short parameter values such as a file path; longer strings and fields like content, token or password are replaced with a placeholder. See @guardbee/mcp-telemetry.

Claude ──► elicitation-auditor ──► MCP server source              │              ├─ form-secrets   (form mode asks for a password, API key, token, or card, or embeds a link)              ├─ url-binding    (URL mode opens a third-party /authorize endpoint directly)              ├─ url-exposure   (credential or email embedded in the elicitation URL)              ├─ transport      (cleartext http URL outside localhost)              ├─ identity       (a form answer is treated as who the user is)              └─ completion     (the result is used without checking decline or cancel)

What it flags

  • Form-mode secrets. elicitInput / ctx.elicit / elicitation/create with mode omitted or form, whose schema asks for password, apiKey, access_token, cvv, and the same family. A name and email form is allowed by the spec and is not flagged. secretQuestion is not treated as secret.
  • Direct third-party authorize. URL mode whose url path contains authorize, oauth, or oauth2, unless the path goes through your own /connect route. 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, or email. The URL is shown to the MCP client.
  • Cleartext HTTP, except localhost and 127.0.0.1.
  • Clickable URL in a form. A form message or field description that contains an http link. 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 to req.user, with no comparison to the token sub claim.
  • Ignored decline/cancel. Code reads .content and never looks at .action, decline, or cancel. Checking action !== "accept" is enough. Sending the email as a notification address is not treated as an identity check.

Tools

ToolPurpose
scan_textScan a source string
scan_fileScan one file
scan_directoryRecursive scan
list_patternsList the checks

CLI

npx @guardbee/mcp-elicitation-auditor scan <path> [--fail-on=any] [--format=text|json|sarif]

guardbee.yml:

yaml
elicitation-auditor:  fail-on: high  max-files: 5000  exclude:    - ".test.ts"

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
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.1最新Sep 30, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分