Skip to main content
Glama
pentool-mcp-server
by DrXOps

English · Русский (RU)

🧠 pentool-mcp-server

MCP server for Pentool — the local AI assistant for web pentesting

PyPI version Python License: AGPL-3.0 Install: uv Open in GitHub

A self-contained stdio JSON-RPC 2.0 server that brings AI capabilities to any MCP client — first of all to Pentool (BYO-LLM: picking checks, bypassing WAF, finding non-obvious endpoints). Installed with uv in one command.


Why a separate package

MCP is the open protocol for connecting LLM models to tools. pentool-mcp-server encapsulates Pentool's MCP layer as a reusable PyPI package: attached locally (stdio), no network, no ports, installs in seconds, no heavy dependencies.

Related MCP server: pentestMCP

🔗 Built for Pentool

This server is the MCP component of Pentool, a professional web-security testing terminal (Burp-compatible proxy, scanner, spider, intruder — all in a TUI). It powers Pentool's AI:

  • 🎯 picking the relevant scan checks for a concrete target;

  • 🛡 WAF bypass / payload suggestions;

  • 🕷 finding non-obvious endpoints during spider crawling.

Try the full stack: uv tool install "pentool[ai]" → pentool ai setup → pentool.

⚡ Quick start (uv)

# Install uv (if not present): https://docs.astral.sh/uv/
curl -LsSf https://astral.sh/uv/install.sh | sh

# Standalone — just the MCP server
uv tool install pentool-mcp-server
pentool-mcp-server --version

# Or together with Pentool and its AI extras
uv tool install "pentool[ai]"

Health check (stdio):

echo '{"jsonrpc":"2.0","id":1,"method":"ping"}' | pentool-mcp-server
# → {"jsonrpc": "2.0", "id": 1, "result": {"status": "ok"}}

uv is the standard install path — isolated environment, exactly how Pentool itself is installed. It keeps the server out of your system Python.

🚀 Deploy on a VPS / in a container

The server opens no ports and runs as a local subprocess — safe on any host. With uv it stays out of the system Python:

uv tool install pentool-mcp-server

Full user guide — docs/GUIDE.md. Russian — README.ru.

🧩 MCP tools

Tool

Description

initialize

MCP protocol handshake

tools/list

List available tools

tools/call generate

Generate an LLM answer for a task (task + payload)

tools/call health

Readiness check (is a model installed)

tools/call configure

Point to a GGUF model path

ping

Process liveness

🔒 Security

  • No network by default. pentool-mcp-server listens only on stdio (stdin → stdout) inside the local process. External access is impossible — neither from other processes nor from another host.

  • Do not expose it over TCP/0.0.0.0 without auth. If run on a network port outwardly, anyone able to write to stdin/port gets tools/call generate (resource usage + sending target data to the LLM). MCP has no built-in authentication — bind to 127.0.0.1 and gate via a firewall.

  • Target privacy. Data (URL, payload) leaves the host only if an external LLM provider is connected; with a local GGUF model the traffic stays on the machine.

More — docs/GUIDE.md.

🗺 Roadmap

  • stdio JSON-RPC 2.0 server (initialize / tools/list / tools/call / ping)

  • generate, health, configure tools

  • real LLM runner (llama-cpp-python) in model.py

  • optional TCP mode with HMAC auth

📄 License

AGPL-3.0 — the same license as Pentool.


Support / bugs: issues · Designed for Pentool · User Guide

Available Tools

3 tools
configureC

Принять параметры конфигурации сервера (напр. путь модели).

Inputs: model.

generateB

Сгенерировать ответ LLM по задаче. payload — строка запроса (данные цели), model — путь к GGUF-файлу модели (необязательно). При отсутствии модели вернёт ошибку setup required.

Inputs: task (required), payload (required), model.

healthB

Проверка готовности: вернёт статус, установлена ли модель.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: 'generate' for LLM inference, 'health' for readiness checking, and 'configure' for setting parameters. There is no overlap or ambiguity between them.

    Naming Consistency5/5

    All tool names are simple, lowercase verbs that accurately describe their action ('generate', 'health', 'configure'). The pattern is uniform and predictable.

    Tool Count4/5

    With 3 tools, the count is appropriate for a minimal MCP server focused on LLM inference. It could potentially benefit from a status tool or a list-models tool, but the current set is sufficient for its core purpose.

    Completeness3/5

    The tool surface covers basic lifecycle: configure (setup), health (readiness), and generate (infer). However, there is no tool for cancelling generation, listing available models, or inspecting current configuration, which are notable gaps for a production server.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      D
      quality
      C
      maintenance
      A Model Context Protocol server that integrates essential penetration testing tools (Nmap, Gobuster, Nikto, John the Ripper) into a unified natural language interface, allowing security professionals to execute and chain multiple tools through conversational commands.
      9
      165 npm
      149
      AGPL 3.0
    • F
      license
      Not graded
      quality
      C
      maintenance
      An MCP server that exposes over 20 standard penetration testing utilities, such as Nmap, SQLMap, and OWASP ZAP, as callable tools for AI agents. It enables natural language control over complex security workflows for automated and interactive penetration testing.
      117
      -