---
title: "Board tools"
description: "Organize generated ads on boards and share boards."
url: "https://sellify.ai/docs/developers/mcp-tools/boards"
---

# Board tools

> Organize generated ads on boards and share boards.

Organize generated ads on boards and share boards. This page lists 8 tools, 1 of them read-only.

- [`ecom_board_list`](#ecom_board_list): List Ecom ad boards
- [`ecom_board_create`](#ecom_board_create): Create a library board
- [`ecom_board_rename`](#ecom_board_rename): Rename a library board
- [`ecom_board_update_color`](#ecom_board_update_color): Change a library board color
- [`ecom_board_reorder`](#ecom_board_reorder): Reorder top-level library boards
- [`ecom_board_delete`](#ecom_board_delete): Delete a library board
- [`ecom_board_share`](#ecom_board_share): Create a public share link for a board
- [`ecom_board_unshare`](#ecom_board_unshare): Revoke a board share link

## `ecom_board_list`

**List Ecom ad boards**

Lists active library boards. parentId identifies sub-boards, sharing is exposed as a boolean, and share tokens are never returned.

| Property       | Value                  |
| -------------- | ---------------------- |
| Access         | Read-only              |
| Scope          | Ads: read (`ads:read`) |
| Credits        | Free                   |
| Safe to repeat | Yes                    |

### Input

| Field             | Type           | Required | Description                                                                                                                                                                                                                      |
| ----------------- | -------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit`           | integer        | No       | Between 1 and 100. Defaults to `25`.                                                                                                                                                                                             |
| `cursor`          | string or null | No       |                                                                                                                                                                                                                                  |
| `response_format` | enum           | No       | "concise" (the default) shortens long text and leaves out nested details in each result. Pass "detailed" only when you need the full text or nested details of a result. One of: `concise`, `detailed`. Defaults to `"concise"`. |

### Output

| Field        | Type            | Description      |
| ------------ | --------------- | ---------------- |
| `boards`     | array of object | Items up to 100. |
| `nextCursor` | string or null  |                  |
| `hasMore`    | boolean         |                  |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_list",
    "arguments": {}
  }
}
```

## `ecom_board_create`

**Create a library board**

Creates a board in the Ecom Ad Suite library for organizing generated ads. Pass parentId to create a sub-board one level under an existing top-level board. Board names must be unique among siblings, so repeating the same create reports a conflict instead of creating a duplicate.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Writes data                      |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |

### Input

| Field      | Type                  | Required | Description                                                                         |
| ---------- | --------------------- | -------- | ----------------------------------------------------------------------------------- |
| `name`     | string                | Yes      | Length 1 to 80.                                                                     |
| `color`    | enum                  | No       | One of: `blue`, `green`, `yellow`, `red`, `purple`, `orange`. Defaults to `"blue"`. |
| `parentId` | string (uuid) or null | No       |                                                                                     |

### Output

| Field       | Type                  | Description                                                   |
| ----------- | --------------------- | ------------------------------------------------------------- |
| `id`        | string (uuid)         |                                                               |
| `name`      | string                |                                                               |
| `color`     | enum                  | One of: `blue`, `green`, `yellow`, `red`, `purple`, `orange`. |
| `adCount`   | integer               |                                                               |
| `createdAt` | string                |                                                               |
| `updatedAt` | string                |                                                               |
| `parentId`  | string (uuid) or null |                                                               |
| `shareSlug` | string or null        |                                                               |
| `children`  | array of object       |                                                               |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_create",
    "arguments": {
      "name": "example"
    }
  }
}
```

## `ecom_board_rename`

**Rename a library board**

Renames an existing board. Pass the board's current name as expectedName so the rename is refused if the id belongs to a different board. The new name must be unique among boards under the same parent. Repeating the rename converges on the same state.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Changes or deletes data          |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field          | Type          | Required | Description     |
| -------------- | ------------- | -------- | --------------- |
| `boardId`      | string (uuid) | Yes      |                 |
| `name`         | string        | Yes      | Length 1 to 80. |
| `expectedName` | string        | No       | Length 1 to 80. |

### Output

| Field     | Type | Description |
| --------- | ---- | ----------- |
| `success` | true |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_rename",
    "arguments": {
      "boardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "example"
    }
  }
}
```

## `ecom_board_update_color`

**Change a library board color**

Sets the display color of a board. Repeating the update converges on the same state.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Writes data                      |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field     | Type          | Required | Description                                                   |
| --------- | ------------- | -------- | ------------------------------------------------------------- |
| `boardId` | string (uuid) | Yes      |                                                               |
| `color`   | enum          | Yes      | One of: `blue`, `green`, `yellow`, `red`, `purple`, `orange`. |

### Output

| Field     | Type | Description |
| --------- | ---- | ----------- |
| `success` | true |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_update_color",
    "arguments": {
      "boardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "color": "blue"
    }
  }
}
```

## `ecom_board_reorder`

**Reorder top-level library boards**

Sets the display order of top-level boards. Pass every top-level board id exactly once in the desired order; the first id is shown first. A partial list is rejected. Sub-boards cannot be reordered.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Writes data                      |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field             | Type                   | Required | Description     |
| ----------------- | ---------------------- | -------- | --------------- |
| `orderedBoardIds` | array of string (uuid) | Yes      | Items 1 to 200. |

### Output

| Field     | Type | Description |
| --------- | ---- | ----------- |
| `success` | true |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_reorder",
    "arguments": {
      "orderedBoardIds": [
        "3fa85f64-5717-4562-b3fc-2c963f66afa6"
      ]
    }
  }
}
```

## `ecom_board_delete`

**Delete a library board**

Deletes a board together with its sub-boards and removes every ad membership in them. The ads themselves stay in the library, but the board cannot be restored. Pass the board's exact current name as expectedName; the delete is refused if the id belongs to a different board.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Changes or deletes data          |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field          | Type          | Required | Description     |
| -------------- | ------------- | -------- | --------------- |
| `boardId`      | string (uuid) | Yes      |                 |
| `expectedName` | string        | No       | Length 1 to 80. |

### Output

| Field             | Type            | Description |
| ----------------- | --------------- | ----------- |
| `success`         | true            |             |
| `deletedBoardIds` | array of string |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_delete",
    "arguments": {
      "boardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    }
  }
}
```

## `ecom_board_share`

**Create a public share link for a board**

Turns on public sharing for a board and returns its share link. Anyone with the link can view the ads on the board without signing in. If the board is already shared (isShared is true for it in the board list), the existing link is returned unchanged. Pass the board's exact current name as expectedName; sharing is refused if the id belongs to a different board.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Writes data                      |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field          | Type          | Required | Description     |
| -------------- | ------------- | -------- | --------------- |
| `boardId`      | string (uuid) | Yes      |                 |
| `expectedName` | string        | No       | Length 1 to 80. |

### Output

| Field       | Type   | Description |
| ----------- | ------ | ----------- |
| `shareSlug` | string |             |
| `shareUrl`  | string |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_share",
    "arguments": {
      "boardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    }
  }
}
```

## `ecom_board_unshare`

**Revoke a board share link**

Turns off public sharing for a board so its existing share link stops working. Pass the board's exact current name as expectedName; the revoke is refused if the id belongs to a different board. Repeating the revoke reports success.

| Property        | Value                            |
| --------------- | -------------------------------- |
| Access          | Changes or deletes data          |
| Scope           | Library: write (`library:write`) |
| Credits         | Free                             |
| Who can call it | Workspace owners and admins      |
| Safe to repeat  | Yes                              |

### Input

| Field          | Type          | Required | Description     |
| -------------- | ------------- | -------- | --------------- |
| `boardId`      | string (uuid) | Yes      |                 |
| `expectedName` | string        | No       | Length 1 to 80. |

### Output

| Field     | Type | Description |
| --------- | ---- | ----------- |
| `success` | true |             |

### Example

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ecom_board_unshare",
    "arguments": {
      "boardId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
    }
  }
}
```

## Related

[Tool reference overview](https://sellify.ai/docs/developers/mcp-tools) · [Authentication](https://sellify.ai/docs/developers/authentication) · [Credits and limits](https://sellify.ai/docs/developers/credits-and-limits)
