mcp-dnstwist

mcp-dnstwist

A Model Context Protocol (MCP) server for dnstwist, a powerful DNS fuzzing tool that helps detect typosquatting, phishing, and corporate espionage.

BurtTheCoder

Category.security-and-iam
Visit Server

README

DNStwist MCP Server

smithery badge

A Model Context Protocol (MCP) server for dnstwist, a powerful DNS fuzzing tool that helps detect typosquatting, phishing, and corporate espionage. This server provides tools for analyzing domain permutations and identifying potentially malicious domains. It is designed to integrate seamlessly with MCP-compatible applications like Claude Desktop.

<a href="https://glama.ai/mcp/servers/it7izu3ufb"><img width="380" height="200" src="https://glama.ai/mcp/servers/it7izu3ufb/badge" alt="mcp-dnstwist MCP server" /></a>

⚠️ Warning

This tool is designed for legitimate security research purposes. Please:

  • Only analyze domains you own or have permission to test
  • Respect rate limits and DNS server policies
  • Use responsibly and ethically
  • Be aware that some DNS servers may rate-limit or block automated queries
  • Consider the impact on DNS infrastructure when running large scans

Requirements

  • Node.js (v18 or later)
  • Docker
  • macOS, Linux, or Windows with Docker Desktop installed

Quick Start

Installing via Smithery

To install DNStwist for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @burtthecoder/mcp-dnstwist --client claude

Installing Manually

  1. Install Docker:

  2. Install the server globally via npm:

npm install -g mcp-dnstwist
  1. Add to your Claude Desktop configuration file:
{
  "mcpServers": {
    "dnstwist": {
      "command": "mcp-dnstwist"
    }
  }
}

Configuration file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  1. Restart Claude Desktop

Alternative Setup (From Source)

If you prefer to run from source or need to modify the code:

  1. Clone and build:
git clone <repository_url>
cd mcp-dnstwist
npm install
npm run build
  1. Add to your Claude Desktop configuration:
{
  "mcpServers": {
    "dnstwist": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-dnstwist/build/index.js"]
    }
  }
}

Features

  • Domain Fuzzing: Generate domain permutations using various algorithms
  • Registration Check: Verify if permutated domains are registered
  • DNS Analysis: Check A, AAAA, MX, and NS records
  • Web Presence: Capture HTTP banner information
  • WHOIS Data: Retrieve registration dates and registrar information
  • Phishing Detection: Generate fuzzy hashes of web pages
  • Configurable: Custom DNS servers and parallel processing
  • Multiple Formats: Support for json, csv, and list output formats

Tools

Domain Fuzzing Tool

  • Name: fuzz_domain
  • Description: Generate and analyze domain permutations to detect potential typosquatting, phishing, and brand impersonation
  • Parameters:
    • domain (required): Domain name to analyze (e.g., example.com)
    • nameservers (optional, default: "1.1.1.1"): Comma-separated list of DNS servers
    • threads (optional, default: 50): Number of threads for parallel processing
    • format (optional, default: "json"): Output format (json, csv, list)
    • registered_only (optional, default: true): Show only registered domains
    • mxcheck (optional, default: true): Check for MX records
    • ssdeep (optional, default: false): Generate fuzzy hashes of web pages
    • banners (optional, default: true): Capture HTTP banner information

Example:

{
  "domain": "example.com",
  "nameservers": "1.1.1.1,8.8.8.8",
  "threads": 50,
  "format": "json",
  "registered_only": true,
  "mxcheck": true,
  "banners": true
}

Troubleshooting

Docker Issues

  1. Verify Docker is installed and running:
docker --version
docker ps
  1. Check Docker permissions:
    • Ensure your user has permissions to run Docker commands
    • On Linux, add your user to the docker group: sudo usermod -aG docker $USER

Common Issues

  1. DNS resolution problems:

    • Verify DNS servers are accessible
    • Try alternative DNS servers (e.g., 8.8.8.8)
    • Check for rate limiting or blocking
  2. Performance issues:

    • Adjust thread count based on system capabilities
    • Consider network bandwidth and latency
    • Monitor DNS server response times
  3. After fixing any issues:

    • Save the configuration file
    • Restart Claude Desktop

Error Messages

  • "Docker is not installed or not running": Install Docker and start the Docker daemon
  • "Failed to parse dnstwist output": Check if the domain is valid and the format is correct
  • "Error executing dnstwist": Check Docker logs and ensure proper permissions
  • "DNS server not responding": Verify DNS server accessibility and try alternative servers

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Recommended Servers

VirusTotal MCP Server

VirusTotal MCP Server

A MCP server for querying the VirusTotal API. This server provides tools for scanning URLs, analyzing file hashes, and retrieving IP address reports.

Featured
TypeScript
mcp-shodan

mcp-shodan

MCP server for querying the Shodan API and Shodan CVEDB. This server provides tools for IP lookups, device searches, DNS lookups, vulnerability queries, CPE lookups, and more.

Featured
JavaScript
Azure MCP Server

Azure MCP Server

Enables natural language interaction with Azure services through Claude Desktop, supporting resource management, subscription handling, and tenant selection with secure authentication.

Official
Local
TypeScript
Story SDK MCP Server

Story SDK MCP Server

An MCP server for the Story SDK and Storyscan Block Explorer - piplabs/story-mcp-hub

Official
Python
MCP EVM Signer

MCP EVM Signer

A server that securely manages Ethereum private keys locally and enables Claude for Desktop to interact with EVM-compatible blockchains through Infura.

Local
TypeScript
Cryptocurrency Daemon MCP Server

Cryptocurrency Daemon MCP Server

Enables secure interactions with cryptocurrency daemon RPC interfaces through AI assistants, supporting transaction management, wallet operations, and daemon monitoring for Bitcoin-derived cryptocurrencies.

Local
TypeScript
MCP Server Semgrep

MCP Server Semgrep

A Model Context Protocol compliant server that integrates Semgrep static analysis tool with AI assistants like Anthropic Claude, enabling advanced code analysis, security vulnerability detection, and code quality improvements through a conversational interface.

Local
TypeScript
MCP Terminal Server

MCP Terminal Server

A secure terminal execution server that enables controlled command execution with security features and resource limits via the Model Context Protocol (MCP).

Local
JavaScript
Code Sandbox MCP

Code Sandbox MCP

An MCP server to create secure code sandbox environment for executing code within Docker containers.

Local
Go
Github-Oauth MCP Server

Github-Oauth MCP Server

Facilitates authentication with GitHub using OAuth protocol, allowing secure access and interaction with GitHub repositories and services.

Local
Python