@knocklabs/agent-toolkit 0.1.3 → 0.1.5

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 (112) hide show
  1. package/dist/ai-sdk/index.d.ts +1 -4
  2. package/dist/ai-sdk/index.js +14 -20
  3. package/dist/ai-sdk/index.js.map +1 -1
  4. package/dist/{chunk-XUYE3AGB.js → chunk-IYDITNVL.js} +16 -4
  5. package/dist/chunk-IYDITNVL.js.map +1 -0
  6. package/dist/chunk-RPKDXX4O.js +1023 -0
  7. package/dist/chunk-RPKDXX4O.js.map +1 -0
  8. package/dist/{chunk-4VR65G5W.js → chunk-ZV2SOIO7.js} +29 -4
  9. package/dist/chunk-ZV2SOIO7.js.map +1 -0
  10. package/dist/modelcontextprotocol/index.d.ts +47 -6
  11. package/dist/modelcontextprotocol/index.js +2 -15
  12. package/dist/modelcontextprotocol/local-server.js +5 -20
  13. package/dist/modelcontextprotocol/local-server.js.map +1 -1
  14. package/dist/openai/index.d.ts +1 -4
  15. package/dist/openai/index.js +18 -20
  16. package/dist/openai/index.js.map +1 -1
  17. package/dist/types-DyB12-Gk.d.ts +73 -0
  18. package/package.json +2 -2
  19. package/dist/ai-sdk/tool-converter.d.ts +0 -12
  20. package/dist/ai-sdk/tool-converter.js +0 -7
  21. package/dist/ai-sdk/tool-converter.js.map +0 -1
  22. package/dist/chunk-2CNJ4XX6.js +0 -33
  23. package/dist/chunk-2CNJ4XX6.js.map +0 -1
  24. package/dist/chunk-3LZK6RH6.js +0 -29
  25. package/dist/chunk-3LZK6RH6.js.map +0 -1
  26. package/dist/chunk-4VR65G5W.js.map +0 -1
  27. package/dist/chunk-6H3BXH2Y.js +0 -15
  28. package/dist/chunk-6H3BXH2Y.js.map +0 -1
  29. package/dist/chunk-BY4KQPUO.js +0 -39
  30. package/dist/chunk-BY4KQPUO.js.map +0 -1
  31. package/dist/chunk-DSRTYV37.js +0 -39
  32. package/dist/chunk-DSRTYV37.js.map +0 -1
  33. package/dist/chunk-JTYQTWCX.js +0 -75
  34. package/dist/chunk-JTYQTWCX.js.map +0 -1
  35. package/dist/chunk-NZB2TMJW.js +0 -92
  36. package/dist/chunk-NZB2TMJW.js.map +0 -1
  37. package/dist/chunk-O6DWF42E.js +0 -31
  38. package/dist/chunk-O6DWF42E.js.map +0 -1
  39. package/dist/chunk-OD5VHBGN.js +0 -32
  40. package/dist/chunk-OD5VHBGN.js.map +0 -1
  41. package/dist/chunk-PDMA6RIB.js +0 -19
  42. package/dist/chunk-PDMA6RIB.js.map +0 -1
  43. package/dist/chunk-RYMJEH6P.js +0 -140
  44. package/dist/chunk-RYMJEH6P.js.map +0 -1
  45. package/dist/chunk-THLK376Y.js +0 -191
  46. package/dist/chunk-THLK376Y.js.map +0 -1
  47. package/dist/chunk-TLHETJRF.js +0 -75
  48. package/dist/chunk-TLHETJRF.js.map +0 -1
  49. package/dist/chunk-TOBLV65T.js +0 -30
  50. package/dist/chunk-TOBLV65T.js.map +0 -1
  51. package/dist/chunk-VJFA3ZVW.js +0 -210
  52. package/dist/chunk-VJFA3ZVW.js.map +0 -1
  53. package/dist/chunk-WB4XCCUS.js +0 -19
  54. package/dist/chunk-WB4XCCUS.js.map +0 -1
  55. package/dist/chunk-XRQWR3LY.js +0 -184
  56. package/dist/chunk-XRQWR3LY.js.map +0 -1
  57. package/dist/chunk-XUYE3AGB.js.map +0 -1
  58. package/dist/lib/knock-client.d.ts +0 -4
  59. package/dist/lib/knock-client.js +0 -7
  60. package/dist/lib/knock-client.js.map +0 -1
  61. package/dist/lib/knock-tool.d.ts +0 -4
  62. package/dist/lib/knock-tool.js +0 -7
  63. package/dist/lib/knock-tool.js.map +0 -1
  64. package/dist/lib/tools/channels.d.ts +0 -13
  65. package/dist/lib/tools/channels.js +0 -10
  66. package/dist/lib/tools/channels.js.map +0 -1
  67. package/dist/lib/tools/commits.d.ts +0 -16
  68. package/dist/lib/tools/commits.js +0 -10
  69. package/dist/lib/tools/commits.js.map +0 -1
  70. package/dist/lib/tools/email-layouts.d.ts +0 -13
  71. package/dist/lib/tools/email-layouts.js +0 -10
  72. package/dist/lib/tools/email-layouts.js.map +0 -1
  73. package/dist/lib/tools/environments.d.ts +0 -13
  74. package/dist/lib/tools/environments.js +0 -10
  75. package/dist/lib/tools/environments.js.map +0 -1
  76. package/dist/lib/tools/index.d.ts +0 -4
  77. package/dist/lib/tools/index.js +0 -23
  78. package/dist/lib/tools/index.js.map +0 -1
  79. package/dist/lib/tools/message-types.d.ts +0 -15
  80. package/dist/lib/tools/message-types.js +0 -10
  81. package/dist/lib/tools/message-types.js.map +0 -1
  82. package/dist/lib/tools/messages.d.ts +0 -13
  83. package/dist/lib/tools/messages.js +0 -10
  84. package/dist/lib/tools/messages.js.map +0 -1
  85. package/dist/lib/tools/objects.d.ts +0 -19
  86. package/dist/lib/tools/objects.js +0 -10
  87. package/dist/lib/tools/objects.js.map +0 -1
  88. package/dist/lib/tools/partials.d.ts +0 -13
  89. package/dist/lib/tools/partials.js +0 -10
  90. package/dist/lib/tools/partials.js.map +0 -1
  91. package/dist/lib/tools/tenants.d.ts +0 -16
  92. package/dist/lib/tools/tenants.js +0 -10
  93. package/dist/lib/tools/tenants.js.map +0 -1
  94. package/dist/lib/tools/users.d.ts +0 -19
  95. package/dist/lib/tools/users.js +0 -10
  96. package/dist/lib/tools/users.js.map +0 -1
  97. package/dist/lib/tools/workflows.d.ts +0 -18
  98. package/dist/lib/tools/workflows.js +0 -10
  99. package/dist/lib/tools/workflows.js.map +0 -1
  100. package/dist/lib/utils.d.ts +0 -33
  101. package/dist/lib/utils.js +0 -24
  102. package/dist/lib/utils.js.map +0 -1
  103. package/dist/modelcontextprotocol/adapter.d.ts +0 -11
  104. package/dist/modelcontextprotocol/adapter.js +0 -7
  105. package/dist/modelcontextprotocol/adapter.js.map +0 -1
  106. package/dist/openai/tool-converter.d.ts +0 -15
  107. package/dist/openai/tool-converter.js +0 -7
  108. package/dist/openai/tool-converter.js.map +0 -1
  109. package/dist/types-B-9pppCQ.d.ts +0 -199
  110. package/dist/types.d.ts +0 -4
  111. package/dist/types.js +0 -1
  112. package/dist/types.js.map +0 -1
@@ -1,8 +1,5 @@
1
- import { T as ToolkitConfig, t as toolPermissions } from '../types-B-9pppCQ.js';
1
+ import { T as ToolkitConfig, t as toolPermissions } from '../types-DyB12-Gk.js';
2
2
  import { Tool } from 'ai';
3
- import 'zod';
4
- import '@knocklabs/node';
5
- import '@knocklabs/mgmt';
6
3
 
7
4
  declare const createKnockToolkit: (config: ToolkitConfig) => {
8
5
  /**
@@ -1,25 +1,19 @@
1
1
  import {
2
- knockToolToAiTool
3
- } from "../chunk-6H3BXH2Y.js";
4
- import {
5
- createKnockClient
6
- } from "../chunk-3LZK6RH6.js";
7
- import {
2
+ createKnockClient,
8
3
  getToolsByPermissionsInCategories
9
- } from "../chunk-4VR65G5W.js";
10
- import "../chunk-NZB2TMJW.js";
11
- import "../chunk-THLK376Y.js";
12
- import "../chunk-OD5VHBGN.js";
13
- import "../chunk-RYMJEH6P.js";
14
- import "../chunk-BY4KQPUO.js";
15
- import "../chunk-JTYQTWCX.js";
16
- import "../chunk-VJFA3ZVW.js";
17
- import "../chunk-XRQWR3LY.js";
18
- import "../chunk-2CNJ4XX6.js";
19
- import "../chunk-TLHETJRF.js";
20
- import "../chunk-DSRTYV37.js";
21
- import "../chunk-O6DWF42E.js";
22
- import "../chunk-TOBLV65T.js";
4
+ } from "../chunk-ZV2SOIO7.js";
5
+ import "../chunk-RPKDXX4O.js";
6
+
7
+ // src/ai-sdk/tool-converter.ts
8
+ import { tool } from "ai";
9
+ import { z } from "zod";
10
+ var knockToolToAiTool = (knockClient, config, knockTool) => {
11
+ return tool({
12
+ description: knockTool.description,
13
+ parameters: knockTool.parameters ?? z.object({}),
14
+ execute: knockTool.bindExecute(knockClient, config)
15
+ });
16
+ };
23
17
 
24
18
  // src/ai-sdk/index.ts
25
19
  var createKnockToolkit = (config) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ai-sdk/index.ts"],"sourcesContent":["import { ToolkitConfig } from \"../types.js\";\nimport { toolPermissions } from \"../lib/tools/index.js\";\nimport { getToolsByPermissionsInCategories } from \"../lib/utils.js\";\nimport { createKnockClient } from \"../lib/knock-client.js\";\nimport { Tool } from \"ai\";\nimport { knockToolToAiTool } from \"./tool-converter.js\";\n\nconst createKnockToolkit = (config: ToolkitConfig) => {\n const knockClient = createKnockClient(config);\n const allowedToolsByCategory = getToolsByPermissionsInCategories(config);\n\n return {\n /**\n * Get all tools for all categories\n * @returns An array of all tools\n */\n getAllTools: (): Tool[] =>\n Object.values(allowedToolsByCategory)\n .flat()\n .map((t) => knockToolToAiTool(knockClient, config, t)),\n\n /**\n * Get all tools for a specific category\n * @param category - The category of tools to get\n * @returns An array of tools for the given category\n */\n getTools: (category: keyof typeof toolPermissions): Tool[] =>\n allowedToolsByCategory[category].map((t) =>\n knockToolToAiTool(knockClient, config, t)\n ),\n };\n};\n\nexport { createKnockToolkit };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAM,qBAAqB,CAAC,WAA0B;AACpD,QAAM,cAAc,kBAAkB,MAAM;AAC5C,QAAM,yBAAyB,kCAAkC,MAAM;AAEvE,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,aAAa,MACX,OAAO,OAAO,sBAAsB,EACjC,KAAK,EACL,IAAI,CAAC,MAAM,kBAAkB,aAAa,QAAQ,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOzD,UAAU,CAAC,aACT,uBAAuB,QAAQ,EAAE;AAAA,MAAI,CAAC,MACpC,kBAAkB,aAAa,QAAQ,CAAC;AAAA,IAC1C;AAAA,EACJ;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/ai-sdk/tool-converter.ts","../../src/ai-sdk/index.ts"],"sourcesContent":["import type { Tool } from \"ai\";\nimport { tool } from \"ai\";\nimport { KnockClient } from \"../lib/knock-client.js\";\nimport { KnockTool } from \"../lib/knock-tool.js\";\nimport { Config } from \"../types.js\";\nimport { z } from \"zod\";\n\n/**\n * Convert a KnockTool to an AI Tool, ready to pass to the AI SDK.\n */\nconst knockToolToAiTool = (\n knockClient: KnockClient,\n config: Config,\n knockTool: KnockTool\n): Tool => {\n return tool({\n description: knockTool.description,\n parameters: knockTool.parameters ?? z.object({}),\n execute: knockTool.bindExecute(knockClient, config),\n });\n};\n\nexport { knockToolToAiTool };\n","import { ToolkitConfig } from \"../types.js\";\nimport { toolPermissions } from \"../lib/tools/index.js\";\nimport { getToolsByPermissionsInCategories } from \"../lib/utils.js\";\nimport { createKnockClient } from \"../lib/knock-client.js\";\nimport { Tool } from \"ai\";\nimport { knockToolToAiTool } from \"./tool-converter.js\";\n\nconst createKnockToolkit = (config: ToolkitConfig) => {\n const knockClient = createKnockClient(config);\n const allowedToolsByCategory = getToolsByPermissionsInCategories(config);\n\n return {\n /**\n * Get all tools for all categories\n * @returns An array of all tools\n */\n getAllTools: (): Tool[] =>\n Object.values(allowedToolsByCategory)\n .flat()\n .map((t) => knockToolToAiTool(knockClient, config, t)),\n\n /**\n * Get all tools for a specific category\n * @param category - The category of tools to get\n * @returns An array of tools for the given category\n */\n getTools: (category: keyof typeof toolPermissions): Tool[] =>\n allowedToolsByCategory[category].map((t) =>\n knockToolToAiTool(knockClient, config, t)\n ),\n };\n};\n\nexport { createKnockToolkit };\n"],"mappings":";;;;;;;AACA,SAAS,YAAY;AAIrB,SAAS,SAAS;AAKlB,IAAM,oBAAoB,CACxB,aACA,QACA,cACS;AACT,SAAO,KAAK;AAAA,IACV,aAAa,UAAU;AAAA,IACvB,YAAY,UAAU,cAAc,EAAE,OAAO,CAAC,CAAC;AAAA,IAC/C,SAAS,UAAU,YAAY,aAAa,MAAM;AAAA,EACpD,CAAC;AACH;;;ACbA,IAAM,qBAAqB,CAAC,WAA0B;AACpD,QAAM,cAAc,kBAAkB,MAAM;AAC5C,QAAM,yBAAyB,kCAAkC,MAAM;AAEvE,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL,aAAa,MACX,OAAO,OAAO,sBAAsB,EACjC,KAAK,EACL,IAAI,CAAC,MAAM,kBAAkB,aAAa,QAAQ,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOzD,UAAU,CAAC,aACT,uBAAuB,QAAQ,EAAE;AAAA,MAAI,CAAC,MACpC,kBAAkB,aAAa,QAAQ,CAAC;AAAA,IAC1C;AAAA,EACJ;AACF;","names":[]}
