Skip to main content
Glama
@guardbee/mcp-security-proxy

@guardbee/mcp-security-proxy

Official

dependency_auditor__audit_pip

Audit Python dependencies for known CVEs via OSV, reading lock files first and falling back to requirements.txt or pyproject.toml.

Instructions

Audit Python dependencies for known CVEs using the OSV database. Reads exact versions from uv.lock, poetry.lock or Pipfile.lock, falling back to requirements.txt / pyproject.toml

Input Schema

NameRequiredDescriptionDefault
directoryYesPath to the directory containing requirements.txt or pyproject.toml
exploitDataNoAdd CISA KEV (exploited in the wild) and FIRST EPSS data and order findings by it (default: true; sends CVE IDs only)
includeDevDepsNoInclude dev groups from poetry.lock, uv.lock or Pipfile.lock (default: false)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.5
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv0.1.1

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does disclose the external data source (OSV) and the resolution precedence across lockfiles, which is real behavioral context, but it never says the tool is read-only/non-destructive, whether it hits the network per package, what it does when no lockfile is found, or what the findings look like.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences: the action and CVE source come first, followed by the file-resolution rule. No filler, and the most decision-relevant information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter read-only audit with full schema coverage and no output schema, this is close to sufficient: source resolution and data source are covered. A short note on output shape or that no files are modified would close the remaining gap left by the absence of annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description earns more by clarifying that `directory` may contain uv.lock/poetry.lock/Pipfile.lock and not only requirements.txt/pyproject.toml as the schema says. That precedence also gives context for includeDevDeps, though exploitData behavior is left entirely to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (audit Python dependencies) and the data source (OSV CVE database), which implicitly separates it from dependency_auditor__audit_npm. However, it never names or contrasts the closest siblings (audit_package, audit_directory), so routing relies on the reader inferring that this is the Python/lockfile-specific variant.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the mention of lockfiles and fallback files: use it on a Python project directory that has one of these manifests. There is no explicit when-to-use/when-not statement and no reference to audit_package or audit_directory as alternatives for other input shapes or ecosystems.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools