# Kali Mcp Server

> Kali Linux penetration testing MCP server with 42 security tools, optimized for ARM64 and Docker MCP Toolkit

- **Type:** MCP server
- **Install:** `agentstack add mcp-scottcrosby-securebine-kali-mcp-server`
- **Verified:** Pending review
- **Seller:** [scottcrosby-securebine](https://agentstack.voostack.com/s/scottcrosby-securebine)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [scottcrosby-securebine](https://github.com/scottcrosby-securebine)
- **Source:** https://github.com/scottcrosby-securebine/kali-mcp-server

## Install

```sh
agentstack add mcp-scottcrosby-securebine-kali-mcp-server
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# 🔐 Kali MCP Server

**Kali Linux Penetration Testing MCP Server v2**

A comprehensive Model Context Protocol (MCP) server providing 42 professional-grade security testing tools from Kali Linux, optimized for ARM64 (Apple Silicon) Macs and Docker MCP Gateway.

[](https://www.docker.com/)
[](https://www.apple.com/mac/)
[](LICENSE)
[](https://modelcontextprotocol.io/)

---

## ⚠️ LEGAL WARNING & ETHICAL USE

**READ THIS CAREFULLY BEFORE USING THIS SOFTWARE**

This MCP server provides powerful penetration testing and security assessment tools. You **MUST**:

✅ **DO:**
- Only use on systems you own
- Only use on systems you have explicit written permission to test
- Use for educational and authorized security assessments
- Comply with all applicable laws and regulations
- Document proper authorization before testing

❌ **DO NOT:**
- Test systems without authorization
- Use for malicious purposes
- Violate computer fraud or abuse laws
- Test production systems without proper approval
- Share or distribute unauthorized access

**Unauthorized access to computer systems is ILLEGAL** and may result in criminal prosecution. The authors assume **NO LIABILITY** for misuse of this software.

---

## 📖 Documentation

**⭐ AI-First Security Testing:**
- 🤖 [**Warp AI Terminal Guide**](docs/WARP_TERMINAL_GUIDE.md) - **RECOMMENDED**: Comprehensive AI-assisted security testing with Warp Terminal and Docker MCP Gateway

**Quick Start:**
- 🚀 [**Quick Start Guide**](QUICK_START.md) - Get started in 5 minutes

**Complete Guides:**
- 📚 [**Deployment Guide**](DEPLOYMENT_GUIDE.md) - Comprehensive deployment instructions
- 🐳 [**Docker MCP Gateway Setup**](SETUP_DOCKER_MCP.md) - Detailed Docker MCP Gateway configuration

---

## 📋 Table of Contents

- [Documentation](#documentation)
- [Overview](#overview)
- [Architecture](#architecture)
- [ARM64 Compatibility](#arm64-compatibility)
- [Installation](#installation)
- [Usage](#usage)
- [Tool Reference](#tool-reference)
- [Docker MCP Security Model](#docker-mcp-security-model)
- [Troubleshooting](#troubleshooting)
- [Performance Considerations](#performance-considerations)
- [Contributing](#contributing)
- [License](#license)

---

## 🎯 Overview

This MCP server provides AI assistants like Claude with access to professional penetration testing tools for authorized security assessments. It includes:

- **42 Security Tools** organized into 8 categories
- **ARM64 Optimized** for Apple Silicon Macs (M1/M2/M3)
- **Docker MCP Compatible** - runs securely without raw socket access
- **Input Sanitization** - prevents command injection attacks
- **Non-root Execution** - enhanced security posture
- **Comprehensive Logging** - tracks all operations

### Key Features

| Feature | Description |
|---------|-------------|
| **Network Reconnaissance** | 11 tools including nmap (6 variants), DNS enumeration (5 tools) |
| **Web Testing** | 11 tools including nikto, sqlmap, directory fuzzing |
| **SSL/TLS Testing** | 3 tools for cipher and vulnerability assessment |
| **SMB/Windows** | 5 tools for Windows/AD enumeration |
| **Password Cracking** | 3 tools - hydra, john, hashcat (CPU-only on ARM64) |
| **Vulnerability Research** | 3 tools - searchsploit, Metasploit search/info, nuclei |
| **OSINT** | 2 tools - theHarvester, whois lookups |
| **Combined Operations** | 4 multi-tool workflows for comprehensive assessments |

---

## 🏗️ Architecture

```
┌─────────────────────────────────────────────────────────────┐
│          Warp Terminal / Claude Desktop / MCP Clients        │
└──────────────────────────┬──────────────────────────────────┘
                           │ MCP Protocol (stdio)
                           ▼
┌─────────────────────────────────────────────────────────────┐
│                    Docker MCP Gateway                        │
│  ┌──────────────────────────────────────────────────────┐  │
│  │ Security Controls:                                    │  │
│  │ • --security-opt no-new-privileges                   │  │
│  │ • Non-root user execution                            │  │
│  │ • No raw socket capabilities                         │  │
│  └──────────────────────────────────────────────────────┘  │
└──────────────────────────┬──────────────────────────────────┘
                           │ Docker Bridge
                           ▼
┌─────────────────────────────────────────────────────────────┐
│              Kali Linux Docker Container (ARM64)            │
│  ┌──────────────────────────────────────────────────────┐  │
│  │ kali_pentest_server.py (FastMCP)                     │  │
│  │ • Input sanitization with shlex.quote()              │  │
│  │ • Command execution via subprocess                   │  │
│  │ • Output formatting and truncation                   │  │
│  └──────────────────────┬───────────────────────────────┘  │
│                         │                                   │
│  ┌──────────────────────▼───────────────────────────────┐  │
│  │ Security Tools (42):                                 │  │
│  │ • nmap (6 variants), dnsrecon, subfinder, amass     │  │
│  │ • nikto, wpscan, sqlmap, ffuf, gobuster, nuclei     │  │
│  │ • sslscan, testssl, sslyze                          │  │
│  │ • enum4linux, crackmapexec, smbclient               │  │
│  │ • hydra, john, hashcat                              │  │
│  │ • searchsploit, metasploit, theHarvester            │  │
│  └──────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
                   Target Systems
            (Authorized Testing Only)
```

---

## 💻 ARM64 Compatibility

This MCP server is specifically optimized for **Apple Silicon (ARM64)** Macs. The official Kali Linux Docker image supports ARM64, and most tools work excellently.

### ✅ Fully Compatible Tools

All tools listed below work perfectly on ARM64:

- **Network**: nmap, dnsrecon, dnsenum, fierce, subfinder, amass, whois
- **Web**: nikto, wpscan, sqlmap, dirb, ffuf, gobuster, wfuzz, whatweb, wafw00f, nuclei
- **SSL/TLS**: sslscan, sslyze, testssl.sh
- **SMB/Windows**: enum4linux, nbtscan, crackmapexec, smbclient, responder
- **Passwords**: hydra, john (CPU-mode)
- **Research**: searchsploit, metasploit-framework
- **OSINT**: theHarvester, whois

### ⚠️ Tools with Limitations on ARM64

| Tool | Limitation | Notes |
|------|------------|-------|
| **hashcat** | CPU-Only Mode | No GPU acceleration on ARM64; use `--force` flag |
| **metasploit** | Some Module Issues | Most modules work; some x86-specific exploits unavailable |

### ❌ Excluded Tools (Raw Socket Requirements)

These tools require raw socket capabilities incompatible with Docker MCP's security model:

- **netdiscover** - Requires CAP_NET_RAW for ARP scanning
- **arp-scan** - Requires CAP_NET_RAW for ARP operations
- **masscan** - Requires CAP_NET_RAW for raw packet operations

**Alternative**: Use `nmap -sT -Pn` for TCP connect scans without raw sockets, or nmap's various scan modes for comprehensive port scanning.

---

## 📦 Installation

### Quick Installation

For quick setup, see the [**Quick Start Guide**](QUICK_START.md).

For comprehensive installation instructions, see the [**Deployment Guide**](DEPLOYMENT_GUIDE.md).

### Prerequisites

1. **Docker Desktop** - [Download here](https://www.docker.com/products/docker-desktop)
2. **Docker MCP Gateway** - See [Docker MCP Gateway Setup Guide](SETUP_DOCKER_MCP.md)
3. **Apple Silicon Mac** (M1/M2/M3) or ARM64-compatible system
4. **Warp Terminal**, **Claude Desktop**, or other MCP client

### Building the Docker Image

1. **Clone or download this repository**

```bash
git clone https://github.com/scottcrosby-securebine/kali-mcp-server.git
cd kali-mcp-server
```

2. **Build the Docker image**

```bash
docker build -t kali-mcp-server:latest .
```

**Expected build time**: 15-30 minutes (includes downloading Kali packages and compiling Go tools)

3. **Verify the build**

```bash
docker images | grep kali-mcp-server
```

You should see:
```
kali-mcp-server   latest         ~3.2GB
```

---

## 🚀 Usage

### Configuration Guides

Choose your preferred client:

- **Warp Terminal** (Recommended): See [Warp AI Terminal Guide](docs/WARP_TERMINAL_GUIDE.md) - AI-assisted security testing
- **Claude Desktop**: See [Quick Start Guide](QUICK_START.md) or [Deployment Guide](DEPLOYMENT_GUIDE.md)
- **Docker MCP Gateway**: See [Docker MCP Gateway Setup Guide](SETUP_DOCKER_MCP.md)

### Example Usage

Once configured, you can ask Claude things like:

#### **Network Reconnaissance**
```
"Scan 192.168.1.100 with nmap to find open ports"
"Use subfinder to discover subdomains of example.com"
"Perform comprehensive DNS enumeration on target.local"
```

#### **Web Application Testing**
```
"Run nikto scan on http://testsite.local"
"Test http://example.com/login?id=1 for SQL injection"
"Scan WordPress site at http://blog.local for vulnerable plugins"
"Use ffuf to find hidden directories at http://target.com/FUZZ"
```

#### **SSL/TLS Testing**
```
"Test SSL configuration of api.example.com"
"Run comprehensive SSL scan on secure.local:8443"
"Check example.com for SSL vulnerabilities"
```

#### **SMB & Windows**
```
"Enumerate SMB shares on 192.168.1.50"
"Scan the network 192.168.1.0/24 for NetBIOS information"
"Use crackmapexec to enumerate SMB on target host"
```

#### **Password Testing**
```
"Use hydra to test SSH on 192.168.1.100 with username admin"
"Crack MD5 hashes in /tmp/hashes.txt using john"
```

#### **Research & OSINT**
```
"Search searchsploit for Apache 2.4.49 vulnerabilities"
"Search Metasploit for WordPress exploits"
"Gather information about example.com using theHarvester"
"Get WHOIS information for github.com"
```

#### **Combined Operations**
```
"Perform quick reconnaissance on example.com"
"Do a full security audit of https://testapp.local"
"Sweep my test network 192.168.1.0/24 for devices"
```

---

## 🛠️ Tool Reference

### Network Reconnaissance & Scanning (11 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `nmap_scan` | Basic TCP connect port scan | `target`, `ports` | `nmap_scan target="192.168.1.1" ports="80,443"` |
| `nmap_port_scan` | Scan specific ports | `target`, `ports` | `nmap_port_scan target="192.168.1.1" ports="22,80,443"` |
| `nmap_service_scan` | Service version detection | `target`, `ports` | `nmap_service_scan target="example.com"` |
| `nmap_comprehensive_scan` | Service detection with NSE scripts | `target`, `ports` | `nmap_comprehensive_scan target="192.168.1.100"` |
| `nmap_script_scan` | Run specific NSE script categories | `target`, `ports`, `scripts` | `nmap_script_scan target="192.168.1.100" scripts="vuln"` |
| `nmap_vuln_scan` | Vulnerability scanning with NSE vuln scripts | `target` | `nmap_vuln_scan target="192.168.1.100"` |
| `dns_enum` | DNS enumeration (nslookup, dig, host) | `domain` | `dns_enum domain="example.com"` |
| `dns_recon` | Advanced DNS reconnaissance | `domain` | `dns_recon domain="target.com"` |
| `subfinder_scan` | Fast subdomain discovery | `domain` | `subfinder_scan domain="example.com"` |
| `amass_enum` | Comprehensive OWASP Amass enumeration | `domain`, `mode` | `amass_enum domain="target.com" mode="passive"` |
| `fierce_scan` | DNS recon with zone transfer attempts | `domain` | `fierce_scan domain="example.com"` |

### Web Application Testing (11 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `nikto_scan` | Web server vulnerability scanner | `target`, `port` | `nikto_scan target="example.com" port="80"` |
| `wpscan_scan` | WordPress vulnerability scanner | `target`, `enumerate` | `wpscan_scan target="http://blog.com" enumerate="vp"` |
| `dirb_scan` | Directory brute-forcing | `target`, `wordlist` | `dirb_scan target="http://example.com" wordlist="common"` |
| `ffuf_scan` | Fast web fuzzer | `target`, `wordlist`, `extensions` | `ffuf_scan target="http://example.com/FUZZ"` |
| `gobuster_scan` | High-speed directory/DNS brute-forcing | `target`, `wordlist`, `mode` | `gobuster_scan target="http://example.com" mode="dir"` |
| `wfuzz_scan` | Advanced web fuzzing | `target`, `wordlist`, `hide_code` | `wfuzz_scan target="http://example.com/FUZZ"` |
| `sqlmap_scan` | SQL injection testing | `target`, `data`, `parameter` | `sqlmap_scan target="http://example.com/page?id=1"` |
| `whatweb_scan` | Web technology fingerprinting | `target`, `aggression` | `whatweb_scan target="example.com" aggression="1"` |
| `wafw00f_scan` | WAF detection | `target` | `wafw00f_scan target="http://example.com"` |
| `nuclei_scan` | Template-based vulnerability scanner | `target`, `templates`, `severity` | `nuclei_scan target="http://example.com" severity="high"` |
| `web_headers` | HTTP header analysis | `target` | `web_headers target="http://example.com"` |

### SSL/TLS Testing (3 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `sslscan_scan` | SSL/TLS cipher and protocol testing | `target`, `port` | `sslscan_scan target="example.com" port="443"` |
| `testssl_scan` | Comprehensive SSL/TLS vulnerability assessment | `target`, `port` | `testssl_scan target="api.example.com"` |
| `sslyze_scan` | Fast SSL/TLS configuration analysis | `target`, `port` | `sslyze_scan target="secure.example.com"` |

### SMB & Windows Enumeration (5 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `enum4linux_scan` | SMB/CIFS enumeration | `target` | `enum4linux_scan target="192.168.1.50"` |
| `nbtscan_scan` | NetBIOS nameserver scanner | `target` | `nbtscan_scan target="192.168.1.0/24"` |
| `crackmapexec_scan` | Windows/AD network enumeration | `target`, `protocol` | `crackmapexec_scan target="192.168.1.100" protocol="smb"` |
| `responder_analyze` | Information about Responder tool | - | `responder_analyze` (returns usage info) |
| `smb_enum` | SMB share enumeration | `target` | `smb_enum target="192.168.1.50"` |

### Password & Credential Testing (3 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `hydra_attack` | Network service password brute-forcing | `target`, `service`, `username`, `password_list` | `hydra_attack target="192.168.1.100" service="ssh" username="admin"` |
| `john_crack` | Password hash cracking | `hash_file`, `format` | `john_crack hash_file="/tmp/hashes.txt" format="raw-md5"` |
| `hashcat_crack` | Advanced password cracking (CPU-only on ARM64) | `hash_file`, `mode`, `wordlist` | `hashcat_crack hash_file="/tmp/hashes.txt" mode="0"` |

### Vulnerability Research & Exploitation (3 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `searchsploit_search` | Search exploit database | `query` | `searchsploit_search query="Apache 2.4"` |
| `metasploit_search` | Search Metasploit modules | `query` | `metasploit_search query="wordpress"` |
| `metasploit_info` | Get Metasploit module information | `module` | `metasploit_info module="exploit/windows/smb/ms17_010_eternalblue"` |

### OSINT & Information Gathering (2 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `theharvester_scan` | Email, subdomain, and host gathering | `domain`, `source` | `theharvester_scan domain="example.com" source="google"` |
| `whois_lookup` | Domain registration information | `domain` | `whois_lookup domain="example.com"` |

### Combined Operations (4 tools)

| Tool | Description | Parameters | Example |
|------|-------------|------------|---------|
| `quick_recon` | Fast multi-tool reconnaissance | `target` | `quick_recon target="example.com"` |
| `full_recon` | Comprehensive multi-tool assessment | `target` | `full_recon target="example.com"` |
| `web_audit` | Complete web application audit | `target` | `web_audit target="http://testapp.local"` |
| `network

…

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [scottcrosby-securebine](https://github.com/scottcrosby-securebine)
- **Source:** [scottcrosby-securebine/kali-mcp-server](https://github.com/scottcrosby-securebine/kali-mcp-server)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** yes
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: flagged — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-scottcrosby-securebine-kali-mcp-server
- Seller: https://agentstack.voostack.com/s/scottcrosby-securebine
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
