This documentation always describes the latest published version.
The plugin ships two skills. There are no hooks and no custom slash commands.
| Skill | Invocation | Purpose |
|---|---|---|
| Setup | /syliusadmin:setup |
Setup and repair: venv, dependencies, .env files, see Installation |
| Product wizard | /syliusadmin:sylius-produkt-wizard |
Guided dialog for creating a product, also triggered by "Produkt anlegen" or "neues Produkt" |
An MCP tool cannot ask the user questions. That is why the dialog is a skill on top of the server's tools. The wizard contains no business logic of its own: every write goes through the server's validation.
It first clarifies which environment you mean if that is ambiguous, and then works through these steps:
| Step | Content |
|---|---|
| 1. Product type | Simple (exactly one variant) or configurable (options such as color or size, several variants) |
| 2. Base data | Code, name and description per locale, channels (via list_channels), category (via list_taxons), price per channel in cents |
| 3. Options | Configurable only: use existing options or create new ones with create_product_option; value codes with a prefix such as color_red |
| 4. Create product | create_product, always disabled |
| 5. Plan variants | Cross product of the option values; variant codes and prices agreed with you |
| 6. Create variants | add_variant per combination |
| 7. Check SEO | metaDescription and metaKeywords per translation, add via update_product if needed |
| 8. Activate | set_product_active, then a summary with product code and number of variants |
Not part of the wizard are images (a separate step afterwards), deleting failed attempts (in the Sylius admin) and later price changes (directly with update_variant_channel_pricing).
If one variant of a series fails, the variants already created remain. The wizard shows you the error and asks whether to continue with the remaining combinations.
You phrase requests in natural language, Claude picks the matching tools.
Create a product with a variant:
"Create a new product: code
stickmuster-blumenwiese, channelWEB, name 'Stickmuster Blumenwiese'. Add a variantstickmuster-blumenwiese-v1at 4.99 EUR in channelWEBand activate the product."
Claude calls list_channels, create_product, add_variant (price 499 in cents) and set_product_active.
Write texts and SEO:
"Read the product
stickmuster-blumenwiese, write a description and meta data for it and save them."
Claude reads with get_product, writes the text in the conversation and saves it with update_product(translations=...). The server does not generate texts itself.
Change a price:
"Set the price of variant
stickmuster-blumenwiese-v1in channelWEBto 5.99 EUR and keep the strike-through price."
This uses update_variant_channel_pricing with price=599; originalPrice stays untouched.
Create and move a category:
"Create the category
osternundersaisonaland movefruehlingunderostern."
Register an image by CDN URL:
"Register the image
https://cdn.example.com/bluemchen.webpfor the productstickmuster-blumenwiese."
This uses add_product_image with cdn_url. For a local file, SYLIUS_IMAGE_UPLOAD_BASE_DIR must be set.
Create a shipping method:
"Create the shipping method
standard-defor the zonedeutschlandwith a flat rate of 4.99 EUR for every channel."
Claude queries list_channels first, because the configuration needs an amount for every channel of the shop.
Disable a country:
"Disable the country
CH."
Stage and prod are separate MCP servers. You tell them apart by the server name (syliusadmin-stage-mcp and syliusadmin-prod-mcp); in addition, every server names its environment in its instructions, and list_channels returns it in the environment field. A tool call cannot switch the environment.
Write to stage first and check the result in the Sylius admin before you give the same request to the prod server. The server has no rollback and deletes nothing automatically.