Install AI Tools

B2C Commerce tools, documentation, and skills for your assistant.

Claude

Using Claude Desktop? See Claude Desktop (Cowork) setup.

Install the plugin Recommended

bash
claude plugin marketplace add SalesforceCommerceCloud/b2c-developer-tooling
claude plugin install b2c-dx-mcp@b2c-developer-tooling

Start a new Claude Code session. To install for the current project only, run it from your project directory with --scope project.

Manual MCP setup
bash
claude mcp add --transport stdio --scope user b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Start a new session. To configure the current project only, run it from your project directory with --scope project. See Claude Code MCP setup.

Codex/ChatGPT

Using the ChatGPT desktop app (ChatGPT Work)? See ChatGPT Work setup.

Install the plugin Recommended

bash
codex plugin marketplace add SalesforceCommerceCloud/b2c-developer-tooling
codex plugin add b2c-dx-mcp@b2c-developer-tooling

Start a new Codex session in your project. Codex plugins also work in ChatGPT Work.

Manual MCP setup
bash
codex mcp add b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Or add this to ~/.codex/config.toml (or $CODEX_HOME/config.toml if customized):

toml
[mcp_servers.b2c-dx-mcp]
command = "npx"
args = ["-y", "@salesforce/b2c-dx-mcp@latest"]

Start a new session. See Codex MCP configuration.

VS Code

Install the plugin Recommended

  1. Open the Command Palette (Cmd/Ctrl+Shift+P) and run Chat: Install Plugin from Source.
  2. Enter SalesforceCommerceCloud/b2c-developer-tooling.
  3. Select b2c-dx-mcp and follow the installation prompts.
  4. Start a new chat in GitHub Copilot.
Manual MCP setup

Add this to .vscode/mcp.json in your workspace:

json
{
  "servers": {
    "b2c-dx-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@salesforce/b2c-dx-mcp@latest"]
    }
  }
}

See VS Code MCP setup.

Copilot CLI setup

Cursor

Reload the MCP server in Cursor after installation.

Manual MCP setup

Add this to .cursor/mcp.json in your project:

json
{
  "mcpServers": {
    "b2c-dx-mcp": {
      "command": "npx",
      "args": ["-y", "@salesforce/b2c-dx-mcp@latest"]
    }
  }
}

For all projects, use ~/.cursor/mcp.json instead.

See Cursor's MCP documentation.

OpenCode

Add this to opencode.json in your project:

json
{
  "mcp": {
    "b2c-dx-mcp": {
      "type": "local",
      "command": ["npx", "-y", "@salesforce/b2c-dx-mcp@latest"],
      "enabled": true
    }
  }
}

Restart OpenCode. For all projects, use ~/.config/opencode/opencode.json. See OpenCode MCP setup.

Gemini

Run:

bash
gemini mcp add --scope user b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Start a new Gemini CLI session. To configure the current project only, run it from your project directory with --scope project. See Gemini CLI MCP setup.

No separate skills plugins needed.

Other clients and manual setup →
Skip to content
View as Markdown
View as Markdown

Scaffold Commands ​

The b2c scaffold commands help you generate B2C Commerce components from templates (scaffolds). Built-in scaffolds include cartridges, controllers, hooks, custom APIs, job steps, and Page Designer components.

Commands Overview ​

CommandDescription
b2c scaffold listList available scaffolds
b2c scaffold generate <id>Generate files from a scaffold
b2c scaffold info <id>Show scaffold details and parameters
b2c scaffold search <query>Search scaffolds by name/tags
b2c scaffold init <name>Create a custom scaffold
b2c scaffold validate <path>Validate a scaffold manifest

b2c scaffold list ​

List available project scaffolds with optional filtering.

B2C CLI listing scaffolds for cartridges, controllers, Custom APIs, hooks, job steps, Page Designer components, and services.

Usage ​

bash
b2c scaffold list [--category <category>] [--source <source>]

Flags ​

FlagDescription
--category, -cFilter by category (built-in scaffolds use cartridge; custom scaffolds may use other categories)
--source, -sFilter by source: built-in, user, project, plugin
--columnsColumns to display (comma-separated)
--extended, -xShow all columns including description and path

Output ​

Default columns: id, displayName, category, source

Extended columns (with -x): adds description and path

Examples ​

bash
# list all available scaffolds
b2c scaffold list

# list only cartridge scaffolds
b2c scaffold list --category cartridge

# list project-local scaffolds
b2c scaffold list --source project

# show extended information
b2c scaffold list -x

b2c scaffold generate ​

Generate files from a scaffold template. You can also use the shorthand b2c scaffold <id>.

Usage ​

bash
b2c scaffold generate <scaffoldId> [--name <name>] [--option key=value] [--output <dir>]
b2c scaffold <scaffoldId>  # shorthand

Arguments ​

ArgumentDescription
scaffoldIdID of the scaffold to generate (required)

Flags ​

FlagDescription
--name, -nPrimary name parameter (shorthand for --option name=VALUE)
--output, -oOutput directory (defaults to scaffold default or current directory)
--optionParameter value in key=value format (repeatable)
--dry-runPreview files without writing them
--force, -fSkip prompts, use defaults, and overwrite existing files

Examples ​

bash
# generate a cartridge interactively
b2c scaffold generate cartridge

# generate with name specified
b2c scaffold cartridge --name app_custom

# generate with multiple options
b2c scaffold generate controller --option controllerName=Account --option cartridgeName=app_custom

# preview what would be generated
b2c scaffold generate cartridge --name app_custom --dry-run

# skip all prompts and use defaults
b2c scaffold generate cartridge --name app_custom --force

# generate to a specific directory
b2c scaffold generate cartridge --name app_custom --output ./src/cartridges

b2c scaffold info ​

Show detailed information about a scaffold including its parameters and usage.

Usage ​

bash
b2c scaffold info <scaffoldId>

Arguments ​

ArgumentDescription
scaffoldIdID of the scaffold to get info for (required)

Output ​

Displays:

  • Scaffold ID, category, source, and description
  • Tags (if any)
  • Parameters with types, requirements, defaults, and conditions
  • Usage example with required parameters
  • Post-generation instructions (if any)

Examples ​

bash
# show info for the cartridge scaffold
b2c scaffold info cartridge

# show info for the controller scaffold
b2c scaffold info controller

Search for scaffolds by name, description, or tags.

Usage ​

bash
b2c scaffold search <query> [--category <category>]

Arguments ​

ArgumentDescription
querySearch query (required)

Flags ​

FlagDescription
--category, -cFilter results by category
--columnsColumns to display (comma-separated): id, displayName, category, source, description
--extended, -xShow all columns including extended fields

Output ​

Default columns: id, displayName, category, description

Extended columns (with -x): adds source

Examples ​

bash
# search for scaffolds related to API
b2c scaffold search api

# search within a specific category
b2c scaffold search template --category page-designer

b2c scaffold init ​

Create a new custom scaffold template.

Usage ​

bash
b2c scaffold init [name] [--project | --user | --output <dir>]

Arguments ​

ArgumentDescription
nameName for the new scaffold (kebab-case, optional - prompts if not provided)

Flags ​

FlagDescription
--projectCreate in project scaffolds directory (.b2c/scaffolds/)
--userCreate in user scaffolds directory (~/.b2c/scaffolds/)
--output, -oCustom output directory for the scaffold
--force, -fOverwrite existing scaffold if it exists

Examples ​

bash
# create a project-local scaffold interactively
b2c scaffold init --project

# create a user scaffold with a specific name
b2c scaffold init my-component --user

# create a scaffold in a custom directory
b2c scaffold init my-scaffold --output ./custom-scaffolds

b2c scaffold validate ​

Validate a custom scaffold manifest and templates.

Usage ​

bash
b2c scaffold validate <path> [--strict]

Arguments ​

ArgumentDescription
pathPath to the scaffold directory (required)

Flags ​

FlagDescription
--strictTreat warnings as errors

Validation Checks ​

  • Manifest structure (scaffold.json)
  • Required fields and types
  • Parameter definitions and validation patterns
  • Template file existence
  • Orphaned template files
  • EJS syntax in templates

Examples ​

bash
# validate a custom scaffold
b2c scaffold validate ./.b2c/scaffolds/my-scaffold

# validate with strict mode
b2c scaffold validate ./my-scaffold --strict

Built-in Scaffolds ​

ScaffoldCategoryDescription
cartridgecartridgeB2C cartridge with standard directory structure
controllercartridgeSFRA controller with route handlers and middleware
hookcartridgeHook implementation with hooks.json registration
servicecartridgeB2C web service using LocalServiceRegistry
custom-apicartridgeCustom SCAPI endpoint with OAS 3.0 schema
job-stepcartridgeCustom job step with steptypes.json registration
page-designer-componentcartridgePage Designer component with meta/script/template

Use b2c scaffold info <id> to see the parameters for each scaffold.