HackBridge
An MCP server that connects AI clients to a Linux terminal for real-time automated penetration testing and CTF challenge solving. It enables AI models to execute terminal commands and interact with offensive security tools like Nmap, SQLMap, and Gobuster.
README
š HackBridge
HackBridge is a lightweight MCP (Model Context Protocol) bridge that connects AI clients (e.g., Claude Desktop, 5ire) to a Linux terminal API server ā enabling AI-assisted penetration testing, CTF challenge solving, and automated recon/exploitation in real time.
Run terminal commands like nmap, nxc, sqlmap, or any other tool. Interact with web applications using curl, wget, gobuster. Let the AI drive your offensive security workflow ā from enumeration to exploitation.
š My Medium Article on This Tool
š How MCP is Revolutionizing Offensive Security
š Use Case
HackBridge enables AI-driven offensive security by:
- Connecting MCP-compatible AI clients (OpenAI, Claude, DeepSeek, Gemini, etc.) to a Linux terminal.
- Exposing a controlled API to execute commands on your Linux machine.
- Letting AI suggest, run, and analyze terminal commands to solve CTF challenges or automate recon/exploitation tasks.
- Allowing MCP apps to send structured requests (e.g.,
nmap,ffuf,curl) and receive parsed outputs.
Here are some examples from my testing (using Google's AI Gemini 2.0 Flash):
Example: Solving a Web CTF Challenge in RamadanCTF
https://github.com/user-attachments/assets/dc93b71d-9a4a-4ad5-8079-2c26c04e5397
Example: Attempting to Solve Machine "Code" from HTB
https://github.com/user-attachments/assets/3ec06ff8-0bdf-4ad5-be71-2ec490b7ee27
š Features
- š§ AI Integration via MCP ā Connect your Linux machine to any MCP-compatible client like Claude Desktop or 5ire.
- š„ļø Command Execution API ā Controlled API to execute terminal commands on your Linux machine.
- š ļø Built-in Tool Support ā Pre-configured endpoints for Nmap, Gobuster, Dirb, SQLMap, Hydra, and WPScan.
- šøļø Web Challenge Support ā AI can interact with websites and APIs, capture flags via
curland any other tool. - ā±ļø Configurable Timeouts ā Per-tool timeout support to handle long-running scans without interruption.
- š Built for Offensive Security ā Ideal for red teamers, bug bounty hunters, and CTF players automating common tasks.
- š Arbitrary Command Execution ā Execute any terminal command beyond the built-in tools for maximum flexibility.
š Project Structure
MCP-Kali-Server/
āāā kali_server.py # Flask API server (runs on Linux/Kali)
āāā mcp_server.py # MCP client bridge (connects AI to API server)
āāā mcp-kali-server.json # Example MCP client configuration
āāā requirements.txt # Python dependencies
āāā README.md # This file
š ļø Installation & Setup
Prerequisites
- Python 3.8+
- pip (Python package manager)
- The following Python packages (installed via
requirements.txt):Flask>=3.0.0requests>=2.31.0mcp>=1.0.0
1. On Your Linux Machine (API Server)
Install HackBridge via apt:
sudo apt install hackbridge
Or install manually:
git clone <your-repo-url>
cd MCP-Kali-Server
pip install -r requirements.txt
python3 kali_server.py
Command Line Options:
--ip <address>ā IP to bind the server to (default:127.0.0.1for localhost only)127.0.0.1ā Local connections only (secure, recommended)0.0.0.0ā Allow connections from any interface (ā ļø very dangerous; use with caution)- Specific IP ā Bind to a particular network interface
--port <port>ā Port number (default:5000)--debugā Enable debug mode for verbose logging
Examples:
# Run on localhost only (secure, default)
python3 kali_server.py
# Run on all interfaces (less secure, useful for remote access)
python3 kali_server.py --ip 0.0.0.0
# Run on a specific IP and custom port
python3 kali_server.py --ip 192.168.1.100 --port 8080
# Run with debug mode
python3 kali_server.py --debug
2. On Your MCP Client Machine (Can Be Local or Remote)
git clone <your-repo-url>
cd MCP-Kali-Server
pip install -r requirements.txt
MCP Client Command Line Options:
--server <url>ā Kali API server URL (default:http://localhost:5000)--timeout <seconds>ā Request timeout in seconds (default:600)--debugā Enable debug logging
If running the client and server on the same machine:
python3 mcp_server.py --server http://127.0.0.1:5000
If on separate machines, create an SSH tunnel to your Linux machine, then launch the client:
ssh -L 5000:localhost:5000 user@LINUX_IP
python3 mcp_server.py --server http://127.0.0.1:5000
Note: If you're openly hosting the API server on your network (
kali_server.py --ip 0.0.0.0), you don't need the SSH tunnel ā but ā ļø this is highly discouraged for security reasons.
python3 mcp_server.py --server http://LINUX_IP:5000
āļø MCP Client Configuration
Claude Desktop
Edit C:\Users\USERNAME\AppData\Roaming\Claude\claude_desktop_config.json:
{
"mcpServers": {
"hackbridge": {
"command": "python3",
"args": [
"/absolute/path/to/mcp_server.py",
"--server",
"http://LINUX_IP:5000/"
],
"timeout": 600
}
}
}
5ire Desktop Application
Simply add an MCP server with the command:
python3 /absolute/path/to/mcp_server.py --server http://LINUX_IP:5000
5ire will automatically generate the needed configuration files.
š§° Supported Tools
| Tool | MCP Function | Description |
|---|---|---|
| Nmap | nmap_scan |
Network scanning & version detection |
| Gobuster | gobuster_scan |
Directory, DNS, and vhost brute-forcing |
| Dirb | dirb_scan |
Web content scanning |
| SQLMap | sqlmap_scan |
SQL injection testing |
| Hydra | hydra_attack |
Password brute-forcing |
| WPScan | wpscan_analyze |
WordPress vulnerability scanning |
| Any command | execute_command |
Execute any arbitrary terminal command |
š API Endpoints
The Flask API server (kali_server.py) exposes the following endpoints:
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/command |
Execute any arbitrary command |
POST |
/api/tools/nmap |
Run an Nmap scan |
POST |
/api/tools/gobuster |
Run a Gobuster scan |
POST |
/api/tools/dirb |
Run a Dirb scan |
POST |
/api/tools/sqlmap |
Run a SQLMap scan |
POST |
/api/tools/hydra |
Run a Hydra attack |
POST |
/api/tools/wpscan |
Run a WPScan scan |
GET |
/health |
Server health check |
š® Other Possibilities
Since the AI model can now execute commands on the terminal, the possibilities go beyond just pentesting:
- Memory Forensics with Volatility ā Automate memory analysis: process enumeration, DLL injection checks, registry extraction from memory dumps.
- Disk Forensics with SleuthKit ā Automate disk image analysis, timeline generation, file carving, and hash comparisons.
- OSINT & Recon ā Automate recon workflows using tools like
theHarvester,amass,subfinder, etc. - Log Analysis ā Parse and analyze security logs, access logs, or system logs.
ā ļø Disclaimer
This project is intended solely for educational and ethical testing purposes. Any misuse of the information or tools provided ā including unauthorized access, exploitation, or malicious activity ā is strictly prohibited.
The author assumes no responsibility for misuse.
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.
