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
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DNS MCP Serverlookup A records for google.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@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
npm install -g @cenemiljezweb/dns-mcp-serverNPX (no install needed)
npx @cenemiljezweb/dns-mcp-serverRelated 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):
{
"mcpServers": {
"dns-server": {
"command": "npx",
"args": ["@cenemiljezweb/dns-mcp-server"],
"env": {}
}
}
}Or if installed globally:
{
"mcpServers": {
"dns-server": {
"command": "mcp-dns-server",
"args": [],
"env": {}
}
}
}Configuration
The server can be configured using a dns-config.json file in your working directory:
{
"dns": {
"servers": ["8.8.8.8", "8.8.4.4", "1.1.1.1", "1.0.0.1"],
"timeout": 5000,
"retries": 2,
"useTCP": false
},
"cache": {
"enabled": true,
"ttl": 300,
"maxSize": 1000
},
"logging": {
"level": "info",
"file": "dns-server.log"
}
}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:
{
"domain": "example.com",
"recordType": "A"
}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:
{
"ipAddress": "8.8.8.8"
}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:
{
"queries": [
{"domain": "example.com", "recordTypes": ["A", "MX"]},
{"domain": "google.com", "recordTypes": ["A", "AAAA"]}
],
"parallel": true
}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:
{
"domain": "example.com",
"recordType": "A"
}Development
Local Development
# Clone the repository
git clone https://github.com/yourusername/mcp-dns-server.git
cd mcp-dns-server
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build the project
npm run build
# Run tests
npm testScripts
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.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.