@zavudev/sdk-mcp 0.14.0 → 0.15.1

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 (66) hide show
  1. package/README.md +3 -0
  2. package/code-tool.d.mts.map +1 -1
  3. package/code-tool.d.ts.map +1 -1
  4. package/code-tool.js +4 -1
  5. package/code-tool.js.map +1 -1
  6. package/code-tool.mjs +4 -1
  7. package/code-tool.mjs.map +1 -1
  8. package/package.json +2 -2
  9. package/server.js +1 -1
  10. package/server.mjs +1 -1
  11. package/src/code-tool.ts +4 -1
  12. package/src/server.ts +1 -1
  13. package/src/tools/index.ts +6 -0
  14. package/src/tools/senders/create-senders.ts +1 -1
  15. package/src/tools/senders/get-profile-senders.ts +54 -0
  16. package/src/tools/senders/list-senders.ts +1 -1
  17. package/src/tools/senders/retrieve-senders.ts +1 -1
  18. package/src/tools/senders/update-profile-senders.ts +107 -0
  19. package/src/tools/senders/update-senders.ts +1 -1
  20. package/src/tools/senders/upload-profile-picture-senders.ts +63 -0
  21. package/tools/index.d.mts.map +1 -1
  22. package/tools/index.d.ts.map +1 -1
  23. package/tools/index.js +6 -0
  24. package/tools/index.js.map +1 -1
  25. package/tools/index.mjs +6 -0
  26. package/tools/index.mjs.map +1 -1
  27. package/tools/senders/create-senders.js +1 -1
  28. package/tools/senders/create-senders.js.map +1 -1
  29. package/tools/senders/create-senders.mjs +1 -1
  30. package/tools/senders/create-senders.mjs.map +1 -1
  31. package/tools/senders/get-profile-senders.d.mts +51 -0
  32. package/tools/senders/get-profile-senders.d.mts.map +1 -0
  33. package/tools/senders/get-profile-senders.d.ts +51 -0
  34. package/tools/senders/get-profile-senders.d.ts.map +1 -0
  35. package/tools/senders/get-profile-senders.js +54 -0
  36. package/tools/senders/get-profile-senders.js.map +1 -0
  37. package/tools/senders/get-profile-senders.mjs +47 -0
  38. package/tools/senders/get-profile-senders.mjs.map +1 -0
  39. package/tools/senders/list-senders.js +1 -1
  40. package/tools/senders/list-senders.js.map +1 -1
  41. package/tools/senders/list-senders.mjs +1 -1
  42. package/tools/senders/list-senders.mjs.map +1 -1
  43. package/tools/senders/retrieve-senders.js +1 -1
  44. package/tools/senders/retrieve-senders.js.map +1 -1
  45. package/tools/senders/retrieve-senders.mjs +1 -1
  46. package/tools/senders/retrieve-senders.mjs.map +1 -1
  47. package/tools/senders/update-profile-senders.d.mts +51 -0
  48. package/tools/senders/update-profile-senders.d.mts.map +1 -0
  49. package/tools/senders/update-profile-senders.d.ts +51 -0
  50. package/tools/senders/update-profile-senders.d.ts.map +1 -0
  51. package/tools/senders/update-profile-senders.js +105 -0
  52. package/tools/senders/update-profile-senders.js.map +1 -0
  53. package/tools/senders/update-profile-senders.mjs +98 -0
  54. package/tools/senders/update-profile-senders.mjs.map +1 -0
  55. package/tools/senders/update-senders.js +1 -1
  56. package/tools/senders/update-senders.js.map +1 -1
  57. package/tools/senders/update-senders.mjs +1 -1
  58. package/tools/senders/update-senders.mjs.map +1 -1
  59. package/tools/senders/upload-profile-picture-senders.d.mts +51 -0
  60. package/tools/senders/upload-profile-picture-senders.d.mts.map +1 -0
  61. package/tools/senders/upload-profile-picture-senders.d.ts +51 -0
  62. package/tools/senders/upload-profile-picture-senders.d.ts.map +1 -0
  63. package/tools/senders/upload-profile-picture-senders.js +61 -0
  64. package/tools/senders/upload-profile-picture-senders.js.map +1 -0
  65. package/tools/senders/upload-profile-picture-senders.mjs +54 -0
  66. package/tools/senders/upload-profile-picture-senders.mjs.map +1 -0
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.handler = exports.tool = exports.metadata = void 0;
8
+ const filtering_1 = require("@zavudev/sdk-mcp/filtering");
9
+ const types_1 = require("@zavudev/sdk-mcp/tools/types");
10
+ const sdk_1 = __importDefault(require("@zavudev/sdk"));
11
+ exports.metadata = {
12
+ resource: 'senders',
13
+ operation: 'write',
14
+ tags: [],
15
+ httpMethod: 'patch',
16
+ httpPath: '/v1/senders/{senderId}/profile',
17
+ operationId: 'updateSenderProfile',
18
+ };
19
+ exports.tool = {
20
+ name: 'update_profile_senders',
21
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate the WhatsApp Business profile for a sender. The sender must have a WhatsApp Business Account connected.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender_update_profile_response',\n $defs: {\n sender_update_profile_response: {\n type: 'object',\n properties: {\n profile: {\n $ref: '#/$defs/whatsapp_business_profile'\n },\n success: {\n type: 'boolean'\n }\n },\n required: [ 'profile',\n 'success'\n ]\n },\n whatsapp_business_profile: {\n type: 'object',\n description: 'WhatsApp Business profile information.',\n properties: {\n about: {\n type: 'string',\n description: 'Short description of the business (max 139 characters).'\n },\n address: {\n type: 'string',\n description: 'Physical address of the business (max 256 characters).'\n },\n description: {\n type: 'string',\n description: 'Extended description of the business (max 512 characters).'\n },\n email: {\n type: 'string',\n description: 'Business email address.'\n },\n profilePictureUrl: {\n type: 'string',\n description: 'URL of the business profile picture.'\n },\n vertical: {\n $ref: '#/$defs/whatsapp_business_profile_vertical'\n },\n websites: {\n type: 'array',\n description: 'Business website URLs (maximum 2).',\n items: {\n type: 'string'\n }\n }\n }\n },\n whatsapp_business_profile_vertical: {\n type: 'string',\n description: 'Business category for WhatsApp Business profile.',\n enum: [ 'UNDEFINED',\n 'OTHER',\n 'AUTO',\n 'BEAUTY',\n 'APPAREL',\n 'EDU',\n 'ENTERTAIN',\n 'EVENT_PLAN',\n 'FINANCE',\n 'GROCERY',\n 'GOVT',\n 'HOTEL',\n 'HEALTH',\n 'NONPROFIT',\n 'PROF_SERVICES',\n 'RETAIL',\n 'TRAVEL',\n 'RESTAURANT',\n 'NOT_A_BIZ'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ senderId: {
26
+ type: 'string',
27
+ },
28
+ about: {
29
+ type: 'string',
30
+ description: 'Short description of the business (max 139 characters).',
31
+ },
32
+ address: {
33
+ type: 'string',
34
+ description: 'Physical address of the business (max 256 characters).',
35
+ },
36
+ description: {
37
+ type: 'string',
38
+ description: 'Extended description of the business (max 512 characters).',
39
+ },
40
+ email: {
41
+ type: 'string',
42
+ description: 'Business email address.',
43
+ },
44
+ vertical: {
45
+ $ref: '#/$defs/whatsapp_business_profile_vertical',
46
+ },
47
+ websites: {
48
+ type: 'array',
49
+ description: 'Business website URLs (maximum 2).',
50
+ items: {
51
+ type: 'string',
52
+ },
53
+ },
54
+ jq_filter: {
55
+ type: 'string',
56
+ title: 'jq Filter',
57
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
58
+ },
59
+ },
60
+ required: ['senderId'],
61
+ $defs: {
62
+ whatsapp_business_profile_vertical: {
63
+ type: 'string',
64
+ description: 'Business category for WhatsApp Business profile.',
65
+ enum: [
66
+ 'UNDEFINED',
67
+ 'OTHER',
68
+ 'AUTO',
69
+ 'BEAUTY',
70
+ 'APPAREL',
71
+ 'EDU',
72
+ 'ENTERTAIN',
73
+ 'EVENT_PLAN',
74
+ 'FINANCE',
75
+ 'GROCERY',
76
+ 'GOVT',
77
+ 'HOTEL',
78
+ 'HEALTH',
79
+ 'NONPROFIT',
80
+ 'PROF_SERVICES',
81
+ 'RETAIL',
82
+ 'TRAVEL',
83
+ 'RESTAURANT',
84
+ 'NOT_A_BIZ',
85
+ ],
86
+ },
87
+ },
88
+ },
89
+ annotations: {},
90
+ };
91
+ const handler = async (client, args) => {
92
+ const { senderId, jq_filter, ...body } = args;
93
+ try {
94
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(jq_filter, await client.senders.updateProfile(senderId, body)));
95
+ }
96
+ catch (error) {
97
+ if (error instanceof sdk_1.default.APIError || (0, filtering_1.isJqError)(error)) {
98
+ return (0, types_1.asErrorResult)(error.message);
99
+ }
100
+ throw error;
101
+ }
102
+ };
103
+ exports.handler = handler;
104
+ exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
105
+ //# sourceMappingURL=update-profile-senders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-profile-senders.js","sourceRoot":"","sources":["../../src/tools/senders/update-profile-senders.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,0DAAoE;AACpE,wDAA4F;AAG5F,uDAAmC;AAEtB,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,gCAAgC;IAC1C,WAAW,EAAE,qBAAqB;CACnC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,yyEAAyyE;IAC3yE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yDAAyD;aACvE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wDAAwD;aACtE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4DAA4D;aAC1E;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,4CAA4C;aACnD;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,oCAAoC;gBACjD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;aACF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,kCAAkC,EAAE;gBAClC,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kDAAkD;gBAC/D,IAAI,EAAE;oBACJ,WAAW;oBACX,OAAO;oBACP,MAAM;oBACN,QAAQ;oBACR,SAAS;oBACT,KAAK;oBACL,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,SAAS;oBACT,MAAM;oBACN,OAAO;oBACP,QAAQ;oBACR,WAAW;oBACX,eAAe;oBACf,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,WAAW;iBACZ;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EACxB,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACjF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAO,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,OAAO,WAYlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -0,0 +1,98 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
3
+ import { asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
4
+ import Zavudev from '@zavudev/sdk';
5
+ export const metadata = {
6
+ resource: 'senders',
7
+ operation: 'write',
8
+ tags: [],
9
+ httpMethod: 'patch',
10
+ httpPath: '/v1/senders/{senderId}/profile',
11
+ operationId: 'updateSenderProfile',
12
+ };
13
+ export const tool = {
14
+ name: 'update_profile_senders',
15
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate the WhatsApp Business profile for a sender. The sender must have a WhatsApp Business Account connected.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender_update_profile_response',\n $defs: {\n sender_update_profile_response: {\n type: 'object',\n properties: {\n profile: {\n $ref: '#/$defs/whatsapp_business_profile'\n },\n success: {\n type: 'boolean'\n }\n },\n required: [ 'profile',\n 'success'\n ]\n },\n whatsapp_business_profile: {\n type: 'object',\n description: 'WhatsApp Business profile information.',\n properties: {\n about: {\n type: 'string',\n description: 'Short description of the business (max 139 characters).'\n },\n address: {\n type: 'string',\n description: 'Physical address of the business (max 256 characters).'\n },\n description: {\n type: 'string',\n description: 'Extended description of the business (max 512 characters).'\n },\n email: {\n type: 'string',\n description: 'Business email address.'\n },\n profilePictureUrl: {\n type: 'string',\n description: 'URL of the business profile picture.'\n },\n vertical: {\n $ref: '#/$defs/whatsapp_business_profile_vertical'\n },\n websites: {\n type: 'array',\n description: 'Business website URLs (maximum 2).',\n items: {\n type: 'string'\n }\n }\n }\n },\n whatsapp_business_profile_vertical: {\n type: 'string',\n description: 'Business category for WhatsApp Business profile.',\n enum: [ 'UNDEFINED',\n 'OTHER',\n 'AUTO',\n 'BEAUTY',\n 'APPAREL',\n 'EDU',\n 'ENTERTAIN',\n 'EVENT_PLAN',\n 'FINANCE',\n 'GROCERY',\n 'GOVT',\n 'HOTEL',\n 'HEALTH',\n 'NONPROFIT',\n 'PROF_SERVICES',\n 'RETAIL',\n 'TRAVEL',\n 'RESTAURANT',\n 'NOT_A_BIZ'\n ]\n }\n }\n}\n```",
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ senderId: {
20
+ type: 'string',
21
+ },
22
+ about: {
23
+ type: 'string',
24
+ description: 'Short description of the business (max 139 characters).',
25
+ },
26
+ address: {
27
+ type: 'string',
28
+ description: 'Physical address of the business (max 256 characters).',
29
+ },
30
+ description: {
31
+ type: 'string',
32
+ description: 'Extended description of the business (max 512 characters).',
33
+ },
34
+ email: {
35
+ type: 'string',
36
+ description: 'Business email address.',
37
+ },
38
+ vertical: {
39
+ $ref: '#/$defs/whatsapp_business_profile_vertical',
40
+ },
41
+ websites: {
42
+ type: 'array',
43
+ description: 'Business website URLs (maximum 2).',
44
+ items: {
45
+ type: 'string',
46
+ },
47
+ },
48
+ jq_filter: {
49
+ type: 'string',
50
+ title: 'jq Filter',
51
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
52
+ },
53
+ },
54
+ required: ['senderId'],
55
+ $defs: {
56
+ whatsapp_business_profile_vertical: {
57
+ type: 'string',
58
+ description: 'Business category for WhatsApp Business profile.',
59
+ enum: [
60
+ 'UNDEFINED',
61
+ 'OTHER',
62
+ 'AUTO',
63
+ 'BEAUTY',
64
+ 'APPAREL',
65
+ 'EDU',
66
+ 'ENTERTAIN',
67
+ 'EVENT_PLAN',
68
+ 'FINANCE',
69
+ 'GROCERY',
70
+ 'GOVT',
71
+ 'HOTEL',
72
+ 'HEALTH',
73
+ 'NONPROFIT',
74
+ 'PROF_SERVICES',
75
+ 'RETAIL',
76
+ 'TRAVEL',
77
+ 'RESTAURANT',
78
+ 'NOT_A_BIZ',
79
+ ],
80
+ },
81
+ },
82
+ },
83
+ annotations: {},
84
+ };
85
+ export const handler = async (client, args) => {
86
+ const { senderId, jq_filter, ...body } = args;
87
+ try {
88
+ return asTextContentResult(await maybeFilter(jq_filter, await client.senders.updateProfile(senderId, body)));
89
+ }
90
+ catch (error) {
91
+ if (error instanceof Zavudev.APIError || isJqError(error)) {
92
+ return asErrorResult(error.message);
93
+ }
94
+ throw error;
95
+ }
96
+ };
97
+ export default { metadata, tool, handler };
98
+ //# sourceMappingURL=update-profile-senders.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-profile-senders.mjs","sourceRoot":"","sources":["../../src/tools/senders/update-profile-senders.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B;OAC5D,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B;OAGpF,OAAO,MAAM,cAAc;AAElC,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,gCAAgC;IAC1C,WAAW,EAAE,qBAAqB;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,yyEAAyyE;IAC3yE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yDAAyD;aACvE;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wDAAwD;aACtE;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4DAA4D;aAC1E;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;aACvC;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,4CAA4C;aACnD;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,oCAAoC;gBACjD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;aACF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,kCAAkC,EAAE;gBAClC,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kDAAkD;gBAC/D,IAAI,EAAE;oBACJ,WAAW;oBACX,OAAO;oBACP,MAAM;oBACN,QAAQ;oBACR,SAAS;oBACT,KAAK;oBACL,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,SAAS;oBACT,MAAM;oBACN,OAAO;oBACP,QAAQ;oBACR,WAAW;oBACX,eAAe;oBACf,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,WAAW;iBACZ;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,mBAAmB,CACxB,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACjF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -18,7 +18,7 @@ exports.metadata = {
18
18
  };
