delete_posts
Bulk-delete posts matching a filter, such as drafts in a campaign, with a required filter and a dry-run preview unless confirm:true is set.
Instructions
Bulk-delete posts matching a filter — e.g. every draft in a campaign. SAFETY: a filter is required (it will never delete everything), published and processing posts are always excluded, and it runs as a DRY RUN unless confirm:true. Always call once without confirm to see what matches, show the user, then confirm.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Explicit post IDs to delete | |
| label | No | Delete posts whose internal label matches (case-insensitive substring) | |
| status | No | Restrict to one status, e.g. 'draft'. Defaults to everything except published/processing. | |
| confirm | No | false/omitted = dry run listing what WOULD be deleted. true = actually delete. Always dry-run first. | |
| campaign | No | Delete posts tagged with this campaign, e.g. 'garmin-cirqa-2026' |