sfcc-dev-mcp 1.0.21 โ†’ 1.1.0

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.
Files changed (303) hide show
  1. package/CHANGELOG.md +73 -4
  2. package/README.md +101 -31
  3. package/dist/ai-instructions/skills/sfcc-script-evaluation/SKILL.md +1 -0
  4. package/dist/clients/agent-instructions-client.d.ts +3 -0
  5. package/dist/clients/agent-instructions-client.d.ts.map +1 -1
  6. package/dist/clients/agent-instructions-client.js +42 -10
  7. package/dist/clients/agent-instructions-client.js.map +1 -1
  8. package/dist/clients/base/abstract-documentation-client.d.ts +4 -0
  9. package/dist/clients/base/abstract-documentation-client.d.ts.map +1 -1
  10. package/dist/clients/base/abstract-documentation-client.js +9 -1
  11. package/dist/clients/base/abstract-documentation-client.js.map +1 -1
  12. package/dist/clients/base/http-client.d.ts +10 -3
  13. package/dist/clients/base/http-client.d.ts.map +1 -1
  14. package/dist/clients/base/http-client.js +94 -16
  15. package/dist/clients/base/http-client.js.map +1 -1
  16. package/dist/clients/base/oauth-token.d.ts +3 -0
  17. package/dist/clients/base/oauth-token.d.ts.map +1 -1
  18. package/dist/clients/base/oauth-token.js +23 -3
  19. package/dist/clients/base/oauth-token.js.map +1 -1
  20. package/dist/clients/base/ocapi-auth-client.d.ts.map +1 -1
  21. package/dist/clients/base/ocapi-auth-client.js +22 -2
  22. package/dist/clients/base/ocapi-auth-client.js.map +1 -1
  23. package/dist/clients/docs/class-name-resolver.d.ts +7 -4
  24. package/dist/clients/docs/class-name-resolver.d.ts.map +1 -1
  25. package/dist/clients/docs/class-name-resolver.js.map +1 -1
  26. package/dist/clients/docs/documentation-scanner.d.ts +2 -0
  27. package/dist/clients/docs/documentation-scanner.d.ts.map +1 -1
  28. package/dist/clients/docs/documentation-scanner.js +39 -17
  29. package/dist/clients/docs/documentation-scanner.js.map +1 -1
  30. package/dist/clients/docs-client.d.ts +4 -3
  31. package/dist/clients/docs-client.d.ts.map +1 -1
  32. package/dist/clients/docs-client.js.map +1 -1
  33. package/dist/clients/logs/log-client.d.ts +1 -0
  34. package/dist/clients/logs/log-client.d.ts.map +1 -1
  35. package/dist/clients/logs/log-client.js +13 -21
  36. package/dist/clients/logs/log-client.js.map +1 -1
  37. package/dist/clients/logs/log-file-discovery.d.ts +1 -0
  38. package/dist/clients/logs/log-file-discovery.d.ts.map +1 -1
  39. package/dist/clients/logs/log-file-discovery.js +19 -6
  40. package/dist/clients/logs/log-file-discovery.js.map +1 -1
  41. package/dist/clients/logs/log-file-reader.d.ts +2 -0
  42. package/dist/clients/logs/log-file-reader.d.ts.map +1 -1
  43. package/dist/clients/logs/log-file-reader.js +31 -8
  44. package/dist/clients/logs/log-file-reader.js.map +1 -1
  45. package/dist/clients/logs/log-formatter.d.ts +2 -2
  46. package/dist/clients/logs/log-formatter.d.ts.map +1 -1
  47. package/dist/clients/logs/log-formatter.js.map +1 -1
  48. package/dist/clients/logs/log-types.d.ts +4 -0
  49. package/dist/clients/logs/log-types.d.ts.map +1 -1
  50. package/dist/clients/logs/webdav-client-manager.d.ts.map +1 -1
  51. package/dist/clients/logs/webdav-client-manager.js.map +1 -1
  52. package/dist/clients/ocapi/code-versions-client.d.ts +23 -4
  53. package/dist/clients/ocapi/code-versions-client.d.ts.map +1 -1
  54. package/dist/clients/ocapi/code-versions-client.js +2 -2
  55. package/dist/clients/ocapi/code-versions-client.js.map +1 -1
  56. package/dist/clients/ocapi/site-preferences-client.d.ts +2 -42
  57. package/dist/clients/ocapi/site-preferences-client.d.ts.map +1 -1
  58. package/dist/clients/ocapi/site-preferences-client.js.map +1 -1
  59. package/dist/clients/ocapi/system-objects-client.d.ts +7 -39
  60. package/dist/clients/ocapi/system-objects-client.d.ts.map +1 -1
  61. package/dist/clients/ocapi/system-objects-client.js.map +1 -1
  62. package/dist/clients/script-debugger/script-debugger-client.d.ts +30 -1
  63. package/dist/clients/script-debugger/script-debugger-client.d.ts.map +1 -1
  64. package/dist/clients/script-debugger/script-debugger-client.js +266 -132
  65. package/dist/clients/script-debugger/script-debugger-client.js.map +1 -1
  66. package/dist/clients/sfra-client.d.ts.map +1 -1
  67. package/dist/clients/sfra-client.js.map +1 -1
  68. package/dist/config/cli-options.d.ts +16 -0
  69. package/dist/config/cli-options.d.ts.map +1 -0
  70. package/dist/config/cli-options.js +56 -0
  71. package/dist/config/cli-options.js.map +1 -0
  72. package/dist/config/configuration-factory.d.ts +2 -0
  73. package/dist/config/configuration-factory.d.ts.map +1 -1
  74. package/dist/config/configuration-factory.js +30 -6
  75. package/dist/config/configuration-factory.js.map +1 -1
  76. package/dist/config/credential-validation.d.ts +25 -0
  77. package/dist/config/credential-validation.d.ts.map +1 -0
  78. package/dist/config/credential-validation.js +42 -0
  79. package/dist/config/credential-validation.js.map +1 -0
  80. package/dist/config/dw-json-loader.d.ts.map +1 -1
  81. package/dist/config/dw-json-loader.js +25 -68
  82. package/dist/config/dw-json-loader.js.map +1 -1
  83. package/dist/config/path-security-policy.d.ts +6 -0
  84. package/dist/config/path-security-policy.d.ts.map +1 -0
  85. package/dist/config/path-security-policy.js +63 -0
  86. package/dist/config/path-security-policy.js.map +1 -0
  87. package/dist/config/workspace-roots.d.ts +1 -0
  88. package/dist/config/workspace-roots.d.ts.map +1 -1
  89. package/dist/config/workspace-roots.js +26 -77
  90. package/dist/config/workspace-roots.js.map +1 -1
  91. package/dist/core/handlers/abstract-client-handler.d.ts +23 -2
  92. package/dist/core/handlers/abstract-client-handler.d.ts.map +1 -1
  93. package/dist/core/handlers/abstract-client-handler.js +33 -3
  94. package/dist/core/handlers/abstract-client-handler.js.map +1 -1
  95. package/dist/core/handlers/agent-instructions-handler.d.ts +1 -1
  96. package/dist/core/handlers/agent-instructions-handler.d.ts.map +1 -1
  97. package/dist/core/handlers/agent-instructions-handler.js +2 -2
  98. package/dist/core/handlers/agent-instructions-handler.js.map +1 -1
  99. package/dist/core/handlers/base-handler.d.ts +14 -11
  100. package/dist/core/handlers/base-handler.d.ts.map +1 -1
  101. package/dist/core/handlers/base-handler.js +38 -22
  102. package/dist/core/handlers/base-handler.js.map +1 -1
  103. package/dist/core/handlers/cartridge-handler.d.ts +3 -8
  104. package/dist/core/handlers/cartridge-handler.d.ts.map +1 -1
  105. package/dist/core/handlers/cartridge-handler.js +10 -18
  106. package/dist/core/handlers/cartridge-handler.js.map +1 -1
  107. package/dist/core/handlers/code-version-handler.d.ts +3 -9
  108. package/dist/core/handlers/code-version-handler.d.ts.map +1 -1
  109. package/dist/core/handlers/code-version-handler.js +10 -21
  110. package/dist/core/handlers/code-version-handler.js.map +1 -1
  111. package/dist/core/handlers/job-log-handler.d.ts +3 -9
  112. package/dist/core/handlers/job-log-handler.d.ts.map +1 -1
  113. package/dist/core/handlers/job-log-handler.js +10 -21
  114. package/dist/core/handlers/job-log-handler.js.map +1 -1
  115. package/dist/core/handlers/lifecycle-utils.d.ts +5 -0
  116. package/dist/core/handlers/lifecycle-utils.d.ts.map +1 -0
  117. package/dist/core/handlers/lifecycle-utils.js +18 -0
  118. package/dist/core/handlers/lifecycle-utils.js.map +1 -0
  119. package/dist/core/handlers/log-handler.d.ts +3 -9
  120. package/dist/core/handlers/log-handler.d.ts.map +1 -1
  121. package/dist/core/handlers/log-handler.js +10 -21
  122. package/dist/core/handlers/log-handler.js.map +1 -1
  123. package/dist/core/handlers/script-debugger-handler.d.ts +3 -9
  124. package/dist/core/handlers/script-debugger-handler.d.ts.map +1 -1
  125. package/dist/core/handlers/script-debugger-handler.js +10 -21
  126. package/dist/core/handlers/script-debugger-handler.js.map +1 -1
  127. package/dist/core/handlers/simple-client-handler.d.ts +3 -3
  128. package/dist/core/handlers/simple-client-handler.d.ts.map +1 -1
  129. package/dist/core/handlers/simple-client-handler.js +5 -3
  130. package/dist/core/handlers/simple-client-handler.js.map +1 -1
  131. package/dist/core/handlers/system-object-handler.d.ts +3 -9
  132. package/dist/core/handlers/system-object-handler.d.ts.map +1 -1
  133. package/dist/core/handlers/system-object-handler.js +10 -21
  134. package/dist/core/handlers/system-object-handler.js.map +1 -1
  135. package/dist/core/handlers/validation-helpers.d.ts +5 -26
  136. package/dist/core/handlers/validation-helpers.d.ts.map +1 -1
  137. package/dist/core/handlers/validation-helpers.js +79 -81
  138. package/dist/core/handlers/validation-helpers.js.map +1 -1
  139. package/dist/core/instruction-advisor.d.ts +3 -0
  140. package/dist/core/instruction-advisor.d.ts.map +1 -1
  141. package/dist/core/instruction-advisor.js +25 -2
  142. package/dist/core/instruction-advisor.js.map +1 -1
  143. package/dist/core/server-tool-call-lifecycle.d.ts +38 -0
  144. package/dist/core/server-tool-call-lifecycle.d.ts.map +1 -0
  145. package/dist/core/server-tool-call-lifecycle.js +128 -0
  146. package/dist/core/server-tool-call-lifecycle.js.map +1 -0
  147. package/dist/core/server-tool-catalog.d.ts +19 -0
  148. package/dist/core/server-tool-catalog.d.ts.map +1 -0
  149. package/dist/core/server-tool-catalog.js +52 -0
  150. package/dist/core/server-tool-catalog.js.map +1 -0
  151. package/dist/core/server-workspace-discovery.d.ts +38 -0
  152. package/dist/core/server-workspace-discovery.d.ts.map +1 -0
  153. package/dist/core/server-workspace-discovery.js +68 -0
  154. package/dist/core/server-workspace-discovery.js.map +1 -0
  155. package/dist/core/server.d.ts +27 -3
  156. package/dist/core/server.d.ts.map +1 -1
  157. package/dist/core/server.js +247 -165
  158. package/dist/core/server.js.map +1 -1
  159. package/dist/core/tool-argument-validator.d.ts +24 -0
  160. package/dist/core/tool-argument-validator.d.ts.map +1 -0
  161. package/dist/core/tool-argument-validator.js +186 -0
  162. package/dist/core/tool-argument-validator.js.map +1 -0
  163. package/dist/core/tool-error-response.d.ts +21 -0
  164. package/dist/core/tool-error-response.d.ts.map +1 -0
  165. package/dist/core/tool-error-response.js +64 -0
  166. package/dist/core/tool-error-response.js.map +1 -0
  167. package/dist/core/tool-schemas/agent-instruction-tools.d.ts +4 -0
  168. package/dist/core/tool-schemas/agent-instruction-tools.d.ts.map +1 -1
  169. package/dist/core/tool-schemas/agent-instruction-tools.js +6 -2
  170. package/dist/core/tool-schemas/agent-instruction-tools.js.map +1 -1
  171. package/dist/core/tool-schemas/cartridge-tools.d.ts +3 -0
  172. package/dist/core/tool-schemas/cartridge-tools.d.ts.map +1 -1
  173. package/dist/core/tool-schemas/cartridge-tools.js +3 -0
  174. package/dist/core/tool-schemas/cartridge-tools.js.map +1 -1
  175. package/dist/core/tool-schemas/code-version-tools.d.ts +1 -0
  176. package/dist/core/tool-schemas/code-version-tools.d.ts.map +1 -1
  177. package/dist/core/tool-schemas/code-version-tools.js +1 -0
  178. package/dist/core/tool-schemas/code-version-tools.js.map +1 -1
  179. package/dist/core/tool-schemas/documentation-tools.d.ts +6 -0
  180. package/dist/core/tool-schemas/documentation-tools.d.ts.map +1 -1
  181. package/dist/core/tool-schemas/documentation-tools.js +6 -0
  182. package/dist/core/tool-schemas/documentation-tools.js.map +1 -1
  183. package/dist/core/tool-schemas/isml-tools.d.ts +3 -0
  184. package/dist/core/tool-schemas/isml-tools.d.ts.map +1 -1
  185. package/dist/core/tool-schemas/isml-tools.js +4 -1
  186. package/dist/core/tool-schemas/isml-tools.js.map +1 -1
  187. package/dist/core/tool-schemas/log-tools.d.ts +28 -0
  188. package/dist/core/tool-schemas/log-tools.d.ts.map +1 -1
  189. package/dist/core/tool-schemas/log-tools.js +21 -7
  190. package/dist/core/tool-schemas/log-tools.js.map +1 -1
  191. package/dist/core/tool-schemas/script-debugger-tools.d.ts +12 -0
  192. package/dist/core/tool-schemas/script-debugger-tools.d.ts.map +1 -1
  193. package/dist/core/tool-schemas/script-debugger-tools.js +19 -2
  194. package/dist/core/tool-schemas/script-debugger-tools.js.map +1 -1
  195. package/dist/core/tool-schemas/sfra-tools.d.ts +3 -0
  196. package/dist/core/tool-schemas/sfra-tools.d.ts.map +1 -1
  197. package/dist/core/tool-schemas/sfra-tools.js +3 -0
  198. package/dist/core/tool-schemas/sfra-tools.js.map +1 -1
  199. package/dist/core/tool-schemas/shared-schemas.d.ts +72 -4
  200. package/dist/core/tool-schemas/shared-schemas.d.ts.map +1 -1
  201. package/dist/core/tool-schemas/shared-schemas.js +29 -3
  202. package/dist/core/tool-schemas/shared-schemas.js.map +1 -1
  203. package/dist/core/tool-schemas/system-object-tools.d.ts +93 -4
  204. package/dist/core/tool-schemas/system-object-tools.d.ts.map +1 -1
  205. package/dist/core/tool-schemas/system-object-tools.js +13 -6
  206. package/dist/core/tool-schemas/system-object-tools.js.map +1 -1
  207. package/dist/docs/dw_extensions.payments/SalesforcePaymentsMgr.md +52 -0
  208. package/dist/docs/dw_system/Request.md +4 -0
  209. package/dist/docs/dw_web/Cookie.md +54 -15
  210. package/dist/docs/isml/isprint.md +1 -1
  211. package/dist/docs/isml/isredirect.md +1 -1
  212. package/dist/docs/isml/isremove.md +1 -1
  213. package/dist/docs/isml/isreplace.md +1 -1
  214. package/dist/docs/isml/isscript.md +1 -1
  215. package/dist/main.js +18 -33
  216. package/dist/main.js.map +1 -1
  217. package/dist/tool-configs/agent-instructions-tool-config.d.ts +1 -1
  218. package/dist/tool-configs/agent-instructions-tool-config.d.ts.map +1 -1
  219. package/dist/tool-configs/agent-instructions-tool-config.js +0 -33
  220. package/dist/tool-configs/agent-instructions-tool-config.js.map +1 -1
  221. package/dist/tool-configs/cartridge-tool-config.d.ts +1 -1
  222. package/dist/tool-configs/cartridge-tool-config.d.ts.map +1 -1
  223. package/dist/tool-configs/cartridge-tool-config.js +3 -5
  224. package/dist/tool-configs/cartridge-tool-config.js.map +1 -1
  225. package/dist/tool-configs/code-version-tool-config.d.ts +1 -1
  226. package/dist/tool-configs/code-version-tool-config.d.ts.map +1 -1
  227. package/dist/tool-configs/code-version-tool-config.js +0 -4
  228. package/dist/tool-configs/code-version-tool-config.js.map +1 -1
  229. package/dist/tool-configs/docs-tool-config.d.ts +1 -1
  230. package/dist/tool-configs/docs-tool-config.d.ts.map +1 -1
  231. package/dist/tool-configs/docs-tool-config.js +0 -13
  232. package/dist/tool-configs/docs-tool-config.js.map +1 -1
  233. package/dist/tool-configs/isml-tool-config.d.ts +1 -1
  234. package/dist/tool-configs/isml-tool-config.d.ts.map +1 -1
  235. package/dist/tool-configs/isml-tool-config.js +0 -10
  236. package/dist/tool-configs/isml-tool-config.js.map +1 -1
  237. package/dist/tool-configs/job-log-tool-config.d.ts +1 -1
  238. package/dist/tool-configs/job-log-tool-config.d.ts.map +1 -1
  239. package/dist/tool-configs/job-log-tool-config.js +1 -21
  240. package/dist/tool-configs/job-log-tool-config.js.map +1 -1
  241. package/dist/tool-configs/log-tool-config.d.ts +1 -1
  242. package/dist/tool-configs/log-tool-config.d.ts.map +1 -1
  243. package/dist/tool-configs/log-tool-config.js +6 -16
  244. package/dist/tool-configs/log-tool-config.js.map +1 -1
  245. package/dist/tool-configs/script-debugger-tool-config.d.ts +1 -1
  246. package/dist/tool-configs/script-debugger-tool-config.d.ts.map +1 -1
  247. package/dist/tool-configs/script-debugger-tool-config.js +1 -8
  248. package/dist/tool-configs/script-debugger-tool-config.js.map +1 -1
  249. package/dist/tool-configs/sfra-tool-config.d.ts +1 -1
  250. package/dist/tool-configs/sfra-tool-config.d.ts.map +1 -1
  251. package/dist/tool-configs/sfra-tool-config.js +0 -10
  252. package/dist/tool-configs/sfra-tool-config.js.map +1 -1
  253. package/dist/tool-configs/system-object-tool-config.d.ts +1 -1
  254. package/dist/tool-configs/system-object-tool-config.d.ts.map +1 -1
  255. package/dist/tool-configs/system-object-tool-config.js +14 -24
  256. package/dist/tool-configs/system-object-tool-config.js.map +1 -1
  257. package/dist/types/ocapi-search.d.ts +50 -0
  258. package/dist/types/ocapi-search.d.ts.map +1 -0
  259. package/dist/types/ocapi-search.js +7 -0
  260. package/dist/types/ocapi-search.js.map +1 -0
  261. package/dist/types/types.d.ts +13 -5
  262. package/dist/types/types.d.ts.map +1 -1
  263. package/dist/utils/abort-utils.d.ts +18 -0
  264. package/dist/utils/abort-utils.d.ts.map +1 -0
  265. package/dist/utils/abort-utils.js +66 -0
  266. package/dist/utils/abort-utils.js.map +1 -0
  267. package/dist/utils/cache.d.ts +7 -7
  268. package/dist/utils/cache.d.ts.map +1 -1
  269. package/dist/utils/cache.js +1 -0
  270. package/dist/utils/cache.js.map +1 -1
  271. package/dist/utils/category-utils.d.ts +0 -10
  272. package/dist/utils/category-utils.d.ts.map +1 -1
  273. package/dist/utils/category-utils.js +0 -12
  274. package/dist/utils/category-utils.js.map +1 -1
  275. package/dist/utils/log-tool-constants.d.ts +3 -4
  276. package/dist/utils/log-tool-constants.d.ts.map +1 -1
  277. package/dist/utils/log-tool-constants.js +2 -13
  278. package/dist/utils/log-tool-constants.js.map +1 -1
  279. package/dist/utils/logger.d.ts +20 -7
  280. package/dist/utils/logger.d.ts.map +1 -1
  281. package/dist/utils/logger.js +72 -11
  282. package/dist/utils/logger.js.map +1 -1
  283. package/dist/utils/query-builder.d.ts +2 -5
  284. package/dist/utils/query-builder.d.ts.map +1 -1
  285. package/dist/utils/query-builder.js +1 -4
  286. package/dist/utils/query-builder.js.map +1 -1
  287. package/dist/utils/validator.d.ts +5 -3
  288. package/dist/utils/validator.d.ts.map +1 -1
  289. package/dist/utils/validator.js +20 -14
  290. package/dist/utils/validator.js.map +1 -1
  291. package/package.json +23 -11
  292. package/dist/clients/docs/index.d.ts +0 -10
  293. package/dist/clients/docs/index.d.ts.map +0 -1
  294. package/dist/clients/docs/index.js +0 -10
  295. package/dist/clients/docs/index.js.map +0 -1
  296. package/dist/constants/index.d.ts +0 -1
  297. package/dist/constants/index.d.ts.map +0 -1
  298. package/dist/constants/index.js +0 -3
  299. package/dist/constants/index.js.map +0 -1
  300. package/dist/utils/path-validation.d.ts +0 -40
  301. package/dist/utils/path-validation.d.ts.map +0 -1
  302. package/dist/utils/path-validation.js +0 -84
  303. package/dist/utils/path-validation.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - a0f5fbb: Add script debugger support for credentialed troubleshooting, including dedicated storefront authentication and custom trigger URLs.
