@opencx/mcp 1.11.16 → 1.11.33

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 (164) hide show
  1. package/dist/api-client.d.ts +17 -12
  2. package/dist/api-client.d.ts.map +1 -1
  3. package/dist/api-client.js +35 -56
  4. package/dist/api-client.js.map +1 -1
  5. package/dist/api-client.spec.js +51 -89
  6. package/dist/api-client.spec.js.map +1 -1
  7. package/dist/schema.d.ts +12706 -0
  8. package/dist/schema.d.ts.map +1 -0
  9. package/dist/schema.js +6 -0
  10. package/dist/schema.js.map +1 -0
  11. package/dist/server.js +2 -2
  12. package/dist/server.js.map +1 -1
  13. package/dist/server.spec.js +54 -51
  14. package/dist/server.spec.js.map +1 -1
  15. package/dist/tools/actions.d.ts +1 -1
  16. package/dist/tools/actions.d.ts.map +1 -1
  17. package/dist/tools/actions.js +26 -16
  18. package/dist/tools/actions.js.map +1 -1
  19. package/dist/tools/audit-logs.d.ts +1 -1
  20. package/dist/tools/audit-logs.d.ts.map +1 -1
  21. package/dist/tools/audit-logs.js +50 -42
  22. package/dist/tools/audit-logs.js.map +1 -1
  23. package/dist/tools/autopilot.d.ts +1 -1
  24. package/dist/tools/autopilot.d.ts.map +1 -1
  25. package/dist/tools/autopilot.js +5 -4
  26. package/dist/tools/autopilot.js.map +1 -1
  27. package/dist/tools/blocklist.d.ts +1 -1
  28. package/dist/tools/blocklist.d.ts.map +1 -1
  29. package/dist/tools/blocklist.js +20 -20
  30. package/dist/tools/blocklist.js.map +1 -1
  31. package/dist/tools/contact-segments.d.ts +1 -1
  32. package/dist/tools/contact-segments.d.ts.map +1 -1
  33. package/dist/tools/contact-segments.js +15 -12
  34. package/dist/tools/contact-segments.js.map +1 -1
  35. package/dist/tools/contacts.d.ts +1 -1
  36. package/dist/tools/contacts.d.ts.map +1 -1
  37. package/dist/tools/contacts.js +23 -11
  38. package/dist/tools/contacts.js.map +1 -1
  39. package/dist/tools/coworker.d.ts +1 -1
  40. package/dist/tools/coworker.d.ts.map +1 -1
  41. package/dist/tools/coworker.js +54 -43
  42. package/dist/tools/coworker.js.map +1 -1
  43. package/dist/tools/crawl.d.ts +1 -1
  44. package/dist/tools/crawl.d.ts.map +1 -1
  45. package/dist/tools/crawl.js +43 -14
  46. package/dist/tools/crawl.js.map +1 -1
  47. package/dist/tools/csat.d.ts +1 -1
  48. package/dist/tools/csat.d.ts.map +1 -1
  49. package/dist/tools/csat.js +16 -10
  50. package/dist/tools/csat.js.map +1 -1
  51. package/dist/tools/email.d.ts +1 -1
  52. package/dist/tools/email.d.ts.map +1 -1
  53. package/dist/tools/email.js +23 -9
  54. package/dist/tools/email.js.map +1 -1
  55. package/dist/tools/firecrawl.d.ts.map +1 -1
  56. package/dist/tools/firecrawl.js +31 -24
  57. package/dist/tools/firecrawl.js.map +1 -1
  58. package/dist/tools/handoff-analytics.d.ts +1 -1
  59. package/dist/tools/handoff-analytics.d.ts.map +1 -1
  60. package/dist/tools/handoff-analytics.js +5 -6
  61. package/dist/tools/handoff-analytics.js.map +1 -1
  62. package/dist/tools/help-center.d.ts +1 -1
  63. package/dist/tools/help-center.d.ts.map +1 -1
  64. package/dist/tools/help-center.js +41 -11
  65. package/dist/tools/help-center.js.map +1 -1
  66. package/dist/tools/impact-report.d.ts +1 -1
  67. package/dist/tools/impact-report.d.ts.map +1 -1
  68. package/dist/tools/impact-report.js +15 -11
  69. package/dist/tools/impact-report.js.map +1 -1
  70. package/dist/tools/insights.d.ts +1 -1
  71. package/dist/tools/insights.d.ts.map +1 -1
  72. package/dist/tools/insights.js +104 -15
  73. package/dist/tools/insights.js.map +1 -1
  74. package/dist/tools/media.d.ts +1 -1
  75. package/dist/tools/media.d.ts.map +1 -1
  76. package/dist/tools/media.js +2 -3
  77. package/dist/tools/media.js.map +1 -1
  78. package/dist/tools/office-hours.d.ts +1 -1
  79. package/dist/tools/office-hours.d.ts.map +1 -1
  80. package/dist/tools/office-hours.js +42 -10
  81. package/dist/tools/office-hours.js.map +1 -1
  82. package/dist/tools/onboarding.d.ts.map +1 -1
  83. package/dist/tools/onboarding.js +8 -5
  84. package/dist/tools/onboarding.js.map +1 -1
  85. package/dist/tools/org.d.ts +1 -1
  86. package/dist/tools/org.d.ts.map +1 -1
  87. package/dist/tools/org.js +5 -4
  88. package/dist/tools/org.js.map +1 -1
  89. package/dist/tools/phone.d.ts +1 -1
  90. package/dist/tools/phone.d.ts.map +1 -1
  91. package/dist/tools/phone.js +66 -48
  92. package/dist/tools/phone.js.map +1 -1
  93. package/dist/tools/redaction.d.ts +1 -1
  94. package/dist/tools/redaction.d.ts.map +1 -1
  95. package/dist/tools/redaction.js +5 -4
  96. package/dist/tools/redaction.js.map +1 -1
  97. package/dist/tools/search.d.ts +1 -1
  98. package/dist/tools/search.d.ts.map +1 -1
  99. package/dist/tools/search.js +3 -2
  100. package/dist/tools/search.js.map +1 -1
  101. package/dist/tools/sequences.d.ts +1 -1
  102. package/dist/tools/sequences.d.ts.map +1 -1
  103. package/dist/tools/sequences.js +26 -14
  104. package/dist/tools/sequences.js.map +1 -1
  105. package/dist/tools/sessions.d.ts +1 -1
  106. package/dist/tools/sessions.d.ts.map +1 -1
  107. package/dist/tools/sessions.js +150 -123
  108. package/dist/tools/sessions.js.map +1 -1
  109. package/dist/tools/sla-analytics.d.ts +1 -1
  110. package/dist/tools/sla-analytics.d.ts.map +1 -1
  111. package/dist/tools/sla-analytics.js +31 -45
  112. package/dist/tools/sla-analytics.js.map +1 -1
  113. package/dist/tools/sla.d.ts +1 -1
  114. package/dist/tools/sla.d.ts.map +1 -1
  115. package/dist/tools/sla.js +18 -16
  116. package/dist/tools/sla.js.map +1 -1
  117. package/dist/tools/tags.d.ts +1 -1
  118. package/dist/tools/tags.d.ts.map +1 -1
  119. package/dist/tools/tags.js +11 -11
  120. package/dist/tools/tags.js.map +1 -1
  121. package/dist/tools/teams.d.ts +1 -1
  122. package/dist/tools/teams.d.ts.map +1 -1
  123. package/dist/tools/teams.js +24 -17
  124. package/dist/tools/teams.js.map +1 -1
  125. package/dist/tools/todos.d.ts +1 -1
  126. package/dist/tools/todos.d.ts.map +1 -1
  127. package/dist/tools/todos.js +30 -21
  128. package/dist/tools/todos.js.map +1 -1
  129. package/dist/tools/training.d.ts +1 -1
  130. package/dist/tools/training.d.ts.map +1 -1
  131. package/dist/tools/training.js +110 -64
  132. package/dist/tools/training.js.map +1 -1
  133. package/dist/tools/users.d.ts +1 -1
  134. package/dist/tools/users.d.ts.map +1 -1
  135. package/dist/tools/users.js +35 -23
  136. package/dist/tools/users.js.map +1 -1
  137. package/dist/tools/whatsapp.d.ts +1 -1
  138. package/dist/tools/whatsapp.d.ts.map +1 -1
  139. package/dist/tools/whatsapp.js +11 -2
  140. package/dist/tools/whatsapp.js.map +1 -1
  141. package/dist/tools/widget.d.ts +1 -1
  142. package/dist/tools/widget.d.ts.map +1 -1
  143. package/dist/tools/widget.js +3 -2
  144. package/dist/tools/widget.js.map +1 -1
  145. package/dist/tools/workflows.d.ts +1 -1
  146. package/dist/tools/workflows.d.ts.map +1 -1
  147. package/dist/tools/workflows.js +164 -93
  148. package/dist/tools/workflows.js.map +1 -1
  149. package/dist/utils/json.d.ts +9 -0
  150. package/dist/utils/json.d.ts.map +1 -0
  151. package/dist/utils/json.js +10 -0
  152. package/dist/utils/json.js.map +1 -0
  153. package/dist/utils/session-channel.d.ts +4 -0
  154. package/dist/utils/session-channel.d.ts.map +1 -0
  155. package/dist/utils/session-channel.js +15 -0
  156. package/dist/utils/session-channel.js.map +1 -0
  157. package/dist/workflow-editor-state.d.ts +12 -2
  158. package/dist/workflow-editor-state.d.ts.map +1 -1
  159. package/dist/workflow-editor-state.js.map +1 -1
  160. package/dist/workflows.spec.d.ts +2 -0
  161. package/dist/workflows.spec.d.ts.map +1 -0
  162. package/dist/workflows.spec.js +109 -0
  163. package/dist/workflows.spec.js.map +1 -0
  164. package/package.json +5 -2
