verify_domain
Re-check a domain's DNS records and mark it verified if they resolve. Safe to retry — DNS propagation can take up to 48 hours.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain_id | Yes | Domain ID returned by add_domain |
Re-check a domain's DNS records and mark it verified if they resolve. Safe to retry — DNS propagation can take up to 48 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| domain_id | Yes | Domain ID returned by add_domain |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond annotations: it mentions the 'mark it verified' side effect (consistent with readOnlyHint=false) and explains that retries are safe due to DNS propagation. This complements the idempotentHint=true annotation without contradicting any annotation.
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?
The description is two sentences long, front-loaded with the core purpose, and every sentence adds value. It efficiently conveys the action, condition, and retry guidance without any waste.
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?
Given the simple nature of the tool (one parameter, clear annotations, no output schema), the description is nearly complete. It explains what happens on success ('mark it verified') and the retry rationale, though it does not detail the behavior when DNS does not resolve. This is a minor gap for a tool of this complexity.
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?
The schema fully documents the only parameter (domain_id) with a clear description ('Domain ID returned by add_domain'). The tool description does not add additional meaning beyond the schema, so the baseline 3 applies.
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?
The description clearly states the action ('Re-check a domain's DNS records'), the resource (domain's DNS records), and the outcome ('mark it verified if they resolve'). It differentiates from siblings like add_domain (domain creation) and check_dmarc (DMARC-specific check) by focusing on domain verification.
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?
The description provides clear context for when to use the tool: re-checking DNS records after a domain has been added, with a note on DNS propagation time. It implies this is a follow-up to add_domain but does not explicitly name alternatives or exclusions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most tools are cleanly separated by resource and action, and the descriptions do a good job of cross-referencing related tools. However, there are several close clusters—get_analytics vs generate_report, get_deliverability_score vs run_deliverability_audit, check_dmarc vs verify_domain, and list_emails vs list_inbox_conversations vs get_email—that could cause an agent to pick the wrong one. The detailed descriptions reduce but do not eliminate this ambiguity.
Tool names follow a consistent snake_case verb_noun pattern throughout: create_, get_, list_, send_, toggle_, and so on. Even multi-word actions like select_ab_test_winner and categorize_inbox_emails stay uniform. The only slight deviation is the bare verb upgrade, but it is readable and does not break the overall pattern.
54 tools is far beyond the typical well-scoped MCP surface and lands heavily in the 'too many' range. While the domain is broad, many tools could be consolidated—multiple analytics/reporting tools, several deliverability checks, and separate email/inbox listing tools create redundancy. The sheer number increases selection overhead and makes the toolset harder for an agent to navigate reliably.
The core email marketing lifecycle is represented: domains, contacts, campaigns, templates, automations, sends, and analytics all have main operations. However, there are notable gaps—no update/delete for campaigns, templates, forms, or automations; no create/update/delete for forms; no sandbox enable/disable; and no way to install marketplace items. These are workable gaps but would cause failures for agents trying to perform full lifecycle management.