Provides DNS lookup capabilities using 1.1.1.1 as a configurable DNS server option for domain resolution queries
Provides DNS lookup capabilities using Cloudflare's DNS servers as a configurable option for domain resolution queries
Provides DNS lookup capabilities using Google's DNS servers (8.8.8.8, 8.8.4.4) as configurable options for domain resolution queries
@cenemiljezweb/dns-mcp-server
A TypeScript-based Model Context Protocol (MCP) server that provides comprehensive DNS lookup capabilities to AI assistants.
Installation
NPM Global Install
NPX (no install needed)
Related MCP server: Domain Tools MCP Server
Features
Multiple DNS Record Types: Support for A, AAAA, CNAME, MX, TXT, NS, SOA, PTR, SRV, and CAA records
Reverse DNS Lookups: Convert IP addresses back to hostnames
Batch Queries: Perform multiple DNS lookups in parallel or sequentially
DNS Trace: Trace the DNS resolution path from root servers to final result
Configurable DNS Servers: Use custom DNS servers (Google, Cloudflare, or your own)
Logging: Comprehensive logging with configurable levels
Error Handling: Robust error handling with detailed error messages
Quick Start
Using with Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
Or if installed globally:
Configuration
The server can be configured using a dns-config.json file in your working directory:
MCP Tools Available
1. dns_lookup
Perform DNS lookup for a domain to retrieve various record types.
Parameters:
domain(required): The domain name to lookuprecordType: Type of DNS record (A, AAAA, CNAME, MX, TXT, NS, SOA, PTR, SRV, CAA)useCustomServer: Use custom DNS server if configuredtimeout: Query timeout in milliseconds
Example:
2. reverse_dns
Perform reverse DNS lookup to find the hostname for an IP address.
Parameters:
ipAddress(required): The IP address to perform reverse lookup ontimeout: Query timeout in milliseconds
Example:
3. batch_dns
Perform multiple DNS lookups in a single operation.
Parameters:
queries(required): Array of DNS queries to performdomain: Domain namerecordTypes: Array of record types to query
parallel: Execute queries in parallel (default: true)timeout: Query timeout per request
Example:
4. dns_trace
Trace the DNS resolution path from root servers to the final result.
Parameters:
domain(required): The domain to trace DNS resolution pathrecordType: The record type to trace (default: A)
Example:
Development
Local Development
Scripts
npm run build- Compile TypeScript to JavaScriptnpm run dev- Run in development mode with hot reloadnpm start- Run the compiled servernpm test- Run unit testsnpm run lint- Run ESLintnpm run typecheck- Run TypeScript type checking
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT
Author
MCP DNS Server Contributors
Support
For issues and feature requests, please visit the GitHub repository.