@@ -0,0 +1,109 @@
1
+ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
2
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
3
+ import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';
4
+ import { z } from 'zod';
5
+ import { createServer } from './server.js';
6
+ function mockResponse(body, status = 200, statusText = 'OK') {
7
+ if (status === 204)
8
+ return new Response(null, { status, statusText });
9
+ const text = typeof body === 'string' ? body : JSON.stringify(body);
10
+ return new Response(text, {
11
+ status,
12
+ statusText,
13
+ headers: { 'Content-Type': 'application/json' },
14
+ });
15
+ }
16
+ function getRequestUrl(call) {
17
+ const arg = call[0];
18
+ if (arg instanceof Request)
19
+ return arg.url;
20
+ return String(arg);
21
+ }
22
+ function getRequest(call) {
23
+ const arg = call[0];
24
+ if (arg instanceof Request) {
25
+ return arg;
26
+ }
27
+ throw new Error('Expected fetch to be called with Request');
28
+ }
29
+ async function getRequestBody(call) {
30
+ const request = getRequest(call);
31
+ const text = await request.clone().text();
32
+ return text ? JSON.parse(text) : undefined;
33
+ }
34
+ describe('workflow tools', () => {
35
+ let client;
36
+ let cleanup;
37
+ let fetchSpy;
38
+ beforeEach(async () => {
39
+ fetchSpy = vi.fn();
40
+ vi.stubGlobal('fetch', fetchSpy);
41
+ const server = createServer('test-api-key', 'https://api.test.com');
42
+ const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
43
+ await server.connect(serverTransport);
44
+ client = new Client({ name: 'test-client', version: '1.0.0' });
45
+ await client.connect(clientTransport);
46
+ cleanup = async () => {
47
+ await client.close();
48
+ await server.close();
49
+ };
50
+ });
51
+ afterEach(async () => {
52
+ await cleanup();
53
+ vi.restoreAllMocks();
54
+ });
55
+ it('update_workflow preserves existing legacy action blocks in workflow_editor_state', async () => {
56
+ fetchSpy
57
+ .mockResolvedValueOnce(mockResponse({
58
+ trigger_type: 'manual-trigger',
59
+ workflow_blocks: [
60
+ {
61
+ $kind: 'Action',
62
+ id: 'step_1',
63
+ type: 'ask-ai',
64
+ input: { question: 'Hello' },
65
+ },
66
+ ],
67
+ trigger_configuration: null,
68
+ trigger_constraints: null,
69
+ }))
70
+ .mockResolvedValueOnce(mockResponse({ ok: true }));
71
+ const result = await client.callTool({
72
+ name: 'update_workflow',
73
+ arguments: { workflow_id: 'wf-1', name: 'Renamed Workflow' },
74
+ });
75
+ expect(result.isError).toBeFalsy();
76
+ expect(fetchSpy).toHaveBeenCalledTimes(2);
77
+ const getCall = fetchSpy.mock.calls[0];
78
+ expect(getRequestUrl(getCall)).toBe('https://api.test.com/workflows/wf-1');
79
+ const patchCall = fetchSpy.mock.calls[1];
80
+ const patchRequest = getRequest(patchCall);
81
+ const patchBodySchema = z.object({
82
+ name: z.string(),
83
+ workflow_editor_state: z.object({
84
+ nodes: z.array(z.object({ id: z.string() })),
85
+ }),
86
+ });
87
+ const patchBody = patchBodySchema.parse(await getRequestBody(patchCall));
88
+ expect(patchRequest.method).toBe('PATCH');
89
+ expect(patchBody.name).toBe('Renamed Workflow');
90
+ expect(patchBody.workflow_editor_state.nodes.map((n) => n.id)).toContain('step_1');
91
+ });
92
+ it('update_workflow fails safely when existing blocks are not convertible', async () => {
93
+ fetchSpy.mockResolvedValueOnce(mockResponse({
94
+ trigger_type: 'manual-trigger',
95
+ workflow_blocks: [42],
96
+ trigger_configuration: null,
97
+ trigger_constraints: null,
98
+ }));
99
+ const result = await client.callTool({
100
+ name: 'update_workflow',
101
+ arguments: { workflow_id: 'wf-2', name: 'Only Rename' },
102
+ });
103
+ expect(result.isError).toBe(true);
104
+ expect(fetchSpy).toHaveBeenCalledTimes(1);
105
+ const content = z.array(z.object({ type: z.string(), text: z.string() })).parse(result.content);
106
+ expect(content[0].text).toContain('Provide workflow_blocks explicitly');
107
+ });
108
+ });
109
+ //# sourceMappingURL=workflows.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.spec.js","sourceRoot":"","sources":["../src/workflows.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencx/mcp",
3
- "version": "1.11.16",
3
+ "version": "1.11.33",
4
4
  "private": false,
5
5
  "description": "MCP server for OpenCX — manage contacts, sessions, training, and more from Claude Desktop, Cursor, or any MCP client.",
6
6
  "type": "module",
@@ -27,10 +27,12 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@modelcontextprotocol/sdk": "^1.27.0",
30
+ "openapi-fetch": "0.14.0",
30
31
  "zod": "^3.25.0"
31
32
  },
32
33
  "devDependencies": {
33
34
  "@types/node": "^25.3.0",
35
+ "openapi-typescript": "^7.9.1",
34
36
  "typescript": "^5.9.3",
35
37
  "vitest": "^4.0.17"
36
38
  },
@@ -39,6 +41,7 @@
39
41
  "bundle": "pnpm build && pnpx esbuild dist/index.js --bundle --format=cjs --platform=node --target=node18 --outfile=dist/bundle.cjs",
40
42
  "dev": "tsc --watch",
41
43
  "start": "node dist/index.js",
42
- "test": "vitest run"
44
+ "test": "vitest run",
45
+ "gen:types": "openapi-typescript $SERVER_BASE_URL/api-json -o src/schema.ts"
43
46
  }
44
47
  }