Skip to main content
Glama
DMontgomery40

Pentest MCP

Pentest MCP:专业渗透测试工具包

Pentest MCP 是一个模型上下文协议服务器,它将重要的渗透测试工具集成到统一的自然语言界面中。它允许安全专业人员通过对话命令执行、链接和分析多个工具。

专业渗透测试人员的综合工具包

该工具包在一个直观的界面下集成了四个核心渗透测试实用程序:

  • 使用 Nmap 进行网络侦察

  • 使用 Gobuster 进行Web 目录枚举

  • 使用 Nikto 进行Web 漏洞扫描

  • 使用 John the Ripper破解密码

Related MCP server: pentestMCP

主要优点

  • **工作流程集成:**将工具链接在一起进行全面评估

  • **自然语言界面:**使用简单的英文描述运行复杂的命令

  • **自动报告:**通过适当的分类生成客户可用的调查结果

  • **时间效率:**以最少的输入执行常见的渗透测试序列

  • **兼容语音控制:**与语音转文本功能配对时,可实现免提操作

  • **上下文感知:**工具了解之前的扫描结果并可以建议合理的后续步骤

系统要求

  • **平台:**适用于任何操作系统,针对 Kali Linux 进行了优化

  • **工具:**需要 Nmap、John the Ripper、Gobuster 和 Nikto 在你的 PATH 中

  • Node.js: v16+(用于 ESM 支持)

  • **MCP 支持:**用于处理日志文件的本地 MCP 文件服务器(mcp-fileserver 或同等服务器)

  • 权限: Root/admin 特权扫描(SYN 扫描、OS 检测)

安装

npm install -g pentest-mcp

MCP 配置

将其添加到您的 MCP 配置文件中:

{
  "servers": [
    {
      "name": "pentest-mcp",
      "command": "npx pentest-mcp -y"
    }
  ]
}

工作流程示例

网络发现和服务枚举

Set the working mode to professional.
Scan the target 192.168.1.0/24 using a SYN scan technique with service detection.

Web应用程序测试

Use Gobuster to search for hidden directories on http://192.168.1.10 with the common.txt wordlist.
Run Nikto against the target http://192.168.1.10 to check for security issues.

多工具评估链

Scan 10.0.1.0/24 for web servers.
For each web server found, use Gobuster to enumerate directories with the directory-list-2.3-medium.txt wordlist.
Then run Nikto against each web server to identify vulnerabilities.
Create a report for client "Acme Corp" summarizing all findings.

自定义密码破解

Generate a wordlist from the target's company name "Acme", founder "Smith", and founding date "1984-06-12".

Crack these password hashes using the wordlist I just created:
admin:$1$xyz$anotherFakeHash
user:$1$abc$definitelyNotARealHash

分析与报告

Create a report for client "Example Corp" titled "Q1 External Assessment" including all scans from today.
Summarize the findings from the scan of 10.0.0.5.
Suggest next steps for this assessment based on all tool results collected so far.

工具详细信息

Nmap

网络映射器集成提供对以下内容的全面支持:

  • 使用自定义端口范围进行端口扫描(TCP SYN、TCP Connect、UDP)

  • 可配置强度的服务和版本检测

  • 操作系统指纹识别

  • NSE脚本执行

  • 自定义计时模板和扫描选项

戈布斯特

Web 应用程序的目录和文件枚举,具有以下选项:

  • 多个单词列表和文件扩展名扫描

  • 身份验证选项(基本身份验证、cookie)

  • 可定制的线程和状态代码过滤

  • TLS 配置和重定向

尼克托

Web 服务器漏洞扫描,支持:

  • 全面的漏洞检查

  • 身份验证和代理支持

  • 可调扫描选项和超时配置

  • 按漏洞类型查找分类

开膛手约翰

具有增强功能的密码破解实用程序:

  • 使用单词表直接破解哈希值

  • 集成自定义词表生成

  • 基于模式的密码创建

  • 俚语和格变体

安全声明

