mcp-vulnerability-scanner
If you are the rightful owner of mcp-vulnerability-scanner and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server for scanning IP addresses for vulnerabilities.
MCP Vulnerability Scanner
A Model Context Protocol (MCP) server for scanning IP addresses for vulnerabilities. This server provides tools to perform security scanning on individual IPs or multiple IPs at once.
Features
- Scan IP addresses for vulnerabilities using multiple methods:
- Nmap vulnerability scanning
- API-based vulnerability checks
- Supports single IP scanning or batch scanning of multiple IPs
- Returns detailed reports with vulnerability severity, descriptions, and remediation steps
- Implements the Model Context Protocol for easy integration with MCP clients
Prerequisites
- Node.js (v14.x or higher)
- npm (v7.x or higher)
- Nmap (optional, for enhanced scanning capabilities)
Installation
-
Clone this repository:
git clone <repository-url> cd mcp-vulnerability-scanner
-
Install dependencies:
npm install
-
Install Nmap (optional but recommended):
# For Ubuntu/Debian sudo apt-get update sudo apt-get install nmap # For CentOS/RHEL sudo yum install nmap # For macOS brew install nmap
Configuration
The MCP Vulnerability Scanner is configured through the following files:
1. .mcp.json
This is the main MCP configuration file:
{
"name": "vulnerability-scanner",
"version": "1.0.0",
"description": "An MCP server for scanning vulnerabilities on IP addresses",
"command": "npm",
"args": ["run", "dev"],
"capabilities": {
"contextItemTypes": ["ip"]
}
}
2. Integration with VS Code
For VS Code integration, the configuration is in .vscode/mcp.json
:
{
"mcpServers": {
"mcp_vuln": {
"command": "npm",
"args": [
"run",
"dev",
"mcp-vulnerability-scanner",
"--prefix",
"/path/to/mcp-vulnerability-scanner"
],
"env": {
"MCP_SERVER_PORT": "3000"
}
}
}
}
Update the --prefix
path to point to your installation location.
Usage Example
Below is a example showing the vulnerability scanner in action:
- Single Ip Addess scan
- Multiple Ip Addess scan
Available Tools
This MCP server provides the following tools:
1. scan-ip
Scans a single IP address for vulnerabilities.
Parameters:
ip
: The IP address to scan (string)
Example usage:
scan-ip 192.168.1.1
2. scan-multiple-ips
Scans multiple IP addresses for vulnerabilities.
Parameters:
ips
: Array of IP addresses to scan (string[])
Example usage:
scan-multiple-ips ["192.168.1.1", "192.168.1.2", "192.168.1.3"]
Deployment Options
1. Local Development
Run the server in development mode:
npm run dev
2. Build and Run in Production
npm run build
npm start
3. Docker Deployment
Create a Dockerfile in the project root:
FROM node:18-alpine
# Install Nmap
RUN apk add --no-cache nmap
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]
Build and run the Docker container:
docker build -t mcp-vulnerability-scanner .
docker run -p 3000:3000 mcp-vulnerability-scanner
4. VS Code Extension Integration
To use this server in VS Code:
- Configure the
.vscode/mcp.json
file as shown above - Ensure the path to the server is correctly set
- The server will be available to MCP-enabled extensions
Security Considerations
- This scanner requires administrative/root permissions to run comprehensive Nmap scans
- Only scan IP addresses that you have permission to scan
- Be aware that vulnerability scanning might trigger security systems or IDS alerts
- The scan results are provided for informational purposes only
License
MIT