Skip to main content
Glama

AdsAgent — Meta Ads MCP

overview_update_ad_statuses

Prepare 1-10 ad configured-status changes in OAuth Safe Mode. Each item needs ad_id, ad_account_id and target_configured_status=ACTIVE|PAUSED. Configured ACTIVE does not prove delivery: a parent may be paused. Review current/new values, then overview_update_confirm after approval

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageNo
retryableNo
support_refNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / properties / items / items / allOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "properties": {
      +          "ad_id": {
      +            "not": {
      +              "type": "null"
      +            }
      +          }
      +        },
      +        "required": [
      +          "ad_id"
      +        ]
      +      },
      +      {
      +        "properties": {
      +          "entity_id": {
      +            "not": {
      +              "type": "null"
      +            }
      +          }
      +        },
      +        "required": [
      +          "entity_id"
      +        ]
      +      }
      +    ]
      +  },
      +  {
      +    "anyOf": [
      +      {
      +        "properties": {
      +          "target_configured_status": {
      +            "not": {
      +              "type": "null"
      +            }
      +          }
      +        },
      +        "required": [
      +          "target_configured_status"
      +        ]
      +      },
      +      {
      +        "properties": {
      +          "status": {
      +            "not": {
      +              "type": "null"
      +            }
      +          }
      +        },
      +        "required": [
      +          "status"
      +        ]
      +      }
      +    ]
      +  }
      +]
    • addedInput schema / properties / items / items / properties
      Added value: +{
      +  "ad_account_id": {
      +    "description": "Public ad_account_id from the same ad's read result.",
      +    "type": [
      +      "string",
      +      "number"
      +    ]
      +  },
      +  "ad_id": {
      +    "description": "Exact ad_id from the selected read result; no duplicates.",
      +    "type": [
      +      "string",
      +      "number",
      +      "null"
      +    ]
      +  },
      +  "entity_id": {
      +    "description": "Legacy alias for ad_id; prefer ad_id.",
      +    "type": [
      +      "string",
      +      "number",
      +      "null"
      +    ]
      +  },
      +  "status": {
      +    "description": "Legacy alias for target_configured_status; if both are set they must agree.",
      +    "pattern": "^\\s*(?:[Aa][Cc][Tt][Ii][Vv][Ee]|[Pp][Aa][Uu][Ss][Ee][Dd])\\s*$",
      +    "type": [
      +      "string",
      +      "null"
      +    ]
      +  },
      +  "target_configured_status": {
      +    "anyOf": [
      +      {
      +        "enum": [
      +          "ACTIVE",
      +          "PAUSED"
      +        ],
      +        "type": "string"
      +      },
      +      {
      +        "pattern": "^\\s*(?:[Aa][Cc][Tt][Ii][Vv][Ee]|[Pp][Aa][Uu][Ss][Ee][Dd])\\s*$",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    ],
      +    "description": "Desired configured state; ACTIVE does not guarantee effective delivery."
      +  }
      +}
    • addedInput schema / properties / items / items / required
      Added value: +[
      +  "ad_account_id"
      +]
    • addedInput schema / properties / items / maxItems
      Added value: +10
    • addedInput schema / properties / items / minItems
      Added value: +1
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations only provide readOnlyHint:false, openWorldHint:true, destructiveHint:false. The description adds genuinely useful behavioral nuance: that this is a two-phase prepare/review/confirm flow, that 'OAuth Safe Mode' scopes how changes are staged, and the key misleading-assumption caveat that 'Configured ACTIVE does not prove delivery: a parent may be paused'. No contradiction with annotations.

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?

Four sentences, all with a purpose: scope+verb, item requirements+valid values, behavioral caveat, and next step. There is no filler, and the most important detail ('ACTIVE does not prove delivery') is isolated for impact. Excellent density per line of text.

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?

Given the presence of an output schema, the description correctly does not explain return values; it does cover the number of items, required per-item fields, the status/pause caveat, and the exact sibling to call next. The only notable omission is an explicit 'this does NOT require a re-run/does not apply immediately' statement, but the prepare→review→confirm wording makes that clear; minor gap overall.

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

Parameters4/5

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

With schema description coverage reported as 0%, the description compensates by listing the essential per-item fields (ad_id, ad_account_id, target_configured_status) and the only two acceptable values ('ACTIVE' and 'PAUSED'). It also communicates the 1-10 item bound. It doesn't mention legacy aliases (entity_id, status) that the schema permits, but the schema itself documents those, and this guidance tells the agent the standard forms.

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?

The description opens with a specific verb+resource ('Prepare 1-10 ad configured-status changes') and states the scope and mode ('OAuth Safe Mode'). It also routes the agent through the lifecycle: prepare, review, then confirm. It is clearly distinguishable from siblings like overview_update_ad_status (singular), overview_update_confirm, and overview_update_deny.

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 description gives tangible usage context: when to use it is implied as 'preparing batched status changes' in OAuth Safe Mode, and it explicitly names the follow-up sibling (overview_update_confirm after approval). It does not, however, say when to prefer a different sibling such as overview_update_ad_status (singular) or campaign/adset variants.

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