Install AI Tools

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

Claude

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.

Claude Desktop setup

Codex

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. This setup also works with the Codex IDE extension and the ChatGPT Work desktop app.

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.

ChatGPT online setup

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

Logging ​

The CLI uses pino for structured logging with pretty-printed output by default.

Output Modes ​

Pretty Print (Default) ​

Human-readable output with colors, suitable for interactive terminal use:

[18:31:58] INFO: Deploying cartridges...
[18:31:59] INFO: Upload complete

JSON Lines (--jsonl) ​

Machine-readable output for scripting, CI/CD pipelines, and log aggregation:

bash
b2c code deploy --jsonl
json
{"level":"info","time":1764113529411,"command":"code deploy","msg":"Deploying cartridges..."}
{"level":"info","time":1764113529412,"command":"code deploy","msg":"Upload complete"}

Log Levels ​

Control verbosity with --log-level or -D for debug:

LevelDescription
traceMaximum verbosity
debugDetailed operational info
infoNormal messages (default)
warnWarnings
errorErrors only
silentNo output
bash
b2c code deploy --log-level debug
b2c code deploy -D  # shorthand for --log-level debug

In debug/trace mode, context objects are displayed:

[18:31:58] INFO: Upload complete
    command: "code deploy"
    file: "cartridge.zip"
    bytes: 45678
    duration: 1234

Flags ​

FlagEnvironment VariableDescription
--log-levelSFCC_LOG_LEVELSet log verbosity
-D, --debugSFCC_DEBUGEnable debug logging
--jsonl, --json-logsSFCC_JSON_LOGSOutput log messages as JSON lines
--jsonOutput command result as JSON

Environment Variables ​

VariableDescription
SFCC_LOG_LEVELLog level (trace, debug, info, warn, error, silent)
SFCC_DEBUGEnable debug logging
SFCC_LOG_TO_STDOUTSend logs to stdout instead of stderr
SFCC_REDACT_SECRETSSet to false to disable secret redaction
NO_COLORIndustry standard to disable colors
DEBUGSet to oclif* for CLI framework debug logs

CLI Framework Debugging ​

For low-level debugging of the CLI parser and command loading, use the oclif debug flag:

bash
DEBUG=oclif* b2c code deploy

This outputs internal oclif framework logs, useful for troubleshooting command resolution, plugin loading, and argument parsing issues.

Output Streams ​

By default, logs go to stderr so that command output (data, IDs, etc.) can be piped cleanly:

bash
# Logs go to stderr, JSON output goes to stdout
b2c sites list --json 2>/dev/null | jq '.sites[0].id'

To send logs to stdout instead:

bash
SFCC_LOG_TO_STDOUT=1 b2c code deploy

Secret Redaction ​

Sensitive fields are automatically redacted from log output:

  • password, secret, token
  • client_secret, access_token, refresh_token
  • api_key, authorization
[18:31:58] INFO: Authenticating
    client_id: "my-client"
    client_secret: "[REDACTED]"

To disable redaction (for debugging):

bash
SFCC_REDACT_SECRETS=false b2c code deploy --debug

CI/CD Usage ​

For CI/CD pipelines, use JSON lines log output and disable colors:

bash
NO_COLOR=1 b2c code deploy --jsonl 2>&1 | tee deploy.log

Or explicitly set the log level:

bash
SFCC_LOG_LEVEL=info b2c code deploy --jsonl