push_domain
Transfer a domain to another Dynadot account by specifying the recipient's username and domain name. Unlock the domain if needed before completing the push process.
Instructions
Push (transfer) a domain to another Dynadot account by username.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Domain name to push | |
| receiver | Yes | Recipient's Dynadot push username | |
| unlock | No | Unlock the domain before pushing (if locked) |
Implementation Reference
- src/services/dynadot-client.ts:190-194 (handler)The Dynadot API client implementation of the push_domain logic.
async pushDomain(domain: string, receiver: string, unlockForPush?: boolean): Promise<DynadotResponse> { const params: Record<string, string> = { domain, receiver_push_username: receiver }; if (unlockForPush) params.unlock_domain_for_push = "1"; return this.call("push", params); } - src/tools/domain.ts:308-339 (registration)The MCP tool registration and handler implementation for "push_domain".
// ─── push_domain ────────────────────────────────────────────── server.tool( "push_domain", "Push (transfer) a domain to another Dynadot account by username.", { domain: z.string().describe("Domain name to push"), receiver: z.string().describe("Recipient's Dynadot push username"), unlock: z .boolean() .optional() .describe("Unlock the domain before pushing (if locked)"), }, async ({ domain, receiver, unlock }) => { try { const result = await client.pushDomain(domain, receiver, unlock); return { content: [ { type: "text" as const, text: JSON.stringify(result, null, 2) }, ], }; } catch (error) { const msg = error instanceof Error ? error.message : String(error); return { content: [ { type: "text" as const, text: `Domain push failed: ${msg}` }, ], isError: true, }; } } );