Skip to main content
Glama

WooCommerce: Delete coupon

woocommerce_delete_coupon
Destructive

Delete a WooCommerce coupon by ID, choosing to move it to trash or force permanent removal. Use it to remove expired or invalid discounts from a store.

Instructions

[UNIFIED] Delete a WooCommerce coupon. Can force delete or move to trash.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "site": "<site>",
      "coupon_id": "<coupon_id>"
    },
    "name": "woocommerce_delete_coupon"
  }
}

Input Schema

NameRequiredDescriptionDefault
siteYes
forceNo
coupon_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.14.0
  2. Removedv3.13.1
  3. First observedv3.4.0

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the safety profile is covered structurally. The description adds real value by disclosing that two distinct outcomes exist (permanent force delete vs. move to trash), but it never says which is the default, that force delete is irreversible, or what happens to a coupon already trashed.

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

Conciseness4/5

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

Two short sentences, front-loaded with the action, with no filler. The '[UNIFIED]' tag is noise but negligible, and the second sentence could be tightened into a default/override statement rather than an open-ended 'can'.

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

Completeness2/5

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

For a destructive mutation with zero schema description coverage, no output schema and no annotation-level detail about outcomes, the description is thin. It should state the default soft-delete behavior, that force=true permanently destroys the coupon, and what the 'site' target means.

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

Parameters2/5

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

Schema description coverage is 0% across three parameters, so the description must carry the burden and largely fails: it alludes to the 'force' behavior without naming the parameter or stating its default (false) or the permanence implication, and says nothing about 'site' or 'coupon_id'. Only one of three parameters gets even indirect treatment.

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

Purpose4/5

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

States a specific verb and resource ('Delete a WooCommerce coupon') and names the two deletion modes. It does not explicitly distinguish itself from siblings like woocommerce_update_coupon, but the verb+resource pairing is unambiguous on its own.

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

Usage Guidelines2/5

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

The description mentions that a coupon can be force-deleted or trashed but gives no guidance on when to choose which mode, no prerequisites (e.g. permissions, whether the coupon must exist), and no routing to alternatives such as updating or listing coupons. The agent must infer the choice of mode from the bare parameter name.

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