mcp-security-hub
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesemcp-security-hub
mcp-security-hub
Overview
概述
mcp-security-hubKey capabilities:
- 8 reconnaissance servers (Nmap, Shodan, ProjectDiscovery tools, WhatWeb, Masscan, ZoomEye)
- 6 web security servers (Nuclei, SQLMap, Nikto, ffuf, Burp Suite)
- 6 binary analysis servers (radare2, Ghidra, Binwalk, YARA, Capa, IDA Pro)
- 3 blockchain security servers (DAML Viewer, Medusa, Solazy)
- 3 cloud security servers (Trivy, Prowler, RoadRecon)
- Plus: secrets detection, fuzzing, OSINT, threat intelligence, Active Directory, password cracking
mcp-security-hub核心功能:
- 8个侦察类服务器(Nmap、Shodan、ProjectDiscovery工具、WhatWeb、Masscan、ZoomEye)
- 6个Web安全类服务器(Nuclei、SQLMap、Nikto、ffuf、Burp Suite)
- 6个二进制分析类服务器(radare2、Ghidra、Binwalk、YARA、Capa、IDA Pro)
- 3个区块链安全类服务器(DAML Viewer、Medusa、Solazy)
- 3个云安全类服务器(Trivy、Prowler、RoadRecon)
- 额外支持:密钥检测、模糊测试、开源情报(OSINT)、威胁情报、Active Directory、密码破解
Installation
安装
Prerequisites
前置条件
- Docker 20.10+
- Docker Compose 2.0+
- Claude Desktop or MCP-compatible client
- Docker 20.10+
- Docker Compose 2.0+
- Claude Desktop或兼容MCP的客户端
Clone and Build
克隆与构建
bash
git clone https://github.com/FuzzingLabs/mcp-security-hub.git
cd mcp-security-hubbash
git clone https://github.com/FuzzingLabs/mcp-security-hub.git
cd mcp-security-hubBuild all MCP servers
Build all MCP servers
docker-compose build
docker-compose build
Or build specific servers
Or build specific servers
docker-compose build nmap-mcp nuclei-mcp gitleaks-mcp
undefineddocker-compose build nmap-mcp nuclei-mcp gitleaks-mcp
undefinedVerify Installation
验证安装
bash
undefinedbash
undefinedCheck built images
Check built images
docker images | grep mcp
docker images | grep mcp
Start specific servers
Start specific servers
docker-compose up nmap-mcp nuclei-mcp -d
docker-compose up nmap-mcp nuclei-mcp -d
Verify health
Verify health
docker-compose ps
undefineddocker-compose ps
undefinedConfiguration
配置
Claude Desktop Integration
Claude Desktop集成
macOS:
Windows:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonjson
{
"mcpServers": {
"nmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "--cap-add=NET_RAW", "nmap-mcp:latest"]
},
"nuclei": {
"command": "docker",
"args": ["run", "-i", "--rm", "nuclei-mcp:latest"]
},
"gitleaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "${HOME}/repos:/app/target:ro",
"gitleaks-mcp:latest"
]
},
"radare2": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "${HOME}/binaries:/samples:ro",
"radare2-mcp:latest"
]
},
"sqlmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "sqlmap-mcp:latest"]
},
"trivy": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/var/run/docker.sock:/var/run/docker.sock:ro",
"trivy-mcp:latest"
]
}
}
}macOS:
Windows:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonjson
{
"mcpServers": {
"nmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "--cap-add=NET_RAW", "nmap-mcp:latest"]
},
"nuclei": {
"command": "docker",
"args": ["run", "-i", "--rm", "nuclei-mcp:latest"]
},
"gitleaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "${HOME}/repos:/app/target:ro",
"gitleaks-mcp:latest"
]
},
"radare2": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "${HOME}/binaries:/samples:ro",
"radare2-mcp:latest"
]
},
"sqlmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "sqlmap-mcp:latest"]
},
"trivy": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/var/run/docker.sock:/var/run/docker.sock:ro",
"trivy-mcp:latest"
]
}
}
}Project-Level Configuration
项目级配置
Create in your project root:
.mcp.jsonjson
{
"mcpServers": {
"nmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "--cap-add=NET_RAW", "nmap-mcp:latest"]
},
"nuclei": {
"command": "docker",
"args": ["run", "-i", "--rm", "nuclei-mcp:latest"]
}
}
}在项目根目录创建文件:
.mcp.jsonjson
{
"mcpServers": {
"nmap": {
"command": "docker",
"args": ["run", "-i", "--rm", "--cap-add=NET_RAW", "nmap-mcp:latest"]
},
"nuclei": {
"command": "docker",
"args": ["run", "-i", "--rm", "nuclei-mcp:latest"]
}
}
}Environment Variables
环境变量
Many MCP servers require API keys for external services:
bash
undefined许多MCP服务器需要外部服务的API密钥:
bash
undefinedShodan
Shodan
export SHODAN_API_KEY=your_key_here
export SHODAN_API_KEY=your_key_here
VirusTotal
VirusTotal
export VT_API_KEY=your_key_here
export VT_API_KEY=your_key_here
ZoomEye
ZoomEye
export ZOOMEYE_API_KEY=your_key_here
export ZOOMEYE_API_KEY=your_key_here
Burp Suite
Burp Suite
export BURP_API_KEY=your_key_here
Pass environment variables to Docker containers:
```json
{
"mcpServers": {
"shodan": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "SHODAN_API_KEY=${SHODAN_API_KEY}",
"shodan-mcp:latest"
]
}
}
}export BURP_API_KEY=your_key_here
将环境变量传递给Docker容器:
```json
{
"mcpServers": {
"shodan": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "SHODAN_API_KEY=${SHODAN_API_KEY}",
"shodan-mcp:latest"
]
}
}
}Key MCP Servers
核心MCP服务器
Nmap MCP (Network Scanning)
Nmap MCP(网络扫描)
Available tools (8):
- - Basic host discovery
scan_hosts - - Port scanning with service detection
scan_ports - - OS fingerprinting
scan_os - - Vulnerability scanning with NSE scripts
scan_vuln - - Custom nmap command execution
scan_custom - - List available NSE scripts
list_nse_scripts - - Get NSE script details
get_nse_script_info - - Run specific NSE script
scan_with_script
Example prompts:
- "Scan 192.168.1.0/24 for open ports"
- "Perform OS detection on 10.0.0.1"
- "Run vulnerability scan on example.com"
可用工具(8种):
- - 基础主机发现
scan_hosts - - 带服务探测的端口扫描
scan_ports - - 操作系统指纹识别
scan_os - - 使用NSE脚本的漏洞扫描
scan_vuln - - 自定义nmap命令执行
scan_custom - - 列出可用NSE脚本
list_nse_scripts - - 获取NSE脚本详情
get_nse_script_info - - 运行指定NSE脚本
scan_with_script
示例提示:
- "扫描192.168.1.0/24网段的开放端口"
- "对10.0.0.1进行操作系统探测"
- "对example.com进行漏洞扫描"
Nuclei MCP (Vulnerability Scanning)
Nuclei MCP(漏洞扫描)
Available tools (7):
- - Scan with default templates
scan_target - - Filter by severity (critical, high, medium, low)
scan_with_severity - - Use specific tags (cve, exposure, xss, sqli)
scan_with_tags - - Use custom template paths
scan_with_templates - - Show available templates
list_templates - - Update template database
update_templates - - Bulk scanning
scan_multiple_targets
Example prompts:
- "Scan https://example.com for critical vulnerabilities"
- "Check example.com for CVEs using nuclei"
- "Run nuclei with exposure and misconfiguration templates"
可用工具(7种):
- - 使用默认模板扫描
scan_target - - 按风险等级过滤(critical、high、medium、low)
scan_with_severity - - 使用指定标签(cve、exposure、xss、sqli)
scan_with_tags - - 使用自定义模板路径
scan_with_templates - - 显示可用模板
list_templates - - 更新模板数据库
update_templates - - 批量扫描
scan_multiple_targets
示例提示:
- "扫描https://example.com的高危漏洞"
- "使用nuclei检查example.com的CVE漏洞"
- "使用暴露配置和错误配置模板运行nuclei"
Gitleaks MCP (Secrets Detection)
Gitleaks MCP(密钥检测)
Available tools (5):
- - Scan git repository
scan_repo - - Scan individual file
scan_file - - Scan directory tree
scan_directory - - Create baseline for false positives
generate_baseline - - Scan specific commit range
scan_commits
Example prompts:
- "Scan /app/target/myrepo for secrets"
- "Check this project for exposed API keys"
- "Find credentials in the last 10 commits"
Volume mounting required:
json
{
"gitleaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/repos:/app/target:ro",
"gitleaks-mcp:latest"
]
}
}可用工具(5种):
- - 扫描Git仓库
scan_repo - - 扫描单个文件
scan_file - - 扫描目录树
scan_directory - - 创建误报基准
generate_baseline - - 扫描指定提交范围
scan_commits
示例提示:
- "扫描/app/target/myrepo中的密钥"
- "检查此项目中是否有暴露的API密钥"
- "查找最近10次提交中的凭据"
需要挂载卷:
json
{
"gitleaks": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/repos:/app/target:ro",
"gitleaks-mcp:latest"
]
}
}Radare2 MCP (Binary Analysis)
Radare2 MCP(二进制分析)
Available tools (32+):
- - Load and analyze binary
analyze_binary - - Disassemble functions
disassemble - - Decompile to C-like code
decompile - - Show all functions
list_functions - - Extract strings
find_strings - - List imported functions
find_imports - - List exported functions
find_exports - - Search byte patterns
search_bytes - - Detect packed sections
analyze_entropy
Example prompts:
- "Analyze /samples/malware.exe for suspicious functions"
- "Decompile main function in this binary"
- "Find strings in /samples/firmware.bin"
Volume mounting required:
json
{
"radare2": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/binaries:/samples:ro",
"radare2-mcp:latest"
]
}
}可用工具(32+种):
- - 加载并分析二进制文件
analyze_binary - - 反汇编函数
disassemble - - 反编译为类C代码
decompile - - 显示所有函数
list_functions - - 提取字符串
find_strings - - 列出导入函数
find_imports - - 列出导出函数
find_exports - - 搜索字节模式
search_bytes - - 检测加壳段
analyze_entropy
示例提示:
- "分析/samples/malware.exe中的可疑函数"
- "反编译此二进制文件中的main函数"
- "在/samples/firmware.bin中查找字符串"
需要挂载卷:
json
{
"radare2": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/path/to/binaries:/samples:ro",
"radare2-mcp:latest"
]
}
}SQLMap MCP (SQL Injection)
SQLMap MCP(SQL注入)
Available tools (8):
- - Test URL for SQL injection
test_url - - Extract database contents
dump_database - - Extract specific table
dump_table - - Enumerate databases
list_databases - - Enumerate tables
list_tables - - Get database names
get_dbs - - Get DB user
get_current_user - - Test web forms for SQLi
test_forms
Example prompts:
- "Test https://example.com/page?id=1 for SQL injection"
- "Dump database from vulnerable URL"
- "Check this form for SQL injection vulnerabilities"
可用工具(8种):
- - 测试URL是否存在SQL注入
test_url - - 提取数据库内容
dump_database - - 提取指定表
dump_table - - 枚举数据库
list_databases - - 枚举表
list_tables - - 获取数据库名称
get_dbs - - 获取数据库用户
get_current_user - - 测试Web表单是否存在SQL注入
test_forms
示例提示:
- "测试https://example.com/page?id=1是否存在SQL注入"
- "从存在漏洞的URL中导出数据库"
- "检查此表单是否存在SQL注入漏洞"
Trivy MCP (Container Security)
Trivy MCP(容器安全)
Available tools (7):
- - Scan Docker image
scan_image - - Scan local filesystem
scan_filesystem - - Scan IaC files (Terraform, K8s)
scan_config - - Scan git repository
scan_repo - - Show known CVEs
list_vulnerabilities - - Generate SBOM
get_sbom - - Scan K8s cluster
scan_kubernetes
Example prompts:
- "Scan nginx:latest for vulnerabilities"
- "Check this Dockerfile for security issues"
- "Generate SBOM for python:3.11 image"
可用工具(7种):
- - 扫描Docker镜像
scan_image - - 扫描本地文件系统
scan_filesystem - - 扫描IaC文件(Terraform、K8s)
scan_config - - 扫描Git仓库
scan_repo - - 显示已知CVE漏洞
list_vulnerabilities - - 生成软件物料清单(SBOM)
get_sbom - - 扫描K8s集群
scan_kubernetes
示例提示:
- "扫描nginx:latest镜像的漏洞"
- "检查此Dockerfile的安全问题"
- "为python:3.11镜像生成SBOM"
Common Workflows
常见工作流
Network Reconnaissance Workflow
网络侦察工作流
bash
undefinedbash
undefined1. Build reconnaissance servers
1. Build reconnaissance servers
docker-compose build nmap-mcp whatweb-mcp masscan-mcp
docker-compose build nmap-mcp whatweb-mcp masscan-mcp
2. Start services
2. Start services
docker-compose up nmap-mcp whatweb-mcp -d
docker-compose up nmap-mcp whatweb-mcp -d
3. Use in Claude
3. Use in Claude
"Scan 10.0.0.0/24 for web servers, then fingerprint each one"
"Scan 10.0.0.0/24 for web servers, then fingerprint each one"
undefinedundefinedWeb Application Security Assessment
Web应用安全评估
bash
undefinedbash
undefinedBuild web security stack
Build web security stack
docker-compose build nuclei-mcp sqlmap-mcp ffuf-mcp
docker-compose build nuclei-mcp sqlmap-mcp ffuf-mcp
Start services
Start services
docker-compose up nuclei-mcp sqlmap-mcp ffuf-mcp -d
docker-compose up nuclei-mcp sqlmap-mcp ffuf-mcp -d
In Claude:
In Claude:
"Scan example.com with nuclei, test any forms for SQL injection,
"Scan example.com with nuclei, test any forms for SQL injection,
and fuzz for hidden directories"
and fuzz for hidden directories"
undefinedundefinedBinary Analysis Pipeline
二进制分析流程
bash
undefinedbash
undefinedBuild binary analysis tools
Build binary analysis tools
docker-compose build radare2-mcp binwalk-mcp yara-mcp capa-mcp
docker-compose build radare2-mcp binwalk-mcp yara-mcp capa-mcp
Mount binaries directory
Mount binaries directory
docker-compose up radare2-mcp binwalk-mcp yara-mcp capa-mcp -d
docker-compose up radare2-mcp binwalk-mcp yara-mcp capa-mcp -d
In Claude:
In Claude:
"Analyze /samples/suspicious.exe - extract filesystem if packed,
"Analyze /samples/suspicious.exe - extract filesystem if packed,
scan for malware patterns, and identify capabilities"
scan for malware patterns, and identify capabilities"
undefinedundefinedSecrets Scanning in CI/CD
CI/CD中的密钥扫描
bash
undefinedbash
undefinedBuild gitleaks
Build gitleaks
docker-compose build gitleaks-mcp
docker-compose build gitleaks-mcp
Run as one-off scan
Run as one-off scan
docker run -i --rm
-v "$(pwd):/app/target:ro"
gitleaks-mcp:latest <<EOF { "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "scan_directory", "arguments": { "path": "/app/target" } }, "id": 1 } EOF
-v "$(pwd):/app/target:ro"
gitleaks-mcp:latest <<EOF { "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "scan_directory", "arguments": { "path": "/app/target" } }, "id": 1 } EOF
undefineddocker run -i --rm
-v "$(pwd):/app/target:ro"
gitleaks-mcp:latest <<EOF { "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "scan_directory", "arguments": { "path": "/app/target" } }, "id": 1 } EOF
-v "$(pwd):/app/target:ro"
gitleaks-mcp:latest <<EOF { "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "scan_directory", "arguments": { "path": "/app/target" } }, "id": 1 } EOF
undefinedCloud Security Audit
云安全审计
bash
undefinedbash
undefinedBuild cloud security tools
Build cloud security tools
docker-compose build trivy-mcp prowler-mcp
docker-compose build trivy-mcp prowler-mcp
Mount Docker socket for Trivy
Mount Docker socket for Trivy
docker-compose up trivy-mcp prowler-mcp -d
docker-compose up trivy-mcp prowler-mcp -d
In Claude:
In Claude:
"Scan all running containers for CVEs, then audit AWS account
"Scan all running containers for CVEs, then audit AWS account
for security misconfigurations"
for security misconfigurations"
undefinedundefinedDocker Compose Orchestration
Docker Compose编排
Start All Services
启动所有服务
bash
docker-compose up -dbash
docker-compose up -dStart Specific Category
启动指定类别服务
bash
undefinedbash
undefinedReconnaissance only
Reconnaissance only
docker-compose up nmap-mcp whatweb-mcp masscan-mcp -d
docker-compose up nmap-mcp whatweb-mcp masscan-mcp -d
Web security only
Web security only
docker-compose up nuclei-mcp sqlmap-mcp ffuf-mcp -d
undefineddocker-compose up nuclei-mcp sqlmap-mcp ffuf-mcp -d
undefinedResource Limits
资源限制
Edit to adjust resource constraints:
docker-compose.ymlyaml
services:
nmap-mcp:
image: nmap-mcp:latest
deploy:
resources:
limits:
cpus: '2.0'
memory: 1G
reservations:
cpus: '0.5'
memory: 256M编辑调整资源约束:
docker-compose.ymlyaml
services:
nmap-mcp:
image: nmap-mcp:latest
deploy:
resources:
limits:
cpus: '2.0'
memory: 1G
reservations:
cpus: '0.5'
memory: 256MHealth Monitoring
健康监控
bash
undefinedbash
undefinedCheck health status
Check health status
docker-compose ps
docker-compose ps
View logs
View logs
docker-compose logs -f nmap-mcp
docker-compose logs -f nmap-mcp
Restart unhealthy services
Restart unhealthy services
docker-compose restart nmap-mcp
undefineddocker-compose restart nmap-mcp
undefinedDevelopment
开发
Building Individual Servers
构建单个服务器
bash
cd reconnaissance/nmap-mcp
docker build -t nmap-mcp:latest .bash
cd reconnaissance/nmap-mcp
docker build -t nmap-mcp:latest .Testing MCP Server
测试MCP服务器
bash
undefinedbash
undefinedRun interactive test
Run interactive test
docker run -it --rm nmap-mcp:latest
docker run -it --rm nmap-mcp:latest
Send JSON-RPC request
Send JSON-RPC request
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' |
docker run -i --rm nmap-mcp:latest
docker run -i --rm nmap-mcp:latest
undefinedecho '{"jsonrpc":"2.0","method":"tools/list","id":1}' |
docker run -i --rm nmap-mcp:latest
docker run -i --rm nmap-mcp:latest
undefinedAdding Custom MCP Server
添加自定义MCP服务器
bash
mkdir -p custom-category/mytool-mcp
cd custom-category/mytool-mcpbash
mkdir -p custom-category/mytool-mcp
cd custom-category/mytool-mcpCreate Dockerfile
Create Dockerfile
cat > Dockerfile <<'EOF'
FROM python:3.11-slim
RUN useradd -m -u 1000 mcpuser
RUN pip install mcp mytool
USER mcpuser
WORKDIR /app
COPY server.py .
CMD ["python", "server.py"]
EOF
cat > Dockerfile <<'EOF'
FROM python:3.11-slim
RUN useradd -m -u 1000 mcpuser
RUN pip install mcp mytool
USER mcpuser
WORKDIR /app
COPY server.py .
CMD ["python", "server.py"]
EOF
Create server.py with MCP protocol implementation
Create server.py with MCP protocol implementation
Add to docker-compose.yml
Add to docker-compose.yml
undefinedundefinedSecurity Hardening
安全加固
All MCP servers follow security best practices:
dockerfile
undefined所有MCP服务器遵循安全最佳实践:
dockerfile
undefinedExample hardened Dockerfile pattern
Example hardened Dockerfile pattern
FROM alpine:3.19
RUN adduser -D -u 1000 mcpuser
RUN apk add --no-cache tool-name
USER mcpuser
WORKDIR /app
FROM alpine:3.19
RUN adduser -D -u 1000 mcpuser
RUN apk add --no-cache tool-name
USER mcpuser
WORKDIR /app
Drop all capabilities by default
Drop all capabilities by default
Add only required capabilities in docker-compose.yml
Add only required capabilities in docker-compose.yml
undefinedundefinedRequired Capabilities
所需权限
Some tools need specific Linux capabilities:
yaml
nmap-mcp:
cap_drop:
- ALL
cap_add:
- NET_RAW # Required for SYN scanning
trivy-mcp:
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # Docker scanning部分工具需要特定Linux权限:
yaml
nmap-mcp:
cap_drop:
- ALL
cap_add:
- NET_RAW # Required for SYN scanning
trivy-mcp:
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # Docker scanningRead-Only Mounts
只读挂载
Always mount target directories read-only:
yaml
gitleaks-mcp:
volumes:
- ./repos:/app/target:ro # Read-only prevents modification始终以只读方式挂载目标目录:
yaml
gitleaks-mcp:
volumes:
- ./repos:/app/target:ro # Read-only prevents modificationTroubleshooting
故障排除
MCP Server Not Responding
MCP服务器无响应
bash
undefinedbash
undefinedCheck if container is running
Check if container is running
docker ps | grep mcp
docker ps | grep mcp
View logs
View logs
docker logs nmap-mcp
docker logs nmap-mcp
Restart service
Restart service
docker-compose restart nmap-mcp
docker-compose restart nmap-mcp
Test JSON-RPC directly
Test JSON-RPC directly
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' |
docker run -i --rm nmap-mcp:latest
docker run -i --rm nmap-mcp:latest
undefinedecho '{"jsonrpc":"2.0","method":"tools/list","id":1}' |
docker run -i --rm nmap-mcp:latest
docker run -i --rm nmap-mcp:latest
undefinedPermission Denied Errors
权限拒绝错误
bash
undefinedbash
undefinedNmap requires NET_RAW capability
Nmap requires NET_RAW capability
Add to docker-compose.yml:
Add to docker-compose.yml:
cap_add:
- NET_RAW
cap_add:
- NET_RAW
Or run with --cap-add
Or run with --cap-add
docker run --cap-add=NET_RAW nmap-mcp:latest
undefineddocker run --cap-add=NET_RAW nmap-mcp:latest
undefinedVolume Mount Issues
卷挂载问题
bash
undefinedbash
undefinedEnsure absolute paths
Ensure absolute paths
docker run -v /absolute/path:/app/target:ro gitleaks-mcp
docker run -v /absolute/path:/app/target:ro gitleaks-mcp
Check permissions (container runs as UID 1000)
Check permissions (container runs as UID 1000)
chown -R 1000:1000 /path/to/repos
chown -R 1000:1000 /path/to/repos
Verify mount inside container
Verify mount inside container
docker run -it --rm -v $(pwd):/app/target:ro gitleaks-mcp sh
ls -la /app/target
undefineddocker run -it --rm -v $(pwd):/app/target:ro gitleaks-mcp sh
ls -la /app/target
undefinedClaude Desktop Not Finding MCP Servers
Claude Desktop无法找到MCP服务器
bash
undefinedbash
undefinedVerify config location
Verify config location
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Check JSON syntax
Check JSON syntax
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json | jq .
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json | jq .
Restart Claude Desktop after config changes
Restart Claude Desktop after config changes
Verify image exists
Verify image exists
docker images | grep nmap-mcp
undefineddocker images | grep nmap-mcp
undefinedAPI Key Authentication Failures
API密钥认证失败
bash
undefinedbash
undefinedVerify environment variable is set
Verify environment variable is set
echo $SHODAN_API_KEY
echo $SHODAN_API_KEY
Pass to Docker container
Pass to Docker container
docker run -e SHODAN_API_KEY=$SHODAN_API_KEY shodan-mcp
docker run -e SHODAN_API_KEY=$SHODAN_API_KEY shodan-mcp
For Claude Desktop, use full env var syntax
For Claude Desktop, use full env var syntax
{
"command": "docker",
"args": ["-e", "SHODAN_API_KEY=${SHODAN_API_KEY}", ...]
}
undefined{
"command": "docker",
"args": ["-e", "SHODAN_API_KEY=${SHODAN_API_KEY}", ...]
}
undefinedNetwork Connectivity Issues
网络连接问题
bash
undefinedbash
undefinedSome tools need host network access
Some tools need host network access
docker run --network host nmap-mcp
docker run --network host nmap-mcp
Or create custom network
Or create custom network
docker network create security-net
docker run --network security-net nmap-mcp
undefineddocker network create security-net
docker run --network security-net nmap-mcp
undefinedContainer Build Failures
容器构建失败
bash
undefinedbash
undefinedClear Docker build cache
Clear Docker build cache
docker builder prune -a
docker builder prune -a
Rebuild with no cache
Rebuild with no cache
docker-compose build --no-cache nmap-mcp
docker-compose build --no-cache nmap-mcp
Check base image availability
Check base image availability
docker pull alpine:3.19
docker pull python:3.11-slim
undefineddocker pull alpine:3.19
docker pull python:3.11-slim
undefinedAdvanced Usage
高级用法
Custom Nuclei Templates
自定义Nuclei模板
bash
undefinedbash
undefinedMount custom template directory
Mount custom template directory
docker run -i --rm
-v $(pwd)/custom-templates:/nuclei-templates:ro
nuclei-mcp:latest
-v $(pwd)/custom-templates:/nuclei-templates:ro
nuclei-mcp:latest
docker run -i --rm
-v $(pwd)/custom-templates:/nuclei-templates:ro
nuclei-mcp:latest
-v $(pwd)/custom-templates:/nuclei-templates:ro
nuclei-mcp:latest
In Claude: "Use custom nuclei templates from /nuclei-templates"
In Claude: "Use custom nuclei templates from /nuclei-templates"
undefinedundefinedMulti-Stage Binary Analysis
多阶段二进制分析
bash
undefinedbash
undefined1. Extract firmware
1. Extract firmware
docker run -v $(pwd)/firmware:/samples:ro binwalk-mcp
docker run -v $(pwd)/firmware:/samples:ro binwalk-mcp
2. Scan extracted files
2. Scan extracted files
docker run -v $(pwd)/firmware/_extracted:/samples:ro yara-mcp
docker run -v $(pwd)/firmware/_extracted:/samples:ro yara-mcp
3. Analyze suspicious binaries
3. Analyze suspicious binaries
docker run -v $(pwd)/firmware/_extracted:/samples:ro radare2-mcp
undefineddocker run -v $(pwd)/firmware/_extracted:/samples:ro radare2-mcp
undefinedAutomated Scanning Pipeline
自动化扫描流程
bash
#!/bin/bashbash
#!/bin/bashscan-pipeline.sh
scan-pipeline.sh
TARGET=$1
TARGET=$1
Network scan
Network scan
docker run --rm --cap-add=NET_RAW nmap-mcp
-A $TARGET > nmap-results.txt
-A $TARGET > nmap-results.txt
docker run --rm --cap-add=NET_RAW nmap-mcp
-A $TARGET > nmap-results.txt
-A $TARGET > nmap-results.txt
Web fingerprinting
Web fingerprinting
docker run --rm whatweb-mcp $TARGET > whatweb-results.txt
docker run --rm whatweb-mcp $TARGET > whatweb-results.txt
Vulnerability scan
Vulnerability scan
docker run --rm nuclei-mcp -u $TARGET -severity high,critical \
nuclei-results.txt
undefineddocker run --rm nuclei-mcp -u $TARGET -severity high,critical \
nuclei-results.txt
undefinedIntegration with Existing Tools
与现有工具集成
bash
undefinedbash
undefinedExport Trivy results to JSON
Export Trivy results to JSON
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock
trivy-mcp image nginx:latest -f json > trivy-report.json
trivy-mcp image nginx:latest -f json > trivy-report.json
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock
trivy-mcp image nginx:latest -f json > trivy-report.json
trivy-mcp image nginx:latest -f json > trivy-report.json
Parse and filter with jq
Parse and filter with jq
cat trivy-report.json | jq '.Results[] | select(.Vulnerabilities)'
undefinedcat trivy-report.json | jq '.Results[] | select(.Vulnerabilities)'
undefined