dns_allow_domain
Whitelist a domain to bypass block lists and resolve false positives in DNS filtering.
Instructions
Allow a domain name, bypassing any block lists. Useful for whitelisting false positives.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to allow (e.g. plex.direct) |
Implementation Reference
- src/tools/blocking.ts:85-111 (handler)The handler function for dns_allow_domain tool. It validates the domain via validateDomain, calls /api/allowed/add on the TechnitiumClient, and returns a success response.
definition: { name: "dns_allow_domain", description: "Allow a domain name, bypassing any block lists. Useful for whitelisting false positives.", inputSchema: { type: "object", properties: { domain: { type: "string", description: "Domain name to allow (e.g. plex.direct)", }, }, required: ["domain"], }, }, readonly: false, handler: async (args) => { const domain = validateDomain(args.domain as string); const data = await client.callOrThrow("/api/allowed/add", { domain, }); return JSON.stringify( { success: true, allowed: domain, ...data }, null, 2 ); }, - src/tools/blocking.ts:84-99 (schema)The input schema for dns_allow_domain, defining a required 'domain' string parameter.
{ definition: { name: "dns_allow_domain", description: "Allow a domain name, bypassing any block lists. Useful for whitelisting false positives.", inputSchema: { type: "object", properties: { domain: { type: "string", description: "Domain name to allow (e.g. plex.direct)", }, }, required: ["domain"], }, }, - src/tools/index.ts:7-7 (registration)Import of blockingTools which contains the dns_allow_domain tool.
import { blockingTools } from "./blocking.js"; - src/tools/index.ts:20-20 (registration)Spread of blockingTools into getAllTools array, registering dns_allow_domain.
...blockingTools(client), - src/rate-limit.ts:32-39 (helper)Rate limiting configuration for dns_allow_domain (mutateLimits: 10 requests per 60s window).
for (const tool of [ "dns_create_zone", "dns_add_record", "dns_update_record", "dns_block_domain", "dns_allow_domain", "dns_remove_allowed", "dns_remove_blocked", "dns_delete_cached", "dns_enable_zone", "dns_disable_zone", "dns_set_zone_options", "dns_set_settings", "dns_install_app", ]) { this.toolLimits.set(tool, mutateLimits);