list_scan_templatesLABSCO SUMMARY
Drive a scan from the conversation where you are already triaging.
Start, poll, read results is the loop that normally means tabbing into the Nessus console and back. Mock mode is the detail worth knowing about: you can wire the tools into an agent, see the shapes they return and fix the prompt, all before pointing anything at a live scanner.
What it is
A bridge to the Tenable Nessus vulnerability scanner. It starts scans against targets, tracks them, returns results and looks up vulnerability detail. By default it runs in a mock mode, so the tool surface works before a Nessus instance is wired up.
What you get
- The scan templates your Nessus offers (list_scan_templates)
- A new scan started against a target (start_scan), its status while it runs (get_scan_status) and its results once it finishes (get_scan_results)
- Every scan and where it stands (list_scans)
- Detailed information about a specific vulnerability (get_vulnerability_details)
- Keyword search across vulnerabilities (search_vulnerabilities)
- A fully functional mock mode that needs no Nessus API key
Requirements
Node.js 16 or higher and a local build with npm install and npm run build. To reach a real scanner, put the scanner's address and its access key and secret key in the environment; leave them unset and the server stays in mock mode.
Setup effort
Build from source — git clone https://github.com/Cyreslab-AI/nessus-mcp-server.git
USE CASES
Scanning a host and reading what came back
Pick a template, start the scan against the target, poll until it reports finished, then pull the results in the same conversation instead of switching to the console to check on it.
Working out what a finding actually means
Take the vulnerability out of a result set and read its full detail, so the write-up you hand to whoever has to patch it says what the exposure is rather than repeating the plugin name.
Checking whether you are exposed to something in the news
Search the vulnerability data by keyword, then look up the detail on whatever matches, before deciding a scan is needed at all.
Seeing what is still running across the account
List every scan with its status when several are in flight, so a stalled one shows up instead of being waited on.
Building the agent before you have credentials
Leave the Nessus environment variables unset and the server answers in mock mode, which is enough to develop and test the prompts and the flow without a scanner or a key.
7 tools
Listed in project docs. Your client may show a different list.
start_scanget_scan_statusget_scan_resultslist_scansget_vulnerability_detailssearch_vulnerabilitiesBEFORE YOU INSTALL
What to know first
Tools you get
7 tools named in the project's documentation.
Requires
Node.js 16 or later
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/Cyreslab-AI/nessus-mcp-server.git
cd nessus-mcp-server
npm install
npm run buildMCP Clients
Claude Desktop
{
"mcpServers": {
"nessus": {
"command": "node",
"args": [
"<YOUR_PATH_TO_NESSUS_MCP_SERVER>/build/index.js"
],
"env": {
"NESSUS_URL": "https://<YOUR_NESSUS_INSTANCE>:8834",
"NESSUS_ACCESS_KEY": "<YOUR_NESSUS_ACCESS_KEY>",
"NESSUS_SECRET_KEY": "<YOUR_NESSUS_SECRET_KEY>"
}
}
}
}<YOUR_PATH_TO_NESSUS_MCP_SERVER> is the full path of the folder you cloned and built. The three env values point it at a real Nessus scanner; leave the env section out and it runs in mock mode.