zora_update_payout_recipient
Change the payout recipient address for creator earnings on Zora Coins. Requires owner wallet authorization to update the address receiving earnings.
Instructions
Change the payout recipient address (creator earnings). Requires owner wallet.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | ||
| newPayoutRecipient | Yes |
Implementation Reference
- src/index.ts:421-429 (handler)The handler function validates wallet presence, invokes CoinsSDK.updatePayoutRecipient to perform the update on the blockchain, and formats the transaction result as MCP content.async ({ coin, newPayoutRecipient }) => { ensureWallet(); const result = await CoinsSDK.updatePayoutRecipient( { coin: coin as any, newPayoutRecipient: newPayoutRecipient as any }, walletClient!, publicClient ); return { content: [{ type: "text", text: json(result) }] }; }
- src/index.ts:417-419 (schema)Zod input schema requiring 'coin' (contract address) and 'newPayoutRecipient' (new recipient address) as non-empty strings.coin: z.string().min(1), newPayoutRecipient: z.string().min(1), },
- src/index.ts:410-430 (registration)Registers the tool with McpServer, providing name, metadata (title, description, inputSchema), and the execution handler.server.registerTool( "zora_update_payout_recipient", { title: "Update payout recipient", description: "Change the payout recipient address (creator earnings). Requires owner wallet.", inputSchema: { coin: z.string().min(1), newPayoutRecipient: z.string().min(1), }, }, async ({ coin, newPayoutRecipient }) => { ensureWallet(); const result = await CoinsSDK.updatePayoutRecipient( { coin: coin as any, newPayoutRecipient: newPayoutRecipient as any }, walletClient!, publicClient ); return { content: [{ type: "text", text: json(result) }] }; } );