# add_outreach_domain (/docs/mcp/tools/add-outreach-domain)

{/* Generated by scripts/sync-mcp-tools.mjs from happierleads-api. Do not edit: change src/routes/mcp/toolDocs.json there, or add content/mcp-notes/add_outreach_domain.mdx. */}

**Pick outreach domain** · Changes data

Add an available domain to a website's picked list (the purchase cart). Nothing is bought or charged: purchase_outreach_domains later buys every picked domain at once. Call search_domain_availability first; the server uses its own quote from that search (re-checked if older than 6 hours), not the price you send, and refuses a domain that is not available. Remove a pick with remove_outreach_domain; see the cart with list_outreach_domains. websiteId comes from list_websites. Returns success and outreachDomains[] (the current unpaid picks), with alreadyAdded: true when the domain was already picked. Not available with a website-scoped key.

| Connection | Account-owner URL or OAuth (not a team member URL) |
| --- | --- |

## Parameters [#parameters]

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `websiteId` | `string` | Yes | Website id from list_websites to attach the domain to. |
| `domain` | `string` | Yes | Domain name to pick, e.g. getacme.example. |
| `price` | `number` | Yes | Registration price in USD from search_domain_availability. Required by the schema, but the server uses its own quote. |
| `renewalPrice` | `number` | No | Renewal price in USD from search_domain_availability. Ignored; the server uses its own quote. |
| `replacePicked` | `boolean` | No | true to drop the other unpaid picks and keep only this domain. Default false, which adds to the list. |

## Tool definition [#tool-definition]

What your assistant receives from `tools/list`:

```json
{
  "name": "add_outreach_domain",
  "title": "Pick outreach domain",
  "annotations": {
    "title": "Pick outreach domain",
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "inputSchema": {
    "type": "object",
    "properties": {
      "websiteId": {
        "type": "string",
        "description": "Website id from list_websites to attach the domain to."
      },
      "domain": {
        "type": "string",
        "description": "Domain name to pick, e.g. getacme.example."
      },
      "price": {
        "type": "number",
        "description": "Registration price in USD from search_domain_availability. Required by the schema, but the server uses its own quote."
      },
      "renewalPrice": {
        "type": "number",
        "description": "Renewal price in USD from search_domain_availability. Ignored; the server uses its own quote."
      },
      "replacePicked": {
        "type": "boolean",
        "description": "true to drop the other unpaid picks and keep only this domain. Default false, which adds to the list."
      }
    },
    "required": [
      "websiteId",
      "domain",
      "price"
    ]
  }
}
```
