Skip to main content
Glama

Edit a DNS record

dns_edit
Destructive

One record change in a zone we serve, inside the website editor rails. op add needs record.type (A, AAAA, CNAME, MX, TXT, SRV, CAA), name (the subdomain, empty for the apex), target and optional ttl (default 300), priority (MX, SRV), weight, port, service, protocol (SRV), tag (CAA). op replace needs record.id plus the full record; op delete needs record.id. Managed records are refused; invalid-record carries the field and the reason.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "domainId": "<domainId>",
      "op": "<op>",
      "record": "<record>"
    },
    "name": "dns_edit"
  }
}

Input Schema

NameRequiredDescriptionDefault
opYes
recordYes
domainIdYes

Output Schema

NameRequiredDescriptionDefault
okYes
dataNo
errorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, and the description adds meaningful context beyond that: managed records are refused, and the invalid-record error carries the field and the reason. It also fixes the ttl default at 300, which is a concrete behavioral fact not present in the schema. It does not address permissions, reversibility of delete, or whether replace is atomic.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but front-loaded: the op contract comes first, then per-op requirements, then error behavior. Nearly every clause carries information an agent needs (allowed types, apex convention, ttl default, refusal rule). Slightly compressed prose ('inside the website editor rails') costs a little readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive mutation tool with a nested record object and an output schema, the description covers op semantics, field applicability, defaults, and the failure mode. Gaps are permissions/preconditions and what 'managed records are refused' means operationally, but nothing essential to invoking it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden and largely does: it enumerates the allowed record.type values, explains name as 'the subdomain, empty for the apex', and maps priority/weight/port/service/protocol/tag to the record types that use them. It also states the per-op required fields (id for replace/delete, full record for replace). Only domainId is left implicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'One record change in a zone we serve', with the three supported ops (add/replace/delete) spelled out. An agent immediately knows this mutates DNS records, and the contrast with list_dns / search_domain is obvious from the scope wording. It stops short of naming a sibling explicitly for inspection-first workflows.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly routes by op: add needs type/name/target (+optional ttl, priority, weight, port, service, protocol, tag), replace needs record.id plus the full record, delete needs only record.id. That is real when-to-use-each guidance within the tool. No guidance about doing a list_dns first or handling managed zones beyond 'refused'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources