Skip to main content
Glama

meta_ads_catalogs_delete

Delete a Meta Ads product catalog permanently. This cascades to all products and stops dynamic ads that depend on it. Use only after confirming the catalog is no longer needed.

Instructions

Deletes a Product Catalog. Returns a success flag. Destructive and cascades — all products inside and any DPA campaigns consuming the catalog lose their product source and stop serving dynamic ads. Not automatically reversible — record before-state with mureo_state_action_log_append if you may need to roll back. Always call meta_ads_catalogs_get first to check product_count and operator-confirm before calling this.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reasonNoWhy this change is being made: one or two sentences naming the evidence and the expected effect. Stored in the journal and on the action_log entry this call produces, for the operator and the next session.
account_idNoMeta Ads account ID in the format 'act_XXXXXXXXXX' (e.g. 'act_1234567890'). Optional — falls back to META_ADS_ACCOUNT_ID from the configured credentials. The leading 'act_' prefix is required.
catalog_idYesCatalog ID to delete.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.20.0
    • addedInput schema / properties / reason
      Added value: +{
      +  "description": "Why this change is being made: one or two sentences naming the evidence and the expected effect. Stored in the journal and on the action_log entry this call produces, for the operator and the next session.",
      +  "maxLength": 500,
      +  "type": "string"
      +}
  2. Changed1 schema field changedv0.10.37
    • addedInput schema / additionalProperties
      Added value: +false
  3. Addedv0.9.12
  4. Removedv0.9.6
  5. Addedv0.9.2
  6. Removedv0.9.1
  7. Addedv1.0.5

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure, and it delivers. It explicitly states the operation is destructive, cascades to all products and DPA campaigns, stops dynamic ads, and is not automatically reversible. It also prescribes a mitigation (record before-state) and a precondition (check product_count and operator-confirm). This is exemplary transparency for a destructive tool.

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?

The description is compact and front-loaded: the core action and its most critical consequence ('Destructive and cascades') appear in the first two sentences. Every sentence earns its place, covering the action, the cascade, irreversibility, the rollback mitigation, and the required precondition. No filler or redundancy.

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

Completeness5/5

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

For a destructive tool with no annotations and no output schema, the description is complete. It tells the agent what happens, what to do before calling, how to protect against rollback needs, and what the return is ('success flag'). The only minor omission is the exact shape of the success flag, but that is not essential for correct invocation. The description fully compensates for the missing annotations and output schema.

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?

Schema coverage is 100%, so the schema already documents all three parameters. The description adds value by explaining the reason parameter's purpose ('Stored in the journal and on the action_log entry') and the account_id fallback behavior, which goes beyond the schema. It doesn't add detail for catalog_id, but the schema already covers that. This is above the baseline 3 because the description enriches the semantics of two parameters.

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 and resource: 'Deletes a Product Catalog.' It then immediately distinguishes the tool's destructive scope by explaining the cascade effect on products and DPA campaigns, which separates it from read-only catalog tools like meta_ads_catalogs_get and meta_ads_catalogs_list. The purpose is unambiguous and clearly tied to the tool name.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance: 'Always call meta_ads_catalogs_get first to check product_count and operator-confirm before calling this.' It also names the rollback alternative (mureo_state_action_log_append) and explains the condition under which it should be used. This is strong, actionable usage guidance that tells the agent the prerequisite step and the safety check.

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

Deploy Server

Other Tools