@wix/mcp 1.0.19 → 1.0.20

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 (56) hide show
  1. package/README.md +10 -3
  2. package/build/bin-standalone.js +4121 -8079
  3. package/build/bin-standalone.js.map +4 -4
  4. package/build/cjs/index.cjs +4006 -8035
  5. package/build/cjs/index.cjs.map +4 -4
  6. package/build/dts/api-call/index.d.ts.map +1 -1
  7. package/build/dts/api-call/index.js +5 -2
  8. package/build/dts/api-call/index.js.map +1 -1
  9. package/build/dts/bin.d.ts +2 -2
  10. package/build/dts/bin.d.ts.map +1 -1
  11. package/build/dts/bin.js +20 -1
  12. package/build/dts/bin.js.map +1 -1
  13. package/build/dts/cli-tools/utils.d.ts +2 -0
  14. package/build/dts/cli-tools/utils.d.ts.map +1 -0
  15. package/build/dts/cli-tools/utils.js +21 -0
  16. package/build/dts/cli-tools/utils.js.map +1 -0
  17. package/build/dts/docs/docs.d.ts +1 -1
  18. package/build/dts/docs/docs.d.ts.map +1 -1
  19. package/build/dts/docs/docs.js +66 -0
  20. package/build/dts/docs/docs.js.map +1 -1
  21. package/build/dts/docs/semanticSearch.d.ts.map +1 -1
  22. package/build/dts/docs/semanticSearch.js +4 -0
  23. package/build/dts/docs/semanticSearch.js.map +1 -1
  24. package/build/dts/docs/velo-readme.d.ts +3 -0
  25. package/build/dts/docs/velo-readme.d.ts.map +1 -0
  26. package/build/dts/docs/velo-readme.js +30 -0
  27. package/build/dts/docs/velo-readme.js.map +1 -0
  28. package/build/dts/index.d.ts +3 -1
  29. package/build/dts/index.d.ts.map +1 -1
  30. package/build/dts/index.js +1 -0
  31. package/build/dts/index.js.map +1 -1
  32. package/build/dts/infra/environment.d.ts +2 -1
  33. package/build/dts/infra/environment.d.ts.map +1 -1
  34. package/build/dts/infra/environment.js +3 -0
  35. package/build/dts/infra/environment.js.map +1 -1
  36. package/build/dts/infra/logger.d.ts +1 -2
  37. package/build/dts/infra/logger.d.ts.map +1 -1
  38. package/build/dts/wix-mcp-server.d.ts +15 -1
  39. package/build/dts/wix-mcp-server.d.ts.map +1 -1
  40. package/build/dts/wix-mcp-server.js +42 -14
  41. package/build/dts/wix-mcp-server.js.map +1 -1
  42. package/build/esm/index.js +6379 -8118
  43. package/build/esm/index.js.map +4 -4
  44. package/package.json +5 -5
  45. package/build/dts/interactive-command-tools/eventually.d.ts +0 -7
  46. package/build/dts/interactive-command-tools/eventually.d.ts.map +0 -1
  47. package/build/dts/interactive-command-tools/eventually.js +0 -16
  48. package/build/dts/interactive-command-tools/eventually.js.map +0 -1
  49. package/build/dts/interactive-command-tools/handleStdout.d.ts +0 -14
  50. package/build/dts/interactive-command-tools/handleStdout.d.ts.map +0 -1
  51. package/build/dts/interactive-command-tools/handleStdout.js +0 -76
  52. package/build/dts/interactive-command-tools/handleStdout.js.map +0 -1
  53. package/build/dts/interactive-command-tools/interactive-command-utils.d.ts +0 -8
  54. package/build/dts/interactive-command-tools/interactive-command-utils.d.ts.map +0 -1
  55. package/build/dts/interactive-command-tools/interactive-command-utils.js +0 -76
  56. package/build/dts/interactive-command-tools/interactive-command-utils.js.map +0 -1
@@ -9,16 +9,18 @@ import { HttpClient } from '@wix/http-client';
9
9
  import { logger } from './infra/logger.js';
