Settings

All Intellij SFCC VS Code settings, their defaults, and settings.json examples

Open Settings in VS Code and search for Intellij SFCC, or edit your user or workspace settings.json. Every extension setting uses the intellij-sfcc.* prefix. The values below are the defaults declared by the extension; you only need to add settings you want to change. Connection selection, code version, and Auto Upload are managed by the connection workflow

Workspace and deployment

SettingDefaultPurpose
intellij-sfcc.metadataAttributes.colorMode"unusedOnly"Color metadata attribute definitions by cached usage. Choose "off", "unusedOnly", or "heatmap"
intellij-sfcc.credentialsFilePath""Path to the encrypted credentials file shared across projects. The Credentials panel can select it for you
intellij-sfcc.concurrentRequestsPerSecond7Limit WebDAV requests. Lower this when a sandbox cannot handle the default rate
intellij-sfcc.deployment.clearCodeVersionfalseDeployment cleanup option. When enabled, all cartridges in the target code version are removed before deployment; otherwise cleanup removes cartridges outside the project. Review the active target before changing it

SFCC MCP

SettingDefaultPurpose
intellij-sfcc.mcp.enabledtrueStart the local SFCC MCP server with the scripting language server
intellij-sfcc.mcp.port0Loopback Streamable HTTP port. 0 selects a stable automatic port for the workspace; a value from 1 to 65535 selects a specific port
intellij-sfcc.mcp.auth.enabledfalseRequire the workspace bearer token from external MCP clients. The token is held in VS Code SecretStorage; use the MCP setup guide to connect a client
intellij-sfcc.mcp.allowDeprecatedSsefalseEnable the older /sse and /messages endpoints for legacy clients. Streamable HTTP remains the normal transport
intellij-sfcc.mcp.tools.profile"sfcc-full"Select exposed tools: "router-core", "sfcc-readonly", "sfcc-operational", "sfcc-plan", or "sfcc-full"
intellij-sfcc.mcp.tools.enabled[]Expose named intellijsfcc.* tools even when the selected profile hides them
intellij-sfcc.mcp.tools.disabled[]Hide named intellijsfcc.* tools even when the selected profile exposes them. Core project, profile, and router tools remain available
intellij-sfcc.mcp.tools.allowAgentProfileActivationfalseDeprecated and ignored. Change the profile in the MCP panel, then refresh or reconnect the client
intellij-sfcc.mcp.analytics.captureRawfalseAlso store full, unredacted MCP request and response payloads in local analytics. These can contain credentials, tokens, cookies, prompts, and source code

Log Center

SettingDefaultPurpose
intellij-sfcc.logs.parseConcurrency10Maximum simultaneous log parse or tail worker jobs (1–32)
intellij-sfcc.logs.initialParseConcurrency3Maximum simultaneous CPU parses during bulk initial import (1–8)
intellij-sfcc.logs.rangeChunkSizeMb4Megabytes per tail range read, fallback range download, or local parse chunk (1–64)
intellij-sfcc.logs.tailIntervalMs1000Poll interval for watched log files, in milliseconds (250–60000)
intellij-sfcc.logs.maxIndexedOccurrences50000Recent occurrences retained for fallback in-memory search when SQLite FTS is unavailable (1000–1000000)
intellij-sfcc.logs.maxRawExamples5000Recent raw log previews retained in memory for details and reports (100–100000)
intellij-sfcc.logs.autoRefreshIntervalSec5Seconds between remote log-list refreshes in Log Center (2–600)
intellij-sfcc.logs.filterOptionBatchSize100Values initially shown and added per step in large select filters (25–500)
intellij-sfcc.logs.maxFacetValues10000Distinct source, site, endpoint, and session values sent to filter menus (100–50000). Exact-value filtering still works beyond this cap

ISML editing

SettingDefaultPurpose
intellij-sfcc.isml.formatter.enabledtrueEnable the built-in ISML formatter
intellij-sfcc.isml.formatter.type"Indentation"Choose the "Indentation" or "JS-Beautify" formatter
intellij-sfcc.isml.formatter.wrapAttributes"preserve"Control attribute wrapping. Choices: "preserve", "auto", "force", "force-aligned", "force-expand-multiline", "aligned-multiple", and "preserve-aligned"
intellij-sfcc.isml.modules.files["modules.isml", "module.isml"]File names searched for <ismodule/> custom tag declarations
intellij-sfcc.isml.lintertrueEnable the built-in ISML linter
intellij-sfcc.customTagColorDark"#2ed09a"Color of <is… tags in dark themes
intellij-sfcc.customTagColorLight"#0a7b7b"Color of <is… tags in light themes

Scripting completion rules

Each array contains rules with a methods list and a zero-based paramIndex. The optional className narrows a rule to a class. These arrays replace their defaults when set, so include any built-in rules you want to keep

SettingDefault behaviorPurpose
intellij-sfcc.completions.routesThree rules for URLUtils.url/abs/http/https, matching method names, and URLActionComplete route names in the configured function argument
intellij-sfcc.completions.hooks.namecallHook, hasHook, hooksHelper, hookHelper at argument 0Complete hook names
intellij-sfcc.completions.hooks.functioncallHook, hooksHelper, hookHelper at argument 1Complete hook function names
intellij-sfcc.completions.templatesrender/renderTemplate at argument 0; sendEmail at argument 1Complete template paths
intellij-sfcc.completions.resources.propertiesmsg/msgf at argument 0Complete resource property keys
intellij-sfcc.completions.resources.bundlesmsg/msgf at argument 1Complete resource bundle names

Manifest inconsistency

SettingDeclared defaultPurpose
intellij-sfcc.editor.scripts.hooks-identifiersAn array, although its declared type is stringThe manifest description duplicates the resource-bundle completion setting. No supported configuration shape can be inferred from that declaration, so leave it unset

Example settings.json

This example changes a few independent settings without storing connection or credential values:

.vscode/settings.json
{
  "intellij-sfcc.concurrentRequestsPerSecond": 2,
  "intellij-sfcc.mcp.tools.profile": "sfcc-readonly",
  "intellij-sfcc.logs.autoRefreshIntervalSec": 10,
  "intellij-sfcc.isml.formatter.wrapAttributes": "preserve",
  "intellij-sfcc.isml.modules.files": ["modules.isml", "module.isml", "custom-modules.isml"]
}

To add a route helper, include the built-in rules you still need alongside the new one:

.vscode/settings.json
{
  "intellij-sfcc.completions.routes": [
    { "className": "URLUtils", "methods": ["url", "abs", "http", "https"], "paramIndex": 0 },
    { "methods": ["url", "abs", "http", "https"], "paramIndex": 0 },
    { "methods": ["URLAction"], "paramIndex": 0 },
    { "methods": ["myRouteHelper"], "paramIndex": 0 }
  ]
}

Replace myRouteHelper with the function name used in your project. See Setup Your Project for connection and cartridge setup, and ISML editing for formatter and linter behavior

On this page