8
+
9
+ Improve MCP execution and configuration handling with progress notifications, request cancellation, runtime WebDAV capability checks, flexible `dw.json` authentication, strict tool argument validation, and structured timeout-aware tool results.
10
+
11
+ Strengthen overall reliability with broader documentation and skill guidance, stronger tests and post-publish validation, and robustness improvements across the server, handlers, and configuration pipeline.
12
+
3
13
  All notable changes to this project will be documented in this file.
4
14
 
5
15
  The format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and versions follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
@@ -7,8 +17,10 @@ The format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.
7
17
  Release comparison links are provided at the bottom. Earlier patch releases on the same day may represent rapid iterations (e.g. architectural + documentation expansions). Dates are derived from git tag timestamps.
8
18
 
9
19
  ## [1.0.15] - 2025-10-03
20
+
10
21
  ### Added
11
- - **SFRA Best Practices Expansion**:
22
+
23
+ - **SFRA Best Practices Expansion**:
12
24
  - SFRA SCSS best practices guide with theming and override patterns
13
25
  - SFRA client-side JavaScript guide covering AJAX flows, validation, and accessibility
14
26
  - **OCAPI Select Parameter Support**: Comprehensive support for OCAPI select syntax to control response field selection
@@ -25,6 +37,7 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
25
37
  - **Custom Endpoint Caching**: Comprehensive caching strategies documentation for custom SCAPI endpoints with two-tier pattern examples
