Skip to main content
Glama

register_domain

Register a new domain with WHOIS contact info and Stripe billing.

The domain cost is charged to the user's active subscription. Free domain if plan includes free_domain_annual + annual billing + first domain.

Requires: API key with write scope.

Args: domain: Full domain name (e.g. "example.ca", "mybusiness.com") first_name: Registrant first name last_name: Registrant last name email: Registrant email address phone: Phone number in E.164 format: "+1.5145551234" address1: Street address (e.g. "123 Rue Principale") city: City (e.g. "Montreal") state: Province/state code (e.g. "QC", "ON", "BC") postal_code: Postal/ZIP code (e.g. "H2X 1Y4") country: ISO 3166-1 alpha-2 country code (default: "CA") period: Registration period in years (1–10, default: 1) usage_mode: What the domain points at. "site" (default) links it to the billing subscription's site with automatic DNS + Nginx + SSL. "external_ns" delegates it to nameservers — the domain is registered here but hosted elsewhere; we manage no DNS. "dns_only" keeps it on our DNS with no site behind it. "forward" redirects visitors to forward_url. nameservers: Ordered list of 2–6 nameserver hostnames. Required when usage_mode="external_ns" (e.g. ["ns1.other.com", "ns2.other.com"]) forward_url: Redirect target, required when usage_mode="forward" (e.g. "https://example.org") forward_type: "301" permanent (default) or "302" temporary forward_include_path: Append the visitor's path to the target (default: True) ca_legal_type: Required for .ca domains. CIRA legal types: "CCO" (Canadian citizen), "RES" (permanent resident), "CCT" (corporation), "GOV" (government), "EDU" (education), "ASS" (association), "HOP" (hospital), "PRT" (partnership), "TDM" (trademark), "TRD" (trade union), "PLT" (political party), "LAM" (library/archive/museum), "MAJ" (Her Majesty), "INB" (Indian band), "ABO" (Aboriginal peoples), "LGR" (legal representative)

Returns: {"domain": "example.ca", "status": "registered", "expires_at": "iso8601", "message": "Domain registered successfully"}

Errors: VALIDATION_ERROR: Missing required fields, invalid phone format, missing ca_legal_type for .ca domains NOT_FOUND: Domain not available (already registered by someone else)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityYes
emailYes
phoneYes
stateYes
domainYes
periodNo
countryNoCA
address1Yes
last_nameYes
first_nameYes
usage_modeNosite
forward_urlNo
nameserversNo
postal_codeYes
forward_typeNo301
ca_legal_typeNo
forward_include_pathNo

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses multiple behavior traits: the four usage modes (site, external_ns, dns_only, forward) with their effects (auto-DNS/Nginx/SSL, delegation, etc.), free-domain conditions, API key scope, and return/error structures. Minor gaps like idempotency or async settlement exist, but the disclosure is substantial.

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?

The description is well-structured: a front-loaded purpose sentence, then billing/requirements, then Args/Returns/Errors sections. It is long but each piece earns its place given the 17-parameter complexity and multiple usage modes. No fluff, though it stops short of a terse compact style.

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 complex tool with no output schema and no annotations, the description covers the key context: return format, error codes, billing, and all possible usage modes. It could mention edge cases (what if subscription has no site in 'site' mode) or async behavior, but it is largely complete for selecting and invoking the tool correctly.

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 must compensate. It does so thoroughly, documenting all 17 parameters with formats (e.g., E.164 phone), defaults, conditional requirements (nameservers for external_ns, forward_url for forward), and explicit enums for ca_legal_type. This adds meaning far beyond the bare schema.

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

Purpose5/5

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

The opening sentence 'Register a new domain with WHOIS contact info and Stripe billing' clearly states a specific verb and resource. It distinguishes itself from sibling tools like search_domain (availability check) and link_domain (pointing an existing domain) by focusing on the registration action.

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

Usage Guidelines3/5

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

The description provides context (requires write-scope API key, billing tied to active subscription) but does not explicitly state when to use this tool vs. alternatives like search_domain to check availability or link_domain to attach existing domains. It implies usage through the action description but lacks direct exclusions or alternative references.

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.

TDQS

A3.6/5.0
Disambiguation3/5

Several tools have overlapping boundaries, such as add_domain_dns vs manage_dns for DNS records, create_backup vs create_snapshot vs create_b2_snapshot for saved states, and write_file vs upload_file for file writing. Most tools are distinct, but these near-duplicates require agents to read descriptions carefully to avoid misselection.

Naming Consistency3/5

The naming pattern is mostly consistent verb_noun in snake_case (e.g., list_* , create_*, delete_*), but there are noticeable deviations: 'add' vs 'create' for similar operations, 'delete' vs 'remove', and outliers like manage_dns, whoami, and scale. The overall style is readable but not perfectly uniform.

Tool Count2/5

144 tools is far beyond the 'too many' threshold and would be unwieldy for agents to navigate. While the server covers a broad hosting platform with many distinct resources, the sheer number makes it difficult for each tool to earn its place, and many are simple list/get variants that could be consolidated.

Completeness4/5

The tool surface is remarkably comprehensive, covering site lifecycle, domains/DNS, compute instances/volumes, backups/snapshots, file management, databases, WordPress administration, email, security, monitoring, billing, webhooks, and support. A notable gap is the lack of a direct list_sites tool—agents must infer site slugs from list_subscriptions—but overall the domain is well covered.