
crowbar
io.github.kushvinthPublished by GitHub account kushvinthv0.1.5Updated Oct 26, 2026
Retrieve CVEs and index them inside your codebase. One SQLite+FTS5 index, one CLI, one MCP server.
Overview
Local CVE index server that lets an assistant look up vulnerabilities, exploits and advisories offline from a SQLite+FTS5 database.
- What you can do
- Look up CVEs, products and versions to see which vulnerabilities apply, with CVSS, EPSS, KEV and SSVC verdicts
- Search the index by keyword, exploit availability, KEV status or EPSS score
- Find exploit and detection material: Exploit-DB entries, Nuclei templates, Metasploit modules, PoC metadata, GTFOBins/LOLBAS
- Check package advisories (OSV/GHSA) and OS advisories (MSRC, Apple)
- Browse ATT&CK, CWE, CAPEC and trending or newly added CVEs
- Run read-only SQL over the whole index and report index stats and freshness
- When to use it
- Useful when an assistant is asked whether a product, version or package is vulnerable, which CVEs or exploits are known for something, or what changed recently in the threat landscape, and answers should come from a reproducible local index rather than live APIs.
- Requirements
- Runs as a local stdio process, typically launched with uvx from the crowbar-cli PyPI package (Python 3.11+); the setup helper needs Node.js. A local index must be built first (about 150 MB for the lite tier, up to several GB for larger tiers) and is refreshed from public feeds over plain HTTP. No API key or account.
Installation
In SourceWeft
- Open crowbar in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
crowbar
Retrieve CVEs and index them inside your codebase.
Point it at a product and version. It pulls the CVEs that apply and indexes them locally, so any tool in your repo can query the answer.
[npm] [PyPI] [CI] [MCP server] [Python] [skills.sh] [MIT license]
Quick start · How crowbar works · What you can answer · Showcases · FAQ · Documentation
npx crowbar-cli setup
[!IMPORTANT] Get crowbar from kushvinth/crowbar, crowbar.kushvinth.com, or the crowbar-cli package. A similar repository name or copied README does not make a download official.
[crowbar triaging CVE-2021-44228, matching nginx 1.18.0, and finding the Log4Shell exploit]
A codebase with no CVE index inside it makes people guess. crowbar is the index: it retrieves NVD, CISA KEV, EPSS, SSVC, the CVE List, Exploit-DB, Nuclei, Metasploit, OSV, Debian, MSRC and Apple advisories, and writes them into a local SQLite + FTS5 database you query from your terminal, your CI or your agent. It is offline and reproducible - the same query gives the same answer, no API, no rate limits - so a lookup costs milliseconds instead of a guess.
No web UI, no daemon, no third-party Python packages. Point it at a product and version and it tells you what is actually exploitable, ranks it by real-world risk, and links the proof-of-concept.
crowbar indexes public exploit and PoC data as data. It never clones, compiles, or runs it. Treat anything it surfaces as hostile code and detonate only in a disposable VM. Use it only against systems you own or may test. See DISCLAIMER.md.
Quick start
Set up your agent
With Node.js and uv installed, run:
Setup finds Claude Code, Codex, Cursor, Gemini CLI and opencode on your machine,
shows exactly which configs it will change, and applies them only after you
approve. It registers crowbar's MCP server, installs the skill, backs up every
config file it edits, and offers to build the local index. Restart your agent
afterward. --agents claude,cursor picks agents explicitly; --yes skips the
prompts. npx crowbar-cli setup --remove undoes it the same way: it lists what
it will remove, asks first, and leaves your other servers and the index alone.
Or install the Claude Code plugin
One install drops in a skill and an MCP server:
Your agent now has:
- the skill - it reaches for crowbar on any "is X vulnerable / what CVEs hit this / known exploits for …" question instead of guessing from memory;
- the MCP tools -
cb_cve,cb_product,cb_search,cb_exploit, … answering offline from the local index.
That's the whole setup. The first time you ask a security question, the
crowbar skill sets itself up automatically - installs the tool and builds a
small local index in ~/.crowbar (~150 MB; a few minutes, since NVD downloads are
slow), then answers. You never run a CLI command, and the index refreshes itself
once a day while you use it.
Other agents (Cursor, Codex, Gemini, opencode)
Same MCP server, one line - no heavy install, uvx runs it on demand:
The repo ships .claude-plugin/, .codex-plugin/, gemini-extension.json and a
host-agnostic skills/crowbar/SKILL.md, so most hosts auto-detect it.
Prefer a plain CLI?
Everything the agent can do, you can do in the terminal. Python 3.11+, zero deps.
Build an index
With uvx, prefix each: uvx crowbar-cli sync --tier lite. To pull a
prebuilt mirror instead of the upstream feeds, set CROWBAR_MIRROR - see
docs/DATASETS.md. Refresh later with
crowbar update (~10 s) - NVD modified + KEV + EPSS + Exploit-DB, in place.
Size tiers - each a superset of the one above, so you pick your disk budget:
Fresh, and fast
- It keeps itself current. Each CLI call and MCP session checks the index age.
Once it is a day old, crowbar refreshes it in the background: NVD changes, KEV,
EPSS for every CVE, new PoCs and CVE chatter. An index past NVD's 8-day change
window gets a re-sync and rebuild, so no gap is left behind. A refresh that
fails (you were offline, or an upstream was down) never stamps the index fresh.
crowbar doctor,cb_statsand the MCP answers themselves report how old the data is and why the last refresh failed. - It knows what's moving.
crowbar trendingranks CVEs by how many places name them: Hacker News, oss-security, Full Disclosure, ZDI, Mastodon, and ENISA's exploited list (the EU counterpart to CISA KEV).crowbar newshows KEV/EUVD additions, new CVEs and new PoCs since a date.crowbar cvelists where each CVE was discussed. - Speed you can measure.
crowbar benchtimes the queries agents run most on your index. They are local SQLite lookups on indexed columns, with no network, API key or rate limit.
How crowbar works
[agent asks crowbar over MCP, crowbar answers from the local index, the agent gets a grounded answer]Your agent asks crowbar about a target over MCP. crowbar answers from the local index - never the network - with the KEV/SSVC/EPSS/CVSS verdict, the affected version ranges, and links to working PoCs. The agent uses that grounded result to explain the risk, decide what to patch, or write and test an exploit under authorization. CLI commands use the same read layer.
What you can answer
Rank threat by KEV / SSVC active > EPSS > CVSS - never CVSS alone. Most read
commands accept --json. See the full command reference
and AGENTS.md for the traversal manual.
Showcases
Triage Log4Shell in one command. crowbar cve CVE-2021-44228 returns CRIT 10.0 · KEV · EPSS 1.00 · ssvc=active, 44 affected CPE ranges, Exploit-DB 50592
(RCE), 44 Nuclei templates and 4 Metasploit modules - the whole verdict, offline,
in ~80 ms.
"What do we run that's exploitable?" crowbar product nginx --version 1.18.0
tests every NVD CPE range against 1.18.0 and returns only real hits, like
CVE-2021-23017 HIGH 7.7 · matched f5:nginx >=0.6.18 <1.20.1 - not every CVE that
merely mentions "nginx".
Hunt the actively-exploited. crowbar search "remote code execution" --kev --epss 0.5 --sort epss surfaces CVE-2021-26855 (Exchange), CVE-2020-0796
(SMBGhost) and friends, each with exp×N nuc×N poc×N counts, ranked by real
exploitation probability.
Used crowbar on something interesting? Open an issue or PR with the target, your question, and what you found.
FAQ
Which agents can use crowbar?
Any MCP host: Claude Code, Codex, Cursor, Gemini CLI, opencode, and Claude
Desktop. The launch command is uvx --from crowbar-cli crowbar-mcp; this repo
ships ready manifests for the common ones. You can also use every capability
from the terminal.
Does it phone home or need an API key?
No. Every dataset is fetched over plain HTTP at build time with no token; after that crowbar is fully offline. The MCP server makes zero network calls, and the index opens read-only.
How big is it, really?
Your choice. A lite index is ~150 MB and answers in milliseconds; extreme is
the full corpus (~1.5 GB index over ~3.3 GB of raw data). crowbar doctor tells
you what you built and crowbar stats is always authoritative.
Does crowbar run exploits?
Never. It indexes exploit and PoC data as data. crowbar exploit <id>
downloads source for you to inspect; running it is your decision, in a disposable
VM, under authorization.
How is this different from vulnx / cve-mcp / CIRCL?
Those query live APIs (network, rate limits, answers that drift). crowbar is a local index: offline, reproducible, and it full-text-searches Exploit-DB source code, which the API wrappers don't.
Documentation
- crowbar.kushvinth.com - quick start, commands, agent setup.
- AGENTS.md - the agent traversal manual (schema, recipes, guardrails).
- docs/DATASETS.md - per-source shape, license and caveats.
- docs/MAP.md - repo tree, data flow, table map.
- CONTRIBUTING.md · SECURITY.md · Releases
Star history
Disclaimer
crowbar is for lawful security research, defense, and analysis of systems you own or are authorized to test. See DISCLAIMER.md. KEV/SSVC describe exploitation observed elsewhere, EPSS is a model estimate, and a missing row is not proof of "not affected" - verify before you act.
Contributing
We'd love your help with crowbar! Open an issue to report a bug, a wrong CVE record or a missing dataset, or send a pull request to improve the code or docs.
See CONTRIBUTING.md for the dev loop, the add-a-dataset checklist and the test suites. crowbar is standard-library only; keep it that way.
License
crowbar-authored code is licensed under MIT. The upstream data it indexes keeps its own licenses and terms; see Third-party notices and docs/DATASETS.md for the source inventory.
Indexed exploit and PoC data is reference material, not permission. crowbar never runs it, and nothing it returns authorizes testing a system. Use it only against systems you own or are allowed to test; see DISCLAIMER.md.
Source: README.md at commit 1069cbc
Tools
0Version history
4- v0.1.5LatestOct 26, 2026
- v0.1.4Oct 25, 2026
- v0.1.3Oct 22, 2026
- v0.1.1Oct 21, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts