Skip to content
advardeDeveloper docs
v1.0

Complete optimization run

Loading server catalog…. Download catalog

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

Campaign optimizer must be enabled for the workspace.

Description: Complete a claimed review with new ad proposals or an explicit no-change/insufficient-evidence outcome. Proposals require dashboard approval. Repeating identical completion is idempotent.

Method: tools/call · ads_complete_optimization_run

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: Requires the applicable write scopes, workspace role, and account permissions.

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.

run_idstringrequired
format: "uuid"
claim_tokenstringrequired
format: "uuid"
outcomeenumrequired
enum: ["proposals","no_change","insufficient_evidence"]
summarystringrequired
minLength: 1maxLength: 8000
variantsarrayrequired
maxItems: 100
EXPAND VARIANTS

Each array item

base_ad_idstringrequired
minLength: 1maxLength: 255
namestringrequired
minLength: 1maxLength: 200
titlestringrequired
minLength: 1maxLength: 50
bodystringrequired
minLength: 1maxLength: 100
target_urlstringrequired
minLength: 1maxLength: 2048
asset_idstringoptional
format: "uuid"
rationalestringrequired
minLength: 1maxLength: 4000
hypothesisstringrequired
minLength: 1maxLength: 2000
Full JSON Schema
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string",
      "format": "uuid"
    },
    "claim_token": {
      "type": "string",
      "format": "uuid"
    },
    "outcome": {
      "enum": [
        "proposals",
        "no_change",
        "insufficient_evidence"
      ]
    },
    "summary": {
      "type": "string",
      "minLength": 1,
      "maxLength": 8000
    },
    "variants": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "base_ad_id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "title": {
            "type": "string",
            "minLength": 1,
            "maxLength": 50
          },
          "body": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100
          },
          "target_url": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2048
          },
          "asset_id": {
            "type": "string",
            "format": "uuid"
          },
          "rationale": {
            "type": "string",
            "minLength": 1,
            "maxLength": 4000
          },
          "hypothesis": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2000
          }
        },
        "required": [
          "base_ad_id",
          "name",
          "title",
          "body",
          "target_url",
          "rationale",
          "hypothesis"
        ],
        "additionalProperties": false
      },
      "maxItems": 100
    }
  },
  "required": [
    "run_id",
    "claim_token",
    "outcome",
    "summary",
    "variants"
  ],
  "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