dns_lookup
DNS record lookup (A, AAAA, CNAME, MX, TXT, NS)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Narrow to a single record type. Omit to get all 6 at once. | |
| domain | Yes |
DNS record lookup (A, AAAA, CNAME, MX, TXT, NS)
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Narrow to a single record type. Omit to get all 6 at once. | |
| domain | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it only names the record types. It says nothing about read-only nature, lookup timeouts, NXDOMAIN/error behavior, or whether queries are logged or rate-limited — meaningful gaps for a network-query tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded line with no filler, and the record-type list is placed where it is most useful. It is terse to the point of under-informing, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain what a result looks like (per-record-type values, multiple answers, empty results) and basic failure behavior. It provides only the subject matter, leaving the agent to guess at response shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%, and the covered parameter ('type') already explains the omit-for-all behavior. The description's enumeration of the six record types adds useful meaning to the un-enumerated 'type' field, but the required 'domain' parameter has an empty schema description that the description never compensates for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('DNS record lookup') and enumerates the supported record types, so the agent knows exactly what it retrieves. It does not, however, distinguish it from adjacent siblings such as whois_lookup or subdomains, which a fully differentiated description would do.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus whois_lookup, subdomains, or ip. No prerequisites, rate limits, or conditions are mentioned; the agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.