HexStrike AI

Framework d'orchestration d'agents IA qui expose des dizaines d'outils de pentest derrière un serveur MCP, permettant à un agent LLM d'enchaîner de façon autonome des étapes de recon et d'exploitation. AI agent orchestration framework that wraps dozens of pentest tools behind an MCP server, letting an LLM agent autonomously chain recon and exploitation steps.

↗ https://github.com/0x4m4/hexstrike-ai

Overview

HexStrike AI is an orchestration layer that exposes a large library of offensive-security tools (nmap, gobuster, sqlmap, ffuf, nuclei, and many more) as callable functions through the Model Context Protocol (MCP). An LLM agent connects to the MCP server and autonomously plans and executes multi-step engagements — recon, enumeration, vulnerability discovery, and exploitation — deciding which tool to invoke next based on prior output. It’s aimed at red-teamers who want an agentic front-end to their existing toolchain rather than manually chaining commands.

Common Usage

# Install and start the HexStrike MCP server
pip install -r requirements.txt
python3 hexstrike_server.py --port 8888

# Point an MCP-compatible client (e.g. Claude Desktop, Cursor) at it
# by adding the server to the client's MCP config, then prompt naturally:
#   "Enumerate subdomains for target.com, scan for open ports,
#    and check the web app for common vulnerabilities"

Run a specific bundled tool module directly via CLI mode

python3 hexstrike_server.py --tool nmap --args "-sCV -p- <target>"

List available integrated tools

python3 hexstrike_server.py --list-tools

Notes

  • Designed for authorized engagements only — the agent will happily chain exploitation steps if instructed, so scope control matters more than with a single manual tool.
  • Underlying tools must still be installed on the host (or reachable in the sandbox HexStrike runs in); HexStrike is a wrapper/orchestrator, not a reimplementation.
  • Works best paired with a capable reasoning model — weaker models tend to loop or misinterpret tool output.
Help / Man page
hexstrike_server.py [options]

  --port PORT         Port to bind the MCP server (default: 8888)
  --host HOST         Bind address (default: 127.0.0.1)
  --tool NAME         Run a single integrated tool directly
  --args "..."        Arguments to pass to --tool
  --list-tools        Print all integrated tool modules
  --config FILE       Path to server config (tool paths, API keys)
  --log-level LEVEL   DEBUG|INFO|WARNING|ERROR
  --version           Show version

Vue d’ensemble

HexStrike AI est une couche d’orchestration qui expose une large bibliothèque d’outils offensifs (nmap, gobuster, sqlmap, ffuf, nuclei, et bien d’autres) sous forme de fonctions appelables via le Model Context Protocol (MCP). Un agent LLM se connecte au serveur MCP et planifie puis exécute de façon autonome des missions à plusieurs étapes : recon, énumération, découverte de vulnérabilités et exploitation, en décidant quel outil invoquer ensuite en fonction de la sortie précédente. Il vise les red-teamers qui veulent une interface agentique devant leur chaîne d’outils existante plutôt que d’enchaîner manuellement des commandes.

Utilisation courante

# Installer et démarrer le serveur MCP HexStrike
pip install -r requirements.txt
python3 hexstrike_server.py --port 8888

# Pointer un client compatible MCP (par ex. Claude Desktop, Cursor) vers lui
# en ajoutant le serveur à la configuration MCP du client, puis prompter naturellement :
#   "Enumerate subdomains for target.com, scan for open ports,
#    and check the web app for common vulnerabilities"

Lancer un module d’outil intégré spécifique directement en mode CLI

python3 hexstrike_server.py --tool nmap --args "-sCV -p- <target>"

Lister les outils intégrés disponibles

python3 hexstrike_server.py --list-tools

Notes

  • Conçu pour des missions autorisées uniquement : l’agent enchaînera volontiers des étapes d’exploitation si on le lui demande, donc le contrôle du périmètre compte encore plus qu’avec un outil manuel unique.
  • Les outils sous-jacents doivent toujours être installés sur l’hôte (ou accessibles dans le sandbox où HexStrike s’exécute) ; HexStrike est un wrapper/orchestrateur, pas une réimplémentation.
  • Fonctionne mieux avec un modèle de raisonnement performant : les modèles plus faibles ont tendance à boucler ou à mal interpréter la sortie des outils.
Aide / Page de manuel
hexstrike_server.py [options]

  --port PORT         Port to bind the MCP server (default: 8888)
  --host HOST         Bind address (default: 127.0.0.1)
  --tool NAME         Run a single integrated tool directly
  --args "..."        Arguments to pass to --tool
  --list-tools        Print all integrated tool modules
  --config FILE       Path to server config (tool paths, API keys)
  --log-level LEVEL   DEBUG|INFO|WARNING|ERROR
  --version           Show version