@salesforce/b2c-dx-mcp 0.0.1 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +422 -29
- package/bin/run.cmd +3 -0
- package/bin/run.js +27 -0
- package/content/auth.md +62 -0
- package/content/components.md +123 -0
- package/content/config.md +180 -0
- package/content/data-fetching.md +323 -0
- package/content/extensions.md +80 -0
- package/content/i18n.md +121 -0
- package/content/page-designer.md +86 -0
- package/content/performance.md +80 -0
- package/content/pitfalls.md +141 -0
- package/content/quick-reference.md +226 -0
- package/content/state-management.md +75 -0
- package/content/styling.md +51 -0
- package/content/testing.md +232 -0
- package/dist/commands/mcp.d.ts +110 -0
- package/dist/commands/mcp.js +333 -0
- package/dist/registry.d.ts +37 -0
- package/dist/registry.js +212 -0
- package/dist/server.d.ts +46 -0
- package/dist/server.js +98 -0
- package/dist/services.d.ts +168 -0
- package/dist/services.js +191 -0
- package/dist/tools/adapter.d.ts +201 -0
- package/dist/tools/adapter.js +220 -0
- package/dist/tools/cartridges/index.d.ts +20 -0
- package/dist/tools/cartridges/index.js +101 -0
- package/dist/tools/index.d.ts +17 -0
- package/dist/tools/index.js +25 -0
- package/dist/tools/mrt/index.d.ts +20 -0
- package/dist/tools/mrt/index.js +101 -0
- package/dist/tools/pwav3/index.d.ts +13 -0
- package/dist/tools/pwav3/index.js +78 -0
- package/dist/tools/scapi/index.d.ts +9 -0
- package/dist/tools/scapi/index.js +68 -0
- package/dist/tools/storefrontnext/developer-guidelines.d.ts +9 -0
- package/dist/tools/storefrontnext/developer-guidelines.js +140 -0
- package/dist/tools/storefrontnext/index.d.ts +13 -0
- package/dist/tools/storefrontnext/index.js +83 -0
- package/dist/utils/constants.d.ts +16 -0
- package/dist/utils/constants.js +18 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.js +16 -0
- package/dist/utils/types.d.ts +45 -0
- package/dist/utils/types.js +7 -0
- package/oclif.manifest.json +377 -0
- package/package.json +123 -7
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Storefront Next toolset for B2C Commerce.
|
|
8
|
+
*
|
|
9
|
+
* This toolset provides MCP tools for Storefront Next development.
|
|
10
|
+
*
|
|
11
|
+
* **Implemented Tools:**
|
|
12
|
+
* - `storefront_next_development_guidelines` - Get development guidelines and best practices (GA)
|
|
13
|
+
*
|
|
14
|
+
* **Placeholder Tools (Use `--allow-non-ga-tools` flag to enable):**
|
|
15
|
+
* - `storefront_next_site_theming` - Configure site theming
|
|
16
|
+
* - `storefront_next_figma_to_component_workflow` - Convert Figma to components
|
|
17
|
+
* - `storefront_next_generate_component` - Generate new components
|
|
18
|
+
* - `storefront_next_map_tokens_to_theme` - Map design tokens
|
|
19
|
+
* - `storefront_next_design_decorator` - Apply design decorators
|
|
20
|
+
* - `storefront_next_generate_page_designer_metadata` - Generate Page Designer metadata
|
|
21
|
+
*
|
|
22
|
+
* @module tools/storefrontnext
|
|
23
|
+
*/
|
|
24
|
+
import { z } from 'zod';
|
|
25
|
+
import { createToolAdapter, jsonResult } from '../adapter.js';
|
|
26
|
+
import { createDeveloperGuidelinesTool } from './developer-guidelines.js';
|
|
27
|
+
/**
|
|
28
|
+
* Creates a placeholder tool for Storefront Next development.
|
|
29
|
+
*
|
|
30
|
+
* Placeholder tools log invocations and return mock responses until
|
|
31
|
+
* the actual implementation is available.
|
|
32
|
+
*
|
|
33
|
+
* @param name - Tool name
|
|
34
|
+
* @param description - Tool description
|
|
35
|
+
* @param services - MCP services
|
|
36
|
+
* @returns The configured MCP tool
|
|
37
|
+
*/
|
|
38
|
+
function createPlaceholderTool(name, description, services) {
|
|
39
|
+
return createToolAdapter({
|
|
40
|
+
name,
|
|
41
|
+
description: `[PLACEHOLDER] ${description}`,
|
|
42
|
+
toolsets: ['STOREFRONTNEXT'],
|
|
43
|
+
isGA: false,
|
|
44
|
+
requiresInstance: false,
|
|
45
|
+
inputSchema: {
|
|
46
|
+
message: z.string().optional().describe('Optional message to echo'),
|
|
47
|
+
},
|
|
48
|
+
async execute(args) {
|
|
49
|
+
// Placeholder implementation
|
|
50
|
+
const timestamp = new Date().toISOString();
|
|
51
|
+
return {
|
|
52
|
+
tool: name,
|
|
53
|
+
status: 'placeholder',
|
|
54
|
+
message: `This is a placeholder implementation for '${name}'. The actual implementation is coming soon.`,
|
|
55
|
+
input: args,
|
|
56
|
+
timestamp,
|
|
57
|
+
};
|
|
58
|
+
},
|
|
59
|
+
formatOutput: (output) => jsonResult(output),
|
|
60
|
+
}, services);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Creates all tools for the STOREFRONTNEXT toolset.
|
|
64
|
+
*
|
|
65
|
+
* Note: mrt_bundle_push is defined in the MRT toolset with
|
|
66
|
+
* toolsets: ["MRT", "PWAV3", "STOREFRONTNEXT"] and will
|
|
67
|
+
* automatically appear in STOREFRONTNEXT.
|
|
68
|
+
*
|
|
69
|
+
* @param services - MCP services
|
|
70
|
+
* @returns Array of MCP tools
|
|
71
|
+
*/
|
|
72
|
+
export function createStorefrontNextTools(services) {
|
|
73
|
+
return [
|
|
74
|
+
createDeveloperGuidelinesTool(services),
|
|
75
|
+
createPlaceholderTool('storefront_next_site_theming', 'Configure and manage site theming for Storefront Next', services),
|
|
76
|
+
createPlaceholderTool('storefront_next_figma_to_component_workflow', 'Convert Figma designs to Storefront Next components', services),
|
|
77
|
+
createPlaceholderTool('storefront_next_generate_component', 'Generate a new Storefront Next component', services),
|
|
78
|
+
createPlaceholderTool('storefront_next_map_tokens_to_theme', 'Map design tokens to Storefront Next theme configuration', services),
|
|
79
|
+
createPlaceholderTool('storefront_next_design_decorator', 'Apply design decorators to Storefront Next components', services),
|
|
80
|
+
createPlaceholderTool('storefront_next_generate_page_designer_metadata', 'Generate Page Designer metadata for Storefront Next components', services),
|
|
81
|
+
];
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Special toolset value that enables all toolsets.
|
|
3
|
+
*/
|
|
4
|
+
export declare const ALL_TOOLSETS = "ALL";
|
|
5
|
+
/**
|
|
6
|
+
* Available toolsets that can be enabled.
|
|
7
|
+
*/
|
|
8
|
+
export declare const TOOLSETS: readonly ["CARTRIDGES", "MRT", "PWAV3", "SCAPI", "STOREFRONTNEXT"];
|
|
9
|
+
/**
|
|
10
|
+
* Valid toolset names including the special "ALL" value.
|
|
11
|
+
*/
|
|
12
|
+
export declare const VALID_TOOLSET_NAMES: readonly ["ALL", "CARTRIDGES", "MRT", "PWAV3", "SCAPI", "STOREFRONTNEXT"];
|
|
13
|
+
/**
|
|
14
|
+
* Type representing a valid toolset name.
|
|
15
|
+
*/
|
|
16
|
+
export type Toolset = (typeof TOOLSETS)[number];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Special toolset value that enables all toolsets.
|
|
8
|
+
*/
|
|
9
|
+
export const ALL_TOOLSETS = 'ALL';
|
|
10
|
+
/**
|
|
11
|
+
* Available toolsets that can be enabled.
|
|
12
|
+
*/
|
|
13
|
+
export const TOOLSETS = ['CARTRIDGES', 'MRT', 'PWAV3', 'SCAPI', 'STOREFRONTNEXT'];
|
|
14
|
+
/**
|
|
15
|
+
* Valid toolset names including the special "ALL" value.
|
|
16
|
+
*/
|
|
17
|
+
export const VALID_TOOLSET_NAMES = [ALL_TOOLSETS, ...TOOLSETS];
|
|
18
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Utility modules for the B2C DX MCP server.
|
|
8
|
+
*
|
|
9
|
+
* @module utils
|
|
10
|
+
*/
|
|
11
|
+
// Note: We use .js extensions in imports for ESM compatibility.
|
|
12
|
+
// TypeScript resolves .js → .ts at compile time, but the compiled
|
|
13
|
+
// output needs .js extensions to work at runtime with Node.js ESM.
|
|
14
|
+
export * from './constants.js';
|
|
15
|
+
export * from './types.js';
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { z, ZodRawShape } from 'zod';
|
|
2
|
+
import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import type { Toolset } from './constants.js';
|
|
4
|
+
/**
|
|
5
|
+
* Result returned from MCP tool execution.
|
|
6
|
+
* Matches the MCP SDK's CallToolResult type.
|
|
7
|
+
*/
|
|
8
|
+
export type ToolResult = CallToolResult;
|
|
9
|
+
/**
|
|
10
|
+
* Configuration for an MCP tool.
|
|
11
|
+
*/
|
|
12
|
+
export interface McpToolConfig<T extends ZodRawShape = ZodRawShape> {
|
|
13
|
+
/** Tool name (used in MCP protocol) */
|
|
14
|
+
name: string;
|
|
15
|
+
/** Human-readable description */
|
|
16
|
+
description: string;
|
|
17
|
+
/** Zod schema for input validation */
|
|
18
|
+
inputSchema: T;
|
|
19
|
+
/** Toolsets this tool belongs to */
|
|
20
|
+
toolsets: Toolset[];
|
|
21
|
+
/** Whether this tool is GA (generally available) */
|
|
22
|
+
isGA?: boolean;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* MCP Tool definition with handler.
|
|
26
|
+
*/
|
|
27
|
+
export interface McpTool<T extends ZodRawShape = ZodRawShape> extends McpToolConfig<T> {
|
|
28
|
+
/** Handler function that executes the tool */
|
|
29
|
+
handler: (args: z.infer<z.ZodObject<T>>) => Promise<ToolResult>;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Startup flags passed to the MCP server.
|
|
33
|
+
*/
|
|
34
|
+
export interface StartupFlags {
|
|
35
|
+
/** Comma-separated list of toolsets to enable */
|
|
36
|
+
toolsets?: string[];
|
|
37
|
+
/** Specific individual tools to enable */
|
|
38
|
+
tools?: string[];
|
|
39
|
+
/** Allow non-GA (experimental) tools */
|
|
40
|
+
allowNonGaTools?: boolean;
|
|
41
|
+
/** Path to config file (dw.json format) */
|
|
42
|
+
configPath?: string;
|
|
43
|
+
/** Project working directory for tools (auto-discovery, scaffolding, etc.) */
|
|
44
|
+
workingDirectory?: string;
|
|
45
|
+
}
|
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
{
|
|
2
|
+
"commands": {
|
|
3
|
+
"Symbol(SINGLE_COMMAND_CLI)": {
|
|
4
|
+
"aliases": [],
|
|
5
|
+
"args": {},
|
|
6
|
+
"description": "Salesforce B2C Commerce Cloud Developer Experience MCP Server - Expose B2C Commerce Developer Experience tools to AI assistants",
|
|
7
|
+
"examples": [
|
|
8
|
+
{
|
|
9
|
+
"description": "All toolsets",
|
|
10
|
+
"command": "<%= config.bin %> --toolsets all --allow-non-ga-tools"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"description": "MRT tools with project and API key",
|
|
14
|
+
"command": "<%= config.bin %> --toolsets MRT --project my-project --api-key your-api-key --allow-non-ga-tools"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"description": "MRT tools with project, environment, and API key",
|
|
18
|
+
"command": "<%= config.bin %> --toolsets MRT --project my-project --environment staging --api-key your-api-key --allow-non-ga-tools"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"description": "Cartridge tools with explicit config",
|
|
22
|
+
"command": "<%= config.bin %> --toolsets CARTRIDGES --config /path/to/dw.json --allow-non-ga-tools"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"description": "Debug logging",
|
|
26
|
+
"command": "<%= config.bin %> --toolsets all --allow-non-ga-tools --debug"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"flags": {
|
|
30
|
+
"log-level": {
|
|
31
|
+
"description": "Set logging verbosity level",
|
|
32
|
+
"env": "SFCC_LOG_LEVEL",
|
|
33
|
+
"helpGroup": "GLOBAL",
|
|
34
|
+
"name": "log-level",
|
|
35
|
+
"hasDynamicHelp": false,
|
|
36
|
+
"multiple": false,
|
|
37
|
+
"options": [
|
|
38
|
+
"trace",
|
|
39
|
+
"debug",
|
|
40
|
+
"info",
|
|
41
|
+
"warn",
|
|
42
|
+
"error",
|
|
43
|
+
"silent"
|
|
44
|
+
],
|
|
45
|
+
"type": "option"
|
|
46
|
+
},
|
|
47
|
+
"debug": {
|
|
48
|
+
"char": "D",
|
|
49
|
+
"description": "Enable debug logging (shorthand for --log-level debug)",
|
|
50
|
+
"env": "SFCC_DEBUG",
|
|
51
|
+
"helpGroup": "GLOBAL",
|
|
52
|
+
"name": "debug",
|
|
53
|
+
"allowNo": false,
|
|
54
|
+
"type": "boolean"
|
|
55
|
+
},
|
|
56
|
+
"json": {
|
|
57
|
+
"description": "Output logs as JSON lines",
|
|
58
|
+
"helpGroup": "GLOBAL",
|
|
59
|
+
"name": "json",
|
|
60
|
+
"allowNo": false,
|
|
61
|
+
"type": "boolean"
|
|
62
|
+
},
|
|
63
|
+
"lang": {
|
|
64
|
+
"char": "L",
|
|
65
|
+
"description": "Language for messages (e.g., en, de). Also respects LANGUAGE env var.",
|
|
66
|
+
"helpGroup": "GLOBAL",
|
|
67
|
+
"name": "lang",
|
|
68
|
+
"hasDynamicHelp": false,
|
|
69
|
+
"multiple": false,
|
|
70
|
+
"type": "option"
|
|
71
|
+
},
|
|
72
|
+
"config": {
|
|
73
|
+
"description": "Path to config file (in dw.json format; defaults to ./dw.json)",
|
|
74
|
+
"env": "SFCC_CONFIG",
|
|
75
|
+
"helpGroup": "GLOBAL",
|
|
76
|
+
"name": "config",
|
|
77
|
+
"hasDynamicHelp": false,
|
|
78
|
+
"multiple": false,
|
|
79
|
+
"type": "option"
|
|
80
|
+
},
|
|
81
|
+
"instance": {
|
|
82
|
+
"char": "i",
|
|
83
|
+
"description": "Instance name from configuration file (i.e. dw.json, etc)",
|
|
84
|
+
"env": "SFCC_INSTANCE",
|
|
85
|
+
"helpGroup": "GLOBAL",
|
|
86
|
+
"name": "instance",
|
|
87
|
+
"hasDynamicHelp": false,
|
|
88
|
+
"multiple": false,
|
|
89
|
+
"type": "option"
|
|
90
|
+
},
|
|
91
|
+
"working-directory": {
|
|
92
|
+
"description": "Project working directory",
|
|
93
|
+
"env": "SFCC_WORKING_DIRECTORY",
|
|
94
|
+
"helpGroup": "GLOBAL",
|
|
95
|
+
"name": "working-directory",
|
|
96
|
+
"hasDynamicHelp": false,
|
|
97
|
+
"multiple": false,
|
|
98
|
+
"type": "option"
|
|
99
|
+
},
|
|
100
|
+
"extra-query": {
|
|
101
|
+
"description": "Extra query parameters as JSON (e.g., '{\"debug\":\"true\"}')",
|
|
102
|
+
"env": "SFCC_EXTRA_QUERY",
|
|
103
|
+
"helpGroup": "GLOBAL",
|
|
104
|
+
"hidden": true,
|
|
105
|
+
"name": "extra-query",
|
|
106
|
+
"hasDynamicHelp": false,
|
|
107
|
+
"multiple": false,
|
|
108
|
+
"type": "option"
|
|
109
|
+
},
|
|
110
|
+
"extra-body": {
|
|
111
|
+
"description": "Extra body fields to merge as JSON (e.g., '{\"_internal\":true}')",
|
|
112
|
+
"env": "SFCC_EXTRA_BODY",
|
|
113
|
+
"helpGroup": "GLOBAL",
|
|
114
|
+
"hidden": true,
|
|
115
|
+
"name": "extra-body",
|
|
116
|
+
"hasDynamicHelp": false,
|
|
117
|
+
"multiple": false,
|
|
118
|
+
"type": "option"
|
|
119
|
+
},
|
|
120
|
+
"extra-headers": {
|
|
121
|
+
"description": "Extra HTTP headers as JSON (e.g., '{\"X-Custom-Header\": \"value\"}')",
|
|
122
|
+
"env": "SFCC_EXTRA_HEADERS",
|
|
123
|
+
"helpGroup": "GLOBAL",
|
|
124
|
+
"hidden": true,
|
|
125
|
+
"name": "extra-headers",
|
|
126
|
+
"hasDynamicHelp": false,
|
|
127
|
+
"multiple": false,
|
|
128
|
+
"type": "option"
|
|
129
|
+
},
|
|
130
|
+
"api-key": {
|
|
131
|
+
"description": "MRT API key",
|
|
132
|
+
"env": "SFCC_MRT_API_KEY",
|
|
133
|
+
"helpGroup": "AUTH",
|
|
134
|
+
"name": "api-key",
|
|
135
|
+
"hasDynamicHelp": false,
|
|
136
|
+
"multiple": false,
|
|
137
|
+
"type": "option"
|
|
138
|
+
},
|
|
139
|
+
"project": {
|
|
140
|
+
"char": "p",
|
|
141
|
+
"description": "MRT project slug (or set mrtProject in dw.json)",
|
|
142
|
+
"env": "SFCC_MRT_PROJECT",
|
|
143
|
+
"name": "project",
|
|
144
|
+
"hasDynamicHelp": false,
|
|
145
|
+
"multiple": false,
|
|
146
|
+
"type": "option"
|
|
147
|
+
},
|
|
148
|
+
"environment": {
|
|
149
|
+
"char": "e",
|
|
150
|
+
"description": "MRT environment (e.g., staging, production; or set mrtEnvironment in dw.json)",
|
|
151
|
+
"env": "SFCC_MRT_ENVIRONMENT",
|
|
152
|
+
"name": "environment",
|
|
153
|
+
"hasDynamicHelp": false,
|
|
154
|
+
"multiple": false,
|
|
155
|
+
"type": "option"
|
|
156
|
+
},
|
|
157
|
+
"cloud-origin": {
|
|
158
|
+
"description": "MRT cloud origin URL (or set mrtOrigin in dw.json; default: https://cloud.mobify.com)",
|
|
159
|
+
"env": "SFCC_MRT_CLOUD_ORIGIN",
|
|
160
|
+
"name": "cloud-origin",
|
|
161
|
+
"hasDynamicHelp": false,
|
|
162
|
+
"multiple": false,
|
|
163
|
+
"type": "option"
|
|
164
|
+
},
|
|
165
|
+
"credentials-file": {
|
|
166
|
+
"description": "Path to MRT credentials file (overrides default ~/.mobify)",
|
|
167
|
+
"env": "MRT_CREDENTIALS_FILE",
|
|
168
|
+
"name": "credentials-file",
|
|
169
|
+
"hasDynamicHelp": false,
|
|
170
|
+
"multiple": false,
|
|
171
|
+
"type": "option"
|
|
172
|
+
},
|
|
173
|
+
"client-id": {
|
|
174
|
+
"description": "Client ID for OAuth",
|
|
175
|
+
"env": "SFCC_CLIENT_ID",
|
|
176
|
+
"helpGroup": "AUTH",
|
|
177
|
+
"name": "client-id",
|
|
178
|
+
"hasDynamicHelp": false,
|
|
179
|
+
"multiple": false,
|
|
180
|
+
"type": "option"
|
|
181
|
+
},
|
|
182
|
+
"client-secret": {
|
|
183
|
+
"description": "Client Secret for OAuth",
|
|
184
|
+
"env": "SFCC_CLIENT_SECRET",
|
|
185
|
+
"helpGroup": "AUTH",
|
|
186
|
+
"name": "client-secret",
|
|
187
|
+
"hasDynamicHelp": false,
|
|
188
|
+
"multiple": false,
|
|
189
|
+
"type": "option"
|
|
190
|
+
},
|
|
191
|
+
"scope": {
|
|
192
|
+
"description": "OAuth scopes to request (comma-separated)",
|
|
193
|
+
"env": "SFCC_OAUTH_SCOPES",
|
|
194
|
+
"helpGroup": "AUTH",
|
|
195
|
+
"name": "scope",
|
|
196
|
+
"delimiter": ",",
|
|
197
|
+
"hasDynamicHelp": false,
|
|
198
|
+
"multiple": true,
|
|
199
|
+
"type": "option"
|
|
200
|
+
},
|
|
201
|
+
"short-code": {
|
|
202
|
+
"description": "SCAPI short code",
|
|
203
|
+
"env": "SFCC_SHORTCODE",
|
|
204
|
+
"helpGroup": "AUTH",
|
|
205
|
+
"name": "short-code",
|
|
206
|
+
"hasDynamicHelp": false,
|
|
207
|
+
"multiple": false,
|
|
208
|
+
"type": "option"
|
|
209
|
+
},
|
|
210
|
+
"tenant-id": {
|
|
211
|
+
"aliases": [
|
|
212
|
+
"tenant"
|
|
213
|
+
],
|
|
214
|
+
"description": "Organization/tenant ID",
|
|
215
|
+
"env": "SFCC_TENANT_ID",
|
|
216
|
+
"helpGroup": "AUTH",
|
|
217
|
+
"name": "tenant-id",
|
|
218
|
+
"hasDynamicHelp": false,
|
|
219
|
+
"multiple": false,
|
|
220
|
+
"type": "option"
|
|
221
|
+
},
|
|
222
|
+
"auth-methods": {
|
|
223
|
+
"description": "Allowed auth methods in priority order (comma-separated)",
|
|
224
|
+
"env": "SFCC_AUTH_METHODS",
|
|
225
|
+
"exclusive": [
|
|
226
|
+
"user-auth"
|
|
227
|
+
],
|
|
228
|
+
"helpGroup": "AUTH",
|
|
229
|
+
"name": "auth-methods",
|
|
230
|
+
"delimiter": ",",
|
|
231
|
+
"hasDynamicHelp": false,
|
|
232
|
+
"multiple": true,
|
|
233
|
+
"options": [
|
|
234
|
+
"client-credentials",
|
|
235
|
+
"implicit",
|
|
236
|
+
"basic",
|
|
237
|
+
"api-key"
|
|
238
|
+
],
|
|
239
|
+
"type": "option"
|
|
240
|
+
},
|
|
241
|
+
"user-auth": {
|
|
242
|
+
"description": "Use browser-based user authentication (implicit OAuth flow)",
|
|
243
|
+
"exclusive": [
|
|
244
|
+
"auth-methods"
|
|
245
|
+
],
|
|
246
|
+
"helpGroup": "AUTH",
|
|
247
|
+
"name": "user-auth",
|
|
248
|
+
"allowNo": false,
|
|
249
|
+
"type": "boolean"
|
|
250
|
+
},
|
|
251
|
+
"account-manager-host": {
|
|
252
|
+
"description": "Account Manager hostname for OAuth (default: account.demandware.com)",
|
|
253
|
+
"env": "SFCC_ACCOUNT_MANAGER_HOST",
|
|
254
|
+
"helpGroup": "AUTH",
|
|
255
|
+
"name": "account-manager-host",
|
|
256
|
+
"hasDynamicHelp": false,
|
|
257
|
+
"multiple": false,
|
|
258
|
+
"type": "option"
|
|
259
|
+
},
|
|
260
|
+
"server": {
|
|
261
|
+
"char": "s",
|
|
262
|
+
"description": "B2C instance hostname",
|
|
263
|
+
"env": "SFCC_SERVER",
|
|
264
|
+
"helpGroup": "INSTANCE",
|
|
265
|
+
"name": "server",
|
|
266
|
+
"hasDynamicHelp": false,
|
|
267
|
+
"multiple": false,
|
|
268
|
+
"type": "option"
|
|
269
|
+
},
|
|
270
|
+
"webdav-server": {
|
|
271
|
+
"description": "Separate hostname for WebDAV (cert. hostname, etc)",
|
|
272
|
+
"env": "SFCC_WEBDAV_SERVER",
|
|
273
|
+
"helpGroup": "INSTANCE",
|
|
274
|
+
"name": "webdav-server",
|
|
275
|
+
"hasDynamicHelp": false,
|
|
276
|
+
"multiple": false,
|
|
277
|
+
"type": "option"
|
|
278
|
+
},
|
|
279
|
+
"code-version": {
|
|
280
|
+
"char": "v",
|
|
281
|
+
"description": "Code version",
|
|
282
|
+
"env": "SFCC_CODE_VERSION",
|
|
283
|
+
"helpGroup": "INSTANCE",
|
|
284
|
+
"name": "code-version",
|
|
285
|
+
"hasDynamicHelp": false,
|
|
286
|
+
"multiple": false,
|
|
287
|
+
"type": "option"
|
|
288
|
+
},
|
|
289
|
+
"username": {
|
|
290
|
+
"char": "u",
|
|
291
|
+
"description": "Username for Basic Auth (WebDAV)",
|
|
292
|
+
"env": "SFCC_USERNAME",
|
|
293
|
+
"helpGroup": "AUTH",
|
|
294
|
+
"name": "username",
|
|
295
|
+
"hasDynamicHelp": false,
|
|
296
|
+
"multiple": false,
|
|
297
|
+
"type": "option"
|
|
298
|
+
},
|
|
299
|
+
"password": {
|
|
300
|
+
"char": "p",
|
|
301
|
+
"description": "Password/access key for Basic Auth (WebDAV)",
|
|
302
|
+
"env": "SFCC_PASSWORD",
|
|
303
|
+
"helpGroup": "AUTH",
|
|
304
|
+
"name": "password",
|
|
305
|
+
"hasDynamicHelp": false,
|
|
306
|
+
"multiple": false,
|
|
307
|
+
"type": "option"
|
|
308
|
+
},
|
|
309
|
+
"certificate": {
|
|
310
|
+
"description": "Path to PKCS12 certificate for two-factor auth",
|
|
311
|
+
"env": "SFCC_CERTIFICATE",
|
|
312
|
+
"helpGroup": "AUTH",
|
|
313
|
+
"name": "certificate",
|
|
314
|
+
"hasDynamicHelp": false,
|
|
315
|
+
"multiple": false,
|
|
316
|
+
"type": "option"
|
|
317
|
+
},
|
|
318
|
+
"passphrase": {
|
|
319
|
+
"description": "Passphrase for the certificate",
|
|
320
|
+
"env": "SFCC_CERTIFICATE_PASSPHRASE",
|
|
321
|
+
"helpGroup": "AUTH",
|
|
322
|
+
"name": "passphrase",
|
|
323
|
+
"hasDynamicHelp": false,
|
|
324
|
+
"multiple": false,
|
|
325
|
+
"type": "option"
|
|
326
|
+
},
|
|
327
|
+
"selfsigned": {
|
|
328
|
+
"description": "Allow self-signed server certificates",
|
|
329
|
+
"env": "SFCC_SELFSIGNED",
|
|
330
|
+
"helpGroup": "AUTH",
|
|
331
|
+
"name": "selfsigned",
|
|
332
|
+
"allowNo": false,
|
|
333
|
+
"type": "boolean"
|
|
334
|
+
},
|
|
335
|
+
"verify": {
|
|
336
|
+
"description": "Verify SSL certificates",
|
|
337
|
+
"helpGroup": "AUTH",
|
|
338
|
+
"name": "verify",
|
|
339
|
+
"allowNo": true,
|
|
340
|
+
"type": "boolean"
|
|
341
|
+
},
|
|
342
|
+
"toolsets": {
|
|
343
|
+
"description": "Toolsets to enable (comma-separated). Options: all, CARTRIDGES, MRT, PWAV3, SCAPI, STOREFRONTNEXT",
|
|
344
|
+
"env": "SFCC_TOOLSETS",
|
|
345
|
+
"name": "toolsets",
|
|
346
|
+
"hasDynamicHelp": false,
|
|
347
|
+
"multiple": false,
|
|
348
|
+
"type": "option"
|
|
349
|
+
},
|
|
350
|
+
"tools": {
|
|
351
|
+
"description": "Individual tools to enable (comma-separated)",
|
|
352
|
+
"env": "SFCC_TOOLS",
|
|
353
|
+
"name": "tools",
|
|
354
|
+
"hasDynamicHelp": false,
|
|
355
|
+
"multiple": false,
|
|
356
|
+
"type": "option"
|
|
357
|
+
},
|
|
358
|
+
"allow-non-ga-tools": {
|
|
359
|
+
"description": "Enable non-GA (experimental) tools",
|
|
360
|
+
"env": "SFCC_ALLOW_NON_GA_TOOLS",
|
|
361
|
+
"name": "allow-non-ga-tools",
|
|
362
|
+
"allowNo": false,
|
|
363
|
+
"type": "boolean"
|
|
364
|
+
}
|
|
365
|
+
},
|
|
366
|
+
"hasDynamicHelp": false,
|
|
367
|
+
"hiddenAliases": [],
|
|
368
|
+
"id": "Symbol(SINGLE_COMMAND_CLI)",
|
|
369
|
+
"pluginAlias": "@salesforce/b2c-dx-mcp",
|
|
370
|
+
"pluginName": "@salesforce/b2c-dx-mcp",
|
|
371
|
+
"pluginType": "core",
|
|
372
|
+
"strict": true,
|
|
373
|
+
"enableJsonFlag": false
|
|
374
|
+
}
|
|
375
|
+
},
|
|
376
|
+
"version": "0.3.1"
|
|
377
|
+
}
|