BEAR - WooCommerce Bulk Editor and Products Manager Professional

Bulk Assign WooCommerce Categories with AI: Move, Tag, Rename, Merge

To bulk assign WooCommerce categories with AI, you tell an assistant such as Claude which products belong where, "put every linen product into a new Linen category under Summer", and it does the filing for you: it finds the products, shows you a before and after preview, asks you to confirm how many products will change, and writes the categories in one operation you can roll back. This works through the MCP server built into BEAR. MCP is the standard way AI assistants connect to outside tools, and BEAR's server gives the assistant controlled access to your catalogue. The same conversation adds tags and brands, creates, renames, moves and deletes categories, merges two categories into one, and keeps your product attributes tidy: the whole of catalogue organisation, by chat.

A worked example: a new category for a product line

Create a category Linen under Summer and add every product with "linen" in its title to it. They keep their other categories.

What happens, step by step (the numbers are illustrative):

  1. The assistant looks the categories up. It lists the categories with their ids and parents and finds Summer. BEAR works with category ids, not names, so the assistant always resolves a name to an id first, and a typo cannot file products into a category nobody meant.
  2. It creates Linen under Summer. Creating a term changes no product, so it needs no confirmation. If a category called Linen already exists, BEAR does not make a second one: it reports the existing one with its id, and the assistant uses that.
  3. It selects the products. A filter on the title, "contains linen", returns an exact count, say 23 products, and a sample of them. The selection is frozen at that moment: products added to the shop a minute later are not in it. If the filter happened to match the whole catalogue, the answer flags it and the assistant has to tell you.
  4. It shows a preview. For a sample of the selection, 10 products unless you ask for more, BEAR computes the categories before and after the change, by name: "before: Shirts; after: Shirts, Linen". Nothing is written yet.
  5. You confirm the count. The write only goes through when the assistant passes the exact number of the selection, 23, which it gets from you. A different number is refused: that is the guard against an edit that reaches more products than you agreed to.
  6. BEAR writes and records. The 23 products get Linen, and Summer as well, because the connection ticks parent categories automatically. The whole operation lands in BEAR's history as one entry that can be rolled back.

Before you start

You need BEAR 2.2.4 with Enable the MCP server set to Yes in its settings, and an AI assistant that can use MCP connectors, such as Claude in the browser, the desktop app or Claude Code. The assistant connects with the key under MCP secret key, or with a personal key a shop manager receives from the administrator; with a personal key, creating, renaming and deleting terms needs a user who is allowed to manage product terms. How to connect is described on the BEAR MCP server documentation page.

Add, replace or move: how terms reach your products

