PentestBLOCK
pentestMCP: AI-Powered Penetration Testing via MCP, an MCP designed for penetration testers.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://mseep.ai/app/ram001-code-pentestmcp)
[](https://opensource.org/licenses/MIT)
pentestMCP provides a powerful bridge between Large Language Models (LLMs) and practical penetration testing tools through the Model Context Protocol (MCP). This project functions as an MCP Server, exposing a curated suite of over 20 standard security assessment utilities (Nmap, Nuclei, ZAP, SQLMap, etc.) as callable 'tools'. This allows AI agents within MCP-compatible clients (like Claude Desktop or specific VS Code setups) to leverage these utilities for automated and interactive security analysis tasks.
The goal is to enable natural language control over complex security workflows, making pentesting capabilities more accessible and integrated into AI-driven environments. This work is inspired by Laurie Kirk's GhidraMCP.
Table of Contents
- Core Concepts & Architecture
- Key Features
- Prerequisites
- [Installation & Setup](#install
f0b6e067139dOBSERVED · 2026-10-07Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.
claude mcp add pentest-mcp -- uvx pentest-mcp
{
"mcpServers": {
"pentest-mcp": {
"command": "uvx",
"args": [
"pentest-mcp"
]
}
}
}Exposed tools (36)
29 read · 7 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
ad_asreproast | read | |
ad_bloodhound_collect | read | |
ad_certipy_enum | read | |
ad_check_credentials | read | |
ad_coerce_petitpotam | read | |
ad_coerce_printerbug | read | |
ad_dcsync | read | |
ad_kerberoast | read | |
ad_ldap_dump | read | |
ad_password_spray | read | |
ad_relay_setup | read | |
ad_responder_poison | read | |
ad_secrets_dump | read | |
ad_shares_enum | read | |
ad_smb_signing_check | read | |
ad_user_enum | read | |
check_gobuster_status | read | |
check_harvester_output | read | |
check_sqlmap_status | read | |
fetch_arjun_results | read | |
fetch_file | read | |
fetch_gofang_results | read | |
fetch_nmap_results | read | |
fetch_nuclei_results | read | |
fetch_whois_data | read | |
launch_arjun_scan | read | |
launch_gofang_scan | read | |
launch_nmap_scan | read | |
launch_nuclei_scan | read | |
run_curl_tool | write | |
run_dig_tool | write | |
run_gobuster_scan | write | |
run_harvester | write | |
run_searchsploit | write | |
run_sqlmap_tool | write | |
run_subfinder | write |
Trust audit
BLOCKgrade F · trust 46/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | FAIL |
| L2 | Instruction surface (what it tells the agent) | FAIL |
| L3 | Class-specific surface | WARN |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (9 observation(s))
- Network
- declared (5 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- found
Findings (25)
filename:id_rsa or filename:id_dsa
filename:.git-credentials
filename:.netrc password
jailbreak
jailbreak
#staysafetogether
gut
données
avec
fruit-
GHS_ListFrame_CallbackFunc_GetCount
GHS_ListFrame_CallbackFunc_UpdateItme
GHS_RewardFrame_CallbackFunc_GetCount
GHS_RewardFrame_CallbackFunc_UpdateItme
GHS_ListFrame_CallbackFunc_GetCount
streamable-http
libs/cq/contentinsight/content/proxy.reportingservices.json;%0aa.css?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.1.json?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.css?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.html?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.ico?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json;%0aa.css?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.1.json?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
libs/cq/contentinsight/content/proxy.reportingservices.json/a.css?url=http://169.254.169.254%23/api1.omniture.com/a&q=a
Gates applied: instruction_override, no_behavioural_pass.
f0b6e067139dfull audit observations/trust-audit/mcp-server/ramkansal__pentest-4.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-07 | f0b6e067139d | BLOCK | F | 46 | first audit |
Questions
What is the Pentest MCP server?
pentestMCP: AI-Powered Penetration Testing via MCP, an MCP designed for penetration testers.
What tools does Pentest expose?
36 in total: 29 read-only, 7 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Pentest safe to connect to an agent?
No — not without reading the findings first. The audit graded it F (46/100) and found 11 critical or high issues in the source. Each one is listed on this page with the file and line it is on.
What credentials does Pentest need?
No credential environment variables were found in its source, so it appears to need none.
How does Pentest run?
It speaks streamable-http, so it runs as a service you connect to over the network. It is published on PyPI as pentest-mcp.
How current is this page?
The grade is for one exact copy of the source (f0b6e067139d), read on 2026-10-07. The repository is watched and re-audited when it changes.