CVE Feed

Vulnerability intelligence your agent can read

This feed speaks the Model Context Protocol, so an agent can query current vulnerability disclosures as a tool instead of scraping a dashboard. Five public registers, merged and deduplicated, with a dedicated view of the AI and agent stack — the inference servers, agent frameworks and MCP servers your own stack is probably made of.

Add it

claude mcp add --transport http cvefeed https://cve.zerocrew.in/mcp

No account, no API key, no rate limit beyond what the upstream registers impose. Any MCP client works — the endpoint is all it needs.

Four tools

  • search_cves

    Filter by text, severity, CVSS, exploitation, AI-stack category or recency.

    { "stack": ["mcp"], "severity": ["critical", "high"], "limit": 10 }
  • get_cve

    One vulnerability in full, by CVE, GHSA, EUVD or advisory ID. Anything outside the current window is looked up directly at the registers, so any published CVE resolves however old.

    { "id": "CVE-2021-44228" }
  • list_exploited

    What CISA has confirmed is being exploited, optionally narrowed to the AI stack.

    { "stack": ["any"] }
  • feed_status

    Which sources answered, how old the data is, and the categories available. Worth checking before reading an empty result as "nothing found".

    {}

Built for how agents actually read

Lean by default

Twenty records cost roughly 1,800 tokens rather than the 12,100 the equivalent REST payload would — tools return a trimmed record, and detail: true opts back in to descriptions, CVSS vectors, CWEs and KEV guidance when you actually need them.

Advisory text is labelled untrusted

CVE descriptions are third-party prose and references point at arbitrary pages. Every result carries a notice telling the agent to treat the content as data rather than instructions, and reference URLs are listed but never fetched. A vulnerability feed is a poor thing to turn into an injection path.

The AI stack, as a filter

Records are classified against the software agents run on, by package name and vendor rather than by keyword. Pass any of inference, agents, mcp, retrieval, mlops, runtime, apps to stack, or any for everything classified.

Right now: 62 disclosures in the AI stack, 4 of them already being exploited.

// "is anything in my AI stack being exploited right now?"
search_cves { "stack": ["any"], "exploited": true }

Without MCP

The same data is plain JSON over HTTP, and /llms.txt describes the whole service in prose for an agent handed nothing but a domain.

curl 'https://cve.zerocrew.in/api/feed?stack=any&exploited=1'
curl 'https://cve.zerocrew.in/api/cve/CVE-2021-44228'

How it is built

The protocol is implemented directly rather than through the official SDK, which pulls seventeen transitive dependencies including a second major version of Express. Conformance is checked against the real SDK client in the test suite, so the shortcut is in the dependency tree rather than in the protocol. There is no database: the feed is fetched from the registers and held in memory with a JSON snapshot on disk.

Source on GitHub — GPL-3.0, self-hostable, no telemetry.