mcp_recon
A comprehensive Model Context Protocol (MCP) server for web security reconnaissance and analysis.
Documentation
MCP Recon
A comprehensive Model Context Protocol (MCP) server for web security reconnaissance and analysis. This toolkit provides cybersecurity professionals with essential reconnaissance capabilities through Python-native implementations, following the standard cybersecurity reconnaissance methodology.
๐ Features
๐ 1. Information Gathering (Passive Reconnaissance)
- WHOIS Information: Domain registration and ownership details
- Domain History: Reputation and historical data analysis
๐ 2. DNS Analysis (Infrastructure Discovery)
- DNS Records Lookup: Comprehensive DNS enumeration (A, AAAA, MX, NS, TXT, SPF, DMARC)
- Reverse DNS Lookup: IP to hostname resolution
- Passive Subdomain Enumeration: Certificate Transparency logs discovery via crt.sh (stealth)
- Active Subdomain Enumeration: DNS brute-force discovery using wordlist from subdomains.txt
๐ 3. Network Reconnaissance (Active Scanning)
- IP Information: Geolocation, ISP, and network details
- Alive Check: HTTP/HTTPS connectivity testing with response analysis
- Port Scanning: Advanced Nmap integration with multiple scan modes
๐ 4. Web Application Analysis (Application Layer)
- TLS Certificate Analysis: SSL/TLS certificate inspection and validation
- HTTP Headers Analysis: Security headers assessment and information disclosure detection
- Technology Detection: Web framework and technology fingerprinting
- URL Extraction: Web crawling and link discovery

๐ Installation
Prerequisites
- Python 3.10+
- UV Package Manager (automatically installed by script)
- Nmap (automatically installed by script)
Quick Installation
Windows (PowerShell)
.\install.ps1Linux/macOS
chmod +x install.sh
./install.shClaude Desktop Configuration
Add this configuration to your Claude Desktop settings to connect the MCP Web Reconnaissance Server:
Windows Configuration
{
"mcpServers": {
"recon": {
"command": "C:\\Users\\YOUR_USERNAME\\.local\\bin\\uv.exe",
"args": [
"--directory",
"C:\\Users\\YOUR_USERNAME\\path\\to\\MCP_Recon",
"run",
"python",
"main.py"
]
}
}
}Linux/macOS Configuration
{
"mcpServers": {
"recon": {
"command": "/home/YOUR_USERNAME/.local/bin/uv",
"args": [
"--directory",
"/home/YOUR_USERNAME/path/to/MCP_Recon",
"run",
"python",
"main.py"
]
}
}
}Replace the following placeholders:
- `YOUR_USERNAME` with your actual username
- `path/to/MCP_Recon` with the actual path to your cloned repository
Configuration file locations:
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Linux: `~/.config/Claude/claude_desktop_config.json`

๐ Usage
Available Tools (Following Reconnaissance Methodology)
1. Information Gathering (Passive Reconnaissance)
- `whois_info` - Get WHOIS information
- `domain_history` - Check domain reputation and history
2. DNS Analysis (Infrastructure Discovery)
- `dns_records` - Get all DNS records for a domain
- `reverse_dns` - Perform reverse DNS lookup
- `subdomain_enum_passive` - Passive subdomain discovery via Certificate Transparency (crt.sh)
- `subdomain_enum_active` - Active subdomain enumeration using DNS brute force
3. Network Reconnaissance (Active Scanning)
- `ip_information` - Get comprehensive IP information
- `check_alive` - Check if hosts respond via HTTP/HTTPS
- `port_scan` - Advanced port scanning with Nmap
4. Web Application Analysis (Application Layer)
- `tls_certificate` - Analyze TLS certificates
- `http_headers` - Analyze HTTP security headers
- `detect_technologies` - Detect web technologies
- `extract_urls` - Extract URLs from web pages