**仅限授权使用:**本工具包仅供在有效工作范围内工作的专业渗透测试人员使用。请仅在您获得明确书面授权的系统和网络上使用。

运营安全:

  • 使用 VPN 进行外部扫描

  • 在隔离环境中运行

  • 监控敏感网络的扫描强度

**遵守法律:**遵守所有适用法律和客户协议

故障排除

  • **路径问题:**确保所有工具都已安装并位于您的 PATH 中

  • 权限要求: SYN 扫描和 OS 检测需要 root/admin

  • **权限错误:**检查服务器是否可以写入scan_logs和temp_wordlists

  • **MCP 文件访问:**验证 mcp-fileserver(或同等服务器)是否配置正确

贡献

此工具由专业人士为专业人士打造。欢迎在GitHub 仓库提交Pull 请求。

Available Tools

9 tools
cancelScanD
ParametersJSON Schema
NameRequiredDescriptionDefault
scanIdYesThe ID of the scan to cancel

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

createClientReportD
ParametersJSON Schema
NameRequiredDescriptionDefault
clientYesClient name for the report
titleYesTitle of the assessment report
assessmentTypeYesType of assessment
scanIdsYesIDs of scans to include
summaryNoExecutive summary
recommendationsNoList of recommendations

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generateWordlistD
ParametersJSON Schema
NameRequiredDescriptionDefault
baseWordsYesList of base words (names, pets, places, etc.).
datesNoList of dates (YYYY-MM-DD, MM-DD, YYYY). Parsed for variations.
customPatternsNoList of custom patterns/symbols to prepend/append (e.g., '!', '123').
minYearNoMinimum year (YYYY) to include in variations.
maxYearNoMaximum year (YYYY) to include in variations (defaults to current year).
includeLeetNoApply basic leetspeak substitutions (a=4, e=3, etc.).
caseVariationsNoInclude variations like TitleCase, UPPERCASE.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

gobusterD
ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget URL
wordlistYesPath to wordlist
extensionsNoFile extensions (comma-separated)
threadsNoNumber of threads
statusCodesNoValid status codes (comma-separated)
useragentNoUser-Agent string
timeoutNoTimeout for requests
basicAuthNoBasic authentication credentials (username:password)
cookieNoCookie to include in requests
excludeLengthNoExclude paths of specific lengths
followRedirectNoFollow HTTP redirects
noTLSValidationNoSkip TLS certificate validation
rawOptionsNoRaw gobuster options

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

niktoD
ParametersJSON Schema
NameRequiredDescriptionDefault
targetYesTarget URL
portNoPort(s) to scan
sslNoForce SSL mode
timeoutNoTimeout for requests
useragentNoUser-Agent string
tuningNoTuning mode
outputNoOutput file
proxyNoUse proxy
basicAuthNoBasic authentication credentials (username:password)
rootNoRoot directory
cookiesNoCookies to include
rawOptionsNoRaw nikto options

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

nmapScanD
ParametersJSON Schema
NameRequiredDescriptionDefault
targetYes
portsNo
fastScanNo
topPortsNo
scanTechniqueNo
udpScanNo
serviceVersionDetectionNo
versionIntensityNo
osDetectionNo
defaultScriptsNo
scriptsNo
scriptArgsNo
timingTemplateNo
skipHostDiscoveryNo
verboseNo
rawOptionsNo
userModeHintNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

