English · Русский (RU)
🧠 pentool-mcp-server
MCP server for Pentool — the local AI assistant for web pentesting
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-serverlistens 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 to127.0.0.1and 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,configuretools - 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
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pentool_mcp_server-0.2.0.tar.gz.
File metadata
- Download URL: pentool_mcp_server-0.2.0.tar.gz
- Upload date:
- Size: 13.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b84194699d9a020ab94222631ee5dfb758c108a18572617b8ba712f78baae684
|
|
| MD5 |
01e14f45a4511ec27059440678c0b203
|
|
| BLAKE2b-256 |
047847d8bbad8cc1cdd9ef3e86dee46544b9d43682314334f4daf6256e04817f
|
File details
Details for the file pentool_mcp_server-0.2.0-py3-none-any.whl.
File metadata
- Download URL: pentool_mcp_server-0.2.0-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2b7c01f3de4a2838a00250d1f842b97e411cfa9fa180cb6b0d81d18b555db98
|
|
| MD5 |
9eca269d1237e0d9395e0b85967be5cc
|
|
| BLAKE2b-256 |
c7bd1040d5f2a10834f2c6f8c3954145837644b577334d95e644c2396c48a5a5
|