Set product features
ps_set_product_features
Fills in product features such as colour or material.
TellMyShop Free: No. This tool is only in TellMyShop Pro. TellMyShop Free has only ready reports that read your store.
Ask Claude
„Set Material = Velvet for products 112, 113 and 140. Use the existing value if there is one.”
Example preview
3 items, feature Material (ID 5), mode replace. Product 112: Fabric -> Velvet (value ID 22) Product 113: (none) -> Velvet Product 140: Fabric -> Velvet
Technical details
Sets or removes a feature value (for example Colour, Material) for many products. Give the value as value_id (existing, from ps_list_features) or new_value (text, creates a new predefined value; if one already exists, even with different letter case, the tool refuses and returns the value_id to use). mode=replace (default) replaces the feature's values in the product, add appends another value. Features drive the store's filters.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| lang | string | when: shop has more than one active language | ISO code of the language you write in. Required when the shop has more than one active language. Claude writes the content in this language. |
| shop_id | integer | no | Shop ID in a multistore installation. Defaults to the shop in the connector address. IDs are listed by ps_get_shop_info. |
| mode | enum: replace | add | no | replace = replace the feature's values, add = add another value. Default replace. |
| items | array of object | yes | Items: product + feature + one of value_id, new_value, remove. Max 100 items. Fields of each item: product (string, required): Product (id:123, ref:ABC-1, ean:..., product URL, ID, EAN or reference). Max 300 characters. feature_id (integer, required): Feature ID (ps_list_features). value_id (integer): ID of an existing value. new_value (string): New value (text in language lang). Max 255 characters. remove (boolean): true = remove this feature from the product. |
| confirm | boolean | no | false (default) returns a preview and saves nothing. true executes, only after the user approved the preview, together with change_token. |
| change_token | string | when: confirm=true | Token from the preview. Required with confirm=true. Valid 30 minutes, single use, bound to the previewed arguments and data state. |
Limits
Max 100 items per call. Refuses to create a duplicate value.
What you see before anything is saved
Claude first calls the tool without confirming it. The module returns a preview (current and new values) and a single-use token valid for 30 minutes. Claude shows you the preview and saves the change only after your yes.
Related tools
- List features ps_list_features
- Search products ps_search_products
- Revert change ps_revert_change
Use cases with this tool
Last updated: 2026-10-11