26
38
 
27
39
  ### Changed
40
+
28
41
  - **Testing Framework Migration**: Replaced Conductor with Aegis for MCP testing with improved declarative YAML patterns
29
42
  - **Documentation Modernization**:
30
43
  - Revamped documentation site with improved layout and readability
@@ -41,16 +54,19 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
41
54
  - **AI Interface Enhancements**: Improved AI interface and configuration documentation
42
55
 
43
56
  ### Fixed
57
+
44
58
  - **SSR Hydration**: Fixed SSR hydration mismatch in OnThisPage component
45
59
  - **Hash Navigation**: Resolved hash navigation issues after search operations
46
60
 
47
61
  ### Documentation
62
+
48
63
  - **CSRF Middleware**: Clarified CSRF middleware usage patterns in SFRA
49
64
  - **Remote Include Architecture**: Added detailed explanation of remote include patterns for dynamic content
50
65
  - **Aegis Testing**: Comprehensive updates to Aegis testing documentation with best practices
51
66
  - **Performance Guidance**: Enhanced performance best practices with SCAPI-specific caching strategies
52
67
 
53
68
  ### Testing
69
+
54
70
  - **Comprehensive Test Coverage**:
55
71
  - OCAPI error handling and validation tests
56
72
  - Site preferences search tool tests