๐ง Configuration
Custom User-Agent
For bug bounty programs requiring specific identification, HTTP-based tools support an optional `user_agent` parameter. When provided, it replaces the default User-Agent for all HTTP requests to the target.
Examples:
# Default User-Agent
http_headers("https://example.com")
# Custom User-Agent for bug bounty programs
http_headers("https://example.com", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 bug-bounty")Tools supporting custom User-Agent:
- `http_headers` - HTTP headers analysis
- `detect_technologies` - Technology fingerprinting
- `extract_urls` - URL extraction/crawling
- `check_alive` - Host connectivity check

๐ง Wordlists
Subdomain Wordlist Customization
You can customize subdomain enumeration in two ways:
1. Edit the wordlist file
Modify the `subdomains.txt` file in the project root to add/remove subdomains:
www
api
admin
test
dev
staging
# Add your custom subdomains here2. Provide custom wordlist in Claude Desktop chat
Port Scanning Options
The port scanner supports various modes optimized for different scenarios:
- `"common"`: Common services (21,22,23,25,53,80,443,etc.)
- `"top100"`: Top 100 most common ports (recommended for initial reconnaissance)
- `"top1000"`: Top 1000 ports (comprehensive discovery)
- `"80,443,8080"`: Specific ports (targeted scanning)
- `"1-1000"`: Port range (internal network scanning)

๐ Architecture
Project Structure
mcp-recon/
โโโ main.py # MCP server entry point with organized tool categories
โโโ subdomains.txt # Default subdomain wordlist (customizable)
โโโ tools/
โ โโโ info_tools.py # Information gathering utilities (WHOIS, domain history)
โ โโโ dns_tools.py # DNS and domain reconnaissance
โ โโโ network_tools.py # Network scanning and analysis
โ โโโ web_tools.py # Web application analysis
โโโ install.ps1 # Windows installation script
โโโ install.sh # Linux/macOS installation script
โโโ pyproject.toml # Python project configuration
โโโ README.md # This documentation
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.

โ ๏ธ Disclaimer
This tool is intended for legitimate security research, penetration testing, and bug bounty activities only. Users are responsible for ensuring they have proper authorization before scanning or testing any networks, systems, or applications. The authors are not responsible for any misuse of this tool.
Always follow responsible disclosure practices and respect scope limitations in bug bounty programs.
Frequently asked questions
What is mcp_recon?
mcp_recon is A comprehensive Model Context Protocol (MCP) server for web security reconnaissance and analysis.
How do I install mcp_recon?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp_recon open source?
Yes โ it is hosted on GitHub at https://github.com/sundayz-hunter/MCP_Recon and has 4 stars.
Related MCP tools
๐ OpenHands: Code Less, Make More for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
Universal memory layer for AI Agents; Announcing OpenMemory MCP - local and secure memory management. Python-based implementation.
ๅบไบๅคงๆจกๅๆญๅปบ็่ๅคฉๆบๅจไบบ๏ผๅๆถๆฏๆ ๅพฎไฟกๅ ฌไผๅทใไผไธๅพฎไฟกๅบ็จใ้ฃไนฆใ้้ ็ญๆฅๅ ฅ๏ผๅฏ้ๆฉChatGPT/Claude/DeepSeek/ๆๅฟไธ่จ/่ฎฏ้ฃๆ็ซ/้ไนๅ้ฎ/ Gemini/GLM-4/Kimi/LinkAI๏ผ่ฝๅค็ๆๆฌใ่ฏญ้ณๅๅพ็๏ผ่ฎฟ้ฎๆไฝ็ณป็ปๅไบ่็ฝ๏ผๆฏๆๅบไบ่ชๆ็ฅ่ฏๅบ่ฟ่กๅฎๅถไผไธๆบ่ฝๅฎขๆใ
An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to
๐ The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.
๐ฅ MaxKB is an open-source platform for building enterprise-grade agents. MaxKB ๆฏๅผบๅคงๆ็จ็ๅผๆบไผไธ็บงๆบ่ฝไฝๅนณๅฐใ for the Model Context Protocol. Enhance AI assistants with po
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP