@kadoa/mcp 0.4.4-rc.1 → 0.5.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.
package/README.md CHANGED
@@ -54,6 +54,7 @@ Point your client to `https://mcp.kadoa.com/mcp` with OAuth authentication.
54
54
  | `fetch_data` | Get extracted data from a workflow |
55
55
  | `delete_workflow` | Delete a workflow |
56
56
  | `approve_workflow` | Approve and activate a workflow |
57
+ | `pause_workflow` | Pause an active workflow |
57
58
  | `update_workflow` | Update workflow configuration and schema |
58
59
  | `whoami` | Show current user details, auth method, and team memberships |
59
60
  | `team_list` | List all teams you belong to and see which is active |
package/dist/index.js CHANGED
@@ -47481,9 +47481,9 @@ var import_debug, __require2, ChangeDifferenceType, KadoaErrorCode, _KadoaSdkExc
47481
47481
  }
47482
47482
  validateFieldName(name) {
47483
47483
  if (!_SchemaBuilder2.FIELD_NAME_PATTERN.test(name)) {
47484
- throw new KadoaSdkException(`Field name "${name}" must be alphanumeric only (no underscores or special characters)`, {
47484
+ throw new KadoaSdkException(`Field name "${name}" must start with a letter and contain only letters, digits, and underscores`, {
47485
47485
  code: "VALIDATION_ERROR",
47486
- details: { name, pattern: "^[A-Za-z0-9]+$" }
47486
+ details: { name, pattern: "^[A-Za-z][A-Za-z0-9_]*$" }
47487
47487
  });
47488
47488
  }
47489
47489
  const lowerName = name.toLowerCase();
@@ -48325,7 +48325,7 @@ var import_debug, __require2, ChangeDifferenceType, KadoaErrorCode, _KadoaSdkExc
48325
48325
  }));
48326
48326
  return channels;
48327
48327
  }
48328
- }, PUBLIC_API_URI, WSS_API_URI, REALTIME_API_URI, SDK_VERSION = "0.28.0", SDK_NAME = "kadoa-node-sdk", SDK_LANGUAGE = "node", debug6, isDrainControlMessage = (message) => message.type === "control.draining", isRealtimeEvent = (message) => message.type !== "heartbeat" && message.type !== "control.draining", _Realtime = class _Realtime2 {
48328
+ }, PUBLIC_API_URI, WSS_API_URI, REALTIME_API_URI, SDK_VERSION = "0.29.1", SDK_NAME = "kadoa-node-sdk", SDK_LANGUAGE = "node", debug6, isDrainControlMessage = (message) => message.type === "control.draining", isRealtimeEvent = (message) => message.type !== "heartbeat" && message.type !== "control.draining", _Realtime = class _Realtime2 {
48329
48329
  constructor(config2) {
48330
48330
  this.drainingSockets = /* @__PURE__ */ new Set;
48331
48331
  this.lastHeartbeat = Date.now();
@@ -49161,6 +49161,11 @@ var import_debug, __require2, ChangeDifferenceType, KadoaErrorCode, _KadoaSdkExc
49161
49161
  });
49162
49162
  return response.data;
49163
49163
  }
49164
+ async pause(id) {
49165
+ await this.workflowsApi.v4WorkflowsWorkflowIdPausePut({
49166
+ workflowId: id
49167
+ });
49168
+ }
49164
49169
  async resume(id) {
49165
49170
  await this.workflowsApi.v4WorkflowsWorkflowIdResumePut({
49166
49171
  workflowId: id
@@ -49949,7 +49954,7 @@ This is the main page content.`
49949
49954
  example: "https://example.com/page"
49950
49955
  }
49951
49956
  };
49952
- _SchemaBuilder.FIELD_NAME_PATTERN = /^[A-Za-z0-9]+$/;
49957
+ _SchemaBuilder.FIELD_NAME_PATTERN = /^[A-Za-z][A-Za-z0-9_]*$/;
49953
49958
  _SchemaBuilder.TYPES_REQUIRING_EXAMPLE = [
49954
49959
  "STRING",
49955
49960
  "IMAGE",
@@ -50868,9 +50873,9 @@ function registerTools(server, ctx) {
50868
50873
  server.registerTool("approve_workflow", {
50869
50874
  description: "Approve and activate a workflow that is in PREVIEW, PAUSED, or ERROR state. Transitions the workflow to ACTIVE so it can be run.",
50870
50875
  inputSchema: {
50871
- workflowId: exports_external.string().describe("The workflow ID to approve/activate")
50876
+ workflowId: exports_external.string().min(1).describe("The workflow ID to approve/activate")
50872
50877
  },
50873
- annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true }
50878
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false }
50874
50879
  }, withErrorHandling("approve_workflow", async (args) => {
50875
50880
  await ctx.client.workflow.resume(args.workflowId);
50876
50881
  return jsonResult({
@@ -50879,6 +50884,20 @@ function registerTools(server, ctx) {
50879
50884
  message: "Workflow approved and activated"
50880
50885
  });
50881
50886
  }));
50887
+ server.registerTool("pause_workflow", {
50888
+ description: "Pause an ACTIVE workflow so it stops running on its schedule. Requires the workflow to be in ACTIVE state — pausing a workflow that is currently running, already paused, or in PREVIEW will return an error. Use approve_workflow to resume a paused workflow.",
50889
+ inputSchema: {
50890
+ workflowId: exports_external.string().min(1).describe("The workflow ID to pause")
50891
+ },
50892
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false }
50893
+ }, withErrorHandling("pause_workflow", async (args) => {
50894
+ await ctx.client.workflow.pause(args.workflowId);
50895
+ return jsonResult({
50896
+ success: true,
50897
+ workflowId: args.workflowId,
50898
+ message: "Workflow paused"
50899
+ });
50900
+ }));
50882
50901
  server.registerTool("update_workflow", {
50883
50902
  description: `Update a workflow's configuration. All fields are optional — only provided fields will be updated. Use this to change the name, URLs, extraction schema, entity, prompt, schedule, or other metadata.
50884
50903
 
@@ -51479,7 +51498,7 @@ var package_default;
51479
51498
  var init_package = __esm(() => {
51480
51499
  package_default = {
51481
51500
  name: "@kadoa/mcp",
51482
- version: "0.4.4-rc.1",
51501
+ version: "0.5.0",
51483
51502
  description: "Kadoa MCP Server — manage workflows from Claude Desktop, Cursor, and other MCP clients",
51484
51503
  type: "module",
51485
51504
  main: "dist/index.js",
@@ -51503,7 +51522,7 @@ var init_package = __esm(() => {
51503
51522
  prepublishOnly: "bun run check-types && bun run test:unit && bun run build"
51504
51523
  },
51505
51524
  dependencies: {
51506
- "@kadoa/node-sdk": "^0.28.0",
51525
+ "@kadoa/node-sdk": "^0.29.1",
51507
51526
  "@modelcontextprotocol/sdk": "^1.26.0",
51508
51527
  express: "^5.2.1",
51509
51528
  ioredis: "^5.6.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kadoa/mcp",
3
- "version": "0.4.4-rc.1",
3
+ "version": "0.5.0",
4
4
  "description": "Kadoa MCP Server — manage workflows from Claude Desktop, Cursor, and other MCP clients",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -24,7 +24,7 @@
24
24
  "prepublishOnly": "bun run check-types && bun run test:unit && bun run build"
25
25
  },
26
26
  "dependencies": {
27
- "@kadoa/node-sdk": "^0.28.0",
27
+ "@kadoa/node-sdk": "^0.29.1",
28
28
  "@modelcontextprotocol/sdk": "^1.26.0",
29
29
  "express": "^5.2.1",
30
30
  "ioredis": "^5.6.1",