Dependency Auditor

io.github.4hmetuyar由 GitHub 帳號 4hmetuyar 發布v0.2.4更新於 Oct 24, 2026

CVE scanning for npm/pip/cargo dependencies via OSV

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

概覽

AI 產生的概覽

比對 OSV 漏洞資料庫稽核 npm、pip 等相依套件,回報 CVE、惡意版本與修復方案。

可以做什麼
  • 稽核 npm 專案,讀取 package-lock、pnpm、yarn、bun 鎖定檔或 package.json
  • 稽核 Python 專案,讀取 uv、Poetry、Pipenv 鎖定檔或 requirements.txt、pyproject.toml
  • 依名稱、版本與生態系查詢單一套件(npm、PyPI、crates.io、Maven、Go、RubyGems)
  • 自動偵測並稽核目錄中所有支援的清單檔
  • 提供嚴重程度、CISA KEV 與 EPSS 優先順序、相依路徑與升級修復建議
適用情境
適合讓助理不必離開對話,就能檢查專案相依套件是否有已知漏洞或惡意版本,或查詢某個特定套件版本是否有 CVE。
執行需求
以本機 stdio 程序執行,通常透過 npm 套件以 npx 啟動,需要 Node.js 以及連線 OSV API 的網路。不需驗證或 API 金鑰。
安裝前請注意
會讀取你指定路徑下的專案清單與鎖定檔。遙測預設關閉;設定 GUARDBEE_TELEMETRY=1 後會傳送工具名稱、成功狀態、耗時以及檔案路徑等短參數值。除非以 --no-exploit-data 或 exploit-data: false 關閉,否則會把 CVE 編號傳送給第三方服務。

安裝

在 SourceWeft 中

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

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@guardbee/mcp-dependency-auditor

🇬🇧 English | 🇹🇷 Türkçe | 🇨🇳 中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇧🇷 Português | 🇪🇸 Español | 🇩🇪 Deutsch

[npm version] [npm downloads] [License: MIT]

An MCP server that audits npm and pip manifests against the OSV database for known CVEs. A single-package lookup also covers PyPI, crates.io, Maven, Go, and RubyGems.

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.


