Skip to content
VS Code

Hetzner DNS for VS Code

io.github.ni-c/hetzner-dns-mcp

Manage DNS zones and records (zonefiles, RRSets, TTL, protection) via the Hetzner Cloud API

client:VS Code transport:stdio runtime:npm

Install Hetzner DNS in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "hetzner-api-token",
      "description": "HETZNER_API_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hetzner-read-only",
      "description": "HETZNER_READ_ONLY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hetzner-allow-tools",
      "description": "HETZNER_ALLOW_TOOLS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hetzner-deny-tools",
      "description": "HETZNER_DENY_TOOLS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hetzner-api-base-url",
      "description": "HETZNER_API_BASE_URL",
      "password": true
    }
  ],
  "servers": {
    "hetzner-dns-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "hetzner-dns-mcp"
      ],
      "env": {
        "HETZNER_API_TOKEN": "${input:hetzner-api-token}",
        "HETZNER_READ_ONLY": "${input:hetzner-read-only}",
        "HETZNER_ALLOW_TOOLS": "${input:hetzner-allow-tools}",
        "HETZNER_DENY_TOOLS": "${input:hetzner-deny-tools}",
        "HETZNER_API_BASE_URL": "${input:hetzner-api-base-url}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

Hetzner DNS in other clients