Skip to main content
Glama

Influence

Generate or revise AI plan

campaignPlanGenerate
Destructive

Queues one AI text-planning turn using owned accounts, saved media and brand context, spending AI credits. Revisions require the plan identifier and current expectedVersion. Results are saved planning text and optional image ideas; this operation creates no image, video or audio and performs no publishing.

Input Schema

NameRequiredDescriptionDefault
briefYesExact freeform planning request or revision when action and choice are absent.
titleNo
actionNoExisting-plan operation requiring planPublicId and current expectedVersion, mutually exclusive with choice. prepare_draft uses the saved conversation; suggest_images requests text image ideas. An action ignores brief and appends no user message.
choiceNoLatest saved assistant choice; its label replaces brief.
timezoneYes
requestIdYes
preferencesYes
planPublicIdNo
mediaAssetIdsYes
_idempotencyKeyNoCaller-generated retry ID for this confirmed request. Reuse the same value, confirmation capability and inputs when retrying an uncertain result.
expectedVersionNo
connectionSettingsYes
_confirmationCapabilityNoOpaque preparation capability bound to this tool, its prepared input, connection, workspace and expiry. The publish_confirm_v1 prefix identifies the shared confirmation protocol.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / whatsAppTargets
      Removed value: -{
      -  "items": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "accountPublicId": {
      -        "maxLength": 128,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "contactPublicIds": {
      -        "items": {
      -          "maxLength": 128,
      -          "minLength": 1,
      -          "type": "string"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      },
      -      "message": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 4096,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "text",
      -                "type": "string"
      -              },
      -              "previewUrl": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "caption": {
      -                "maxLength": 1024,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "image",
      -                "type": "string"
      -              },
      -              "mediaId": {
      -                "maxLength": 32,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "mediaId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "caption": {
      -                "maxLength": 1024,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "video",
      -                "type": "string"
      -              },
      -              "mediaId": {
      -                "maxLength": 32,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "mediaId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "caption": {
      -                "maxLength": 1024,
      -                "type": "string"
      -              },
      -              "filename": {
      -                "maxLength": 240,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "document",
      -                "type": "string"
      -              },
      -              "mediaId": {
      -                "maxLength": 32,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "mediaId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "kind": {
      -                "const": "audio",
      -                "type": "string"
      -              },
      -              "mediaId": {
      -                "pattern": "^[1-9][0-9]{0,31}$",
      -                "type": "string"
      -              },
      -              "voice": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "mediaId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "kind": {
      -                "const": "sticker",
      -                "type": "string"
      -              },
      -              "mediaId": {
      -                "pattern": "^[1-9][0-9]{0,31}$",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "mediaId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "components": {
      -                "items": {
      -                  "anyOf": [
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "parameters": {
      -                          "items": {
      -                            "anyOf": [
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "text": {
      -                                    "maxLength": 1024,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "text",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "text",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "image",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "video",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "filename": {
      -                                    "maxLength": 240,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "document",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "amount1000": {
      -                                    "maximum": 9007199254740991,
      -                                    "minimum": -9007199254740991,
      -                                    "type": "integer"
      -                                  },
      -                                  "code": {
      -                                    "pattern": "^[A-Z]{3}$",
      -                                    "type": "string"
      -                                  },
      -                                  "fallback": {
      -                                    "maxLength": 64,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "currency",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "amount1000",
      -                                  "code",
      -                                  "fallback",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "fallback": {
      -                                    "maxLength": 128,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "dateTime",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "fallback",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              }
      -                            ]
      -                          },
      -                          "maxItems": 100,
      -                          "type": "array"
      -                        },
      -                        "type": {
      -                          "const": "header",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "parameters",
      -                        "type"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "parameters": {
      -                          "items": {
      -                            "anyOf": [
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "text": {
      -                                    "maxLength": 1024,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "text",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "text",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "image",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "video",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "filename": {
      -                                    "maxLength": 240,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "mediaId": {
      -                                    "maxLength": 32,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "document",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "mediaId",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "amount1000": {
      -                                    "maximum": 9007199254740991,
      -                                    "minimum": -9007199254740991,
      -                                    "type": "integer"
      -                                  },
      -                                  "code": {
      -                                    "pattern": "^[A-Z]{3}$",
      -                                    "type": "string"
      -                                  },
      -                                  "fallback": {
      -                                    "maxLength": 64,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "currency",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "amount1000",
      -                                  "code",
      -                                  "fallback",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              },
      -                              {
      -                                "additionalProperties": false,
      -                                "properties": {
      -                                  "fallback": {
      -                                    "maxLength": 128,
      -                                    "minLength": 1,
      -                                    "type": "string"
      -                                  },
      -                                  "type": {
      -                                    "const": "dateTime",
      -                                    "type": "string"
      -                                  }
      -                                },
      -                                "required": [
      -                                  "fallback",
      -                                  "type"
      -                                ],
      -                                "type": "object"
      -                              }
      -                            ]
      -                          },
      -                          "maxItems": 100,
      -                          "type": "array"
      -                        },
      -                        "type": {
      -                          "const": "body",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "parameters",
      -                        "type"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "index": {
      -                          "maximum": 9,
      -                          "minimum": 0,
      -                          "type": "integer"
      -                        },
      -                        "text": {
      -                          "maxLength": 1024,
      -                          "type": "string"
      -                        },
      -                        "type": {
      -                          "const": "urlButton",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "index",
      -                        "text",
      -                        "type"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "index": {
      -                          "maximum": 9,
      -                          "minimum": 0,
      -                          "type": "integer"
      -                        },
      -                        "payload": {
      -                          "maxLength": 256,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "type": {
      -                          "const": "quickReply",
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "index",
      -                        "payload",
      -                        "type"
      -                      ],
      -                      "type": "object"
      -                    }
      -                  ]
      -                },
      -                "maxItems": 12,
      -                "type": "array"
      -              },
      -              "kind": {
      -                "const": "template",
      -                "type": "string"
      -              },
      -              "language": {
      -                "maxLength": 20,
      -                "type": "string"
      -              },
      -              "name": {
      -                "maxLength": 512,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "language",
      -              "name"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "type": "string"
      -              },
      -              "buttons": {
      -                "items": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "id": {
      -                      "maxLength": 256,
      -                      "type": "string"
      -                    },
      -                    "title": {
      -                      "maxLength": 20,
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "id",
      -                    "title"
      -                  ],
      -                  "type": "object"
      -                },
      -                "maxItems": 3,
      -                "type": "array"
      -              },
      -              "kind": {
      -                "const": "buttons",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "buttons",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "button": {
      -                "maxLength": 20,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "list",
      -                "type": "string"
      -              },
      -              "sections": {
      -                "items": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "rows": {
      -                      "items": {
      -                        "additionalProperties": false,
      -                        "properties": {
      -                          "description": {
      -                            "maxLength": 72,
      -                            "minLength": 1,
      -                            "type": "string"
      -                          },
      -                          "id": {
      -                            "maxLength": 200,
      -                            "minLength": 1,
      -                            "type": "string"
      -                          },
      -                          "title": {
      -                            "maxLength": 24,
      -                            "minLength": 1,
      -                            "type": "string"
      -                          }
      -                        },
      -                        "required": [
      -                          "id",
      -                          "title"
      -                        ],
      -                        "type": "object"
      -                      },
      -                      "maxItems": 10,
      -                      "minItems": 1,
      -                      "type": "array"
      -                    },
      -                    "title": {
      -                      "maxLength": 24,
      -                      "minLength": 1,
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "rows"
      -                  ],
      -                  "type": "object"
      -                },
      -                "maxItems": 10,
      -                "minItems": 1,
      -                "type": "array"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "button",
      -              "kind",
      -              "sections"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "urlButton",
      -                "type": "string"
      -              },
      -              "label": {
      -                "maxLength": 20,
      -                "type": "string"
      -              },
      -              "url": {
      -                "maxLength": 2048,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "kind",
      -              "label",
      -              "url"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "cards": {
      -                "items": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "body": {
      -                      "maxLength": 160,
      -                      "minLength": 1,
      -                      "type": "string"
      -                    },
      -                    "label": {
      -                      "maxLength": 20,
      -                      "minLength": 1,
      -                      "type": "string"
      -                    },
      -                    "mediaId": {
      -                      "pattern": "^[1-9][0-9]{0,31}$",
      -                      "type": "string"
      -                    },
      -                    "mediaType": {
      -                      "enum": [
      -                        "image",
      -                        "video"
      -                      ],
      -                      "type": "string"
      -                    },
      -                    "url": {
      -                      "format": "uri",
      -                      "maxLength": 2048,
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "label",
      -                    "mediaId",
      -                    "mediaType",
      -                    "url"
      -                  ],
      -                  "type": "object"
      -                },
      -                "maxItems": 10,
      -                "minItems": 2,
      -                "type": "array"
      -              },
      -              "kind": {
      -                "const": "mediaCarousel",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "cards",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "address": {
      -                "maxLength": 1000,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "location",
      -                "type": "string"
      -              },
      -              "latitude": {
      -                "anyOf": [
      -                  {
      -                    "maximum": 90,
      -                    "minimum": -90,
      -                    "type": "number"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "longitude": {
      -                "anyOf": [
      -                  {
      -                    "maximum": 180,
      -                    "minimum": -180,
      -                    "type": "number"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "name": {
      -                "maxLength": 1000,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "kind",
      -              "latitude",
      -              "longitude"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "locationRequest",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "contacts": {
      -                "items": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "emails": {
      -                      "items": {
      -                        "additionalProperties": false,
      -                        "properties": {
      -                          "email": {
      -                            "format": "email",
      -                            "maxLength": 320,
      -                            "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      -                            "type": "string"
      -                          },
      -                          "type": {
      -                            "enum": [
      -                              "HOME",
      -                              "WORK"
      -                            ],
      -                            "type": "string"
      -                          }
      -                        },
      -                        "required": [
      -                          "email"
      -                        ],
      -                        "type": "object"
      -                      },
      -                      "maxItems": 20,
      -                      "type": "array"
      -                    },
      -                    "name": {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "firstName": {
      -                          "maxLength": 128,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "formattedName": {
      -                          "maxLength": 256,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "lastName": {
      -                          "maxLength": 128,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "middleName": {
      -                          "maxLength": 128,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "prefix": {
      -                          "maxLength": 64,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "suffix": {
      -                          "maxLength": 64,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        }
      -                      },
      -                      "required": [
      -                        "formattedName"
      -                      ],
      -                      "type": "object"
      -                    },
      -                    "organization": {
      -                      "additionalProperties": false,
      -                      "properties": {
      -                        "company": {
      -                          "maxLength": 256,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "department": {
      -                          "maxLength": 256,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        },
      -                        "title": {
      -                          "maxLength": 256,
      -                          "minLength": 1,
      -                          "type": "string"
      -                        }
      -                      },
      -                      "type": "object"
      -                    },
      -                    "phones": {
      -                      "items": {
      -                        "additionalProperties": false,
      -                        "properties": {
      -                          "phone": {
      -                            "maxLength": 32,
      -                            "minLength": 1,
      -                            "type": "string"
      -                          },
      -                          "type": {
      -                            "enum": [
      -                              "CELL",
      -                              "MAIN",
      -                              "IPHONE",
      -                              "HOME",
      -                              "WORK"
      -                            ],
      -                            "type": "string"
      -                          },
      -                          "waId": {
      -                            "maxLength": 32,
      -                            "minLength": 1,
      -                            "type": "string"
      -                          }
      -                        },
      -                        "type": "object"
      -                      },
      -                      "maxItems": 20,
      -                      "type": "array"
      -                    }
      -                  },
      -                  "required": [
      -                    "name"
      -                  ],
      -                  "type": "object"
      -                },
      -                "maxItems": 20,
      -                "minItems": 1,
      -                "type": "array"
      -              },
      -              "kind": {
      -                "const": "contacts",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "contacts",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "button": {
      -                "maxLength": 30,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "flowId": {
      -                "pattern": "^[1-9][0-9]{0,31}$",
      -                "type": "string"
      -              },
      -              "flowToken": {
      -                "maxLength": 256,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "flow",
      -                "type": "string"
      -              },
      -              "screen": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "button",
      -              "flowId",
      -              "flowToken",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "catalog",
      -                "type": "string"
      -              },
      -              "thumbnailProductId": {
      -                "maxLength": 100,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "kind"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "catalogId": {
      -                "pattern": "^[1-9][0-9]{0,31}$",
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "product",
      -                "type": "string"
      -              },
      -              "productId": {
      -                "maxLength": 100,
      -                "minLength": 1,
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "catalogId",
      -              "kind",
      -              "productId"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "body": {
      -                "maxLength": 1024,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "catalogId": {
      -                "pattern": "^[1-9][0-9]{0,31}$",
      -                "type": "string"
      -              },
      -              "header": {
      -                "maxLength": 60,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "products",
      -                "type": "string"
      -              },
      -              "sections": {
      -                "items": {
      -                  "additionalProperties": false,
      -                  "properties": {
      -                    "productIds": {
      -                      "items": {
      -                        "maxLength": 100,
      -                        "minLength": 1,
      -                        "type": "string"
      -                      },
      -                      "maxItems": 30,
      -                      "minItems": 1,
      -                      "type": "array"
      -                    },
      -                    "title": {
      -                      "maxLength": 24,
      -                      "minLength": 1,
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "productIds",
      -                    "title"
      -                  ],
      -                  "type": "object"
      -                },
      -                "maxItems": 10,
      -                "minItems": 1,
      -                "type": "array"
      -              }
      -            },
      -            "required": [
      -              "body",
      -              "catalogId",
      -              "header",
      -              "kind",
      -              "sections"
      -            ],
      -            "type": "object"
      -          },
      -          {
      -            "additionalProperties": false,
      -            "properties": {
      -              "emoji": {
      -                "maxLength": 16,
      -                "type": "string"
      -              },
      -              "kind": {
      -                "const": "reaction",
      -                "type": "string"
      -              },
      -              "messageId": {
      -                "maxLength": 2048,
      -                "pattern": "^wamid\\.[A-Za-z0-9_+=/-]+$",
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "emoji",
      -              "kind",
      -              "messageId"
      -            ],
      -            "type": "object"
      -          }
      -        ]
      -      },
      -      "publicId": {
      -        "maxLength": 128,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "replyTo": {
      -        "maxLength": 2048,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "accountPublicId",
      -      "contactPublicIds",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  "maxItems": 20,
      -  "type": "array"
      -}
  2. Changed2 schema fields changed
    • changedInput schema / properties / _confirmationCapability / description
      Previous value: -"Value issued by Influence in this tool's preparation result. Return it unchanged before expiresAt to permit one execution of the prepared action. Never invent it; it is not an account credential or proof of human approval."New value: +"Opaque preparation capability bound to this tool, its prepared input, connection, workspace and expiry. The publish_confirm_v1 prefix identifies the shared confirmation protocol."
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "oneOf": [
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "ok": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "output": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "planPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              },
      -              "runPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              }
      -            },
      -            "required": [
      -              "planPublicId",
      -              "runPublicId"
      -            ],
      -            "type": "object"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "ok",
      -          "output",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      },
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "error": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "code": {
      -                "enum": [
      -                  "AI_SCHEDULING_LIMIT_REACHED",
      -                  "AI_SCHEDULING_UNAVAILABLE",
      -                  "INVALID_INPUT",
      -                  "FORBIDDEN",
      -                  "NOT_FOUND",
      -                  "CONFLICT",
      -                  "FEATURE_DISABLED",
      -                  "CONFIRMATION_REQUIRED",
      -                  "CONFIRMATION_INVALID",
      -                  "UPSTREAM_FAILED",
      -                  "NEEDS_REVIEW",
      -                  "INTERNAL"
      -                ],
      -                "type": "string"
      -              },
      -              "message": {
      -                "maxLength": 2048,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "retryable": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "code",
      -              "message",
      -              "retryable"
      -            ],
      -            "type": "object"
      -          },
      -          "ok": {
      -            "const": false,
      -            "type": "boolean"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "error",
      -          "ok",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      }
      -    ]
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "confirmationCapability": {
      -        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability before expiresAt to confirm this prepared action; never invent or modify it.",
      -        "maxLength": 4096,
      -        "minLength": 32,
      -        "pattern": "^[A-Za-z0-9._~-]+$",
      -        "type": "string"
      -      },
      -      "expiresAt": {
      -        "format": "date-time",
      -        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -        "type": "string"
      -      },
      -      "inputDigest": {
      -        "pattern": "^[0-9a-f]{64}$",
      -        "type": "string"
      -      },
      -      "status": {
      -        "const": "confirmation_required",
      -        "type": "string"
      -      },
      -      "summary": {
      -        "$ref": "#/$defs/__schema1"
      -      },
      -      "toolName": {
      -        "const": "campaignPlanGenerate",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "confirmationCapability",
      -      "expiresAt",
      -      "inputDigest",
      -      "status",
      -      "toolName"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "oneOf": [
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "ok": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "output": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "planPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              },
      +              "runPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              }
      +            },
      +            "required": [
      +              "planPublicId",
      +              "runPublicId"
      +            ],
      +            "type": "object"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "ok",
      +          "output",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "error": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "code": {
      +                "enum": [
      +                  "AI_SCHEDULING_LIMIT_REACHED",
      +                  "AI_SCHEDULING_UNAVAILABLE",
      +                  "INVALID_INPUT",
      +                  "FORBIDDEN",
      +                  "NOT_FOUND",
      +                  "CONFLICT",
      +                  "FEATURE_DISABLED",
      +                  "CONFIRMATION_REQUIRED",
      +                  "CONFIRMATION_INVALID",
      +                  "UPSTREAM_FAILED",
      +                  "NEEDS_REVIEW",
      +                  "INTERNAL"
      +                ],
      +                "type": "string"
      +              },
      +              "message": {
      +                "maxLength": 2048,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "retryable": {
      +                "type": "boolean"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "message",
      +              "retryable"
      +            ],
      +            "type": "object"
      +          },
      +          "ok": {
      +            "const": false,
      +            "type": "boolean"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "error",
      +          "ok",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      }
      +    ]
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "confirmationCapability": {
      +        "description": "Opaque capability bound to the prepared toolName, inputDigest, connection, workspace and expiresAt. The publish_confirm_v1 prefix identifies the shared confirmation protocol.",
      +        "maxLength": 4096,
      +        "minLength": 32,
      +        "pattern": "^[A-Za-z0-9._~-]+$",
      +        "type": "string"
      +      },
      +      "expiresAt": {
      +        "format": "date-time",
      +        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +        "type": "string"
      +      },
      +      "inputDigest": {
      +        "pattern": "^[0-9a-f]{64}$",
      +        "type": "string"
      +      },
      +      "status": {
      +        "const": "confirmation_required",
      +        "type": "string"
      +      },
      +      "summary": {
      +        "$ref": "#/$defs/__schema1"
      +      },
      +      "toolName": {
      +        "const": "campaignPlanGenerate",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "confirmationCapability",
      +      "expiresAt",
      +      "inputDigest",
      +      "status",
      +      "toolName"
      +    ],
      +    "type": "object"
      +  }
      +]
  3. Changed1 schema field changed
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "oneOf": [
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "ok": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "output": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "planPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              },
      -              "runPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              }
      -            },
      -            "required": [
      -              "planPublicId",
      -              "runPublicId"
      -            ],
      -            "type": "object"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "ok",
      -          "output",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      },
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "error": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "code": {
      -                "enum": [
      -                  "INVALID_INPUT",
      -                  "FORBIDDEN",
      -                  "NOT_FOUND",
      -                  "CONFLICT",
      -                  "FEATURE_DISABLED",
      -                  "CONFIRMATION_REQUIRED",
      -                  "CONFIRMATION_INVALID",
      -                  "UPSTREAM_FAILED",
      -                  "NEEDS_REVIEW",
      -                  "INTERNAL"
      -                ],
      -                "type": "string"
      -              },
      -              "message": {
      -                "maxLength": 2048,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "retryable": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "code",
      -              "message",
      -              "retryable"
      -            ],
      -            "type": "object"
      -          },
      -          "ok": {
      -            "const": false,
      -            "type": "boolean"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "error",
      -          "ok",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      }
      -    ]
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "confirmationCapability": {
      -        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability before expiresAt to confirm this prepared action; never invent or modify it.",
      -        "maxLength": 4096,
      -        "minLength": 32,
      -        "pattern": "^[A-Za-z0-9._~-]+$",
      -        "type": "string"
      -      },
      -      "expiresAt": {
      -        "format": "date-time",
      -        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -        "type": "string"
      -      },
      -      "inputDigest": {
      -        "pattern": "^[0-9a-f]{64}$",
      -        "type": "string"
      -      },
      -      "status": {
      -        "const": "confirmation_required",
      -        "type": "string"
      -      },
      -      "summary": {
      -        "$ref": "#/$defs/__schema1"
      -      },
      -      "toolName": {
      -        "const": "campaignPlanGenerate",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "confirmationCapability",
      -      "expiresAt",
      -      "inputDigest",
      -      "status",
      -      "toolName"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "oneOf": [
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "ok": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "output": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "planPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              },
      +              "runPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              }
      +            },
      +            "required": [
      +              "planPublicId",
      +              "runPublicId"
      +            ],
      +            "type": "object"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "ok",
      +          "output",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "error": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "code": {
      +                "enum": [
      +                  "AI_SCHEDULING_LIMIT_REACHED",
      +                  "AI_SCHEDULING_UNAVAILABLE",
      +                  "INVALID_INPUT",
      +                  "FORBIDDEN",
      +                  "NOT_FOUND",
      +                  "CONFLICT",
      +                  "FEATURE_DISABLED",
      +                  "CONFIRMATION_REQUIRED",
      +                  "CONFIRMATION_INVALID",
      +                  "UPSTREAM_FAILED",
      +                  "NEEDS_REVIEW",
      +                  "INTERNAL"
      +                ],
      +                "type": "string"
      +              },
      +              "message": {
      +                "maxLength": 2048,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "retryable": {
      +                "type": "boolean"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "message",
      +              "retryable"
      +            ],
      +            "type": "object"
      +          },
      +          "ok": {
      +            "const": false,
      +            "type": "boolean"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "error",
      +          "ok",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      }
      +    ]
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "confirmationCapability": {
      +        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability before expiresAt to confirm this prepared action; never invent or modify it.",
      +        "maxLength": 4096,
      +        "minLength": 32,
      +        "pattern": "^[A-Za-z0-9._~-]+$",
      +        "type": "string"
      +      },
      +      "expiresAt": {
      +        "format": "date-time",
      +        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +        "type": "string"
      +      },
      +      "inputDigest": {
      +        "pattern": "^[0-9a-f]{64}$",
      +        "type": "string"
      +      },
      +      "status": {
      +        "const": "confirmation_required",
      +        "type": "string"
      +      },
      +      "summary": {
      +        "$ref": "#/$defs/__schema1"
      +      },
      +      "toolName": {
      +        "const": "campaignPlanGenerate",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "confirmationCapability",
      +      "expiresAt",
      +      "inputDigest",
      +      "status",
      +      "toolName"
      +    ],
      +    "type": "object"
      +  }
      +]
  4. Changed2 schema fields changed
    • changedInput schema / $defs / __schema0 / anyOf
      Previous value: -[
      -  {
      -    "maxLength": 8192,
      -    "type": "string"
      -  },
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "type": "null"
      -  },
      -  {
      -    "items": {},
      -    "maxItems": 512,
      -    "type": "array"
      -  },
      -  {
      -    "additionalProperties": {},
      -    "maxProperties": 64,
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 8192,
      +    "type": "string"
      +  },
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "boolean"
      +  },
      +  {
      +    "type": "null"
      +  },
      +  {
      +    "items": {},
      +    "maxItems": 2000,
      +    "type": "array"
      +  },
      +  {
      +    "additionalProperties": {},
      +    "maxProperties": 64,
      +    "type": "object"
      +  }
      +]
    • changedOutput schema / $defs / __schema1 / anyOf
      Previous value: -[
      -  {
      -    "maxLength": 8192,
      -    "type": "string"
      -  },
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "type": "null"
      -  },
      -  {
      -    "items": {
      -      "$ref": "#/$defs/__schema1"
      -    },
      -    "maxItems": 512,
      -    "type": "array"
      -  },
      -  {
      -    "additionalProperties": {
      -      "$ref": "#/$defs/__schema1"
      -    },
      -    "propertyNames": {
      -      "$ref": "#/$defs/__schema2"
      -    },
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 8192,
      +    "type": "string"
      +  },
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "boolean"
      +  },
      +  {
      +    "type": "null"
      +  },
      +  {
      +    "items": {
      +      "$ref": "#/$defs/__schema1"
      +    },
      +    "maxItems": 2000,
      +    "type": "array"
      +  },
      +  {
      +    "additionalProperties": {
      +      "$ref": "#/$defs/__schema1"
      +    },
      +    "propertyNames": {
      +      "$ref": "#/$defs/__schema2"
      +    },
      +    "type": "object"
      +  }
      +]
  5. Changed2 schema fields changed
    • changedInput schema / properties / _confirmationCapability / description
      Previous value: -"Value issued by Influence in this tool's preparation result. Return it unchanged with the exact same inputs before expiresAt to permit one execution. Never invent it; it is not an account credential or proof of human approval."New value: +"Value issued by Influence in this tool's preparation result. Return it unchanged before expiresAt to permit one execution of the prepared action. Never invent it; it is not an account credential or proof of human approval."
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "oneOf": [
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "ok": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "output": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "planPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              },
      -              "runPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              }
      -            },
      -            "required": [
      -              "planPublicId",
      -              "runPublicId"
      -            ],
      -            "type": "object"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "ok",
      -          "output",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      },
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "error": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "code": {
      -                "enum": [
      -                  "INVALID_INPUT",
      -                  "FORBIDDEN",
      -                  "NOT_FOUND",
      -                  "CONFLICT",
      -                  "FEATURE_DISABLED",
      -                  "CONFIRMATION_REQUIRED",
      -                  "CONFIRMATION_INVALID",
      -                  "UPSTREAM_FAILED",
      -                  "NEEDS_REVIEW",
      -                  "INTERNAL"
      -                ],
      -                "type": "string"
      -              },
      -              "message": {
      -                "maxLength": 2048,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "retryable": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "code",
      -              "message",
      -              "retryable"
      -            ],
      -            "type": "object"
      -          },
      -          "ok": {
      -            "const": false,
      -            "type": "boolean"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "error",
      -          "ok",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      }
      -    ]
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "confirmationCapability": {
      -        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability with the exact same tool inputs before expiresAt; never invent or modify it.",
      -        "maxLength": 4096,
      -        "minLength": 32,
      -        "pattern": "^[A-Za-z0-9._~-]+$",
      -        "type": "string"
      -      },
      -      "expiresAt": {
      -        "format": "date-time",
      -        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -        "type": "string"
      -      },
      -      "inputDigest": {
      -        "pattern": "^[0-9a-f]{64}$",
      -        "type": "string"
      -      },
      -      "status": {
      -        "const": "confirmation_required",
      -        "type": "string"
      -      },
      -      "summary": {
      -        "$ref": "#/$defs/__schema1"
      -      },
      -      "toolName": {
      -        "const": "campaignPlanGenerate",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "confirmationCapability",
      -      "expiresAt",
      -      "inputDigest",
      -      "status",
      -      "toolName"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "oneOf": [
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "ok": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "output": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "planPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              },
      +              "runPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              }
      +            },
      +            "required": [
      +              "planPublicId",
      +              "runPublicId"
      +            ],
      +            "type": "object"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "ok",
      +          "output",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "error": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "code": {
      +                "enum": [
      +                  "INVALID_INPUT",
      +                  "FORBIDDEN",
      +                  "NOT_FOUND",
      +                  "CONFLICT",
      +                  "FEATURE_DISABLED",
      +                  "CONFIRMATION_REQUIRED",
      +                  "CONFIRMATION_INVALID",
      +                  "UPSTREAM_FAILED",
      +                  "NEEDS_REVIEW",
      +                  "INTERNAL"
      +                ],
      +                "type": "string"
      +              },
      +              "message": {
      +                "maxLength": 2048,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "retryable": {
      +                "type": "boolean"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "message",
      +              "retryable"
      +            ],
      +            "type": "object"
      +          },
      +          "ok": {
      +            "const": false,
      +            "type": "boolean"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "error",
      +          "ok",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      }
      +    ]
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "confirmationCapability": {
      +        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability before expiresAt to confirm this prepared action; never invent or modify it.",
      +        "maxLength": 4096,
      +        "minLength": 32,
      +        "pattern": "^[A-Za-z0-9._~-]+$",
      +        "type": "string"
      +      },
      +      "expiresAt": {
      +        "format": "date-time",
      +        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +        "type": "string"
      +      },
      +      "inputDigest": {
      +        "pattern": "^[0-9a-f]{64}$",
      +        "type": "string"
      +      },
      +      "status": {
      +        "const": "confirmation_required",
      +        "type": "string"
      +      },
      +      "summary": {
      +        "$ref": "#/$defs/__schema1"
      +      },
      +      "toolName": {
      +        "const": "campaignPlanGenerate",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "confirmationCapability",
      +      "expiresAt",
      +      "inputDigest",
      +      "status",
      +      "toolName"
      +    ],
      +    "type": "object"
      +  }
      +]
  6. Changed3 schema fields changed
    • changedInput schema / properties / _confirmationCapability / description
      Previous value: -"Single-use from prepare."New value: +"Value issued by Influence in this tool's preparation result. Return it unchanged with the exact same inputs before expiresAt to permit one execution. Never invent it; it is not an account credential or proof of human approval."
    • changedInput schema / properties / _idempotencyKey / description
      Previous value: -"Caller-generated."New value: +"Caller-generated retry ID for this confirmed request. Reuse the same value, confirmation capability and inputs when retrying an uncertain result."
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "oneOf": [
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "ok": {
      -            "const": true,
      -            "type": "boolean"
      -          },
      -          "output": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "planPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              },
      -              "runPublicId": {
      -                "$ref": "#/$defs/__schema0"
      -              }
      -            },
      -            "required": [
      -              "planPublicId",
      -              "runPublicId"
      -            ],
      -            "type": "object"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "ok",
      -          "output",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      },
      -      {
      -        "additionalProperties": false,
      -        "properties": {
      -          "error": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "code": {
      -                "enum": [
      -                  "INVALID_INPUT",
      -                  "FORBIDDEN",
      -                  "NOT_FOUND",
      -                  "CONFLICT",
      -                  "FEATURE_DISABLED",
      -                  "CONFIRMATION_REQUIRED",
      -                  "CONFIRMATION_INVALID",
      -                  "UPSTREAM_FAILED",
      -                  "NEEDS_REVIEW",
      -                  "INTERNAL"
      -                ],
      -                "type": "string"
      -              },
      -              "message": {
      -                "maxLength": 2048,
      -                "minLength": 1,
      -                "type": "string"
      -              },
      -              "retryable": {
      -                "type": "boolean"
      -              }
      -            },
      -            "required": [
      -              "code",
      -              "message",
      -              "retryable"
      -            ],
      -            "type": "object"
      -          },
      -          "ok": {
      -            "const": false,
      -            "type": "boolean"
      -          },
      -          "toolName": {
      -            "const": "campaignPlanGenerate",
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "error",
      -          "ok",
      -          "toolName"
      -        ],
      -        "type": "object"
      -      }
      -    ]
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "confirmationCapability": {
      -        "maxLength": 4096,
      -        "minLength": 32,
      -        "pattern": "^[A-Za-z0-9._~-]+$",
      -        "type": "string"
      -      },
      -      "expiresAt": {
      -        "format": "date-time",
      -        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      -        "type": "string"
      -      },
      -      "inputDigest": {
      -        "pattern": "^[0-9a-f]{64}$",
      -        "type": "string"
      -      },
      -      "status": {
      -        "const": "confirmation_required",
      -        "type": "string"
      -      },
      -      "summary": {
      -        "$ref": "#/$defs/__schema1"
      -      },
      -      "toolName": {
      -        "const": "campaignPlanGenerate",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "confirmationCapability",
      -      "expiresAt",
      -      "inputDigest",
      -      "status",
      -      "toolName"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "oneOf": [
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "ok": {
      +            "const": true,
      +            "type": "boolean"
      +          },
      +          "output": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "planPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              },
      +              "runPublicId": {
      +                "$ref": "#/$defs/__schema0"
      +              }
      +            },
      +            "required": [
      +              "planPublicId",
      +              "runPublicId"
      +            ],
      +            "type": "object"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "ok",
      +          "output",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "additionalProperties": false,
      +        "properties": {
      +          "error": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "code": {
      +                "enum": [
      +                  "INVALID_INPUT",
      +                  "FORBIDDEN",
      +                  "NOT_FOUND",
      +                  "CONFLICT",
      +                  "FEATURE_DISABLED",
      +                  "CONFIRMATION_REQUIRED",
      +                  "CONFIRMATION_INVALID",
      +                  "UPSTREAM_FAILED",
      +                  "NEEDS_REVIEW",
      +                  "INTERNAL"
      +                ],
      +                "type": "string"
      +              },
      +              "message": {
      +                "maxLength": 2048,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "retryable": {
      +                "type": "boolean"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "message",
      +              "retryable"
      +            ],
      +            "type": "object"
      +          },
      +          "ok": {
      +            "const": false,
      +            "type": "boolean"
      +          },
      +          "toolName": {
      +            "const": "campaignPlanGenerate",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "error",
      +          "ok",
      +          "toolName"
      +        ],
      +        "type": "object"
      +      }
      +    ]
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "confirmationCapability": {
      +        "description": "Issued by Influence for this preparation. Return it unchanged as _confirmationCapability with the exact same tool inputs before expiresAt; never invent or modify it.",
      +        "maxLength": 4096,
      +        "minLength": 32,
      +        "pattern": "^[A-Za-z0-9._~-]+$",
      +        "type": "string"
      +      },
      +      "expiresAt": {
      +        "format": "date-time",
      +        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +        "type": "string"
      +      },
      +      "inputDigest": {
      +        "pattern": "^[0-9a-f]{64}$",
      +        "type": "string"
      +      },
      +      "status": {
      +        "const": "confirmation_required",
      +        "type": "string"
      +      },
      +      "summary": {
      +        "$ref": "#/$defs/__schema1"
      +      },
      +      "toolName": {
      +        "const": "campaignPlanGenerate",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "confirmationCapability",
      +      "expiresAt",
      +      "inputDigest",
      +      "status",
      +      "toolName"
      +    ],
      +    "type": "object"
      +  }
      +]
  7. Changed3 schema fields changed
    • changedInput schema / properties / action / description
      Previous value: -"prepare_draft uses saved conversation; suggest_images requests image ideas. Ignore brief; append no user message. Omit for freeform input."New value: +"Existing-plan operation requiring planPublicId and current expectedVersion, mutually exclusive with choice. prepare_draft uses the saved conversation; suggest_images requests text image ideas. An action ignores brief and appends no user message."
    • changedInput schema / properties / brief / description
      Previous value: -"Exact request/revision. Omit action/choice; they override brief."New value: +"Exact freeform planning request or revision when action and choice are absent."
    • changedInput schema / properties / choice / description
      Previous value: -"Exact latest saved assistant choice; its label replaces brief. Omit choice/action for freeform input."New value: +"Latest saved assistant choice; its label replaces brief."
  8. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructive=true, idempotent=false, openWorld=true; the description adds genuinely new context — that it burns AI credits, is queued/asynchronous, and produces only planning text plus optional image ideas with no image/video/audio generation or publishing. It stops short of explaining the confirmation/idempotency retry protocol that the schema hints at.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each front-loaded with a distinct concern: what it does and costs, how revisions work, and what it does not produce. No filler or restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and the description covers cost, async queuing, and negative side effects well. The remaining gap is the body of destination/preference configuration that an agent must populate with 13 parameters and mostly bare schemas.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With only 38% schema description coverage across 13 parameters, the description compensates for the revision pair (planPublicId, expectedVersion) and the output nature, but says nothing about connectionSettings, mediaAssetIds, preferences, requestId, or timezone semantics. Too much of the parameter surface is left undocumented in both places.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Queues one AI text-planning turn') and scopes the inputs it draws on (owned accounts, saved media, brand context). This clearly separates it from sibling read/mutation tools like campaignPlanGet, imageGenerationStart, and campaignDraftSave.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The revision path is explicit ('Revisions require the plan identifier and current expectedVersion'), giving a clear branch condition. It does not, however, name when to prefer a sibling such as imageGenerationStart for actual image creation, so exclusions are only partially covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources