# Sylius

Symfony commerce framework with official admin (171 tools) and shop MCP server plugins.

Open-source e-commerce framework on Symfony with a full admin, storefront, and API Platform REST API. The Sylius org publishes two MCP plugins: AdminMcpServerPlugin exposes 171 tools across 34 admin resource groups behind OAuth 2.0 PKCE, and McpServerPlugin exposes shop tools for search, cart, and checkout. Sylius Plus is the paid closed edition.

Alternative to: Shopify, Adobe Commerce

- Capabilities: adaptable, operable
- Vertical: ecommerce
- Shape: business-app
- Form factor: web-app
- Execution model: deterministic
- Provenance: human-written (recorded, never ranked)
- Repo: https://github.com/Sylius/Sylius (MIT), 8521 stars, last commit 2026-09-02
- Last activity: 2026-09-02
- Page: apps/sylius--sylius.html
- JSON: apps/sylius--sylius.json

## Use it when

- I run an agency and want a Symfony store whose admin my client's agent can operate over MCP with proper OAuth
- I need B2B or multi-channel commerce on PHP and expect to customize templates and resources

## Gotchas

- Admin MCP needs Sylius 2.1 or 2.2, Symfony 7.4, an RSA keypair, and ROLE_API_ACCESS on the admin user
- On Sylius 2.2.x a symfony/type-info patch must be applied for the admin MCP plugin to warm its cache
- The listed repo is the core; you scaffold from sylius/sylius-standard

## Editions

- Sylius Community: Free, open source
  - source: composer create-project sylius/sylius-standard
- Sylius Plus: Free, closed source
  - hosted: https://sylius.com/plus/

## Adaptable: make it yours

Effort: light-edit (19 things to edit)

Projects start from sylius/sylius-standard, so the surface is Symfony's: .env for database, mailer, JWT keys, and messenger transports, then config/packages/*.yaml for Sylius settings. The MCP plugins add their own SYLIUS_ADMIN_MCP_SERVER_* and SYLIUS_MCP_SERVER_* variables. Real adaptation (templates, custom resources) is small Twig and YAML edits in a project you own; the core stays a Composer dependency.

- Env vars: APP_ENV, APP_SECRET, DATABASE_URL, MAILER_DSN, JWT_SECRET_KEY, JWT_PUBLIC_KEY, JWT_PASSPHRASE, SYLIUS_MESSENGER_TRANSPORT_MAIN_DSN, SYLIUS_PAYMENT_ENCRYPTION_KEY_PATH, SYLIUS_ADMIN_MCP_SERVER_API_URL, SYLIUS_ADMIN_MCP_SERVER_OAUTH_PRIVATE_KEY, SYLIUS_ADMIN_MCP_SERVER_OAUTH_PUBLIC_KEY, SYLIUS_ADMIN_MCP_SERVER_OAUTH_ENCRYPTION_KEY, SYLIUS_ADMIN_MCP_SERVER_VERIFY_SSL, SYLIUS_MCP_SERVER_API_SHOP_BASE_URI
- Config files: .env, config/packages/_sylius.yaml, config/packages/sylius_mcp_server.yaml, config/packages/league_oauth2_server.yaml
- Prompt files: none
- Accounts you'll need: none

## Operable: what an agent can drive

Operability: official. Interface: mcp at https://github.com/Sylius/AdminMcpServerPlugin (published by the builder, local).

### Reach (partial coverage)

- Manage products, variants, taxons: reachable. AdminMcpServerPlugin README: 171 tools covering products and more; docs/tools.md lists 34 resource groups
- Manage orders: reachable. AdminMcpServerPlugin README: orders
- Manage customers: reachable. AdminMcpServerPlugin README: customers
- Manage promotions and coupons: reachable. AdminMcpServerPlugin README: promotions
- Manage shipping and payment methods: reachable. AdminMcpServerPlugin README: shipping
- Channels, currencies, locales: reachable. 34 resource groups per docs/tools.md; shop plugin has fetch_channel, fetch_currency
- Shop: search, cart, checkout: reachable. McpServerPlugin tools search_products, create_order, add_item_to_order, select_shipping_method, select_payment_method, complete_checkout at /mcp/shop
- Sales statistics and reports: undetermined. not named in the README; check docs/tools.md
- Sylius Plus features (B2B suite, OnePageCheckout): not reachable. paid closed edition, not in the open plugin

## Code stack

- Languages: PHP, JavaScript
- Frameworks: Symfony 7, API Platform, Doctrine
- Package manager: composer
- Database: MySQL, PostgreSQL
- Hosting target: Docker, any PHP host

## Evidence and confidence

- formFactor: Symfony web app with admin and shop (confidence 0.95)
- executionModel: no model at runtime (confidence 0.95)
- operability: both MCP plugins live under github.com/Sylius (confidence 0.95)
- effort: Sylius/Sylius .env names 17 vars; plugin README documents its .env block (confidence 0.8)
- editions: README: Sylius Plus paid with B2B suite and SLA support (confidence 0.7)
- active: core pushed 2026-09-02; both MCP plugins pushed 2026-09-02
- reach:  (confidence 0.85)

## Open questions

- Sylius Plus pricing
- Whether the admin MCP exposes statistics and reports

## Sources

- https://github.com/Sylius/Sylius (sourcing:ecommerce:vendor)
- https://github.com/Sylius/AdminMcpServerPlugin (sourcing:ecommerce:vendor)
- https://github.com/Sylius/McpServerPlugin (sourcing:ecommerce:vendor)
