Skip to main content
Glama

deps_audit

deps_audit

Vulnerability audit of up to 200 pinned dependencies in one call against the OSV database (npm, PyPI, Go, Maven, Cargo, NuGet). Accepts a package list or a package.json (dependencies and devDependencies, range prefixes stripped). Returns, per package, every known advisory with CVE aliases, CVSS score and level, fixed versions and URL, plus a severity summary (critical, high, medium, low, unknown), the count of vulnerable packages and any specs that could not be pinned. Price: $0.02 USDC per call (x402).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "deps_audit"
  }
}

Input Schema

NameRequiredDescriptionDefault
packagesNoPinned packages to audit, max 200
ecosystemNonpm (default), pypi, go, maven, cargo or nuget
package_jsonNoA package.json object; dependencies and devDependencies are audited (npm only)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior3/5

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

Annotations supply only readOnlyHint=false, so the description must carry the behavior burden — and it does disclose a real cost ('$0.02 USDC per call (x402)') plus the 200-package cap and what gets stripped from ranges. It does not explain auth/wallet requirements for x402 payment, rate limits, or failure behavior, and the audit is effectively a read while annotations mark it non-read-only without clarifying why (likely the payment side effect).

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

Conciseness4/5

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

Front-loaded with the core action and scope, then inputs, then outputs, then price — a logical order with little filler. The final return-value sentence is clause-heavy but each clause carries information an agent needs.

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

Completeness5/5

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

With no output schema, the description fully specifies the return payload (per-package advisories with CVE aliases, CVSS, fixed versions, plus severity summary and unpinnable specs), and it discloses the payment model and input limits. That is sufficient for an agent to call it correctly despite only three parameters.

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 adds genuine meaning: package_json audits both dependencies and devDependencies (npm only) and range prefixes are stripped, which explains how 'pinned' versus ranged specifiers are handled. The ecosystem list largely repeats the schema's enum-free description.

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 and resource ('Vulnerability audit of up to 200 pinned dependencies ... against the OSV database') plus supported ecosystems, so the scope is unmistakable. It stops short of distinguishing itself from the sibling deps_check, which an agent would have to guess between.

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 accepted input shapes (a package list or a package.json with dependencies/devDependencies), and the npm-only constraint on package_json is a useful conditional. However, there is no explicit when-to-use/when-not guidance and no mention of how this differs from deps_check.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources