Skip to main content

MCP Integration Guide

Connect 90 domain intelligence tools to any MCP-compatible AI client via Streamable HTTP at mcp.edgedns.dev/mcp

Overview

EdgeDNS provides a dedicated MCP server following the industry standard pattern used by Notion, Sentry, Stripe, and GitHub Copilot. The server exposes 90 domain intelligence tools covering DNS, email auth, TLS posture, SEO analysis, tech stack detection, performance, threat intelligence, network diagnostics, compliance, and reporting. Access is included on all plans, including the free tier.

Any client that supports the Model Context Protocol can connect directly — no SDK wrappers or format conversions needed.

Quick Start

1. Add EdgeDNS to Claude (Connectors)

The fastest way to get started — no API key, no terminal. In Claude (claude.ai or Desktop), open Settings → Connectors → Add custom connector, paste the server URL below, and sign in with Google when the EdgeDNS consent screen opens. Claude handles the rest.

Server URL: https://mcp.edgedns.dev/mcp

Works on every plan, including free.

2. Start using tools

Ask Claude to analyze a domain. It will automatically discover and call the right tools.

> Check DNS records and SSL certificate for example.com

3. Prefer a developer client?

Claude Code, Cursor, Gemini CLI and other programmatic clients authenticate with an API key instead of OAuth. Sign in to the dashboard to generate one, then connect your client:

# Claude Code
claude mcp add --transport http edgedns https://mcp.edgedns.dev/mcp \
  --header "Authorization: Bearer edns_live_YOUR_KEY"

Full setup snippets for every supported client are in Client Setup Guides below.

Client Setup Guides

Claude Code / Claude Desktop

claude mcp add --transport http edgedns https://mcp.edgedns.dev/mcp \
  --header "Authorization: Bearer edns_live_YOUR_KEY"

Gemini CLI

Add to ~/.gemini/settings.json

{
  "mcpServers": {
    "edgedns": {
      "httpUrl": "https://mcp.edgedns.dev/mcp",
      "headers": {
        "Authorization": "Bearer edns_live_YOUR_KEY"
      }
    }
  }
}

OpenAI Responses API

OpenAI calls MCP servers directly — no format conversion needed.

Python

from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="gpt-4o",
    tools=[{
        "type": "mcp",
        "server_url": "https://mcp.edgedns.dev/mcp",
        "server_label": "edgedns",
        "headers": {"Authorization": "Bearer edns_live_YOUR_KEY"},
        "require_approval": "never",
    }],
    input="Check DNS records and security headers for example.com",
)
print(response.output_text)

TypeScript

import OpenAI from 'openai';

const openai = new OpenAI();

const response = await openai.responses.create({
  model: 'gpt-4o',
  tools: [{
    type: 'mcp',
    server_url: 'https://mcp.edgedns.dev/mcp',
    server_label: 'edgedns',
    headers: { Authorization: 'Bearer edns_live_YOUR_KEY' },
    require_approval: 'never',
  }],
  input: 'Check DNS records and security headers for example.com',
});
console.log(response.output_text);

Cursor / Windsurf / Cline

These editors support MCP natively. Add the server in settings.

Server URL: https://mcp.edgedns.dev/mcp
Header: Authorization: Bearer edns_live_YOUR_KEY

.mcp.json (Shared project config)

Add to your project root to share the MCP server with your team.

{
  "mcpServers": {
    "edgedns": {
      "type": "http",
      "url": "https://mcp.edgedns.dev/mcp",
      "headers": {
        "Authorization": "Bearer edns_live_YOUR_KEY"
      }
    }
  }
}

Tool Categories

Compatible clients automatically discover all available tools via the standard tools/list method. Tools are organized by category:

DNS Records12 tools
Email Security8 tools
Website Security10 tools
SEO & Content17 tools
Tech Stack12 tools
Site Performance8 tools
Threat Intelligence7 tools
Network & IP9 tools
Compliance4 tools
Domain Reports5 tools

Rate Limits

Tool calls are rate limited per API key, matching your plan's rate limits.

PlanRate Limit
Free10 req/min
Developer100 req/sec
Pro500 req/sec
Enterprise2,000 req/sec

Authentication

All tool calls require a valid API key passed as a Bearer token in the Authorization header. Authentication is validated at two layers for defense-in-depth.

Key Formats

PrefixEnvironmentUsage
edns_live_ProductionLive API calls, counts toward usage

Validation Flow

  1. MCP Worker validates the key prefix (Bearer edns_) and rejects invalid keys with 401
  2. API Worker performs full validation: format check, hash lookup, expiry, revocation, and IP allowlist
  3. Organization tier is loaded and per-endpoint restrictions are enforced

Example Prompts

Once connected, ask your AI assistant to analyze domains. It will automatically discover and call the right tools.

> Check DNS records and email auth for example.com
> Run a full audit on example.com including SSL, HTTP headers, and vulnerabilities
> Compare the tech stacks of github.com and gitlab.com
> Check if example.com has any known threats or malware reports
> Analyze SEO performance and structured data for example.com

How It Works

The server is a dedicated Cloudflare Worker built on the official MCP SDK with Streamable HTTP transport. Each tool call dispatches to the main EdgeDNS API via a zero-latency Service Binding, reusing all existing validation, caching, and error handling.

MCP Client (Claude Code, Gemini CLI, etc.)
    |
    | Streamable HTTP (POST/GET to /mcp)
    v
mcp.edgedns.dev  ← Dedicated MCP Worker
    |
    | Service Binding (zero-latency)
    v
api.edgedns.dev  ← Main API Worker
    |
    v
Route handlers, middleware, D1, KV, R2

Troubleshooting

401Unauthorized

Your API key is missing or invalid. Ensure the Authorization header is set to "Bearer edns_live_YOUR_KEY".

403Forbidden / Tier Restricted

The tool you called requires a higher plan tier. Some tools require Developer or Pro tier access. Upgrade your plan in the dashboard.

429Rate Limited

You have exceeded your plan's rate limit. Pro allows 500 req/sec, Enterprise allows 2,000 req/sec. Wait briefly and retry.

500Server Error

An unexpected error occurred. If this persists, check the EdgeDNS status page or contact support.