Features

  • OSV API Integration — Google's open-source vulnerability database (free, no authentication required)
  • npm Support — reads exact versions from package-lock.json / npm-shrinkwrap.json (v1/v2/v3), pnpm-lock.yaml (v5/v6/v9), yarn.lock (v1 and Berry) and bun.lock, falling back to package.json ranges. Transitive packages are included, and dev-only packages are told apart even when the lockfile does not mark them (pnpm v9, yarn, bun)
  • Rust, Go, Ruby, PHP — Cargo.lock (dev crates from Cargo.toml), go.mod (// indirect and replace aware), Gemfile.lock (platform builds merged, dev groups from the Gemfile) and composer.lock (packages-dev), audited by audit and the audit_directory tool
  • pip Support — reads exact versions from uv.lock, poetry.lock and Pipfile.lock (dev groups separated), falling back to requirements.txt, requirements/base.txt, requirements/prod.txt, and pyproject.toml
  • Malicious Package Detection — known-malicious releases (OpenSSF MAL-* entries and advisories classified CWE-506, e.g. the hijacked [email protected] / [email protected] of September 2025) are reported first as critical, with a removal and credential-rotation action, and fail any --fail-on threshold
  • Exploit Prioritization — findings are enriched with CISA KEV (exploited in the wild, ransomware use) and FIRST EPSS (probability of exploitation in 30 days) and ordered malware → KEV → severity → EPSS. Gate CI on them with --fail-on-kev / --fail-on-epss=<0-1> (--fail-on=none turns the severity gate off). Only CVE IDs are sent; --no-exploit-data or exploit-data: false in guardbee.yml turns it off
  • Severity Scoring — Critical / High / Medium / Low based on CVSS score or a text heuristic
  • Fix Plan — one upgrade per package: the smallest listed version that clears every advisory (e.g. log4j-core 2.14.1 → 2.25.4 (fixes 7/7)), with advisories that stay open and major-version jumps called out. Per-finding fixes follow the installed release line (next-auth 5.0.0-beta.31 → 5.0.0-beta.32, not 4.24.15), using SemVer, PEP 440 or Maven-style version ordering
  • CVE Links — direct links to NVD or osv.dev
  • Dependency Paths — each finding shows how the package gets installed ([email protected] › [email protected]), and the fix plan names the direct dependency to bump (← via [email protected]). Available for package-lock.json v2/v3, pnpm, yarn, bun and uv lockfiles
  • De-duplicated Findings — advisories that alias each other (GHSA + PYSEC, GHSA + MAL) are merged into one finding; ignore lists match any of their IDs
  • Tests — unit tests with lockfiles generated by the real package managers and a fake OSV API

Quick Start

bash
npm install -g @guardbee/mcp-dependency-auditor

Add to claude_desktop_config.json:

json
{  "mcpServers": {    "guardbee-dependency-auditor": {      "command": "npx",      "args": ["-y", "@guardbee/mcp-dependency-auditor"]    }  }}

MCP Tools

ToolDescription
audit_npmAudits npm dependencies (package-lock, pnpm, yarn, bun lockfiles or package.json)
audit_pipAudits Python dependencies (uv, Poetry, Pipenv lockfiles or requirements.txt / pyproject.toml)
audit_packageAudits a single package by name, version, and ecosystem
audit_directoryAuto-detects and audits all supported manifest files

Example Usage

You can ask Claude:

"Audit my project's npm dependencies: /Users/me/my-app"

"Is there a CVE for lodash 4.17.20?"

"Scan my Python project: /Users/me/django-app"

Example Output

⚠️  Found 3 vulnerabilities in 2/142 npm packages (1243ms)   Critical: 1  High: 1  Medium: 1  Low: 0  Unknown: 0
[CRITICAL] [email protected]  ID      : GHSA-35jh-r3h4-6jhm (CVE-2021-23337)  Summary : Command injection via template  Fix     : upgrade to [email protected]  Details : https://nvd.nist.gov/vuln/detail/CVE-2021-23337

Supported Ecosystems

The audit_package tool can query these ecosystems directly:

EcosystemParameter
npmnpm
PythonPyPI
Rustcrates.io
JavaMaven
GoGo
RubyRubyGems

CLI — CI/CD Integration

In addition to MCP server mode, this can also be used directly as a CLI:

bash
# Audit all dependencies in a directory (npm + pip auto-detected)npx @guardbee/mcp-dependency-auditor audit ./my-project
# npm onlynpx @guardbee/mcp-dependency-auditor audit-npm . --fail-on=critical
# pip onlynpx @guardbee/mcp-dependency-auditor audit-pip . --fail-on=high
# Single packagenpx @guardbee/mcp-dependency-auditor audit-pkg lodash 4.17.20 npm
# JSON outputnpx @guardbee/mcp-dependency-auditor audit . --format=json
# Fail only on what attackers actually use: CISA KEV, or EPSS ≥ 10%npx @guardbee/mcp-dependency-auditor audit . --fail-on=none --fail-on-kev --fail-on-epss=0.1

Exit codes: 0 = clean · 1 = findings above threshold · 2 = error

GitHub Actions

yaml
name: Dependency Auditon: [push, pull_request]
jobs:  audit:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4      - uses: actions/setup-node@v4        with:          node-version: 20      - run: npm ci      - name: Audit dependencies        run: npx @guardbee/mcp-dependency-auditor audit . --fail-on=high

GitLab CI

yaml
dependency-audit:  image: node:20  script:    - npx @guardbee/mcp-dependency-auditor audit . --fail-on=high  only:    - merge_requests    - main

Pre-commit Hook

bash
# .git/hooks/pre-pushnpx @guardbee/mcp-dependency-auditor audit . --fail-on=critical || exit 1

Development

bash
npm installnpm test          # 20 unit testsnpm run build     # TypeScript compile

License

MIT — GuardBee

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/dependency-auditor/README.md,提交 040e072

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.4最新Sep 29, 2026

評分

已滿足適用檢查項的 50%

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

  • 近 30 天內可連通25 分

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

  • 已宣告認證方式10 分

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

  • 已列出工具15 分

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

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