OnlyDNS MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ONLYDNS_API_TOKEN | Yes | Your OnlyDNS API Bearer Token (Required) | |
| ONLYDNS_API_BASE_URL | No | OnlyDNS REST API base URL | https://api.onlydns.com/v1 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_domainsB | List all DNS domains managed in the OnlyDNS account. |
| create_domainC | Create/add a new DNS zone/domain under the OnlyDNS account. |
| list_recordsA | List all DNS records for a domain, with optional filtering by record type (A, AAAA, CNAME, MX, TXT, etc.) or hostname. |
| add_recordA | Add a DNS record to a domain. Accepts relative hostnames (e.g. "testing"), domain-qualified names (e.g. "testing.example.com"), or canonical FQDNs (e.g. "testing.example.com."). If a record with the same name and type already exists, the new value is appended to the record set. |
| update_recordA | Update an existing DNS record set for a given name and type, completely replacing its values and/or TTL. Accepts relative names (e.g. "testing"), domain-qualified names (e.g. "testing.example.com"), or canonical FQDNs (e.g. "testing.example.com."). |
| delete_recordB | Delete a DNS record or specific value from a domain. Accepts relative names (e.g. "testing"), domain-qualified names (e.g. "testing.example.com"), or canonical FQDNs (e.g. "testing.example.com."). |
| set_recordsA | Completely replace ALL DNS records in a zone with a new list of records. Warning: destructive if omitted records are intended to be preserved. |
| get_dnssecB | Get DNSSEC configuration status, NSEC3 parameters, and DS / DNSKEY keys for a domain. |
| enable_dnssecC | Enable DNSSEC signing for a domain in OnlyDNS. |
| disable_dnssecB | Disable DNSSEC signing and remove DNSSEC keys for a domain in OnlyDNS. |
| list_tsig_keysB | List all TSIG keys configured for the OnlyDNS account. |
| get_tsig_keyC | Get details for a specific TSIG key by name. |
| create_tsig_keyB | Generate a new TSIG key for secondary DNS transfers (AXFR) or dynamic DNS updates. |
| get_domain_tsigA | Get TSIG keys and permissions (AXFR transfers, dynamic DNS updates, subdomain restrictions) configured for a domain. |
| configure_domain_tsigC | Attach and configure TSIG permissions (AXFR transfer / dynamic DNS updates / subdomain restrictions) for a domain. |
| remove_domain_tsigB | Remove all TSIG keys associated with a domain. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Record tools (list/add/update/delete/set_records) are mostly distinct, and the destructive nature of set_records is explicitly flagged. Minor overlap exists between get_domain_tsig (per-domain key permissions) and get_tsig_key (key by name), and between update_record and set_records, but descriptions clarify the boundaries.
All 16 tools follow a consistent snake_case verb_noun pattern (create_domain, list_records, add_record, enable_dnssec, list_tsig_keys). No mixing of camelCase or vague verbs anywhere in the set.
16 tools is slightly on the heavy side but justified by three sub-domains (zones, records, TSIG/DNSSEC). Each tool maps to a real operation, though a few TSIG getters could potentially be consolidated.
Records have full lifecycle coverage (list/add/update/delete/set) and DNSSEC/TSIG are well covered, but there is no delete_domain or update-domain operation, leaving zone management without a delete path. Agents cannot remove a domain, which is a notable gap.