Check package versions for known vulnerabilities (free, OSV.dev)
osv_query_packagesQuery exact package versions against OSV.dev from your machine to identify which are vulnerable and get advisory IDs.
Instructions
WHAT: Query the public OSV.dev database (api.osv.dev querybatch) directly from your machine for exact package versions; returns which are vulnerable and the advisory IDs. WHEN: Quick "is lodash 4.17.20 vulnerable?" checks for up to 200 packages; then osv_get_vulnerability for details of specific IDs. WHEN NOT: Parsing manifests/lockfiles, severity filtering, fixed/recommended versions in one shot -> osv_audit_dependencies (paid). COST: Free. Direct HTTPS to api.osv.dev only (Google-run public API); no token, nothing sent to Fairquery or Apify. 20 s timeout. RETURNS: Paged items {type:"package",ecosystem,name,version,vulnerable,vuln_count,vuln_ids[],osv_url} or {type:"error",code:INVALID_ECOSYSTEM}; meta.vulnerable_count. Tool errors: OSV_FETCH_FAILED (retryable). EXAMPLE: {"packages":[{"ecosystem":"npm","name":"lodash","version":"4.17.20"}]} -> vulnerable true, vuln_ids ["GHSA-35jh-r3h4-6jhm",...].
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Page size: items to return, integer 1-200 (default 100) | |
| offset | No | Items to skip for paging, integer >= 0 (default 0); pass nextOffset from the previous response | |
| packages | Yes | Required. 1-200 exact package versions. Example: [{"ecosystem":"npm","name":"lodash","version":"4.17.20"}] |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | Tool-specific context (summary counts, cost notes, ...) | |
| count | Yes | Number of items in this page | |
| items | Yes | Result rows for this page | |
| total | Yes | Total items before paging | |
| offset | Yes | Offset of the first item in this page | |
| hasMore | Yes | True if more items exist after this page | |
| nextOffset | Yes | Offset to pass for the next page, or null |