@@ -64,6 +80,7 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
64
80
  - Enhanced test targeting and organization
65
81
 
66
82
  ### Dependencies
83
+
67
84
  - **GitHub Actions Updates**:
68
85
  - `actions/checkout` from 4 to 5
69
86
  - `actions/configure-pages` from 4 to 5
@@ -77,16 +94,19 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
77
94
  - Updated `ts-jest` in Jest group
78
95
 
79
96
  ### Notes
97
+
80
98
  - Major testing infrastructure modernization with Aegis framework adoption
81
99
  - Significant documentation site improvements with SSG migration and enhanced UX
82
100
  - Expanded SFRA best practices coverage for complete development lifecycle
83
101
  - Enhanced OCAPI functionality with select parameter support and comprehensive mocking
84
102
 
85
103
  ## [1.0.14] - 2025-09-16
104
+
86
105
  ### Added
106
+
87
107
  - **SFCC Class Information Filtering**: Enhanced `get_sfcc_class_info` tool with comprehensive filtering capabilities including search parameter, inclusion/exclusion of descriptions, constants, properties, methods, and inheritance hierarchy.
88
108
  - **AI Response Comparison Modals**: Interactive modals on documentation site showing side-by-side comparison of AI responses with and without MCP server, including zoom functionality for detailed inspection.
89
- - **Documentation Site Enhancements**:
109
+ - **Documentation Site Enhancements**:
90
110
  - Examples page with practical usage scenarios and filtering demonstrations
91
111
  - Tools page documenting all available MCP tools
92
112
  - Features page highlighting key capabilities
@@ -99,6 +119,7 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
99
119
  - **Anchor Link Navigation**: Added IDs to documentation headers for direct linking.
100
120
 
101
121
  ### Changed
122
+
102
123
  - **Project Licensing**: Aligned to MIT License (replaced ISC LICENSE text, updated `package.json` license field).
103
124
  - **CI/CD Pipeline**: Enhanced with improved linting and security checks.
104
125
  - **Documentation Structure**: Comprehensive reorganization and expansion of documentation site structure.
@@ -107,152 +128,199 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
107
128
  - **UI/UX Polish**: Improved padding, layout adjustments, and site navigation structure.
108
129
 
109
130
  ### Fixed
131
+
110
132
  - **URL Fragment Handling**: Fixed URL-encoded hash fragment handling in documentation site.
111
133
  - **Workflow Deployment**: Corrected path issues for page deployment.
112
134
  - **Log Tool Validation**: Improved argument validation robustness for log analysis tools.
113
135
 
114
136
  ### Documentation
137
+
115
138
  - **AI Interface Setup**: Comprehensive guides for Claude Desktop, Cursor, and GitHub Copilot integration.
116
139
  - **Security Guidance**: Enhanced security considerations and best practices documentation.
117
140
  - **Troubleshooting**: Added comprehensive troubleshooting guide for common setup and usage issues.
118
141
  - **Development Workflow**: Detailed development guidelines and contribution instructions.
119
142
 
120
143
  ### Testing
121
- - **Enhanced Test Coverage**:
144
+
145
+ - **Enhanced Test Coverage**:
122
146
  - Comprehensive programmatic tests for SFCC class info filtering in documentation mode
123
147
  - Enhanced YAML-based MCP tests for class information tools
124
148
  - Job execution summary tests and job log analysis tests
125
149
  - Improved test setup reliability and CI stability
126
150
 
127
151
  ### Notes
152
+
128
153
  - Major documentation site expansion with React/Vite architecture
129
154
  - Enhanced developer experience with comprehensive filtering and search capabilities
130
155
  - Improved AI assistant integration with detailed setup guides for multiple platforms
131
156
 
132
157
  ## [1.0.13] - 2025-09-15
158
+
133
159
  ### Added
160
+
134
161
  - `engines` field in `package.json` enforcing Node >=18 and npm >=8.
135
162
  - Comprehensive architectural documentation (handler modularization, capability gating, services layer, log subsystem, tool-configs, caching).
136
163
  - Initial `CHANGELOG.md` introduction.
137
164
 
138
165
  ### Changed
166
+
139
167
  - Server reported version synchronized with `package.json`.
140
168
  - Development guide: migrated from legacy Jekyll instructions to Vite workflow; updated tool addition workflow for new handler architecture.
141
169
 
142
170
  ### Fixed
171
+
143
172
  - Removed references to non-existent config files (`config.ts`, `constants.ts`).
144
173
  - Corrected debug flag examples (`--debug` vs `--debug true`).
