vdb_request

vdb_request issues a read-only GET against a database endpoint that no dedicated tool covers.

It exists so a capable agent can reach a new endpoint the day it ships, without waiting for a server release. That is the whole justification, and it is worth stating because an escape hatch is otherwise a smell.

ArgumentTypeDefault
pathstring, requirednone
queryobject of stringsnone
versionv1 | v2v2
maxBytes1024–1048576262144
{ "path": "/vuln/CVE-2021-44228/sightings", "query": { "limit": "5" } }

Prefer a real tool

When one exists, use it. Dedicated tools shape their responses; vdb_request returns the payload unshaped, and an unshaped record can be megabytes. Above maxBytes you get a truncated preview with _meta.truncated: true instead of silence, though a truncated 2.6 MB record is not a useful answer.

The path allowlist

Paths are matched against a list of read-only prefixes. This is by design and not going to change.

Warning A free-form path would make this an SSRF primitive. The caller controls the path, the server attaches a real credential, and the request originates inside Cloudflare’s network. Restricting to known read surfaces keeps the blast radius to data the caller is already entitled to.

Allowed prefixes include:

/vuln/          /exploits       /kev            /iocs
/sightings      /attack-techniques              /snort-rules
/yara-rules     /nuclei         /vex            /triage
/advisories     /workarounds    /affected       /cwe-guidance
/scorecard      /cloud-locators /packages       /search/
/summary        /sources        /ecosystems     /product/
/eol/           /fixes/         /identifiers    /gcve
/msrc/          /timeline       /vendor-trends  /exploit-trends
/malware-campaigns              /malware-trends
/ai-discoveries /ai-assisted-exploits
/ai-in-wild-exploitations       /ai-generated-malware
/vulnetix-kev   /raw/           /purl/

Unreachable, by design:

  • /cli.*, the CLI-only surface, several of which mutate organisation state
  • /auth/*, credential minting
  • Any non-GET method

Try one and you get a plain refusal naming the allowlist, not a silent failure.

Same rules as everything else

vdb_request does not bypass authentication, rate-limit surfacing, the size guard, or the per-tool upstream call budget. It is a thinner tool, not a privileged one.

When you use it, tell us

If you find yourself reaching for vdb_request regularly for the same endpoint, that is a missing tool. Open an issue, because a shaped tool will serve you better than an unshaped payload.