MCP Vulnerability Scanner
by RobertoDure
README.md
# 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
1. Clone this repository:
```bash
git clone <repository-url>
cd mcp-vulnerability-scanner
```
2. Install dependencies:
```bash
npm install
```
3. Install Nmap (optional but recommended):
```bash
# 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:
```json
{
"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`:
```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:
```bash
npm run dev
```
### 2. Build and Run in Production
```bash
npm run build
npm start
```
### 3. Docker Deployment
Create a Dockerfile in the project root:
```dockerfile
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:
```bash
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:
1. Configure the `.vscode/mcp.json` file as shown above
2. Ensure the path to the server is correctly set
3. 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
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues