Skip to content
advardeDeveloper docs
v1.0

Plan workbook

Loading server catalog…. Download catalog

POSThttps://app.advarde.com/mcp
Read

Available subject to your connection’s permissions.

Description: Parse the official OpenAI Ads Manager campaign workbook (campaigns, adgroups, ads) and compile a paused Bulk API job. Accepts workbook_base64 (.xlsx) or the three sheet arrays. Does not save a change. Conversion campaigns are rejected because the documented bulk wire format cannot attach conversion settings. Launch and end dates are previewed only.

Method: tools/call · ads_plan_workbook

Output: Tool data is returned in result.structuredContent and as JSON text in result.content. Inspect result.isError before using the result. Individual output fields depend on the operation.

Access: Read access to the relevant workspace and account.

Authentication

Use an MCP access token from MCP connections, or connect through OAuth. Send your token in the Authorization: Bearer header.

For full protocol initialization and tool discovery, use an MCP client. These examples show individual JSON-RPC requests.

Tool arguments

Send these fields inside params.arguments. The tool name is sent as params.name.

account_idstringrequired
format: "uuid"
workbook_base64stringoptional
maxLength: 800000
sheetsobjectoptional
additionalProperties: false
EXPAND SHEETS
campaignsarrayoptional
maxItems: 1000
EXPAND CAMPAIGNS

Each array item

{
  "type": "object"
}
adgroupsarrayoptional
maxItems: 1000
EXPAND ADGROUPS

Each array item

{
  "type": "object"
}
adsarrayoptional
maxItems: 1000
EXPAND ADS

Each array item

{
  "type": "object"
}
validate_onlybooleanoptional
partial_failurebooleanoptional
Full JSON Schema
{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "format": "uuid"
    },
    "workbook_base64": {
      "type": "string",
      "maxLength": 800000
    },
    "sheets": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "campaigns": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "maxItems": 1000
        },
        "adgroups": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "maxItems": 1000
        },
        "ads": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "maxItems": 1000
        }
      }
    },
    "validate_only": {
      "type": "boolean"
    },
    "partial_failure": {
      "type": "boolean"
    }
  },
  "required": [
    "account_id"
  ],
  "additionalProperties": false
}

Responses

200Successful protocol response

Inspect result.isError for tool-level failures, even when the HTTP status is 200.

202Notification accepted

MCP notifications return no JSON-RPC response body.

400Invalid request

Check the JSON-RPC envelope, parameters, and protocol version.

406Not acceptable

Accept must include application/json and text/event-stream.

429Rate limited

Wait for the Retry-After interval before making another request.

401Unauthorized

A valid, unexpired MCP bearer token is required.

403Access denied

Your connection needs access to this workspace and the requested operation.

Advarde MCP API v1.0