cvENGINE MCP
cvENGINE finds a domain's exposed assets and the vulnerabilities being exploited, and its MCP server drives scans from Claude Code
- 578 ★ on the repository
- Last commit
- GPL-3.0
Broad access
Why this level
- Actively scans addresses and ports and runs nmap, Nuclei and OpenVAS: without the system owner's permission this breaks the law and network rules
- Through MCP an agent can start scans, delete targets and hosts, change statuses and export reports with addresses and vulnerabilities
- The platform stores third-party AI keys and sign-ins for authenticated checks
Install
- Works in
Manual install
git clone https://github.com/hevnsnt/CVEngine.git && cd CVEngine && sudo ./install.shThe platform installs on your Linux server, easiest on Debian or Ubuntu with 4 GB of memory. The script creates the secrets and the HTTPS certificate and prints the admin password.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Actively scans addresses and ports and runs nmap, Nuclei and OpenVAS: without the system owner's permission this breaks the law and network rules
- Through MCP an agent can start scans, delete targets and hosts, change statuses and export reports with addresses and vulnerabilities
- The platform stores third-party AI keys and sign-ins for authenticated checks
This is third-party code. Review the repository files before installing.
What it does
cvENGINE is a self-hosted external attack surface assessment platform, a fork of reNgine 2.x. You add a domain, IP, CIDR range or URL, and the system finds subdomains, certificates, ports, products and versions, matches them to CVEs and rates each finding `fire`, `smoke` or `ice` from real exploitation sources. It builds on bbot, naabu, nmap, Nuclei and testssl.sh and installs with one `sudo ./install.sh` into a Docker Compose stack on your server. An agent connects to the built-in MCP server at `/mcp/` on your installation (Streamable HTTP). A token is created on the API tokens and MCP page and sent as an `Authorization: Bearer` header. Through MCP the agent sees projects, targets and hosts, adds targets with `add_target`, starts `start_scan`, searches the inventory with `search_hosts`, requests a finding check with `validate_cve_match` and exports a PDF report with `export_report`. A token acts with the rights of the user who created it, and read-only tokens exist. The platform itself keeps a change timeline with screenshot diffs, triages findings with AI (Anthropic, OpenAI, OpenRouter, Ollama, LM Studio or vLLM on your key) and sends alerts to Slack, Discord, Telegram and Lark. Worker agents take validation and remediation tasks, and a Sentinel scans from inside a private network. Without a model the platform still discovers, scans, matches and validates.
Who it is for. Security engineers and administrators who watch their organization's external surface and want to work through findings from Claude Code or another MCP client.
Good fit when
- You need a Shodan-style inventory of your own domains with searches like `port:3389 -host:vpn`, and the queries come from an agent
- After a CVE is published you need to know whether it affects you: the platform matches versions against the affected range and shows evidence
- A team runs bug bounty work and wants program scope from HackerOne, Bugcrowd, Intigriti and YesWeHack and report drafts in one place
- The internal network has to be scanned too: a Sentinel installs inside and works on the server's tasks
- A regular report is required: the week's changes and a project or host PDF export with `export_report`
Not a fit when
- You have no authorization to test the target: the README permits scanning only your own and authorized systems
- You need a cloud service without your own server: cvENGINE installs only on your machine under Docker Compose
- You need vulnerability exploitation: the checks only read data and do not use password lists
- The server has 2 GB of memory: the README recommends 4 GB or more
Example request
Using cvENGINE, show the project main's hosts with port 3389 open and fire-rated CVEs, and queue the three most dangerous findings for validationMCP
- Transport
- http
- Authentication
- API key
Limitations
- The installer targets Linux, easiest on Debian or Ubuntu with 4 GB of memory or more. `install.sh` runs through `sudo`, installs what is missing and prints the admin password.
- The MCP token is issued in the web interface. A `cve_...` secret is shown once and only its SHA-256 stays in the database.
- Vulnerability checks only read data. If an organization requires two-step sign-in, a member without it gets a 403 on the token until they enroll.
- The platform scans other people's addresses just like your own: before a run make sure you have the system owner's permission.
How to disable. Revoke the token on the API tokens and MCP page and remove the server from Claude Code with `claude mcp remove cvengine`. `docker compose down` in the install directory stops the platform itself. Scan data stays in Docker volumes until you delete them.
FAQ
How do I connect cvENGINE to Claude Code?
Create a token on the API tokens and MCP page (`/cve/agents/`) and run `claude mcp add --transport http cvengine https://<your-host>/mcp/ --header "Authorization: Bearer <token>"`. The address depends on your installation: the project runs no public server. The agent then sees tools such as `list_projects`, `search_hosts` and `start_scan`.
How does cvENGINE differ from a scanner like bbot?
bbot discovers assets and data. cvENGINE runs such scanners together with nmap, naabu and Nuclei in one loop, matches results to CVEs by version and exploitation source, keeps an inventory with change history and ships MCP and REST itself. The platform grew out of reNgine.
What do `fire`, `smoke` and `ice` mean?
They rate a CVE on a specific host. `fire` goes to vulnerabilities on the CISA KEV list or with a public exploit that is confirmed on the host. `smoke` and `ice` rank lower. The rules are in `docs/FIRE-SMOKE-ICE.md`, and the `CVENGINE_HEAT_POLICY` variable sets the policy, `kev` by default.
Can I run it without an AI model?
Yes. Without a model cvENGINE still discovers assets, scans, matches CVEs and validates findings. AI triage adds a `confirmed`, `likely` or `needs validation` rating. An Anthropic, OpenAI or OpenRouter key goes into settings, and Ollama, LM Studio and vLLM run locally.
What rights does an MCP token get?
A token acts as the user who created it, with the same projects and roles. For safe agent work issue a read-only token: it cannot start scans, delete hosts or change statuses. A token cannot create other tokens.
Discussion
No questions or reviews yet.
Related
MCP serversAn MCP server that gives the agent vulnerability triage: NVD data, EPSS, the CISA KEV catalog, MITRE ATT&CK mapping and one-call CVE risk scoring
A scanner that finds leaked keys, dangerous access and connected models in MCP configs of Claude Desktop, Cursor and VS Code.
Security Detections MCP: a detection rule database
Security Detections MCP
An MCP server that merges Sigma, Splunk, Elastic and KQL rules into one database for finding detections and ATT&CK gaps
Security scanner for coding agents: checks code, MCP servers, prompts and model-invented packages, and gives an A to F grade.
A free vulnerability MCP server that merges CVE, GHSA, OSV, CISA KEV and EPSS into one entry and checks a project lockfile.
MCP server for the ARL-Next platform: returns ports, fingerprints, certificates, vulnerabilities and leaks for a domain, IP or URL from your asset database
README in short
The README frames the job as one continuous loop of asset discovery, risk rating and proof. Then come a capability table, what is new in 1.3 (Sentinel, OpenVAS), a four-stage pipeline diagram, the scanners used and installation. The safety section reminds that checks only read and that you should scan only your own systems.