@@ -1,13 +1,17 @@
1
+ import {
2
+ allTools
3
+ } from "./chunk-RPKDXX4O.js";
4
+
1
5
  // src/modelcontextprotocol/adapter.ts
2
6
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
7
  import { z } from "zod";
4
8
  var KnockMcpServer = class extends McpServer {
5
9
  constructor(knockClient, config, tools) {
6
- super({ name: "Knock", version: "0.1.0" });
10
+ super({ name: "Knock", version: "0.1.5" });
7
11
  tools.forEach((tool) => {
8
12
  const toolParams = tool.parameters ?? z.object({});
9
13
  this.tool(
10
- tool.name,
14
+ tool.method,
11
15
  tool.description,
12
16
  toolParams.shape,
13
17
  async (arg) => {
@@ -21,7 +25,15 @@ var KnockMcpServer = class extends McpServer {
21
25
  }
22
26
  };
23
27
 
28
+ // src/modelcontextprotocol/index.ts
29
+ var createKnockMcpServer = async (params) => {
30
+ const { tools, knockClient, config } = params;
31
+ return Promise.resolve(
32
+ new KnockMcpServer(knockClient, config, tools || Object.values(allTools))
33
+ );
34
+ };
35
+
24
36
  export {
25
- KnockMcpServer
37
+ createKnockMcpServer
26
38
  };
27
- //# sourceMappingURL=chunk-XUYE3AGB.js.map
39
+ //# sourceMappingURL=chunk-IYDITNVL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/modelcontextprotocol/adapter.ts","../src/modelcontextprotocol/index.ts"],"sourcesContent":["import { McpServer } from \"@modelcontextprotocol/sdk/server/mcp.js\";\nimport { z } from \"zod\";\nimport type { KnockTool } from \"../lib/knock-tool.js\";\nimport { Config } from \"../types.js\";\nimport { KnockClient } from \"../lib/knock-client.js\";\n\nexport class KnockMcpServer extends McpServer {\n constructor(knockClient: KnockClient, config: Config, tools: KnockTool[]) {\n super({ name: \"Knock\", version: PACKAGE_VERSION });\n\n tools.forEach((tool) => {\n const toolParams = tool.parameters ?? z.object({});\n\n this.tool(\n tool.method,\n tool.description,\n toolParams.shape,\n async (arg: unknown) => {\n const res = await tool.bindExecute(knockClient, config)(arg);\n\n return {\n content: [{ type: \"text\" as const, text: JSON.stringify(res) }],\n };\n }\n );\n });\n }\n}\n","import type { KnockTool } from \"../lib/knock-tool.js\";\nimport { allTools } from \"../lib/tools/index.js\";\nimport { KnockMcpServer } from \"./adapter.js\";\nimport { Config } from \"../types.js\";\nimport { KnockClient } from \"../lib/knock-client.js\";\n\ntype CreateKnockMcpServerParams = {\n /**\n * Array of Knock tools to enable in the server.\n */\n tools?: KnockTool[];\n\n /**\n * A Knock client to use for the server.\n */\n knockClient: KnockClient;\n\n /**\n * The config to use for the server.\n */\n config: Config;\n};\n\n/**\n * Creates a Knock MCP Server with the given parameters.\n */\nexport const createKnockMcpServer = async (\n params: CreateKnockMcpServerParams\n): Promise<KnockMcpServer> => {\n const { tools, knockClient, config } = params;\n\n return Promise.resolve(\n new KnockMcpServer(knockClient, config, tools || Object.values(allTools))\n );\n};\n"],"mappings":";;;;;AAAA,SAAS,iBAAiB;AAC1B,SAAS,SAAS;AAKX,IAAM,iBAAN,cAA6B,UAAU;AAAA,EAC5C,YAAY,aAA0B,QAAgB,OAAoB;AACxE,UAAM,EAAE,MAAM,SAAS,SAAS,QAAgB,CAAC;AAEjD,UAAM,QAAQ,CAAC,SAAS;AACtB,YAAM,aAAa,KAAK,cAAc,EAAE,OAAO,CAAC,CAAC;AAEjD,WAAK;AAAA,QACH,KAAK;AAAA,QACL,KAAK;AAAA,QACL,WAAW;AAAA,QACX,OAAO,QAAiB;AACtB,gBAAM,MAAM,MAAM,KAAK,YAAY,aAAa,MAAM,EAAE,GAAG;AAE3D,iBAAO;AAAA,YACL,SAAS,CAAC,EAAE,MAAM,QAAiB,MAAM,KAAK,UAAU,GAAG,EAAE,CAAC;AAAA,UAChE;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;ACDO,IAAM,uBAAuB,OAClC,WAC4B;AAC5B,QAAM,EAAE,OAAO,aAAa,OAAO,IAAI;AAEvC,SAAO,QAAQ;AAAA,IACb,IAAI,eAAe,aAAa,QAAQ,SAAS,OAAO,OAAO,QAAQ,CAAC;AAAA,EAC1E;AACF;","names":[]}