145
174
  - Escaping/format fixes in development guide code blocks.
146
175
 
147
176
  ### Notes
177
+
148
178
  - Pre-1.0.14 license mismatch (ISC vs MIT badge) resolved in 1.0.14.
149
179
 
150
180
  ## [1.0.12] - 2025-08-19
181
+
151
182
  ### Added
183
+
152
184
  - Code version management tools (listing & activation) with supporting documentation.
153
185
  - Cartridge generation enhancements: page layout & styling improvements; prevention of overwriting existing files.
154
186
  - Security and OCAPI configuration warnings; highlighted AI instruction files.
155
187
  - Additional SFRA model and best practice documentation (ISML decorators, LocalServiceRegistry, Auth examples, BM configuration guide).
156
188
 
157
189
  ### Changed
190
+
158
191
  - ESLint configuration (global vars, lint fix script), table styling, documentation site theme updates, repository URL in config, branch protection for deploy (restricted to main), improved instance type check.
159
192
  - Documentation structure reorganized (multiple passes consolidating guides, theme adjustments, layout evolution and subsequent refinements / reverts).
160
193
 
161
194
  ### Fixed
195
+
162
196
  - Removal of `resourceState` from activateCodeVersion request.
163
197
 
164
198
  ### Documentation
199
+
165
200
  - Large expansion of SFRA models, cartridge creation, ISML templates, decorators warnings, URL patterns, customer context, authentication flows, endpoint security guidance.
166
201
 
167
202
  ### Notes
203
+
168
204
  - Multiple rapid doc iterations (additions, reverts, restyles) before stabilization.
169
205
 
170
206
  ## [1.0.11] - 2025-08-15
207
+
171
208
  ### Added
209
+
172
210
  - SFCC development rules and SFRA controllers best practices guide.
173
211
  - AI interface instruction documentation.
174
212
 
175
213
  ### Changed
214
+
176
215
  - Refactored rule configurations; enhanced SFCC debugging workflows; streamlined documentation tools; removed improvement roadmap.
177
216
 
178
217
  ### Fixed
218
+
179
219
  - Log files now sorted by last modification for accurate recency ordering.
180
220
 
181
221
  ### Testing
222
+
182
223
  - Enhanced log client test coverage.
183
224
 
184
225
  ### Notes
226
+
185
227
  - Documentation emphasis on rule context explanation and operational clarity.
186
228
 
187
229
  ## [1.0.10] - 2025-08-15
230
+
188
231
  ### Added
232
+
189
233
  - Custom object attribute search capability.
190
234
  - Progressive development guide (subsequently refined) and job framework best practices.
191
235
  - Additional documentation: steptypes configuration, ISML templates, SCAPI custom endpoint guide, path parameter & search query usage clarifications, SFRA documentation support expansion.
192
236
 
193
237
  ### Changed
238
+
194
239
  - Auth examples refactored into appendix; logging improvements and build output cleanliness.
195
240
 
196
241
  ### Fixed
242
+
197
243
  - Reversal / clarification cycles for job framework status codes and default values (cleanup of earlier docs ambiguities).
198
244
 
199
245
  ### Notes
246
+
200
247
  - Foundation for expanded SCAPI / SFRA documentation just before rapid rule & controller additions in 1.0.11.
201
248
 
202
249
  ## [1.0.9-2] - 2025-08-13
250
+
203
251
  ### Changed
252
+
204
253
  - Enhanced release workflow (iteration on same-day release of 1.0.9).
205
254
 
206
255
  ## [1.0.9] - 2025-08-13
256
+
207
257
  ### Added
258
+
208
259
  - Initial modular handler & directory architecture groundwork: secure config loading, debug log support, documentation-only mode, system object exposure, site preferences & attribute search, OCAPI client integration.
209
260
  - CI workflow, caching layer for documentation, expanded class details, path resolver, pre-commit hooks, NPM publishing & Dependabot configuration, issue templates.
210
261
 
211
262
  ### Changed
263
+
212
264
  - Large-scale codebase reorganization (directory structure, authentication & logging refactors, configuration loading improvements, handler refactors, OAuth token management relocation, package metadata updates, JSON serialization, system object description refinements, server architecture refactor).
213
265
  - Log tool naming alignment & tool description clarity improvements.
214
266
 
215
267
  ### Fixed
268
+
216
269
  - File path security validation enhancements.
217
270
 
218
271
  ### Documentation
272
+
219
273
  - Extensive expansion: best practices (security, performance, cartridge creation), contributing guidelines, search tool description, quick setup, system object definitions, Copilot instructions, local dev focus clarification.
220
274
 
221
275
  ### Testing
276
+
222
277
  - Added Jest framework and early test coverage (config factory, OAuth token manager, log client, attribute definitions, best practices client).
223
278
 
224
279
  ### Notes
280
+
225
281
  - Represents the foundational public baseline preceding rapid feature layering in 1.0.10+.
226
282
 
227
283
  ## [1.0.8] - 2025-08-13
284
+
228
285
  ### Changed
286
+
229
287
  - Package version alignment & metadata updates; project structure and documentation improvements; Node version CI expansions.
230
288
 
231
289
  ### Added
290
+
232
291
  - Security & performance best practices guides, contributing guidelines, AI assistant integration guide, deprecation support, attribute definition search, site preferences search.
233
292
 
234
293
  ### Notes
294
+
235
295
  - Last pre-architecture refactor baseline before major handler and structural reorganization in 1.0.9.
236
296
 
237
297
  ## [1.0.2] - 2025-08-08
298
+
238
299
  ### Added
300
+
239
301
  - Debug logging capabilities, caching for documentation, expanded class details, initial SFCC MCP server feature set (system object & attribute tools, OCAPI integration, documentation retrieval).
240
302
  - Jest testing framework & initial unit tests.
241
303
 
242
304
  ### Changed
305
+
243
306
  - Centralized logging infrastructure; configuration logging & security tightening; authentication config refactors.
244
307
 
245
308
  ### Documentation
309
+
246
310
  - Cartridge creation guide, npx usage instructions, API docs, system object definitions resource.
247
311
 
248
312
  ### Notes
313
+
249
314
  - Early stabilization phase; intermediate patch releases between 1.0.2 and 1.0.8 consolidated here (internal iteration without tags not reconstructed individually).
250
315
 
251
316
  ## [1.0.0] - 2025-08-08
317
+
252
318
  ### Added
319
+
253
320
  - Initial commit introducing SFCC Dev MCP Server core (base server, tooling scaffolding, initial documentation framework).
254
321
 
255
322
  ### Notes
323
+
256
324
  - Foundation commit history includes scaffolding, early capability extensions, and initial architectural decisions.
257
325
 
258
326
  ---
@@ -260,6 +328,7 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
260
328
  ---
261
329
 
262
330
  ### Future
331
+
263
332
  - Add automation for changelog validation in CI (ensure categories & links present).
264
333
  - Add script to generate comparison links automatically when tagging.
265
334
  - Potential provenance notes for security-impacting changes (e.g., file path validation hardening).
@@ -267,6 +336,7 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
267
336
  ---
268
337
 
269
338
  ### Comparison Links
339
+
270
340
  [1.0.15]: https://github.com/taurgis/sfcc-dev-mcp/compare/v1.0.14...v1.0.15
271
341
  [1.0.14]: https://github.com/taurgis/sfcc-dev-mcp/compare/v1.0.13...v1.0.14