runHashcatD
ParametersJSON Schema
NameRequiredDescriptionDefault
hashDataYesString containing the password hashes, one per line.
attackModeNoAttack mode: 0=Straight, 1=Combination, 3=Brute-force, 6=Hybrid Wordlist + Mask, 7=Hybrid Mask + Wordlist
hashTypeNoHash-type, e.g., 0=MD5, 100=SHA1, 1000=NTLM, 1400=SHA2-256, 1800=sha512crypt, 22000=WPA*01/WPA*02
wordlistNoPath to wordlist file for dictionary attacks
maskNoMask for brute-force attacks (e.g., '?a?a?a?a?a?a?a?a' for 8 chars)
incrementNoEnable incremental mode (start with shorter passwords)
incrementMinNoMinimum password length for incremental mode
incrementMaxNoMaximum password length for incremental mode
rulesNoRules file to apply to wordlist
sessionNoSession name for resuming attacks
restoreNoRestore a previous session
optimizedKernelsNoEnable optimized kernels (-O)
workloadProfileNoWorkload profile: 1=Low, 2=Default, 3=High, 4=Nightmare
deviceTypesNoDevice types: 1=CPU, 2=GPU, 3=FPGA
forceNoIgnore warnings
potfilePathNoPath to custom potfile
outfileNoOutput file for cracked hashes
outfileFormatNoOutput format: 1=hash, 2=plain, 3=hex-plain, etc.
runtimeNoAbort session after X seconds
showProgressNoShow progress every X seconds
quietNoSuppress output
loopbackNoAdd new plains to induct directory
markovThresholdNoThreshold X when to stop accepting new Markov-chains
customCharset1NoUser-defined charset ?1
customCharset2NoUser-defined charset ?2
customCharset3NoUser-defined charset ?3
customCharset4NoUser-defined charset ?4
optionsNoAdditional raw hashcat options

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

runJohnTheRipperD
ParametersJSON Schema
NameRequiredDescriptionDefault
hashDataYesString containing the password hashes, one per line.
optionsNoArray of command-line options for JtR.

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setModeD
ParametersJSON Schema
NameRequiredDescriptionDefault
modeYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

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

  1. 9 tool updates
    • First observedcancelScan
    • First observedcreateClientReport
    • First observedgenerateWordlist
    • First observedgobuster
    • First observednikto
    • First observednmapScan
    • First observedrunHashcat
    • First observedrunJohnTheRipper
    • First observedsetMode

TDQS

D1.6/5.0

Scored across 9 tools

Disambiguation3/5

The tools have distinct purposes in penetration testing (e.g., nmapScan for scanning, gobuster for directory busting, runHashcat for password cracking), but some overlap exists in the 'run' category (runHashcat and runJohnTheRipper both handle password cracking with different tools), and the vague 'setMode' could be confused with other configuration or control functions. Descriptions are missing, which limits clarity, but the tool names suggest reasonably separate domains.

Naming Consistency2/5

Naming is inconsistent with mixed conventions: camelCase (cancelScan, createClientReport, setMode) and snake_case-like patterns (gobuster, nikto, nmapScan, runHashcat, runJohnTheRipper, generateWordlist). There's no uniform verb_noun pattern; some tools use verbs like 'run' or 'create', while others are tool names or actions without clear structure, making the set less predictable.

Tool Count4/5

With 9 tools, the count is appropriate for a penetration testing server, covering key areas like scanning, cracking, reporting, and wordlist generation. It's well-scoped without being overly heavy, though it could be slightly thin if more specialized tools are needed, but it reasonably represents core pentest functions.

Completeness3/5

The tool set covers major pentest phases: reconnaissance (nmapScan), vulnerability scanning (nikto), password cracking (runHashcat, runJohnTheRipper), and reporting (createClientReport). However, there are notable gaps, such as no tools for exploitation, post-exploitation, or data exfiltration, and missing descriptions make it hard to assess full coverage, but it provides a basic workflow from scan to report.

Maintenance

ActivityInactive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    F
    maintenance
    An MCP server that integrates various penetration testing tools, enabling security professionals to perform reconnaissance, vulnerability scanning, and API testing through natural language commands in compatible LLM clients like Claude Desktop.
    7
    -
  • F
    license
    Not graded
    quality
    B
    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.
    105
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    A penetration testing MCP server that runs 20 hacking tools inside a Kali Linux Docker container, enabling AI assistants to execute security scans and attacks via natural language.
    2
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Model Context Protocol server for security research automation, integrating multiple security testing tools into LLM-driven workflows for secret scanning, static analysis, and vulnerability discovery.
    55
    Apache 2.0