> ## Documentation Index
> Fetch the complete documentation index at: https://docs.seamless.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaigns

> Campaign and step management MCP tools. Requires Connect access.

Manage outreach campaigns including steps, contacts, and lifecycle actions. Requires [Connect access](/mcp/access-control).

| Tool                            | Description                                                  | Risk          | Schema                                                              |
| ------------------------------- | ------------------------------------------------------------ | ------------- | ------------------------------------------------------------------- |
| `list_campaigns`                | List campaigns or get one by ID.                             | `read`        | [#list\_campaigns](#list_campaigns)                                 |
| `create_campaign`               | Create a campaign; optional inline `steps` and `contactIds`. | `write`       | [#create\_campaign](#create_campaign)                               |
| `update_campaign`               | Update name, visibility, or linked email accounts.           | `write`       | [#update\_campaign](#update_campaign)                               |
| `delete_campaign`               | Delete campaign and all steps/tasks.                         | `destructive` | [#delete\_campaign](#delete_campaign)                               |
| `clone_campaign`                | Copy campaign (steps, not contacts).                         | `write`       | [#clone\_campaign](#clone_campaign)                                 |
| `add_contacts_to_campaign`      | Add saved contacts.                                          | `write`       | [#add\_contacts\_to\_campaign](#add_contacts_to_campaign)           |
| `remove_contacts_from_campaign` | Remove contacts.                                             | `write`       | [#remove\_contacts\_from\_campaign](#remove_contacts_from_campaign) |
| `list_campaign_contacts`        | List contacts with engagement status.                        | `read`        | [#list\_campaign\_contacts](#list_campaign_contacts)                |
| `list_campaign_steps`           | List steps with type, status, delay.                         | `read`        | [#list\_campaign\_steps](#list_campaign_steps)                      |
| `create_campaign_step`          | Add email, call, or task step.                               | `write`       | [#create\_campaign\_step](#create_campaign_step)                    |
| `update_campaign_step`          | Update step content or position.                             | `write`       | [#update\_campaign\_step](#update_campaign_step)                    |
| `delete_campaign_step`          | Delete a step.                                               | `destructive` | [#delete\_campaign\_step](#delete_campaign_step)                    |
| `execute_campaign_action`       | start, pause, resume, complete, archive, etc.                | `write`       | [#execute\_campaign\_action](#execute_campaign_action)              |
| `execute_campaign_step_action`  | Pause, resume, or skip a step.                               | `write`       | [#execute\_campaign\_step\_action](#execute_campaign_step_action)   |
| `get_campaign_metrics`          | Per-step engagement metrics.                                 | `read`        | [#get\_campaign\_metrics](#get_campaign_metrics)                    |

## create\_campaign

Read `seamless://email-accounts` before email steps. Use `seamless://templates/variables` for merge tags.

### Example

```json theme={null}
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "create_campaign",
    "arguments": {
      "name": "Q2 outbound",
      "emailAccountIds": [123],
      "contactIds": [456, 789]
    }
  },
  "id": 1
}
```