10
10
  export class WixMcpServer extends McpServer {
11
11
  serverInfo;
12
+ context;
12
13
  biLogger;
13
14
  nodeEnv;
14
15
  sessionId;
15
16
  getUserId;
16
17
  getClientName;
17
- constructor(serverInfo, options, nodeEnv) {
18
+ constructor(serverInfo, options, context) {
18
19
  super(serverInfo, options);
19
20
  this.serverInfo = serverInfo;
20
- this.sessionId = uuidv4();
21
- this.nodeEnv = getEnvironment(nodeEnv);
21
+ this.context = context;
22
+ this.sessionId = context?.sessionId ?? uuidv4();
23
+ this.nodeEnv = getEnvironment(context?.nodeEnv);
22
24
  this.biLogger = createBiLogger({
23
25
  _client_id: this.sessionId
24
26
  });
@@ -53,12 +55,17 @@ export class WixMcpServer extends McpServer {
53
55
  'x-wix-mcp': `execution-id=${toolInvocationId}`
54
56
  }
55
57
  });
58
+ let toolBiParams = {};
56
59
  const argsBeforeExtra = cbArgs.slice(0, cbArgs.length - 1);
57
60
  const extra = cbArgs[cbArgs.length - 1];
58
61
  const wrappedExtra = {
59
62
  ...extra,
60
63
  panorama: panorama.createClientForComponent(),
61
- httpClient
64
+ httpClient,
65
+ logger,
66
+ setToolBiParams: (params) => {
67
+ toolBiParams = params;
68
+ }
62
69
  };
63
70
  if (!isDevEnvironment) {
64
71
  panorama.transaction(toolName).start({
@@ -70,17 +77,36 @@ export class WixMcpServer extends McpServer {
70
77
  let toolSucceeded, errorBody;
71
78
  try {
72
79
  const cbResult = await originalCb(...argsBeforeExtra, wrappedExtra);
73
- if (!isDevEnvironment) {
80
+ toolSucceeded = !cbResult.isError;
81
+ if (toolSucceeded && !isDevEnvironment) {
74
82
  panorama.transaction(toolName).finish({ toolInvocationId });
75
83
  }
76
- toolSucceeded = true;
84
+ if (!toolSucceeded) {
85
+ panorama
86
+ .errorMonitor()
87
+ .reportError(new Error(`Tool ${toolName} returned isError: true`), {
88
+ context: {
89
+ toolName,
90
+ toolInvocationId,
91
+ params: JSON.stringify(argsBeforeExtra),
92
+ error: JSON.stringify(cbResult, null, 2)
93
+ }
94
+ });
95
+ }
77
96
  return cbResult;
78
97
  }
79
98
  catch (e) {
80
99
  toolSucceeded = false;
81
100
  errorBody = e.message;
82
101
  if (!isDevEnvironment) {
83
- panorama.errorMonitor().reportError(e);
102
+ panorama.errorMonitor().reportError(e, {
103
+ context: {
104
+ toolName,
105
+ toolInvocationId,
106
+ params: JSON.stringify(argsBeforeExtra),
107
+ error: errorBody
108
+ }
109
+ });
84
110
  captureException(e, {
85
111
  tags: {
86
112
  componentId: toolName,
@@ -98,12 +124,13 @@ export class WixMcpServer extends McpServer {
98
124
  const duration = Math.round(endTime - startTime);
99
125
  const clientName = this.server.getClientVersion()?.name;
100
126
  if (!isDevEnvironment) {
101
- if (this.getUserId) {
102
- const userId = this.getUserId();
103
- this.biLogger.updateDefaults({
104
- _uuid: userId
105
- });
106
- }
127
+ const userId = this.getUserId?.();
128
+ this.biLogger.updateDefaults({
129
+ _msid: this.context?.siteId ?? toolBiParams.siteId ?? '',
130
+ _visitorId: toolBiParams.visitorId ?? '',
131
+ _uuid: userId ?? '',
132
+ _request_id: toolBiParams.requestId ?? ''
133
+ });
107
134
  this.biLogger.report(wixMcpRequestSrc39Evid1607({
108
135
  clientName: this.getClientName?.() || clientName,
109
136
  duration,
@@ -113,7 +140,8 @@ export class WixMcpServer extends McpServer {
113
140
  params: JSON.stringify(argsBeforeExtra),
114
141
  origin: this.nodeEnv,
115
142
  sessionId: this.sessionId,
116
- executionResult: toolSucceeded ? 'Success' : 'Error'
143
+ executionResult: toolSucceeded ? 'Success' : 'Error',
144
+ requestId: toolBiParams.requestId
117
145
  }));
118
146
  }
119
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wix-mcp-server.js","sourceRoot":"","sources":["../../src/wix-mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wix-mcp-server.js","sourceRoot":"","sources":["../../src/wix-mcp-server.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EACL,SAAS,EAEV,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAO,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAe,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAgCxD,MAAM,OAAO,YAAa,SAAQ,SAAS;IAO/B;IAEA;IARF,QAAQ,CAAW;IACnB,OAAO,CAAM;IACb,SAAS,CAAS;IAClB,SAAS,CAAgB;IACzB,aAAa,CAA4B;IACjD,YACU,UAA0B,EAClC,OAAuB,EACf,OAA6B;QAErC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAJnB,eAAU,GAAV,UAAU,CAAgB;QAE1B,YAAO,GAAP,OAAO,CAAsB;QAGrC,IAAI,CAAC,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YAC7B,UAAU,EAAE,IAAI,CAAC,SAAS;SAC3B,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,wCAAwC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,eAAe,CAAC,SAAuB;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IACD,mBAAmB,CAAC,aAAuC;QACzD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAmBQ,IAAI,CAAC,GAAG,IAAW;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC;QACnE,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjC,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;YACnC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjE,MAAM,SAAS,GAAoB,KAAK,EAAE,GAAG,MAAM,EAAE,EAAE;gBACrD,OAAO,CAAC;oBACN,iBAAiB,EAAE,IAAI,CAAC,SAAS;iBAClC,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,oBAAoB,CAAC;oBACpC,WAAW,EAAE,IAAI,CAAC,OAAO;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE;oBACxB,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B,CAAC,CAAC;gBAEH,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC;gBAClC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;oBAChC,OAAO,EAAE;wBACP,WAAW,EAAE,gBAAgB,gBAAgB,EAAE;qBAChD;iBACF,CAAC,CAAC;gBAEH,IAAI,YAAY,GAAiB,EAAE,CAAC;gBAEpC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAA2B,CAAC;gBAElE,MAAM,YAAY,GAAG;oBACnB,GAAG,KAAK;oBACR,QAAQ,EAAE,QAAQ,CAAC,wBAAwB,EAAE;oBAC7C,UAAU;oBACV,MAAM;oBACN,eAAe,EAAE,CAAC,MAAoB,EAAE,EAAE;wBACxC,YAAY,GAAG,MAAM,CAAC;oBACxB,CAAC;iBACF,CAAC;gBAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;wBACnC,gBAAgB;wBAChB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;qBACxC,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAEpC,IAAI,aAAa,EAAE,SAAS,CAAC;gBAE7B,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,eAAe,EAAE,YAAY,CAAC,CAAC;oBACpE,aAAa,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAElC,IAAI,aAAa,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACvC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;oBAC9D,CAAC;oBAED,IAAI,CAAC,aAAa,EAAE,CAAC;wBACnB,QAAQ;6BACL,YAAY,EAAE;6BACd,WAAW,CACV,IAAI,KAAK,CAAC,QAAQ,QAAQ,yBAAyB,CAAC,EACpD;4BACE,OAAO,EAAE;gCACP,QAAQ;gCACR,gBAAgB;gCAChB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;gCACvC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;6BACzC;yBACF,CACF,CAAC;oBACN,CAAC;oBAED,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,aAAa,GAAG,KAAK,CAAC;oBACtB,SAAS,GAAI,CAAW,CAAC,OAAO,CAAC;oBACjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtB,QAAQ,CAAC,YAAY,EAAE,CAAC,WAAW,CAAC,CAAU,EAAE;4BAC9C,OAAO,EAAE;gCACP,QAAQ;gCACR,gBAAgB;gCAChB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;gCACvC,KAAK,EAAE,SAAS;6BACjB;yBACF,CAAC,CAAC;wBACH,gBAAgB,CAAC,CAAC,EAAE;4BAClB,IAAI,EAAE;gCACJ,WAAW,EAAE,QAAQ;gCACrB,QAAQ;6BACT;yBACF,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;qBACxD,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;oBAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;oBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC;oBAExD,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;wBAElC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;4BAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,YAAY,CAAC,MAAM,IAAI,EAAE;4BACxD,UAAU,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;4BACxC,KAAK,EAAE,MAAM,IAAI,EAAE;4BACnB,WAAW,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;yBAC1C,CAAC,CAAC;wBAEH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,0BAA0B,CAAC;4BACzB,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,UAAU;4BAChD,QAAQ;4BACR,SAAS;4BACT,gBAAgB;4BAChB,QAAQ;4BACR,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;4BACvC,MAAM,EAAE,IAAI,CAAC,OAAO;4BACpB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;4BACpD,SAAS,EAAE,YAAY,CAAC,SAAS;yBAClC,CAAC,CACH,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC;IAC7C,CAAC;CACF"}