Skip to main content
Glama

Connect a domain

add_domain

Connects the user's own domain to a site (owner; paid plans; www is easiest): returns the DNS records, a one-click apply_url when the DNS host supports it, and share_url for whoever runs the DNS; again: its status. claim: true proves a reserved domain or one another account holds by a TXT record.

Input Schema

NameRequiredDescriptionDefault
siteYes
claimNotrue: prove a reserved domain or one another account holds with a DNS TXT record; call again to check
domainNoSame as hostname
hostnameNoThe domain, e.g. www.example.com (no https://)
confirm_rootNotrue: the root domain anyway (not www)

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / claim
      Added value: +{
      +  "description": "true: prove a reserved domain or one another account holds with a DNS TXT record; call again to check",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / confirm_root / description
      Previous value: -"true: connect a root domain anyway (after add_domain recommended www)"New value: +"true: the root domain anyway (not www)"
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • removedInput schema / properties / confirm_token
      Removed value: -{
      -  "description": "After the user's yes (hostname optional then)",
      -  "type": "string"
      -}
  5. Changed1 schema field changed
    • removedInput schema / properties / site / description
      Removed value: -"Site name"
  6. Changed4 schema fields changed
    • changedInput schema / properties / confirm_root / description
      Previous value: -"true: connect a root domain (example.com) anyway, after add_domain recommended www"New value: +"true: connect a root domain anyway (after add_domain recommended www)"
    • changedInput schema / properties / confirm_token / description
      Previous value: -"From the first call, once the user said yes (hostname may then be left out)"New value: +"After the user's yes (hostname optional then)"
    • changedInput schema / properties / site / description
      Previous value: -"Site name, e.g. brave-otter-4821"New value: +"Site name"
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": {},
      -  "properties": {
      -    "agent_message": {
      -      "type": "string"
      -    },
      -    "confirm_token": {
      -      "type": "string"
      -    },
      -    "error": {
      -      "description": "On failure (isError): {code, message}"
      -    }
      -  },
      -  "type": "object"
      -}New value: +null
  7. Changed1 schema field changed
    • changedInput schema / properties / confirm_token / description
      Previous value: -"From the first call, once the user said yes"New value: +"From the first call, once the user said yes (hostname may then be left out)"
  8. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Goes well beyond the annotations by disclosing what the call produces (DNS records, one-click apply_url, share_url for the DNS operator) and the re-call-to-check-status pattern, which is consistent with idempotentHint=false. It also surfaces the owner/paid-plan precondition and the claim workflow. Missing only failure modes (what happens on an unverified or conflicting domain).

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

Conciseness3/5

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

The purpose is front-loaded, which is good, but the body is a dense semicolon chain with terse fragments like "again: its status" and "claim: true proves..." that read like notes rather than prose. Every clause carries information, but the structure makes it harder to parse than necessary.

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?

With an output schema present, return values needn't be spelled out, yet the description helpfully names the key artifacts (DNS records, apply_url, share_url). Prerequisites, the www default and the claim loop are all covered. A brief note on failure/conflict behavior would make it complete.

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

Parameters3/5

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

Schema coverage is 80%, so the schema already documents claim, hostname, domain and confirm_root; the description restates the claim semantics and hints at the www-vs-root choice. It adds no clarification of the domain/hostname duplication or of confirm_root specifically, so it neither compensates for nor meaningfully exceeds the schema.

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?

Opens with a specific verb+resource: "Connects the user's own domain to a site." The parenthetical adds scope (owner, paid plans, www is easiest), making the action distinguishable from remove_domain or get_domains. It stops short of explicitly naming the sibling tools, so it's clear but not maximally differentiating.

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?

Gives real usage context: only the site owner can do this, it requires a paid plan, and www is the easiest hostname form. The claim=true branch is scoped to reserved domains or domains held by another account. There are no explicit exclusions or named alternatives (e.g. use get_domains to inspect first), which keeps it below a 5.

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