Every bulk change of categories, tags, brands or attributes uses one of two modes, and choosing the right one matters more than any other detail:

  • Add ("append" in BEAR's terms) puts the new terms next to the ones the product has. "Add the tag gift-idea to these products" leaves their other tags alone.
  • Replace ("new") makes the given terms the product's only terms of that kind. "Set the categories of these products to Clearance" takes them out of every other category.

For categories and tags neither mode warns you, so say which one you mean: "add" or "keep their other categories" for adding, "only" or "instead of" for replacing. The preview shows the result per product, which is where a wrong mode becomes visible.

Moving products to another category

"Move everything from Spring to Summer" is a replace: the products in Spring get Summer as their only category, plus its parents. That is right when Spring was their only category. If some of them also sit in Sale or New, a replace takes them out of those as well; in that case ask for Summer to be added instead, and deal with Spring afterwards, either by deleting the Spring category or with the remove mode described below.

Removing one term from many products

Through the connection there is no "remove just this tag" mode for many products. What works: a replace with the terms those products should keep, when they all end up with the same set; deleting the term from the shop, when it should disappear everywhere; or, for a handful of products, one edit per product, each writing that product's list without the term. For a large selection, the Bulk Edit tab of BEAR in wp-admin has a remove mode, explained in bulk editing tags and brands.

Parent categories are ticked for you

Whenever the connection writes a category, it also ticks every category above it. Put a product in Clothing → Men → Shirts and it appears under Clothing and Men too, which is where a customer browsing the shop looks for it. WordPress and WooCommerce do not do this by themselves, and an edit by hand in wp-admin leaves the parents unticked. Two consequences: the preview shows the category you chose, while the parents are added at the moment of writing; and as long as a product stays in Shirts, every category write through the connection puts Men and Clothing back. To take it out of a parent, take it out of the subcategory as well.

A category filter does not include its subcategories

When the products are chosen by category, "products in Clothing" means products filed directly under Clothing. Products filed only in Shirts, created by hand without their parent, are not included. Say "Clothing and all its subcategories" and the assistant lists the subcategories in the filter too.

Variations are not filed

Categories, tags and brands belong to the product, not to its variations. A variable product is filed once and all its variations follow it.

Tags, brands and other taxonomies

Tags work like categories, without the nesting. To bulk add tags, ask for an add, "add the tag summer-26 to every product on sale"; to set them, ask for a replace, "replace the tags of these five products with linen, beach". Assigning WooCommerce brands in bulk works the same way once the assistant knows where your brands live, so it first lists every taxonomy registered for products: a brand may live in WooCommerce's own product_brand, in a brand plugin's taxonomy or in something a theme registered. That list also says whether a taxonomy can have parents and which ones are product attributes. Third-party taxonomies are handled like the built-in ones; creating a new taxonomy is not possible through the connection, that is done in code or with a plugin.

Filters can look for products that have no term at all, which is the quickest way to fill gaps:

Find every product that has no brand and give it the brand Northwind.

In the free version of BEAR, categories and the first product attribute can be changed on products through the connection; tags, brands and other taxonomies cannot, neither in bulk nor one product at a time, and the connection writes to at most 100 products every 30 minutes. Creating, renaming and deleting the terms themselves is not limited. The full list is in the free version limitations.

Create, rename, re-parent, merge and delete categories

Create

"Create the categories Linen, Wool and Cotton under Fabrics" adds several terms at once. A name that already exists is skipped rather than duplicated, and the answer lists the skipped ones with their ids, because WordPress would otherwise happily create a second Linen with the slug linen-2 and your filters would split in two. A parent only applies to taxonomies that can be nested, such as categories. The slug is built by WordPress unless you give one.

Rename

"Rename the category Tshirts to T-Shirts" changes the name and keeps the slug, so every link to the category still works, and the answer shows the name before and after. Changing the slug is possible, but the slug is part of the category's address, so old links stop working; the assistant is told to say so before doing it, and if your shop has a redirect plugin, that is the moment to add a redirect.

Move a category under another

"Move Shirts under Men" changes the category's parent. A category cannot become its own parent. The products already in Shirts are not re-filed by this: they keep the parent categories they had and do not get Men. If those products are in no other categories, one more request finishes the job, "set the categories of every product in Shirts to Shirts only", and the connection ticks the new parents while the old one goes. If some of them are in other categories too, ask for Men to be added instead.

Merge two categories

There is no single merge command, but two requests do it, and the first one is undoable:

  1. "Add the category Tees to every product in T-Shirts." A normal bulk add with preview, count confirmation and a history entry.
  2. "Delete the category T-Shirts." The products keep Tees and simply leave T-Shirts.

If T-Shirts has subcategories, move them under Tees first: a deleted category's children move up to its parent rather than going with it.

Delete

Before deleting, BEAR shows each term with the number of published products it holds and the number of child terms, and asks for a yes. The products survive; they just leave the term. Child terms move up one level. And there is no way back: terms have no trash and are not in BEAR's history, so a deleted category is gone for good, together with its description and slug. The assistant has to say this before you answer.

Attributes and their values

Attributes such as Colour or Material look like taxonomies, but WooCommerce keeps a separate register for them, so BEAR has separate tools that keep both in step.

  • See what exists. "List the product attributes with their values and how many products use each." This is the first step before creating anything: an attribute called Colour may already exist as pa_color.
  • Create an attribute with its values. "Create a Material attribute with Cotton, Linen and Wool." A second attribute with the same name or slug is refused, with a pointer to the existing one, because two attributes meaning the same thing split the catalogue and merging them means re-tagging products. The slug may have at most 28 characters. For sizes and numbers ask for numeric sorting, so 2 comes before 10.
  • Add values. "Add Hemp to Material" skips values that already exist. A new value is on no product yet.
  • Put an attribute on products in bulk. "Add Material: Linen to every product in the Linen category." Add and replace work as for categories. A product that did not have the attribute gets it as visible information on the product page, not as a variation choice. On a variable product, a replace that would drop values its variations use comes with a warning naming the products and values: those variations would stay in the shop but could no longer be chosen. A selection that contains variations is refused, because on a variation an attribute is what the variation is, and that is changed with the variation tools described in creating WooCommerce variations with AI.
  • Rename a value. "Rename the colour Navy to Navy Blue" works like renaming a category. Keep the slug as it is: variations refer to a value by its slug.
  • Delete an attribute. The heaviest operation here. BEAR counts how many products use the attribute, including drafts and products in the trash, and explains that variations told apart by it lose what distinguished them. It needs your explicit yes, and neither the attribute nor its values can be restored.

The name of an attribute itself, as opposed to its values, is changed under Products → Attributes in wp-admin.

Checks and undo

RequestWhat BEAR checksWay back
Add or replace categories, tags, brands, attributes on productsExact count confirmation, preview by name, warning when a replace would orphan variations, variations refusedRoll back the operation in BEAR's history
Create terms or valuesExisting names are skipped, not duplicatedDelete the new term
Rename or re-parent a termA term cannot be its own parent; a slug change is announcedRename or move it back; the answer shows the previous name, slug and parent
Delete termsProduct and child counts shown, explicit yes requiredNone
Create an attributeDuplicates and over-long slugs refusedDelete it while no product uses it
Delete an attributeUsage counted, including drafts and trash, explicit yes requiredNone

A rollback restores the terms each product had before the operation, product by product; ask "undo the last category change" and the assistant finds the operation in the history. The free version keeps the last two bulk operations of each person, so undo soon. More about the history is on the History documentation page, and the same jobs done by hand in BEAR's table are covered in bulk editing categories.

Ready prompts

  • "Create a category Linen under Summer and add every product with linen in its title to it, keeping their other categories."
  • "Move every product from Spring to Summer. Show me the preview first."
  • "Add the tag gift-idea to all products between 20 and 50 that are in stock."
  • "Find every product without a brand and give it the brand Northwind."
  • "Rename the category Tshirts to T-Shirts, without changing its address."
  • "Move the category Shirts under Men, then file its products under Men as well."
  • "Merge the category T-Shirts into Tees, then delete T-Shirts."
  • "Which categories have no products? Show them with their subcategories before we delete anything."
  • "Create a Material attribute with Cotton, Linen and Wool, and add Material: Linen to every product in the Linen category."
  • "Undo the last category change."

Questions

How do I move WooCommerce products to another category without losing their other categories?

Ask for the new category to be added rather than set, "add Summer to these products", and then remove the old one: delete it if it should go entirely, or use the remove mode of BEAR's Bulk Edit tab for a large selection. A plain "move" is a replace and takes the products out of every other category.

Why do my products also appear in the parent category?

Because the connection ticks every category above the one you chose, so customers browsing the parent find the product. It is deliberate and happens on every write through the connection, not in wp-admin.

Does renaming a WooCommerce category break links?

Not when only the name changes: the slug, and with it the address, stays the same. A new slug changes the address, and links to the old one stop working until you add a redirect.

Can a deleted category be restored?

No. Terms have no trash and are not in BEAR's history. The products are untouched apart from leaving that category, so they can be filed elsewhere, but the category itself would have to be created again.

Checklist

  • The MCP server is on and your assistant is connected.
  • You said whether terms are added or replaced, and checked it in the preview.
  • The product count you confirmed is the count you expected.
  • For a category filter, you said whether subcategories are included.
  • Renames keep the slug unless you plan a redirect.
  • Before deleting a category or an attribute, you read the product counts and accepted that there is no undo.
  • On a variable product, no warning about variations that would lose their attribute value.
  • You know which history entry to roll back if a bulk change was wrong.

If something behaves differently on your shop, ask on the BEAR support forum.