272
342
  [1.0.13]: https://github.com/taurgis/sfcc-dev-mcp/compare/v1.0.12...v1.0.13
@@ -278,4 +348,3 @@ Release comparison links are provided at the bottom. Earlier patch releases on t
278
348
  [1.0.8]: https://github.com/taurgis/sfcc-dev-mcp/compare/v1.0.2...v1.0.8
279
349
  [1.0.2]: https://github.com/taurgis/sfcc-dev-mcp/compare/v1.0.0...v1.0.2
280
350
  [1.0.0]: https://github.com/taurgis/sfcc-dev-mcp/tree/v1.0.0
281
-
package/README.md CHANGED
@@ -3,18 +3,20 @@
3
3
  [![npm version](https://badge.fury.io/js/sfcc-dev-mcp.svg)](https://badge.fury.io/js/sfcc-dev-mcp)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
 
6
- An AI-powered Model Context Protocol (MCP) server that provides comprehensive access to Salesforce B2C Commerce Cloud development tools, documentation, and best practices.
6
+ An AI-powered Model Context Protocol (MCP) server that provides comprehensive access to Salesforce B2C Commerce Cloud development tools, documentation, and runtime diagnostics.
7
7
 
8
8
  ## โœจ Key Features
9
9
 
10
10
  - **๐Ÿ” Complete SFCC Documentation Access** - Search and explore all SFCC API classes and methods
11
- - **๐Ÿ“š Best Practices Guides** - Curated development guidelines for cartridges, hooks, controllers, client-side JavaScript, and more
12
11
  - **๐Ÿ—๏ธ SFRA Documentation** - Enhanced access to Storefront Reference Architecture documentation
13
- - **๏ฟฝ ISML Template Reference** - Complete ISML element documentation with examples and best practices
14
- - **๏ฟฝ๐Ÿ“Š Log Analysis Tools** - Real-time error monitoring, debugging, and job log analysis for SFCC instances
12
+ - **๐Ÿงฑ ISML Template Reference** - Complete ISML element documentation with examples and usage guidance
13
+ - **๐Ÿ“Š Log Analysis Tools** - Real-time error monitoring, debugging, and job log analysis for SFCC instances
15
14
  - **โš™๏ธ System Object Definitions** - Explore custom attributes and site preferences
16
- - **๐Ÿš€ Cartridge Generation** - Automated cartridge structure creation
15
+ - **๐Ÿงช Script Debugger** - Execute and inspect script-debugger endpoints in credentialed mode, including custom trigger URLs/paths for non-default storefront routes
16
+ - **๐Ÿš€ Cartridge Generation** - Automated cartridge structure creation with workspace-bound path safety (writes stay inside workspace roots, or current working directory fallback when roots are unavailable; home-directory fallback is blocked)
17
17
  - **๐Ÿงฉ Agent Skill Bootstrap** - Install or merge AGENTS.md and bundled skills into the current project or a temp directory for AI assistants
18
+ - **โœ… Tool Argument Validation** - Runtime schema validation enforces required fields, type checks, enum constraints, integer/numeric bounds, and strict unknown-key checks for object schemas (top-level and nested) before handler execution
19
+ - **โฑ๏ธ MCP Progress + Cancellation** - Tool calls honor request cancellation signals and emit out-of-band `notifications/progress` updates when clients provide a `progressToken`
18
20
 
19
21
  ## ๐Ÿš€ Quick Start
20
22
 
@@ -42,17 +44,25 @@ An AI-powered Model Context Protocol (MCP) server that provides comprehensive ac
42
44
  }
43
45
  ```
44
46
 
45
- Create a `dw.json` file with your SFCC credentials:
47
+ Create a `dw.json` file with your SFCC credentials. You can use either auth mode (or both):
48
+ - Basic auth: `username` + `password`
49
+ - OAuth: `client-id` + `client-secret`
50
+ - Optional storefront auth (for script debugger trigger on Basic-Auth storefronts): `storefrontUsername` + `storefrontPassword`
46
51
  ```json
47
52
  {
48
53
  "hostname": "your-instance.sandbox.us01.dx.commercecloud.salesforce.com",
49
54
  "username": "your-username",
50
- "password": "your-password",
55
+ "password": "your-password",
56
+ "storefrontUsername": "your-storefront-basic-user",
57
+ "storefrontPassword": "your-storefront-basic-password",
51
58
  "client-id": "your-client-id",
52
59
  "client-secret": "your-client-secret"
53
60
  }
54
61
  ```
55
62
 
63
+ At least one complete credential pair is required when `hostname` is set.
64
+ If credentials are provided, `hostname` is also required.
65
+
56
66
  ### Option 3: Auto-Discovery (Recommended for VS Code users)
57
67
  Simply open a VS Code workspace that contains a `dw.json` file - the server will automatically discover and use it:
58
68
  ```json
@@ -74,7 +84,7 @@ The server discovers SFCC credentials in this order (highest priority first):
74
84
  |----------|--------|-------------|
75
85
  | **1** | `--dw-json` CLI parameter | Explicit path to dw.json file |
76
86
  | **2** | Environment variables | `SFCC_HOSTNAME`, `SFCC_USERNAME`, `SFCC_PASSWORD`, `SFCC_CLIENT_ID`, `SFCC_CLIENT_SECRET` |
77
- | **3** | MCP workspace roots | Automatically discovers dw.json in your VS Code workspace folder(s) |
87
+ | **3** | MCP workspace roots | Automatically discovers dw.json in your VS Code workspace folder(s), and refreshes when the client sends `notifications/roots/list_changed` |
78
88
 
79
89
  > **Note**: The server no longer searches the current working directory by default, as MCP servers often start with `cwd` set to the user's home directory. The MCP workspace roots mechanism provides reliable project context.
80
90
 
@@ -82,36 +92,47 @@ The server discovers SFCC credentials in this order (highest priority first):
82
92
 
83
93
  | Mode | Tools Available | SFCC Credentials Required |
84
94
  |------|----------------|---------------------------|
85
- | **Documentation-Only** | 21 tools | โŒ No |
86
- | **Full Mode** | 38 tools | โœ… Yes |
95
+ | **Documentation-Only** | 18 tools | โŒ No |
96
+ | **Full Mode** | 40 tools | โœ… Yes |
87
97
 
88
98
  ### Documentation-Only Mode
89
- Perfect for learning and development - no SFCC instance required:
99
+ Perfect for learning and development, no SFCC instance required:
90
100
  - Complete SFCC API documentation (5 tools)
91
- - Best practices guides (4 tools) โ€“ cartridges, client-side JavaScript, controllers, hooks, security/performance
92
101
  - SFRA documentation (5 tools)
93
102
  - ISML template documentation (5 tools)
94
- - Cartridge generation (1 tool)
95
- - Agent instruction bootstrap (1 tool) to copy/merge AGENTS.md and skills
103
+ - Cartridge generation (1 tool, writes constrained to workspace roots/cwd)
104
+ - Agent instruction bootstrap (2 tools) to copy/merge AGENTS.md and skills, or disable future prompts
96
105
 
97
106
  ### Full Mode
98
107
  Complete development experience with live SFCC instance access:
99
- - All documentation-only features (21 tools)
100
- - Real-time log analysis (13 tools)
108
+ - All documentation-only features (18 tools)
109
+ - Real-time log analysis and job logs (13 tools)
101
110
  - System object definitions (6 tools)
102
111
  - Code version management (2 tools)
112
+ - Script debugger operations (1 tool)
103
113
 
104
114
  ## ๐Ÿ—๏ธ Architecture Overview
105
115
 
106
116
  This server is built around a **capability-gated, modular handler architecture** that cleanly separates tool routing from domain logic:
107
117
 
108
118
  ### Core Layers
109
- - **Tool Schemas** (`src/core/tool-schemas/`): Modular, category-based tool definitions (documentation, best practices, SFRA, ISML, logs, job logs, system objects, cartridge, code versions). Re-exported via `tool-definitions.ts`.
110
- - **Handlers** (`src/core/handlers/`): Each category has a handler extending a common base for timing, structured logging, and error normalization (e.g. `log-handler`, `docs-handler`, `isml-handler`, `system-object-handler`).
111
- - **Clients** (`src/clients/`): Encapsulate domain operations (OCAPI, SFRA docs, ISML docs, best practices, modular log analysis, cartridge generation). Handlers delegate to these so orchestration and computation remain separate.
119
+ - **Tool Schemas** (`src/core/tool-schemas/`): Modular, category-based tool definitions (documentation, SFRA, ISML, logs, job logs, system objects, cartridge, code versions, agent instructions, script debugger). Re-exported via `tool-definitions.ts`.
120
+ - **Server Orchestration Modules** (`src/core/server-tool-catalog.ts`, `src/core/server-tool-call-lifecycle.ts`, `src/core/server-workspace-discovery.ts`): Keeps `server.ts` focused by extracting capability-aware tool catalog logic, `tools/call` lifecycle (progress/cancellation/preflight), and workspace roots reconfiguration flow.
121
+ - **Tool Argument Validator** (`src/core/tool-argument-validator.ts`): Enforces runtime argument shape at the MCP boundary for all tools (required fields, primitive/object/array types, enum checks, integer/numeric ranges, string patterns/length, and strict unknown-key checks for object schemas at top-level and nested levels) before tool dispatch.
122
+ - **OCAPI Query Coverage** (`src/core/tool-schemas/shared-schemas.ts`): Shared search schemas include `text_query`, `term_query`, `bool_query`, `filtered_query`, and `match_all_query` so MCP boundary validation aligns with supported OCAPI query patterns.
123
+ - **Handlers** (`src/core/handlers/`): Each category has a handler extending a common base for timing, structured logging, and error normalization, with config-driven wiring via `ConfiguredClientHandler` to reduce repetitive boilerplate (e.g. `log-handler`, `docs-handler`, `isml-handler`, `system-object-handler`).
124
+ - **Clients** (`src/clients/`): Encapsulate domain operations (OCAPI, SFRA docs, ISML docs, modular log analysis, script debugger, cartridge generation, agent-instruction sync). Handlers delegate to these so orchestration and computation remain separate.
112
125
  - **Services** (`src/services/`): Dependency-injected abstractions for filesystem and path operations โ€” improves testability and isolates side effects.
113
126
  - **Modular Log System** (`src/clients/logs/`): Reader (range/tail optimization), discovery, processor (line โ†’ structured entry), analyzer (patterns & health), formatter (human output) for maintainable evolution.
114
127
  - **Configuration Factory** (`src/config/configuration-factory.ts`): Determines capabilities (`canAccessLogs`, `canAccessOCAPI`) based on provided credentials and filters exposed tools accordingly (principle of least privilege).
128
+ - **Shared Credential Validation** (`src/config/credential-validation.ts`): Centralizes auth-pair completeness and hostname-format validation for both `dw.json` loading and runtime configuration creation.
129
+ - **Call-time Capability Guarding** (`src/core/server.ts`): Rejects execution of tools that are unavailable in the current mode, so hidden tools are not callable via direct `tools/call` requests.
130
+ - **Call Lifecycle Signals** (`src/core/server.ts`): `tools/call` handling supports cancellation via request abort signals and emits best-effort progress notifications when the caller provides `_meta.progressToken`.
131
+ - **Tool Error Sanitization** (`src/core/tool-error-response.ts`): Sanitizes upstream execution errors before returning MCP tool responses, reducing accidental leakage of backend payload details.
132
+ - **Runtime WebDAV Verification** (`src/core/server.ts`): For OAuth-only configurations (`client-id`/`client-secret` without `username`/`password`), log/job-log/script-debugger tool exposure is gated by a one-time WebDAV capability probe to avoid false-positive tool availability.
133
+ - **CLI Option Helpers** (`src/config/cli-options.ts`): Centralizes command-line parsing and environment credential detection for predictable startup behavior.
134
+ - **Shared Path Security Policy** (`src/config/path-security-policy.ts`): Reuses allow/block path rules across workspace-root discovery and secure `dw.json` loading.
135
+ - **Shared Abort Utility** (`src/utils/abort-utils.ts`): Centralized timeout and abort-signal composition used by HTTP and debugger clients for consistent cancellation semantics and timer cleanup.
115
136
 
116
137
  ### Why This Matters
117
138
  - **Extensibility**: Adding a new tool usually means adding a schema + minimal handler logic (or a new handler if a new domain).
@@ -137,9 +158,9 @@ Choose your preferred AI assistant:
137
158
 
138
159
  | Interface | Best For | Setup Guide |
139
160
  |-----------|----------|-------------|
140
- | **Claude Desktop** | Multi-turn conversations, debugging | [๐Ÿ“– Setup Guide](https://taurgis.github.io/sfcc-dev-mcp/ai-interfaces#claude-desktop) |
141
- | **GitHub Copilot** | VS Code integration, inline suggestions | [๐Ÿ“– Setup Guide](https://taurgis.github.io/sfcc-dev-mcp/ai-interfaces#github-copilot) |
142
- | **Cursor** | Modern AI-powered editor | [๐Ÿ“– Setup Guide](https://taurgis.github.io/sfcc-dev-mcp/ai-interfaces#cursor) |
161
+ | **Claude Desktop** | Multi-turn conversations, debugging | [๐Ÿ“– Setup Guide](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/ai-interfaces/) |
162
+ | **GitHub Copilot** | VS Code integration, inline suggestions | [๐Ÿ“– Setup Guide](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/ai-interfaces/) |
163
+ | **Cursor** | Modern AI-powered editor | [๐Ÿ“– Setup Guide](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/ai-interfaces/) |
143
164
 
144
165
  ## ๐Ÿ“ฆ Installation
145
166
 
@@ -170,6 +191,8 @@ npx -y sfcc-dev-mcp --debug
170
191
  npx -y sfcc-dev-mcp --dw-json /path/to/your/dw.json --debug
171
192
  ```
172
193
 
194
+ `--debug` accepts `true/false`, `1/0`, or `yes/no`. Invalid values fail fast with a clear error message.
195
+
173
196
  ### Log File Locations
174
197
 
175
198
  The server writes logs to your system's temporary directory:
@@ -188,20 +211,67 @@ The server writes logs to your system's temporary directory:
188
211
  ```javascript
189
212
  // The exact path varies by system - to find yours:
190
213
  node -e "console.log(require('os').tmpdir() + '/sfcc-mcp-logs')"
214
+ ```
215
+
216
+ ## ๐Ÿงช Release Flow (Maintainers)
217
+
218
+ This repository now uses Changesets for npm releases.
219
+
220
+ When a change should ship in a new `sfcc-dev-mcp` version, add a changeset from the repository root:
221
+
222
+ ```bash
223
+ npm run changeset
224
+ ```
225
+
226
+ Check pending release state against `main` before merging:
227
+
228
+ ```bash
229
+ npm run release:status
230
+ ```
231
+
232
+ The release workflow on `main` creates or updates a release pull request from pending changesets. Merging that release pull request publishes the npm package through npm trusted publishing (GitHub Actions OIDC), waits for npm propagation, reruns MCP tests against the published NPX artifact, and then publishes the same version to the MCP Registry.
233
+
234
+ `npm run version-packages` also syncs `server.json` with the package version so `validate:server-json` keeps passing in the release PR.
235
+
236
+ Package publication now uses GitHub Actions OIDC trusted publishing, so no separate npm publish secret is required.
237
+
238
+ You can run the same validation locally:
239
+
240
+ ```bash
241
+ # Ensure docs-site tool catalog stays in sync with runtime tool definitions
242
+ npm run validate:tools-sync
243
+
244
+ # Ensure docs-site skills catalog stays in sync with bundled skills
245
+ npm run validate:skills-sync
246
+
247
+ # Ensure MCP registry metadata stays in sync with package.json
248
+ npm run validate:server-json
249
+
250
+ # In a separate terminal, start the mock server first for full-mode MCP tests
251
+ npm run test:mock-server:start
252
+
253
+ # Uses latest published version by default
254
+ npm run test:mcp:published-npx
255
+
256
+ # Or pin a specific published version
257
+ bash ./scripts/test-published-npx.sh 1.0.21
258
+ ```
259
+
260
+ In GitHub Actions, the publish workflow manages the mock server lifecycle automatically.
191
261
 
192
262
  ## ๐Ÿ“– Documentation
193
263
 
194
- **๐Ÿ“š [Complete Documentation](https://taurgis.github.io/sfcc-dev-mcp/)** - Comprehensive guides and references
264
+ **๐Ÿ“š [Complete Documentation](https://sfcc-mcp-dev.rhino-inquisitor.com/)** - Comprehensive guides and references
195
265
 
196
266
  Documentation source lives in `docs-site-v2/` (VitePress). The legacy React site remains in `docs-site/`.
197
267
 
198
268
  Quick Links:
199
- - **[Installation Guide](https://taurgis.github.io/sfcc-dev-mcp/installation)** - Detailed installation options
200
- - **[AI Interface Setup](https://taurgis.github.io/sfcc-dev-mcp/ai-interfaces)** - Configure Claude Desktop, GitHub Copilot, or Cursor
201
- - **[Configuration Guide](https://taurgis.github.io/sfcc-dev-mcp/configuration)** - SFCC credentials and Data API setup
202
- - **[Available Tools](https://taurgis.github.io/sfcc-dev-mcp/tools)** - Complete tool reference
203
- - **[Examples](https://taurgis.github.io/sfcc-dev-mcp/examples)** - Real-world usage patterns
204
- - **[Troubleshooting](https://taurgis.github.io/sfcc-dev-mcp/troubleshooting)** - Common issues and solutions
269
+ - **[Getting Started](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/)** - Installation and first-run setup
270
+ - **[AI Interface Setup](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/ai-interfaces/)** - Configure Claude Desktop, GitHub Copilot, or Cursor
271
+ - **[Configuration Guide](https://sfcc-mcp-dev.rhino-inquisitor.com/guide/configuration/)** - SFCC credentials and Data API setup
272
+ - **[Available Tools](https://sfcc-mcp-dev.rhino-inquisitor.com/tools/)** - Complete tool reference
273
+ - **[Examples](https://sfcc-mcp-dev.rhino-inquisitor.com/examples/)** - Real-world usage patterns
274
+ - **[Troubleshooting](https://sfcc-mcp-dev.rhino-inquisitor.com/troubleshooting/)** - Common issues and solutions
205
275
 
206
276
  ## ๐Ÿ› ๏ธ Example AI Interactions
207
277
 
@@ -213,7 +283,7 @@ Quick Links:
213
283
  ๐Ÿค– Analyzes recent error logs, identifies issues, and suggests fixes
214
284
 
215
285
  ๐Ÿง‘โ€๐Ÿ’ป "Show me how to implement OCAPI hooks for order validation"
216
- ๐Ÿค– Provides best practices guide with complete hook implementation examples
286
+ ๐Ÿค– Retrieves related SFCC classes and methods, then proposes a concrete hook implementation pattern
217
287
  ```
218
288
 
219
289
  ## ๐Ÿ”’ Security Notes
@@ -257,4 +327,4 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
257
327
 
258
328
  **๐Ÿš€ Ready to supercharge your SFCC development with AI?**
259
329
 
260
- **[๐Ÿ“– Get Started with the Full Documentation](https://taurgis.github.io/sfcc-dev-mcp/)**
330
+ **[๐Ÿ“– Get Started with the Full Documentation](https://sfcc-mcp-dev.rhino-inquisitor.com/)**
@@ -27,6 +27,7 @@ The `evaluate_script` tool allows you to execute arbitrary JavaScript code on an
27
27
  | `timeout` | No | `30000` | Maximum execution time in milliseconds |
28
28
  | `breakpointFile` | No | Auto-detected | Custom controller path for breakpoint |
29
29
  | `breakpointLine` | No | `1,10,20,30,40,50` | Specific line for a single breakpoint; if omitted, strategic lines (1,10,20,30,40,50) are used |
30
+ | `triggerUrl` | No | Auto-detected | Custom storefront URL or path to trigger; site-relative paths are resolved to `https://{hostname}/s/{siteId}/...` |
30
31
 
31
32
  ## Script Syntax Rules
32
33
 
@@ -52,6 +52,9 @@ export declare class AgentInstructionsClient {
52
52
  private resolveWorkspaceRoot;
53
53
  private resolveBasePath;
54
54
  private resolveSkillsTarget;
55
+ private getStatusSkillsCandidates;
56
+ private getDefaultSkillsCandidates;
57
+ private sanitizePreferredSkillsDir;
55
58
  private planAgentMerge;
56
59
  private planSkillCopy;
57
60
  private applyPlan;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-instructions-client.d.ts","sourceRoot":"","sources":["../../src/clients/agent-instructions-client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QACP,YAAY,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;QAChE,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,aAAa,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAC9D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAE9B,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,CAAC,EAAE,MAAM;IAOnE,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsC7D,gBAAgB,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAiFtE,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,eAAe;YAmBT,mBAAmB;YAoBnB,cAAc;YAsBd,aAAa;YAqBb,SAAS;YAUT,WAAW;YAoBX,UAAU;YAUV,iBAAiB;YAcjB,mBAAmB;YAUnB,oBAAoB;YASpB,MAAM;YASN,WAAW;CAQ1B"}
1
+ {"version":3,"file":"agent-instructions-client.d.ts","sourceRoot":"","sources":["../../src/clients/agent-instructions-client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAiBrE,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QACP,YAAY,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;QAChE,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,aAAa,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAC9D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAE9B,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,CAAC,EAAE,MAAM;IAOnE,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkC7D,gBAAgB,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAiFtE,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,eAAe;YAmBT,mBAAmB;IAmBjC,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,0BAA0B;IASlC,OAAO,CAAC,0BAA0B;YAapB,cAAc;YAsBd,aAAa;YAqBb,SAAS;YAUT,WAAW;YAoBX,UAAU;YAUV,iBAAiB;YAcjB,mBAAmB;YAUnB,oBAAoB;YASpB,MAAM;YASN,WAAW;CAQ1B"}