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

@salesforce/b2c-tooling-sdk / config / ResolvedB2CConfig

Interface: ResolvedB2CConfig ​

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:615

Result of configuration resolution with factory methods.

Provides both raw configuration values and factory methods for creating B2C SDK objects (B2CInstance, AuthStrategy, MrtClient) based on the resolved configuration. Use the has* methods to check availability before calling factory methods, which throw errors if required configuration is missing.

Example ​

typescript
import { resolveConfig } from '@salesforce/b2c-tooling-sdk/config';

const config = resolveConfig({
  hostname: process.env.SFCC_SERVER,
  clientId: process.env.SFCC_CLIENT_ID,
});

if (config.hasB2CInstanceConfig()) {
  const instance = config.createB2CInstance();
  await instance.webdav.propfind('Cartridges');
}

if (config.hasMrtConfig()) {
  const mrtAuth = config.createMrtAuth();
}

Properties ​

sources ​

readonly sources: ConfigSourceInfo[]

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:623

Information about sources that contributed values or instance-catalog context


values ​

readonly values: NormalizedConfig

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:617

Raw configuration values


warnings ​

readonly warnings: ConfigWarning[]

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:620

Warnings generated during resolution

Methods ​

createB2CInstance() ​

createB2CInstance(options?): B2CInstance

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:658

Creates a B2CInstance from the resolved configuration.

Parameters ​

options? ​

CreateB2CInstanceOptions

OAuth runtime options and optional pre-resolved strategy

Returns ​

B2CInstance

Throws ​

Error if hostname is not configured


createBasicAuth() ​

createBasicAuth(): AuthStrategy

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:664

Creates a Basic auth strategy.

Returns ​

AuthStrategy

Throws ​

Error if username or password is not configured


createMrtAuth() ​

createMrtAuth(): AuthStrategy

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:677

Creates an MRT auth strategy (API key).

Returns ​

AuthStrategy

Throws ​

Error if mrtApiKey is not configured


createOAuth() ​

createOAuth(options?): AuthStrategy

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:671

Creates an OAuth auth strategy.

Parameters ​

options? ​

CreateOAuthOptions

OAuth options (allowed methods)

Returns ​

AuthStrategy

Throws ​

Error if clientId is not configured


createWebDavAuth() ​

createWebDavAuth(): AuthStrategy

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:684

Creates a WebDAV auth strategy. Prefers Basic auth if available, falls back to OAuth.

Returns ​

AuthStrategy

Throws ​

Error if neither Basic auth nor OAuth is configured


hasB2CInstanceConfig() ​

hasB2CInstanceConfig(): boolean

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:631

Check if B2C instance configuration is available. Requires: hostname

Returns ​

boolean


hasBasicAuthConfig() ​

hasBasicAuthConfig(): boolean

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:649

Check if Basic auth configuration is available. Requires: username and password

Returns ​

boolean


hasMrtConfig() ​

hasMrtConfig(): boolean

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:637

Check if MRT configuration is available. Requires: mrtApiKey

Returns ​

boolean


hasOAuthConfig() ​

hasOAuthConfig(): boolean

Defined in: packages/b2c-tooling-sdk/src/config/types.ts:643

Check if OAuth configuration is available. Requires: clientId

Returns ​

boolean