mcp-security-server
Provides AI agents with standardized security scanning capabilities for authorized assessments, including host detection, port scanning, service fingerprinting, web vulnerability scanning, CVE verification, and report generation, all with unified JSON output and strict compliance controls.
README
MCP Security Scanner Server v2.0
Professional production-grade MCP Server for security assessment. Powered by Model Context Protocol, built for Kali Linux.
Overview
A professional Model Context Protocol (MCP) Server that provides AI agents with standardized security scanning capabilities. Designed for authorized security assessments with strict compliance controls.
Key Features
- 7-Step Mandatory Flow — Every tool follows: param validation → security filtering → boundary checks → business logic → result packaging → exception capture → logging
- Zero Command Injection — All shell calls use parameter arrays, never string concatenation
- Mandatory Authorization —
legal_authorized=truerequired for all scan operations - 8 CVE Verification — Log4Shell, Spring4Shell, Apache Path Traversal, HTTP/2 Rapid Reset, and more
- Standardized Output — Unified JSON response:
code/msg/target/vuln_list/risk_level/cvss_score/suggest - Professional Logging — Timestamped logs with task IDs, scan trails, and audit records
Architecture
mcp-security-server/
├── server.py # MCP Server Entry Point
├── core/ # Business Logic Layer
│ ├── scanner.py # Scanning Engine (6 tools, 37KB)
│ ├── result.py # Unified Response Builder
│ ├── analyzer.py # CVSS 3.1 Scoring & Vulnerability DB
│ └── reporter.py # Multi-format Report Generator
├── utils/ # Infrastructure Layer
│ ├── executor.py # Safe Command Executor (Parameter Arrays)
│ ├── validator.py # Parameter Validation & Whitelist
│ ├── logger.py # Professional Logging System
│ └── env.py # Kali Environment Detection
└── requirements.txt # Dependencies
Quick Start
1. Install Dependencies
# Python packages
pip3 install mcp pydantic
# System tools (Kali Linux)
sudo apt update && sudo apt install -y nmap curl
2. Start Server
cd mcp-security-server
python3 server.py
3. Configure MCP Client
Add to your MCP client configuration (e.g., Claude Desktop, opencode):
{
"mcpServers": {
"mcp-security-scanner": {
"command": "python3",
"args": ["/path/to/mcp-security-server/server.py"]
}
}
}
Tools
| Tool | Description | Required Params |
|---|---|---|
host_alive_detect |
Host alive detection (ICMP + TCP SYN) | target, legal_authorized |
port_scan |
Port scanning (SYN/Connect) | target, legal_authorized |
service_fingerprint |
Service version detection | target, legal_authorized |
web_vuln_scan |
Web vulnerability scanning | target, legal_authorized |
cve_poc_check |
CVE POC verification | target, legal_authorized, cve_id |
report_generate |
Security report generation | target, legal_authorized, scan_data |
env_check |
Environment & dependency check | (none) |
Usage Examples
Host Alive Detection
{
"target": "192.168.1.1",
"legal_authorized": true,
"timeout": 15
}
Port Scan
{
"target": "192.168.1.1",
"legal_authorized": true,
"ports": "80,443,8080,8443",
"scan_type": "syn"
}
CVE Verification
{
"target": "192.168.1.1",
"legal_authorized": true,
"cve_id": "CVE-2021-44228",
"port": 8080
}
Generate Report
{
"target": "192.168.1.1",
"legal_authorized": true,
"scan_data": "{\"vuln_list\":[...],\"suggest\":[...]}",
"format_type": "html"
}
Supported CVEs
| CVE | Name | CVSS | Verification Method |
|---|---|---|---|
| CVE-2021-44228 | Log4Shell | 10.0 | Java service detection |
| CVE-2022-22965 | Spring4Shell | 9.8 | Spring/Tomcat detection |
| CVE-2023-22515 | Confluence Privilege | 10.0 | Setup endpoint check |
| CVE-2022-26134 | Confluence OGNL | 9.8 | Confluence detection |
| CVE-2021-41773 | Apache Path Traversal | 7.5 | Path traversal test |
| CVE-2021-42013 | Apache Path Traversal 2 | 7.5 | Path traversal test |
| CVE-2023-44487 | HTTP/2 Rapid Reset | 7.5 | HTTP/2 support check |
| CVE-2021-3449 | OpenSSL NULL deref | 5.9 | Version detection |
Standardized Output
{
"code": 0,
"msg": "success",
"target": "192.168.1.1",
"status": "completed",
"scan_data": { ... },
"vuln_list": [
{
"vuln_id": "CVE-2021-44228",
"vuln_name": "Log4Shell",
"cve_id": "CVE-2021-44228",
"cvss_score": 10.0,
"risk_level": "Critical",
"confidence": "Suspected",
"description": "Apache Log4j2 RCE",
"evidence": "Java service detected",
"remediation": "Upgrade Log4j to 2.17.0+"
}
],
"risk_level": "critical",
"cvss_score": 10.0,
"suggest": ["URGENT: Fix critical vulnerability immediately"],
"task_id": "TASK-20260822100000-a1b2c3d4",
"timestamp": "2026-08-22T10:00:00",
"duration": 12.34
}
Logging
Logs are automatically saved to log/ directory:
| Log File | Purpose |
|---|---|
main_YYYY-MM-DD.log |
General operations |
scan_YYYY-MM-DD.log |
Scan activities |
error_YYYY-MM-DD.log |
Errors & exceptions |
audit_YYYY-MM-DD.log |
Security audit trail |
Compliance
This tool is designed for:
- Security assessments with written authorization
- Internal security team vulnerability verification
- Security research and education
PROHIBITED: Unauthorized scanning, data theft, system damage
License
MIT License - Authorized security testing only
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.