19
19
  exports.tool = {
20
20
  name: 'update_senders',
21
- description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate sender\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender',\n $defs: {\n sender: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n name: {\n type: 'string'\n },\n phoneNumber: {\n type: 'string',\n description: 'Phone number in E.164 format.'\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n isDefault: {\n type: 'boolean',\n description: 'Whether this sender is the project\\'s default.'\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n webhook: {\n $ref: '#/$defs/sender_webhook'\n }\n },\n required: [ 'id',\n 'name',\n 'phoneNumber'\n ]\n },\n sender_webhook: {\n type: 'object',\n description: 'Webhook configuration for the sender.',\n properties: {\n active: {\n type: 'boolean',\n description: 'Whether the webhook is active.'\n },\n events: {\n type: 'array',\n description: 'List of events the webhook is subscribed to.',\n items: {\n $ref: '#/$defs/webhook_event'\n }\n },\n url: {\n type: 'string',\n description: 'HTTPS URL that will receive webhook events.'\n },\n secret: {\n type: 'string',\n description: 'Webhook secret for signature verification. Only returned on create or regenerate.'\n }\n },\n required: [ 'active',\n 'events',\n 'url'\n ]\n },\n webhook_event: {\n type: 'string',\n description: 'Type of event that triggers the webhook. Note: Reactions are delivered as message.inbound with messageType=\\'reaction\\'.',\n enum: [ 'message.queued',\n 'message.sent',\n 'message.delivered',\n 'message.failed',\n 'message.inbound',\n 'message.unsupported',\n 'conversation.new',\n 'template.status_changed'\n ]\n }\n }\n}\n```",
21
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate sender\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender',\n $defs: {\n sender: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n name: {\n type: 'string'\n },\n phoneNumber: {\n type: 'string',\n description: 'Phone number in E.164 format.'\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n isDefault: {\n type: 'boolean',\n description: 'Whether this sender is the project\\'s default.'\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n webhook: {\n $ref: '#/$defs/sender_webhook'\n },\n whatsapp: {\n type: 'object',\n description: 'WhatsApp Business Account information. Only present if a WABA is connected.',\n properties: {\n displayPhoneNumber: {\n type: 'string',\n description: 'Display phone number.'\n },\n paymentStatus: {\n type: 'object',\n description: 'Payment configuration status from Meta.',\n properties: {\n canSendTemplates: {\n type: 'boolean',\n description: 'Whether template messages can be sent. Requires setupStatus=COMPLETE and methodStatus=VALID.'\n },\n methodStatus: {\n type: 'string',\n description: 'Payment method status (VALID, NONE, etc.).'\n },\n setupStatus: {\n type: 'string',\n description: 'Payment setup status (COMPLETE, NOT_STARTED, etc.).'\n }\n }\n },\n phoneNumberId: {\n type: 'string',\n description: 'WhatsApp phone number ID from Meta.'\n }\n }\n }\n },\n required: [ 'id',\n 'name',\n 'phoneNumber'\n ]\n },\n sender_webhook: {\n type: 'object',\n description: 'Webhook configuration for the sender.',\n properties: {\n active: {\n type: 'boolean',\n description: 'Whether the webhook is active.'\n },\n events: {\n type: 'array',\n description: 'List of events the webhook is subscribed to.',\n items: {\n $ref: '#/$defs/webhook_event'\n }\n },\n url: {\n type: 'string',\n description: 'HTTPS URL that will receive webhook events.'\n },\n secret: {\n type: 'string',\n description: 'Webhook secret for signature verification. Only returned on create or regenerate.'\n }\n },\n required: [ 'active',\n 'events',\n 'url'\n ]\n },\n webhook_event: {\n type: 'string',\n description: 'Type of event that triggers the webhook. Note: Reactions are delivered as message.inbound with messageType=\\'reaction\\'.',\n enum: [ 'message.queued',\n 'message.sent',\n 'message.delivered',\n 'message.failed',\n 'message.inbound',\n 'message.unsupported',\n 'conversation.new',\n 'template.status_changed'\n ]\n }\n }\n}\n```",
22
22
  inputSchema: {
23
23
  type: 'object',
24
24
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"update-senders.js","sourceRoot":"","sources":["../../src/tools/senders/update-senders.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,0DAAoE;AACpE,wDAA4F;AAG5F,uDAAmC;AAEtB,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,wBAAwB;IAClC,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,+xEAA+xE;IACjyE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACf;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gCAAgC;aAC9C;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,yBAAyB;gBACtC,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;iBAC9B;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wHAAwH;gBAC1H,IAAI,EAAE;oBACJ,gBAAgB;oBAChB,cAAc;oBACd,mBAAmB;oBACnB,gBAAgB;oBAChB,iBAAiB;oBACjB,qBAAqB;oBACrB,kBAAkB;oBAClB,yBAAyB;iBAC1B;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAO,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,OAAO,WAUlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"update-senders.js","sourceRoot":"","sources":["../../src/tools/senders/update-senders.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,0DAAoE;AACpE,wDAA4F;AAG5F,uDAAmC;AAEtB,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,wBAAwB;IAClC,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,2+GAA2+G;IAC7+G,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACf;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gCAAgC;aAC9C;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,yBAAyB;gBACtC,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;iBAC9B;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wHAAwH;gBAC1H,IAAI,EAAE;oBACJ,gBAAgB;oBAChB,cAAc;oBACd,mBAAmB;oBACnB,gBAAgB;oBAChB,iBAAiB;oBACjB,qBAAqB;oBACrB,kBAAkB;oBAClB,yBAAyB;iBAC1B;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAO,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,OAAO,WAUlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -12,7 +12,7 @@ export const metadata = {
12
12
  };
13
13
  export const tool = {
14
14
  name: 'update_senders',
15
- description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate sender\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender',\n $defs: {\n sender: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n name: {\n type: 'string'\n },\n phoneNumber: {\n type: 'string',\n description: 'Phone number in E.164 format.'\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n isDefault: {\n type: 'boolean',\n description: 'Whether this sender is the project\\'s default.'\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n webhook: {\n $ref: '#/$defs/sender_webhook'\n }\n },\n required: [ 'id',\n 'name',\n 'phoneNumber'\n ]\n },\n sender_webhook: {\n type: 'object',\n description: 'Webhook configuration for the sender.',\n properties: {\n active: {\n type: 'boolean',\n description: 'Whether the webhook is active.'\n },\n events: {\n type: 'array',\n description: 'List of events the webhook is subscribed to.',\n items: {\n $ref: '#/$defs/webhook_event'\n }\n },\n url: {\n type: 'string',\n description: 'HTTPS URL that will receive webhook events.'\n },\n secret: {\n type: 'string',\n description: 'Webhook secret for signature verification. Only returned on create or regenerate.'\n }\n },\n required: [ 'active',\n 'events',\n 'url'\n ]\n },\n webhook_event: {\n type: 'string',\n description: 'Type of event that triggers the webhook. Note: Reactions are delivered as message.inbound with messageType=\\'reaction\\'.',\n enum: [ 'message.queued',\n 'message.sent',\n 'message.delivered',\n 'message.failed',\n 'message.inbound',\n 'message.unsupported',\n 'conversation.new',\n 'template.status_changed'\n ]\n }\n }\n}\n```",
15
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpdate sender\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender',\n $defs: {\n sender: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n name: {\n type: 'string'\n },\n phoneNumber: {\n type: 'string',\n description: 'Phone number in E.164 format.'\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n isDefault: {\n type: 'boolean',\n description: 'Whether this sender is the project\\'s default.'\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n webhook: {\n $ref: '#/$defs/sender_webhook'\n },\n whatsapp: {\n type: 'object',\n description: 'WhatsApp Business Account information. Only present if a WABA is connected.',\n properties: {\n displayPhoneNumber: {\n type: 'string',\n description: 'Display phone number.'\n },\n paymentStatus: {\n type: 'object',\n description: 'Payment configuration status from Meta.',\n properties: {\n canSendTemplates: {\n type: 'boolean',\n description: 'Whether template messages can be sent. Requires setupStatus=COMPLETE and methodStatus=VALID.'\n },\n methodStatus: {\n type: 'string',\n description: 'Payment method status (VALID, NONE, etc.).'\n },\n setupStatus: {\n type: 'string',\n description: 'Payment setup status (COMPLETE, NOT_STARTED, etc.).'\n }\n }\n },\n phoneNumberId: {\n type: 'string',\n description: 'WhatsApp phone number ID from Meta.'\n }\n }\n }\n },\n required: [ 'id',\n 'name',\n 'phoneNumber'\n ]\n },\n sender_webhook: {\n type: 'object',\n description: 'Webhook configuration for the sender.',\n properties: {\n active: {\n type: 'boolean',\n description: 'Whether the webhook is active.'\n },\n events: {\n type: 'array',\n description: 'List of events the webhook is subscribed to.',\n items: {\n $ref: '#/$defs/webhook_event'\n }\n },\n url: {\n type: 'string',\n description: 'HTTPS URL that will receive webhook events.'\n },\n secret: {\n type: 'string',\n description: 'Webhook secret for signature verification. Only returned on create or regenerate.'\n }\n },\n required: [ 'active',\n 'events',\n 'url'\n ]\n },\n webhook_event: {\n type: 'string',\n description: 'Type of event that triggers the webhook. Note: Reactions are delivered as message.inbound with messageType=\\'reaction\\'.',\n enum: [ 'message.queued',\n 'message.sent',\n 'message.delivered',\n 'message.failed',\n 'message.inbound',\n 'message.unsupported',\n 'conversation.new',\n 'template.status_changed'\n ]\n }\n }\n}\n```",
16
16
  inputSchema: {
17
17
  type: 'object',
18
18
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"update-senders.mjs","sourceRoot":"","sources":["../../src/tools/senders/update-senders.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B;OAC5D,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B;OAGpF,OAAO,MAAM,cAAc;AAElC,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,wBAAwB;IAClC,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,+xEAA+xE;IACjyE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACf;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gCAAgC;aAC9C;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,yBAAyB;gBACtC,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;iBAC9B;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wHAAwH;gBAC1H,IAAI,EAAE;oBACJ,gBAAgB;oBAChB,cAAc;oBACd,mBAAmB;oBACnB,gBAAgB;oBAChB,iBAAiB;oBACjB,qBAAqB;oBACrB,kBAAkB;oBAClB,yBAAyB;iBAC1B;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"update-senders.mjs","sourceRoot":"","sources":["../../src/tools/senders/update-senders.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B;OAC5D,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B;OAGpF,OAAO,MAAM,cAAc;AAElC,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,OAAO;IACnB,QAAQ,EAAE,wBAAwB;IAClC,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,2+GAA2+G;IAC7+G,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;aACf;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gCAAgC;aAC9C;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,yBAAyB;gBACtC,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;iBAC9B;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8DAA8D;aAC5E;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;QACtB,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,wHAAwH;gBAC1H,IAAI,EAAE;oBACJ,gBAAgB;oBAChB,cAAc;oBACd,mBAAmB;oBACnB,gBAAgB;oBAChB,iBAAiB;oBACjB,qBAAqB;oBACrB,kBAAkB;oBAClB,yBAAyB;iBAC1B;aACF;SACF;KACF;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@zavudev/sdk-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import Zavudev from '@zavudev/sdk';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: Zavudev, args: Record<string, unknown> | undefined) => Promise<import("@zavudev/sdk-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: Zavudev, args: Record<string, unknown> | undefined) => Promise<import("@zavudev/sdk-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=upload-profile-picture-senders.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-profile-picture-senders.d.mts","sourceRoot":"","sources":["../../src/tools/senders/upload-profile-picture-senders.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,8BAA8B;OAEpF,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,OAAO,MAAM,cAAc;AAElC,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,mEAYvF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAZoC,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAcxF,wBAA2C"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@zavudev/sdk-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import Zavudev from '@zavudev/sdk';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: Zavudev, args: Record<string, unknown> | undefined) => Promise<import("@zavudev/sdk-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: Zavudev, args: Record<string, unknown> | undefined) => Promise<import("@zavudev/sdk-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=upload-profile-picture-senders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-profile-picture-senders.d.ts","sourceRoot":"","sources":["../../src/tools/senders/upload-profile-picture-senders.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,8BAA8B;OAEpF,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,OAAO,MAAM,cAAc;AAElC,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,mEAYvF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAZoC,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAcxF,wBAA2C"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.handler = exports.tool = exports.metadata = void 0;
8
+ const filtering_1 = require("@zavudev/sdk-mcp/filtering");
9
+ const types_1 = require("@zavudev/sdk-mcp/tools/types");
10
+ const sdk_1 = __importDefault(require("@zavudev/sdk"));
11
+ exports.metadata = {
12
+ resource: 'senders',
13
+ operation: 'write',
14
+ tags: [],
15
+ httpMethod: 'post',
16
+ httpPath: '/v1/senders/{senderId}/profile/picture',
17
+ operationId: 'uploadSenderProfilePicture',
18
+ };
19
+ exports.tool = {
20
+ name: 'upload_profile_picture_senders',
21
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpload a new profile picture for the WhatsApp Business profile. The image will be uploaded to Meta and set as the profile picture.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender_upload_profile_picture_response',\n $defs: {\n sender_upload_profile_picture_response: {\n type: 'object',\n properties: {\n profile: {\n $ref: '#/$defs/whatsapp_business_profile'\n },\n success: {\n type: 'boolean'\n }\n },\n required: [ 'profile',\n 'success'\n ]\n },\n whatsapp_business_profile: {\n type: 'object',\n description: 'WhatsApp Business profile information.',\n properties: {\n about: {\n type: 'string',\n description: 'Short description of the business (max 139 characters).'\n },\n address: {\n type: 'string',\n description: 'Physical address of the business (max 256 characters).'\n },\n description: {\n type: 'string',\n description: 'Extended description of the business (max 512 characters).'\n },\n email: {\n type: 'string',\n description: 'Business email address.'\n },\n profilePictureUrl: {\n type: 'string',\n description: 'URL of the business profile picture.'\n },\n vertical: {\n $ref: '#/$defs/whatsapp_business_profile_vertical'\n },\n websites: {\n type: 'array',\n description: 'Business website URLs (maximum 2).',\n items: {\n type: 'string'\n }\n }\n }\n },\n whatsapp_business_profile_vertical: {\n type: 'string',\n description: 'Business category for WhatsApp Business profile.',\n enum: [ 'UNDEFINED',\n 'OTHER',\n 'AUTO',\n 'BEAUTY',\n 'APPAREL',\n 'EDU',\n 'ENTERTAIN',\n 'EVENT_PLAN',\n 'FINANCE',\n 'GROCERY',\n 'GOVT',\n 'HOTEL',\n 'HEALTH',\n 'NONPROFIT',\n 'PROF_SERVICES',\n 'RETAIL',\n 'TRAVEL',\n 'RESTAURANT',\n 'NOT_A_BIZ'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ senderId: {
26
+ type: 'string',
27
+ },
28
+ imageUrl: {
29
+ type: 'string',
30
+ description: 'URL of the image to upload.',
31
+ },
32
+ mimeType: {
33
+ type: 'string',
34
+ description: 'MIME type of the image.',
35
+ enum: ['image/jpeg', 'image/png'],
36
+ },
37
+ jq_filter: {
38
+ type: 'string',
39
+ title: 'jq Filter',
40
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
41
+ },
42
+ },
43
+ required: ['senderId', 'imageUrl', 'mimeType'],
44
+ },
45
+ annotations: {},
46
+ };
47
+ const handler = async (client, args) => {
48
+ const { senderId, jq_filter, ...body } = args;
49
+ try {
50
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(jq_filter, await client.senders.uploadProfilePicture(senderId, body)));
51
+ }
52
+ catch (error) {
53
+ if (error instanceof sdk_1.default.APIError || (0, filtering_1.isJqError)(error)) {
54
+ return (0, types_1.asErrorResult)(error.message);
55
+ }
56
+ throw error;
57
+ }
58
+ };
59
+ exports.handler = handler;
60
+ exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
61
+ //# sourceMappingURL=upload-profile-picture-senders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-profile-picture-senders.js","sourceRoot":"","sources":["../../src/tools/senders/upload-profile-picture-senders.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,0DAAoE;AACpE,wDAA4F;AAG5F,uDAAmC;AAEtB,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,wCAAwC;IAClD,WAAW,EAAE,4BAA4B;CAC1C,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,gCAAgC;IACtC,WAAW,EACT,60EAA60E;IAC/0E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;gBACtC,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;aAClC;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;KAC/C;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EACxB,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAO,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,OAAO,WAYlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -0,0 +1,54 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
3
+ import { asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
4
+ import Zavudev from '@zavudev/sdk';
5
+ export const metadata = {
6
+ resource: 'senders',
7
+ operation: 'write',
8
+ tags: [],
9
+ httpMethod: 'post',
10
+ httpPath: '/v1/senders/{senderId}/profile/picture',
11
+ operationId: 'uploadSenderProfilePicture',
12
+ };
13
+ export const tool = {
14
+ name: 'upload_profile_picture_senders',
15
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpload a new profile picture for the WhatsApp Business profile. The image will be uploaded to Meta and set as the profile picture.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/sender_upload_profile_picture_response',\n $defs: {\n sender_upload_profile_picture_response: {\n type: 'object',\n properties: {\n profile: {\n $ref: '#/$defs/whatsapp_business_profile'\n },\n success: {\n type: 'boolean'\n }\n },\n required: [ 'profile',\n 'success'\n ]\n },\n whatsapp_business_profile: {\n type: 'object',\n description: 'WhatsApp Business profile information.',\n properties: {\n about: {\n type: 'string',\n description: 'Short description of the business (max 139 characters).'\n },\n address: {\n type: 'string',\n description: 'Physical address of the business (max 256 characters).'\n },\n description: {\n type: 'string',\n description: 'Extended description of the business (max 512 characters).'\n },\n email: {\n type: 'string',\n description: 'Business email address.'\n },\n profilePictureUrl: {\n type: 'string',\n description: 'URL of the business profile picture.'\n },\n vertical: {\n $ref: '#/$defs/whatsapp_business_profile_vertical'\n },\n websites: {\n type: 'array',\n description: 'Business website URLs (maximum 2).',\n items: {\n type: 'string'\n }\n }\n }\n },\n whatsapp_business_profile_vertical: {\n type: 'string',\n description: 'Business category for WhatsApp Business profile.',\n enum: [ 'UNDEFINED',\n 'OTHER',\n 'AUTO',\n 'BEAUTY',\n 'APPAREL',\n 'EDU',\n 'ENTERTAIN',\n 'EVENT_PLAN',\n 'FINANCE',\n 'GROCERY',\n 'GOVT',\n 'HOTEL',\n 'HEALTH',\n 'NONPROFIT',\n 'PROF_SERVICES',\n 'RETAIL',\n 'TRAVEL',\n 'RESTAURANT',\n 'NOT_A_BIZ'\n ]\n }\n }\n}\n```",
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ senderId: {
20
+ type: 'string',
21
+ },
22
+ imageUrl: {
23
+ type: 'string',
24
+ description: 'URL of the image to upload.',
25
+ },
26
+ mimeType: {
27
+ type: 'string',
28
+ description: 'MIME type of the image.',
29
+ enum: ['image/jpeg', 'image/png'],
30
+ },
31
+ jq_filter: {
32
+ type: 'string',
33
+ title: 'jq Filter',
34
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
35
+ },
36
+ },
37
+ required: ['senderId', 'imageUrl', 'mimeType'],
38
+ },
39
+ annotations: {},
40
+ };
41
+ export const handler = async (client, args) => {
42
+ const { senderId, jq_filter, ...body } = args;
43
+ try {
44
+ return asTextContentResult(await maybeFilter(jq_filter, await client.senders.uploadProfilePicture(senderId, body)));
45
+ }
46
+ catch (error) {
47
+ if (error instanceof Zavudev.APIError || isJqError(error)) {
48
+ return asErrorResult(error.message);
49
+ }
50
+ throw error;
51
+ }
52
+ };
53
+ export default { metadata, tool, handler };
54
+ //# sourceMappingURL=upload-profile-picture-senders.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-profile-picture-senders.mjs","sourceRoot":"","sources":["../../src/tools/senders/upload-profile-picture-senders.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B;OAC5D,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B;OAGpF,OAAO,MAAM,cAAc;AAElC,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,OAAO;IAClB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,wCAAwC;IAClD,WAAW,EAAE,4BAA4B;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,gCAAgC;IACtC,WAAW,EACT,60EAA60E;IAC/0E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6BAA6B;aAC3C;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yBAAyB;gBACtC,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;aAClC;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;KAC/C;IACD,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,IAAyC,EAAE,EAAE;IAC1F,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,mBAAmB,CACxB,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}