Skip to main content

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.

🔗 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

Metadata

Release files for pentool-mcp-server 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pentool-mcp-server 0.2.2
File Interpreter ABI Platform
pentool_mcp_server-0.2.2-py3-none-any.whl Python 3 none any Details

Release files / pentool_mcp_server-0.2.2-py3-none-any.whl

Download URL pentool_mcp_server-0.2.2-py3-none-any.whl
Size 13.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef16bf22acea3ca16f8383d3fdb9f3eda463089b74f678d64d4d524b4c05d348
BLAKE2b-256 checksum
How to use checksums
b74b5ce36ee3070786497d34f22e061ce18c9a7e84154a8e199f7965565673b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.2.2 This release

1 release file

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page