mcpField
D
dependency-auditor

dependency-auditor

Local
github.com/GuardBeeSecurity1Updated 1d ago

About dependency-auditor

dependency-auditor is an MCP server and CLI for checking project dependencies against OSV. It serves developers and CI pipelines with vulnerability findings, upgrade guidance, and prioritization using exploit data.

Key features

  1. 01Audits npm, pip, and additional ecosystems
  2. 02Reads package manifests and lockfiles
  3. 03Detects known malicious releases
  4. 04Prioritizes CISA KEV and FIRST EPSS findings
  5. 05Suggests package upgrades addressing advisories
  6. 06Supports CI failure thresholds

Use cases

  1. 01Scan project dependencies before a release
  2. 02Check a package version for known vulnerabilities
  3. 03Gate CI on severity or exploit risk
  4. 04Find the direct dependency behind a vulnerable package

MCP support

Provides MCP tools to audit npm and Python projects, inspect individual packages, and scan directories for supported manifests.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"4hmetuyar-dependency-auditor": {
"command": "npx",
"args": [
"-y",
"@guardbee/mcp-dependency-auditor"
]
}
}
}
Run commandnpx -y @guardbee/mcp-dependency-auditor

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@guardbee/mcp-dependency-auditor0.2.4

Tools

4

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
directorystringYesPath to the directory containing package.json
includeDevDepsbooleanNoInclude devDependencies in the audit (default: false)

Details

From the project 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

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

Add to claude_desktop_config.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:

# Audit all dependencies in a directory (npm + pip auto-detected)
npx @guardbee/mcp-dependency-auditor audit ./my-project

# npm only
npx @guardbee/mcp-dependency-auditor audit-npm . --fail-on=critical

# pip only
npx @guardbee/mcp-dependency-auditor audit-pip . --fail-on=high

# Single package
npx @guardbee/mcp-dependency-auditor audit-pkg lodash 4.17.20 npm

# JSON output
npx @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
name: Dependency Audit
on: [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
dependency-audit:
  image: node:20
  script:
    - npx @guardbee/mcp-dependency-auditor audit . --fail-on=high
  only:
    - merge_requests
    - main
Pre-commit Hook
# .git/hooks/pre-push
npx @guardbee/mcp-dependency-auditor audit . --fail-on=critical || exit 1

Development

npm install
npm test          # 20 unit tests
npm 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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.