Pentester-MCP
Enables AI assistants to autonomously execute over 200 open-source penetration testing tools via MCP, including reconnaissance, web exploitation, and brute-forcing, through a unified server architecture with Docker sandboxing for safe execution.
README
<h1 align="center">Pentester-MCP</h1>
<p align="center"> <strong>Empower your AI assistants with the ultimate open-source penetration testing arsenal.</strong> </p>
<p align="center"> <img alt="Tools" src="https://img.shields.io/badge/Tools-235%2B-blue"> <img alt="Python" src="https://img.shields.io/badge/Python-3.10%2B-blue"> <img alt="FastMCP" src="https://img.shields.io/badge/Powered%20By-FastMCP-orange"> <img alt="Docker" src="https://img.shields.io/badge/Integration-Docker-cyan"> </p>
Overview
Pentester-MCP provides Model Context Protocol (MCP) integration for over 200+ of the most popular open-source cybersecurity and penetration testing tools.
By adding Pentester-MCP to an AI assistant (like Claude Desktop, Cursor, or specialized agents), the AI gains the autonomous ability to act as a penetration tester:
- It can run
nmapscans, analyze open ports, and automatically decide to runffufon discovered web servers. - It can execute
sqlmapagainst parameters it identifies as vulnerable. - It understands tool arguments, required flags, and syntaxes thanks to AI-optimized documentation strings injected into every MCP tool.
All 235 Python *_mcp.py tools were generated intelligently from cheat sheets to ensure safe execution (e.g., preventing shell injection, enforcing timeouts, and handling huge terminal outputs).
The Arsenal
The tools/ directory includes MCP servers for almost every category:
- Reconnaissance:
nmap,masscan,recon-ng,amass,subfinder,nuclei - Web Exploitation:
sqlmap,commix,ffuf,gobuster,dirsearch,nikto - Active Directory & Network:
impacket(full suite),bloodhound,responder,evil-winrm - Brute-Forcing & Password:
hydra,medusa,john,hashcat,nxc - And 200+ more covering WiFi, Cloud, Kubernetes, Android, and reversing.
Installation & Usage
Because of the massive amount of tools, installing everything on your host machine can be messy. Therefore, Pentester-MCP offers two primary ways to run: Local Execution and Docker Sandbox (Recommended).
Method A: Docker Sandbox (Recommended & Secure)
Running tools via Docker isolates the execution from your host operating system and avoids polluting your system with hundreds of dependencies.
-
Clone the repository:
git clone https://github.com/halilkirazkaya/pentester-mcp.git cd pentester-mcp -
Select your Tools (
configs/*.yaml): Open your target configuration file in theconfigs/directory (e.g.,example-config.yaml) and settruefor any tool you wish to enable. By default, thedocker-compose.ymlpoints toexample-config.yaml. -
Build and Run the Sandbox:
docker compose up -d --buildYour container is now running silently in the background.
-
Add to your AI Client: Open your MCP client's configuration (e.g.,
claude_desktop_config.json) and route the commands directly to theserver.pyentrypoint. Seemcp-config.jsonfor a ready-to-use snippet.
Method B: Local Execution (Fastest Setup)
If you already have Kali Linux, Parrot OS, or you specifically only want to use the tools already installed on your host system:
-
Clone and Setup Virtual Environment:
git clone https://github.com/halilkirazkaya/pentester-mcp.git cd pentester-mcp python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt -
Add to your AI Client: Direct the AI client to execute the specific tool using your local python environment. You will need to extract the tool definitions from the
configs/directory and replace the"docker exec -i pentester-mcp /app/.venv/bin/python"arguments with your host machine's python path.Note: If the tool binary (e.g.,
nmaporgobuster) is not installed on your host system, the AI will gracefully receive aFileNotFoundErrorand inform you.
🔧 Configuring MCP Clients (Claude, Cursor, etc.)
Unlike legacy setups requiring you to register a server per tool out of 235 options, Pentester-MCP now uses a Unified Server Architecture.
- Define which tools you want available by editing a configuration file in
configs/(e.g.,example-config.yaml). - Add the single Unified Server to your Claude/Cursor configuration.
Claude Desktop Example
Simply copy the contents of mcp-config.json into your claude_desktop_config.json file. It will look exactly like this:
{
"mcpServers": {
"pentester_mcp": {
"command": "docker",
"args": [
"exec",
"-i",
"pentester-mcp",
"/app/.venv/bin/python",
"/app/server.py"
]
}
}
}
WARNING: The configs use
docker exec -i pentester-mcpwhich targets the running Docker container namedpentester-mcp. Ensure the container is running viadocker compose up -dbefore using the AI assistant.
Contributing & Architecture
The Python scripts in the tools/ directory are auto-generated from YAML cheat sheets to guarantee consistent API design (proper timeouts, truncating outputs to >8000 chars, no shell=True vulnerabilities).
If you have a request for a new tool to be added, please feel free to open an issue.
Disclaimer
Legal Disclaimer: This project is created strictly for educational purposes, authorized auditing, and ethical hacking. The developers of Pentester-MCP assume no liability and are not responsible for any misuse or damage caused by this software. Never use these tools against environments you do not own or do not have explicit, written permission to test.
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.
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.
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.
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.