mcp-audit

io.github.saagpatel由 GitHub 账号 saagpatel 发布v3.0.0更新于 Nov 3, 2026

扫描、枚举并为本机上配置的每个 MCP 服务器进行风险评分。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Scan, enumerate, and risk-score every MCP server configured on your machine.

发布方自己的服务:audit.domains - Domain Valuation

已验证STDIO仅桌面开发者工具安全与监控

概览

mcp-audit 的本地 MCP 服务;无需登录;STDIO。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

  1. 打开 控制台中的 mcp-audit,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

mcp-audit

[PyPI] [Python] [CI] [CodeQL] [License: MIT]

See what your AI tools' MCP servers can reach.

MCPAudit reviews MCP server configuration and, when asked, lists the tools a server exposes. It highlights declared capabilities, instruction-shaped text heuristics, and changes from a saved pin so you can decide what to investigate. Findings are review signals: a high score means broader capability exposure, not that a server is malicious or unsafe.

[!IMPORTANT] The package is mcp-audits; the command is mcp-audit. The default check is static. check --connect and --connect-all can start configured local programs or contact configured endpoints. Legacy scan never connects: it refuses connecting forms with exit 2 before discovery. Package verification, downloads, and LLM analysis are separate opt-in operations. MCPAudit does not edit configs, and reports environment variable key names, never their values. Review generated reports before sharing them.

Try it

sh
mcp-audit                              # static review of supported configsmcp-audit check --config ./mcp.json    # review this file only; no connectionsmcp-audit demo                         # see a bundled synthetic examplemcp-audit explain MCP007               # explain a finding offline; no config reads

Install with uv:

sh
uv tool install mcp-audits

Or run without installing:

sh
uvx --from mcp-audits mcp-audit demo

What to do with a finding

Start with the suggested action and inspect the named capability or evidence. For example, if a filesystem server can write broadly, restrict its configured directory and review the report again. Pattern-based instruction checks can miss reworded or obfuscated text and can also need human review. A clean report is not a safety certificate.

text
Review the server's configured access, narrow it if needed, then run the check again.

Use Start here for a guided walkthrough and Reading results to interpret scores, findings, and coverage. How it works explains the check boundary.

Each rule's meaning, possible consequences, manual fix and confidence limits are in the finding reference; mcp-audit explain MCP013 prints the same entry offline. Explicit --config sources are labeled "explicit file; parsed as Claude-style config"; the parser identity does not establish which client uses that file.

Static tool metadata checks also flag malformed MCP header annotations, credential parameters mapped to headers, external schema references and unexpected icon sources. These checks inspect served metadata without fetching schemas or icons.

Use in CI

MCPAudit can write SARIF and evaluate local policy files. Begin with config-only CI, then enable connected checks only where the workflow should start those servers. See the CI guide and policy examples.

For a pinned release example, the composite Action can upload SARIF to GitHub code scanning:

yaml
- uses: saagpatel/[email protected]

The release checklist calls out Action references so maintainers can update examples when a new public release is available. Review the action's permissions and inputs before enabling it in a repository.

Choose a review path

GoalStarting pointWhat it does
Learn the outputmcp-audit demoUses bundled synthetic input
Review one filemcp-audit check --config FILEStatic check of the selected config
Make a share cardmcp-audit checkup --config FILE --card checkup.htmlWrites a local counts-only HTML Preview
See discovered sourcesmcp-audit inspectLists identities and source status
Inspect one servermcp-audit check --connect --server IDConnects to one unambiguous identity
Inspect a fleetmcp-audit check --connect-allConnects to workstation servers; add --connect-project-configs for projects
Automate a policymcp-audit check --policy FILEEvaluates a local policy
Review a saved pinmcp-audit pin --statusShows baseline status; pin is the visible alias for baseline pin

The server ID is CLIENT:SCOPE:NAME; use the exact identity from inspect to avoid ambiguous selections. Connected checks can start configured local commands or contact their endpoints.

checkup writes a local, counts-only share card with no names by default; see the checkup guide.

Keep the evidence in context

Configuration-based findings describe declared access. A connected listing adds the tool metadata the server provides, but does not prove what the server will do later. Connected HTTP scans also send one credential-free server/discover request and, on 401, review bounded public authorization metadata. The probe never uses configuration header values and does not run with --skip-connect or for project sources without connection opt-in. These observations do not prove a completed OAuth flow. The optional canary is bounded and exercises only eligible tools under its documented limits. See How it works for the boundary between those observations.

Reports can contain configuration shape, tool names, and evidence text. Secret redaction is best-effort (known issues); review a report before sharing it. Configs are parsed in full, but environment variable values are discarded during parsing and never reported; reports keep key names for context. The output contract lists stable fields and the limits of these outputs.

Status

Stack

MCPAudit uses Python 3.11+, uv, pytest, Ruff, and mypy. JSON, SARIF, and HTML reports are versioned public surfaces. Run make check before proposing changes.

Known risks

Static findings describe configured access and served metadata; they do not prove how a server behaves later. Secret redaction is best-effort. Upgrading from 2.x? Read the 3.0 migration guide; the 3.0 boundary proposal records the decisions behind it.

Next steps

Use explicit synthetic fixtures for local changes, preserve read-only defaults, and keep coverage claims tied to completed checks. Re-enable Python 3.15 after an rpds-py/PyO3 lock refresh.

More documentation

Explore pinning, shadow review, suppressing findings, the trust packet guide, MCP trust packet, output contract, and sandbox fixtures. See the documentation index, labs, maintainer procedures in maintainers/, and older material in archive/.

来源:README.md,提交 9b42140

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

8
  1. v3.0.0最新Nov 3, 2026
  2. v2.12.0Oct 13, 2026
  3. v2.11.0Oct 12, 2026
  4. v2.10.1Oct 12, 2026
  5. v2.10.0Oct 11, 2026
  6. v2.9.0Oct 11, 2026
  7. v2.8.1Oct 6, 2026
  8. v2.7.0Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Audit 集成