@zavudev/sdk-mcp 0.15.1 → 0.16.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.
Files changed (476) hide show
  1. package/README.md +13 -228
  2. package/code-tool.d.mts +2 -44
  3. package/code-tool.d.mts.map +1 -1
  4. package/code-tool.d.ts +2 -44
  5. package/code-tool.d.ts.map +1 -1
  6. package/code-tool.js +2 -2
  7. package/code-tool.js.map +1 -1
  8. package/code-tool.mjs +2 -2
  9. package/code-tool.mjs.map +1 -1
  10. package/docs-search-tool.d.mts +3 -3
  11. package/docs-search-tool.d.mts.map +1 -1
  12. package/docs-search-tool.d.ts +3 -3
  13. package/docs-search-tool.d.ts.map +1 -1
  14. package/docs-search-tool.js +1 -1
  15. package/docs-search-tool.js.map +1 -1
  16. package/docs-search-tool.mjs +1 -1
  17. package/http.d.mts.map +1 -1
  18. package/http.d.ts.map +1 -1
  19. package/http.js +1 -18
  20. package/http.js.map +1 -1
  21. package/http.mjs +1 -18
  22. package/http.mjs.map +1 -1
  23. package/index.js +4 -40
  24. package/index.js.map +1 -1
  25. package/index.mjs +4 -40
  26. package/index.mjs.map +1 -1
  27. package/options.d.mts +0 -9
  28. package/options.d.mts.map +1 -1
  29. package/options.d.ts +0 -9
  30. package/options.d.ts.map +1 -1
  31. package/options.js +4 -359
  32. package/options.js.map +1 -1
  33. package/options.mjs +4 -359
  34. package/options.mjs.map +1 -1
  35. package/package.json +9 -49
  36. package/server.d.mts +3 -8
  37. package/server.d.mts.map +1 -1
  38. package/server.d.ts +3 -8
  39. package/server.d.ts.map +1 -1
  40. package/server.js +12 -65
  41. package/server.js.map +1 -1
  42. package/server.mjs +11 -62
  43. package/server.mjs.map +1 -1
  44. package/src/code-tool.ts +2 -2
  45. package/src/docs-search-tool.ts +1 -1
  46. package/src/http.ts +1 -19
  47. package/src/index.ts +5 -52
  48. package/src/options.ts +5 -386
  49. package/src/server.ts +12 -72
  50. package/src/stdio.ts +2 -3
  51. package/src/{tools/types.ts → types.ts} +1 -1
  52. package/stdio.d.mts +1 -2
  53. package/stdio.d.mts.map +1 -1
  54. package/stdio.d.ts +1 -2
  55. package/stdio.d.ts.map +1 -1
  56. package/stdio.js +2 -2
  57. package/stdio.js.map +1 -1
  58. package/stdio.mjs +2 -2
  59. package/stdio.mjs.map +1 -1
  60. package/{tools/types.d.mts → types.d.mts} +1 -1
  61. package/types.d.mts.map +1 -0
  62. package/{tools/types.d.ts → types.d.ts} +1 -1
  63. package/types.d.ts.map +1 -0
  64. package/types.js.map +1 -0
  65. package/types.mjs.map +1 -0
  66. package/compat.d.mts +0 -58
  67. package/compat.d.mts.map +0 -1
  68. package/compat.d.ts +0 -58
  69. package/compat.d.ts.map +0 -1
  70. package/compat.js +0 -387
  71. package/compat.js.map +0 -1
  72. package/compat.mjs +0 -378
  73. package/compat.mjs.map +0 -1
  74. package/dynamic-tools.d.mts +0 -12
  75. package/dynamic-tools.d.mts.map +0 -1
  76. package/dynamic-tools.d.ts +0 -12
  77. package/dynamic-tools.d.ts.map +0 -1
  78. package/dynamic-tools.js +0 -135
  79. package/dynamic-tools.js.map +0 -1
  80. package/dynamic-tools.mjs +0 -132
  81. package/dynamic-tools.mjs.map +0 -1
  82. package/filtering.d.mts +0 -3
  83. package/filtering.d.mts.map +0 -1
  84. package/filtering.d.ts +0 -3
  85. package/filtering.d.ts.map +0 -1
  86. package/filtering.js +0 -24
  87. package/filtering.js.map +0 -1
  88. package/filtering.mjs +0 -16
  89. package/filtering.mjs.map +0 -1
  90. package/src/compat.ts +0 -483
  91. package/src/dynamic-tools.ts +0 -153
  92. package/src/filtering.ts +0 -18
  93. package/src/tools/broadcasts/cancel-broadcasts.ts +0 -52
  94. package/src/tools/broadcasts/contacts/add-broadcasts-contacts.ts +0 -73
  95. package/src/tools/broadcasts/contacts/list-broadcasts-contacts.ts +0 -71
  96. package/src/tools/broadcasts/contacts/remove-broadcasts-contacts.ts +0 -43
  97. package/src/tools/broadcasts/create-broadcasts.ts +0 -134
  98. package/src/tools/broadcasts/delete-broadcasts.ts +0 -40
  99. package/src/tools/broadcasts/list-broadcasts.ts +0 -68
  100. package/src/tools/broadcasts/progress-broadcasts.ts +0 -54
  101. package/src/tools/broadcasts/retrieve-broadcasts.ts +0 -54
  102. package/src/tools/broadcasts/send-broadcasts.ts +0 -57
  103. package/src/tools/broadcasts/update-broadcasts.ts +0 -106
  104. package/src/tools/contacts/list-contacts.ts +0 -61
  105. package/src/tools/contacts/retrieve-by-phone-contacts.ts +0 -56
  106. package/src/tools/contacts/retrieve-contacts.ts +0 -54
  107. package/src/tools/contacts/update-contacts.ts +0 -61
  108. package/src/tools/index.ts +0 -149
  109. package/src/tools/introspect/validate-phone-introspect.ts +0 -52
  110. package/src/tools/messages/list-messages.ts +0 -78
  111. package/src/tools/messages/react-messages.ts +0 -59
  112. package/src/tools/messages/retrieve-messages.ts +0 -54
  113. package/src/tools/messages/send-messages.ts +0 -233
  114. package/src/tools/phone-numbers/list-phone-numbers.ts +0 -68
  115. package/src/tools/phone-numbers/purchase-phone-numbers.ts +0 -57
  116. package/src/tools/phone-numbers/release-phone-numbers.ts +0 -40
  117. package/src/tools/phone-numbers/retrieve-phone-numbers.ts +0 -56
  118. package/src/tools/phone-numbers/search-available-phone-numbers.ts +0 -72
  119. package/src/tools/phone-numbers/update-phone-numbers.ts +0 -62
  120. package/src/tools/senders/create-senders.ts +0 -86
  121. package/src/tools/senders/delete-senders.ts +0 -40
  122. package/src/tools/senders/get-profile-senders.ts +0 -54
  123. package/src/tools/senders/list-senders.ts +0 -58
  124. package/src/tools/senders/regenerate-webhook-secret-senders.ts +0 -54
  125. package/src/tools/senders/retrieve-senders.ts +0 -54
  126. package/src/tools/senders/update-profile-senders.ts +0 -107
  127. package/src/tools/senders/update-senders.ts +0 -90
  128. package/src/tools/senders/upload-profile-picture-senders.ts +0 -63
  129. package/src/tools/templates/create-templates.ts +0 -74
  130. package/src/tools/templates/delete-templates.ts +0 -40
  131. package/src/tools/templates/list-templates.ts +0 -58
  132. package/src/tools/templates/retrieve-templates.ts +0 -54
  133. package/src/tools/templates/submit-templates.ts +0 -66
  134. package/src/tools.ts +0 -1
  135. package/tools/broadcasts/cancel-broadcasts.d.mts +0 -51
  136. package/tools/broadcasts/cancel-broadcasts.d.mts.map +0 -1
  137. package/tools/broadcasts/cancel-broadcasts.d.ts +0 -51
  138. package/tools/broadcasts/cancel-broadcasts.d.ts.map +0 -1
  139. package/tools/broadcasts/cancel-broadcasts.js +0 -52
  140. package/tools/broadcasts/cancel-broadcasts.js.map +0 -1
  141. package/tools/broadcasts/cancel-broadcasts.mjs +0 -45
  142. package/tools/broadcasts/cancel-broadcasts.mjs.map +0 -1
  143. package/tools/broadcasts/contacts/add-broadcasts-contacts.d.mts +0 -51
  144. package/tools/broadcasts/contacts/add-broadcasts-contacts.d.mts.map +0 -1
  145. package/tools/broadcasts/contacts/add-broadcasts-contacts.d.ts +0 -51
  146. package/tools/broadcasts/contacts/add-broadcasts-contacts.d.ts.map +0 -1
  147. package/tools/broadcasts/contacts/add-broadcasts-contacts.js +0 -71
  148. package/tools/broadcasts/contacts/add-broadcasts-contacts.js.map +0 -1
  149. package/tools/broadcasts/contacts/add-broadcasts-contacts.mjs +0 -64
  150. package/tools/broadcasts/contacts/add-broadcasts-contacts.mjs.map +0 -1
  151. package/tools/broadcasts/contacts/list-broadcasts-contacts.d.mts +0 -51
  152. package/tools/broadcasts/contacts/list-broadcasts-contacts.d.mts.map +0 -1
  153. package/tools/broadcasts/contacts/list-broadcasts-contacts.d.ts +0 -51
  154. package/tools/broadcasts/contacts/list-broadcasts-contacts.d.ts.map +0 -1
  155. package/tools/broadcasts/contacts/list-broadcasts-contacts.js +0 -71
  156. package/tools/broadcasts/contacts/list-broadcasts-contacts.js.map +0 -1
  157. package/tools/broadcasts/contacts/list-broadcasts-contacts.mjs +0 -64
  158. package/tools/broadcasts/contacts/list-broadcasts-contacts.mjs.map +0 -1
  159. package/tools/broadcasts/contacts/remove-broadcasts-contacts.d.mts +0 -51
  160. package/tools/broadcasts/contacts/remove-broadcasts-contacts.d.mts.map +0 -1
  161. package/tools/broadcasts/contacts/remove-broadcasts-contacts.d.ts +0 -51
  162. package/tools/broadcasts/contacts/remove-broadcasts-contacts.d.ts.map +0 -1
  163. package/tools/broadcasts/contacts/remove-broadcasts-contacts.js +0 -40
  164. package/tools/broadcasts/contacts/remove-broadcasts-contacts.js.map +0 -1
  165. package/tools/broadcasts/contacts/remove-broadcasts-contacts.mjs +0 -36
  166. package/tools/broadcasts/contacts/remove-broadcasts-contacts.mjs.map +0 -1
  167. package/tools/broadcasts/create-broadcasts.d.mts +0 -51
  168. package/tools/broadcasts/create-broadcasts.d.mts.map +0 -1
  169. package/tools/broadcasts/create-broadcasts.d.ts +0 -51
  170. package/tools/broadcasts/create-broadcasts.d.ts.map +0 -1
  171. package/tools/broadcasts/create-broadcasts.js +0 -134
  172. package/tools/broadcasts/create-broadcasts.js.map +0 -1
  173. package/tools/broadcasts/create-broadcasts.mjs +0 -127
  174. package/tools/broadcasts/create-broadcasts.mjs.map +0 -1
  175. package/tools/broadcasts/delete-broadcasts.d.mts +0 -51
  176. package/tools/broadcasts/delete-broadcasts.d.mts.map +0 -1
  177. package/tools/broadcasts/delete-broadcasts.d.ts +0 -51
  178. package/tools/broadcasts/delete-broadcasts.d.ts.map +0 -1
  179. package/tools/broadcasts/delete-broadcasts.js +0 -37
  180. package/tools/broadcasts/delete-broadcasts.js.map +0 -1
  181. package/tools/broadcasts/delete-broadcasts.mjs +0 -33
  182. package/tools/broadcasts/delete-broadcasts.mjs.map +0 -1
  183. package/tools/broadcasts/list-broadcasts.d.mts +0 -51
  184. package/tools/broadcasts/list-broadcasts.d.mts.map +0 -1
  185. package/tools/broadcasts/list-broadcasts.d.ts +0 -51
  186. package/tools/broadcasts/list-broadcasts.d.ts.map +0 -1
  187. package/tools/broadcasts/list-broadcasts.js +0 -68
  188. package/tools/broadcasts/list-broadcasts.js.map +0 -1
  189. package/tools/broadcasts/list-broadcasts.mjs +0 -61
  190. package/tools/broadcasts/list-broadcasts.mjs.map +0 -1
  191. package/tools/broadcasts/progress-broadcasts.d.mts +0 -51
  192. package/tools/broadcasts/progress-broadcasts.d.mts.map +0 -1
  193. package/tools/broadcasts/progress-broadcasts.d.ts +0 -51
  194. package/tools/broadcasts/progress-broadcasts.d.ts.map +0 -1
  195. package/tools/broadcasts/progress-broadcasts.js +0 -54
  196. package/tools/broadcasts/progress-broadcasts.js.map +0 -1
  197. package/tools/broadcasts/progress-broadcasts.mjs +0 -47
  198. package/tools/broadcasts/progress-broadcasts.mjs.map +0 -1
  199. package/tools/broadcasts/retrieve-broadcasts.d.mts +0 -51
  200. package/tools/broadcasts/retrieve-broadcasts.d.mts.map +0 -1
  201. package/tools/broadcasts/retrieve-broadcasts.d.ts +0 -51
  202. package/tools/broadcasts/retrieve-broadcasts.d.ts.map +0 -1
  203. package/tools/broadcasts/retrieve-broadcasts.js +0 -54
  204. package/tools/broadcasts/retrieve-broadcasts.js.map +0 -1
  205. package/tools/broadcasts/retrieve-broadcasts.mjs +0 -47
  206. package/tools/broadcasts/retrieve-broadcasts.mjs.map +0 -1
  207. package/tools/broadcasts/send-broadcasts.d.mts +0 -51
  208. package/tools/broadcasts/send-broadcasts.d.mts.map +0 -1
  209. package/tools/broadcasts/send-broadcasts.d.ts +0 -51
  210. package/tools/broadcasts/send-broadcasts.d.ts.map +0 -1
  211. package/tools/broadcasts/send-broadcasts.js +0 -57
  212. package/tools/broadcasts/send-broadcasts.js.map +0 -1
  213. package/tools/broadcasts/send-broadcasts.mjs +0 -50
  214. package/tools/broadcasts/send-broadcasts.mjs.map +0 -1
  215. package/tools/broadcasts/update-broadcasts.d.mts +0 -51
  216. package/tools/broadcasts/update-broadcasts.d.mts.map +0 -1
  217. package/tools/broadcasts/update-broadcasts.d.ts +0 -51
  218. package/tools/broadcasts/update-broadcasts.d.ts.map +0 -1
  219. package/tools/broadcasts/update-broadcasts.js +0 -104
  220. package/tools/broadcasts/update-broadcasts.js.map +0 -1
  221. package/tools/broadcasts/update-broadcasts.mjs +0 -97
  222. package/tools/broadcasts/update-broadcasts.mjs.map +0 -1
  223. package/tools/contacts/list-contacts.d.mts +0 -51
  224. package/tools/contacts/list-contacts.d.mts.map +0 -1
  225. package/tools/contacts/list-contacts.d.ts +0 -51
  226. package/tools/contacts/list-contacts.d.ts.map +0 -1
  227. package/tools/contacts/list-contacts.js +0 -61
  228. package/tools/contacts/list-contacts.js.map +0 -1
  229. package/tools/contacts/list-contacts.mjs +0 -54
  230. package/tools/contacts/list-contacts.mjs.map +0 -1
  231. package/tools/contacts/retrieve-by-phone-contacts.d.mts +0 -51
  232. package/tools/contacts/retrieve-by-phone-contacts.d.mts.map +0 -1
  233. package/tools/contacts/retrieve-by-phone-contacts.d.ts +0 -51
  234. package/tools/contacts/retrieve-by-phone-contacts.d.ts.map +0 -1
  235. package/tools/contacts/retrieve-by-phone-contacts.js +0 -54
  236. package/tools/contacts/retrieve-by-phone-contacts.js.map +0 -1
  237. package/tools/contacts/retrieve-by-phone-contacts.mjs +0 -47
  238. package/tools/contacts/retrieve-by-phone-contacts.mjs.map +0 -1
  239. package/tools/contacts/retrieve-contacts.d.mts +0 -51
  240. package/tools/contacts/retrieve-contacts.d.mts.map +0 -1
  241. package/tools/contacts/retrieve-contacts.d.ts +0 -51
  242. package/tools/contacts/retrieve-contacts.d.ts.map +0 -1
  243. package/tools/contacts/retrieve-contacts.js +0 -54
  244. package/tools/contacts/retrieve-contacts.js.map +0 -1
  245. package/tools/contacts/retrieve-contacts.mjs +0 -47
  246. package/tools/contacts/retrieve-contacts.mjs.map +0 -1
  247. package/tools/contacts/update-contacts.d.mts +0 -51
  248. package/tools/contacts/update-contacts.d.mts.map +0 -1
  249. package/tools/contacts/update-contacts.d.ts +0 -51
  250. package/tools/contacts/update-contacts.d.ts.map +0 -1
  251. package/tools/contacts/update-contacts.js +0 -61
  252. package/tools/contacts/update-contacts.js.map +0 -1
  253. package/tools/contacts/update-contacts.mjs +0 -54
  254. package/tools/contacts/update-contacts.mjs.map +0 -1
  255. package/tools/index.d.mts +0 -10
  256. package/tools/index.d.mts.map +0 -1
  257. package/tools/index.d.ts +0 -10
  258. package/tools/index.d.ts.map +0 -1
  259. package/tools/index.js +0 -133
  260. package/tools/index.js.map +0 -1
  261. package/tools/index.mjs +0 -126
  262. package/tools/index.mjs.map +0 -1
  263. package/tools/introspect/validate-phone-introspect.d.mts +0 -51
  264. package/tools/introspect/validate-phone-introspect.d.mts.map +0 -1
  265. package/tools/introspect/validate-phone-introspect.d.ts +0 -51
  266. package/tools/introspect/validate-phone-introspect.d.ts.map +0 -1
  267. package/tools/introspect/validate-phone-introspect.js +0 -52
  268. package/tools/introspect/validate-phone-introspect.js.map +0 -1
  269. package/tools/introspect/validate-phone-introspect.mjs +0 -45
  270. package/tools/introspect/validate-phone-introspect.mjs.map +0 -1
  271. package/tools/messages/list-messages.d.mts +0 -51
  272. package/tools/messages/list-messages.d.mts.map +0 -1
  273. package/tools/messages/list-messages.d.ts +0 -51
  274. package/tools/messages/list-messages.d.ts.map +0 -1
  275. package/tools/messages/list-messages.js +0 -78
  276. package/tools/messages/list-messages.js.map +0 -1
  277. package/tools/messages/list-messages.mjs +0 -71
  278. package/tools/messages/list-messages.mjs.map +0 -1
  279. package/tools/messages/react-messages.d.mts +0 -51
  280. package/tools/messages/react-messages.d.mts.map +0 -1
  281. package/tools/messages/react-messages.d.ts +0 -51
  282. package/tools/messages/react-messages.d.ts.map +0 -1
  283. package/tools/messages/react-messages.js +0 -59
  284. package/tools/messages/react-messages.js.map +0 -1
  285. package/tools/messages/react-messages.mjs +0 -52
  286. package/tools/messages/react-messages.mjs.map +0 -1
  287. package/tools/messages/retrieve-messages.d.mts +0 -51
  288. package/tools/messages/retrieve-messages.d.mts.map +0 -1
  289. package/tools/messages/retrieve-messages.d.ts +0 -51
  290. package/tools/messages/retrieve-messages.d.ts.map +0 -1
  291. package/tools/messages/retrieve-messages.js +0 -54
  292. package/tools/messages/retrieve-messages.js.map +0 -1
  293. package/tools/messages/retrieve-messages.mjs +0 -47
  294. package/tools/messages/retrieve-messages.mjs.map +0 -1
  295. package/tools/messages/send-messages.d.mts +0 -51
  296. package/tools/messages/send-messages.d.mts.map +0 -1
  297. package/tools/messages/send-messages.d.ts +0 -51
  298. package/tools/messages/send-messages.d.ts.map +0 -1
  299. package/tools/messages/send-messages.js +0 -233
  300. package/tools/messages/send-messages.js.map +0 -1
  301. package/tools/messages/send-messages.mjs +0 -226
  302. package/tools/messages/send-messages.mjs.map +0 -1
  303. package/tools/phone-numbers/list-phone-numbers.d.mts +0 -51
  304. package/tools/phone-numbers/list-phone-numbers.d.mts.map +0 -1
  305. package/tools/phone-numbers/list-phone-numbers.d.ts +0 -51
  306. package/tools/phone-numbers/list-phone-numbers.d.ts.map +0 -1
  307. package/tools/phone-numbers/list-phone-numbers.js +0 -68
  308. package/tools/phone-numbers/list-phone-numbers.js.map +0 -1
  309. package/tools/phone-numbers/list-phone-numbers.mjs +0 -61
  310. package/tools/phone-numbers/list-phone-numbers.mjs.map +0 -1
  311. package/tools/phone-numbers/purchase-phone-numbers.d.mts +0 -51
  312. package/tools/phone-numbers/purchase-phone-numbers.d.mts.map +0 -1
  313. package/tools/phone-numbers/purchase-phone-numbers.d.ts +0 -51
  314. package/tools/phone-numbers/purchase-phone-numbers.d.ts.map +0 -1
  315. package/tools/phone-numbers/purchase-phone-numbers.js +0 -57
  316. package/tools/phone-numbers/purchase-phone-numbers.js.map +0 -1
  317. package/tools/phone-numbers/purchase-phone-numbers.mjs +0 -50
  318. package/tools/phone-numbers/purchase-phone-numbers.mjs.map +0 -1
  319. package/tools/phone-numbers/release-phone-numbers.d.mts +0 -51
  320. package/tools/phone-numbers/release-phone-numbers.d.mts.map +0 -1
  321. package/tools/phone-numbers/release-phone-numbers.d.ts +0 -51
  322. package/tools/phone-numbers/release-phone-numbers.d.ts.map +0 -1
  323. package/tools/phone-numbers/release-phone-numbers.js +0 -37
  324. package/tools/phone-numbers/release-phone-numbers.js.map +0 -1
  325. package/tools/phone-numbers/release-phone-numbers.mjs +0 -33
  326. package/tools/phone-numbers/release-phone-numbers.mjs.map +0 -1
  327. package/tools/phone-numbers/retrieve-phone-numbers.d.mts +0 -51
  328. package/tools/phone-numbers/retrieve-phone-numbers.d.mts.map +0 -1
  329. package/tools/phone-numbers/retrieve-phone-numbers.d.ts +0 -51
  330. package/tools/phone-numbers/retrieve-phone-numbers.d.ts.map +0 -1
  331. package/tools/phone-numbers/retrieve-phone-numbers.js +0 -54
  332. package/tools/phone-numbers/retrieve-phone-numbers.js.map +0 -1
  333. package/tools/phone-numbers/retrieve-phone-numbers.mjs +0 -47
  334. package/tools/phone-numbers/retrieve-phone-numbers.mjs.map +0 -1
  335. package/tools/phone-numbers/search-available-phone-numbers.d.mts +0 -51
  336. package/tools/phone-numbers/search-available-phone-numbers.d.mts.map +0 -1
  337. package/tools/phone-numbers/search-available-phone-numbers.d.ts +0 -51
  338. package/tools/phone-numbers/search-available-phone-numbers.d.ts.map +0 -1
  339. package/tools/phone-numbers/search-available-phone-numbers.js +0 -72
  340. package/tools/phone-numbers/search-available-phone-numbers.js.map +0 -1
  341. package/tools/phone-numbers/search-available-phone-numbers.mjs +0 -65
  342. package/tools/phone-numbers/search-available-phone-numbers.mjs.map +0 -1
  343. package/tools/phone-numbers/update-phone-numbers.d.mts +0 -51
  344. package/tools/phone-numbers/update-phone-numbers.d.mts.map +0 -1
  345. package/tools/phone-numbers/update-phone-numbers.d.ts +0 -51
  346. package/tools/phone-numbers/update-phone-numbers.d.ts.map +0 -1
  347. package/tools/phone-numbers/update-phone-numbers.js +0 -60
  348. package/tools/phone-numbers/update-phone-numbers.js.map +0 -1
  349. package/tools/phone-numbers/update-phone-numbers.mjs +0 -53
  350. package/tools/phone-numbers/update-phone-numbers.mjs.map +0 -1
  351. package/tools/senders/create-senders.d.mts +0 -51
  352. package/tools/senders/create-senders.d.mts.map +0 -1
  353. package/tools/senders/create-senders.d.ts +0 -51
  354. package/tools/senders/create-senders.d.ts.map +0 -1
  355. package/tools/senders/create-senders.js +0 -85
  356. package/tools/senders/create-senders.js.map +0 -1
  357. package/tools/senders/create-senders.mjs +0 -78
  358. package/tools/senders/create-senders.mjs.map +0 -1
  359. package/tools/senders/delete-senders.d.mts +0 -51
  360. package/tools/senders/delete-senders.d.mts.map +0 -1
  361. package/tools/senders/delete-senders.d.ts +0 -51
  362. package/tools/senders/delete-senders.d.ts.map +0 -1
  363. package/tools/senders/delete-senders.js +0 -37
  364. package/tools/senders/delete-senders.js.map +0 -1
  365. package/tools/senders/delete-senders.mjs +0 -33
  366. package/tools/senders/delete-senders.mjs.map +0 -1
  367. package/tools/senders/get-profile-senders.d.mts +0 -51
  368. package/tools/senders/get-profile-senders.d.mts.map +0 -1
  369. package/tools/senders/get-profile-senders.d.ts +0 -51
  370. package/tools/senders/get-profile-senders.d.ts.map +0 -1
  371. package/tools/senders/get-profile-senders.js +0 -54
  372. package/tools/senders/get-profile-senders.js.map +0 -1
  373. package/tools/senders/get-profile-senders.mjs +0 -47
  374. package/tools/senders/get-profile-senders.mjs.map +0 -1
  375. package/tools/senders/list-senders.d.mts +0 -51
  376. package/tools/senders/list-senders.d.mts.map +0 -1
  377. package/tools/senders/list-senders.d.ts +0 -51
  378. package/tools/senders/list-senders.d.ts.map +0 -1
  379. package/tools/senders/list-senders.js +0 -58
  380. package/tools/senders/list-senders.js.map +0 -1
  381. package/tools/senders/list-senders.mjs +0 -51
  382. package/tools/senders/list-senders.mjs.map +0 -1
  383. package/tools/senders/regenerate-webhook-secret-senders.d.mts +0 -51
  384. package/tools/senders/regenerate-webhook-secret-senders.d.mts.map +0 -1
  385. package/tools/senders/regenerate-webhook-secret-senders.d.ts +0 -51
  386. package/tools/senders/regenerate-webhook-secret-senders.d.ts.map +0 -1
  387. package/tools/senders/regenerate-webhook-secret-senders.js +0 -52
  388. package/tools/senders/regenerate-webhook-secret-senders.js.map +0 -1
  389. package/tools/senders/regenerate-webhook-secret-senders.mjs +0 -45
  390. package/tools/senders/regenerate-webhook-secret-senders.mjs.map +0 -1
  391. package/tools/senders/retrieve-senders.d.mts +0 -51
  392. package/tools/senders/retrieve-senders.d.mts.map +0 -1
  393. package/tools/senders/retrieve-senders.d.ts +0 -51
  394. package/tools/senders/retrieve-senders.d.ts.map +0 -1
  395. package/tools/senders/retrieve-senders.js +0 -54
  396. package/tools/senders/retrieve-senders.js.map +0 -1
  397. package/tools/senders/retrieve-senders.mjs +0 -47
  398. package/tools/senders/retrieve-senders.mjs.map +0 -1
  399. package/tools/senders/update-profile-senders.d.mts +0 -51
  400. package/tools/senders/update-profile-senders.d.mts.map +0 -1
  401. package/tools/senders/update-profile-senders.d.ts +0 -51
  402. package/tools/senders/update-profile-senders.d.ts.map +0 -1
  403. package/tools/senders/update-profile-senders.js +0 -105
  404. package/tools/senders/update-profile-senders.js.map +0 -1
  405. package/tools/senders/update-profile-senders.mjs +0 -98
  406. package/tools/senders/update-profile-senders.mjs.map +0 -1
  407. package/tools/senders/update-senders.d.mts +0 -51
  408. package/tools/senders/update-senders.d.mts.map +0 -1
  409. package/tools/senders/update-senders.d.ts +0 -51
  410. package/tools/senders/update-senders.d.ts.map +0 -1
  411. package/tools/senders/update-senders.js +0 -89
  412. package/tools/senders/update-senders.js.map +0 -1
  413. package/tools/senders/update-senders.mjs +0 -82
  414. package/tools/senders/update-senders.mjs.map +0 -1
  415. package/tools/senders/upload-profile-picture-senders.d.mts +0 -51
  416. package/tools/senders/upload-profile-picture-senders.d.mts.map +0 -1
  417. package/tools/senders/upload-profile-picture-senders.d.ts +0 -51
  418. package/tools/senders/upload-profile-picture-senders.d.ts.map +0 -1
  419. package/tools/senders/upload-profile-picture-senders.js +0 -61
  420. package/tools/senders/upload-profile-picture-senders.js.map +0 -1
  421. package/tools/senders/upload-profile-picture-senders.mjs +0 -54
  422. package/tools/senders/upload-profile-picture-senders.mjs.map +0 -1
  423. package/tools/templates/create-templates.d.mts +0 -51
  424. package/tools/templates/create-templates.d.mts.map +0 -1
  425. package/tools/templates/create-templates.d.ts +0 -51
  426. package/tools/templates/create-templates.d.ts.map +0 -1
  427. package/tools/templates/create-templates.js +0 -74
  428. package/tools/templates/create-templates.js.map +0 -1
  429. package/tools/templates/create-templates.mjs +0 -67
  430. package/tools/templates/create-templates.mjs.map +0 -1
  431. package/tools/templates/delete-templates.d.mts +0 -51
  432. package/tools/templates/delete-templates.d.mts.map +0 -1
  433. package/tools/templates/delete-templates.d.ts +0 -51
  434. package/tools/templates/delete-templates.d.ts.map +0 -1
  435. package/tools/templates/delete-templates.js +0 -37
  436. package/tools/templates/delete-templates.js.map +0 -1
  437. package/tools/templates/delete-templates.mjs +0 -33
  438. package/tools/templates/delete-templates.mjs.map +0 -1
  439. package/tools/templates/list-templates.d.mts +0 -51
  440. package/tools/templates/list-templates.d.mts.map +0 -1
  441. package/tools/templates/list-templates.d.ts +0 -51
  442. package/tools/templates/list-templates.d.ts.map +0 -1
  443. package/tools/templates/list-templates.js +0 -58
  444. package/tools/templates/list-templates.js.map +0 -1
  445. package/tools/templates/list-templates.mjs +0 -51
  446. package/tools/templates/list-templates.mjs.map +0 -1
  447. package/tools/templates/retrieve-templates.d.mts +0 -51
  448. package/tools/templates/retrieve-templates.d.mts.map +0 -1
  449. package/tools/templates/retrieve-templates.d.ts +0 -51
  450. package/tools/templates/retrieve-templates.d.ts.map +0 -1
  451. package/tools/templates/retrieve-templates.js +0 -54
  452. package/tools/templates/retrieve-templates.js.map +0 -1
  453. package/tools/templates/retrieve-templates.mjs +0 -47
  454. package/tools/templates/retrieve-templates.mjs.map +0 -1
  455. package/tools/templates/submit-templates.d.mts +0 -51
  456. package/tools/templates/submit-templates.d.mts.map +0 -1
  457. package/tools/templates/submit-templates.d.ts +0 -51
  458. package/tools/templates/submit-templates.d.ts.map +0 -1
  459. package/tools/templates/submit-templates.js +0 -66
  460. package/tools/templates/submit-templates.js.map +0 -1
  461. package/tools/templates/submit-templates.mjs +0 -59
  462. package/tools/templates/submit-templates.mjs.map +0 -1
  463. package/tools/types.d.mts.map +0 -1
  464. package/tools/types.d.ts.map +0 -1
  465. package/tools/types.js.map +0 -1
  466. package/tools/types.mjs.map +0 -1
  467. package/tools.d.mts +0 -2
  468. package/tools.d.mts.map +0 -1
  469. package/tools.d.ts +0 -2
  470. package/tools.d.ts.map +0 -1
  471. package/tools.js +0 -18
  472. package/tools.js.map +0 -1
  473. package/tools.mjs +0 -2
  474. package/tools.mjs.map +0 -1
  475. /package/{tools/types.js → types.js} +0 -0
  476. /package/{tools/types.mjs → types.mjs} +0 -0
@@ -1,54 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'senders',
11
- operation: 'write',
12
- tags: [],
13
- httpMethod: 'post',
14
- httpPath: '/v1/senders/{senderId}/webhook/secret',
15
- operationId: 'regenerateSenderWebhookSecret',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'regenerate_webhook_secret_senders',
20
- description:
21
- "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\nRegenerate the webhook secret for a sender. The old secret will be invalidated immediately.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/webhook_secret_response',\n $defs: {\n webhook_secret_response: {\n type: 'object',\n properties: {\n secret: {\n type: 'string',\n description: 'The new webhook secret.'\n }\n },\n required: [ 'secret'\n ]\n }\n }\n}\n```",
22
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- senderId: {
26
- type: 'string',
27
- },
28
- jq_filter: {
29
- type: 'string',
30
- title: 'jq Filter',
31
- description:
32
- '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/).',
33
- },
34
- },
35
- required: ['senderId'],
36
- },
37
- annotations: {},
38
- };
39
-
40
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
41
- const { senderId, jq_filter, ...body } = args as any;
42
- try {
43
- return asTextContentResult(
44
- await maybeFilter(jq_filter, await client.senders.regenerateWebhookSecret(senderId)),
45
- );
46
- } catch (error) {
47
- if (error instanceof Zavudev.APIError || isJqError(error)) {
48
- return asErrorResult(error.message);
49
- }
50
- throw error;
51
- }
52
- };
53
-
54
- export default { metadata, tool, handler };
@@ -1,54 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'senders',
11
- operation: 'read',
12
- tags: [],
13
- httpMethod: 'get',
14
- httpPath: '/v1/senders/{senderId}',
15
- operationId: 'getSender',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'retrieve_senders',
20
- description:
21
- "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\nGet 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
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- senderId: {
26
- type: 'string',
27
- },
28
- jq_filter: {
29
- type: 'string',
30
- title: 'jq Filter',
31
- description:
32
- '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/).',
33
- },
34
- },
35
- required: ['senderId'],
36
- },
37
- annotations: {
38
- readOnlyHint: true,
39
- },
40
- };
41
-
42
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
43
- const { senderId, jq_filter, ...body } = args as any;
44
- try {
45
- return asTextContentResult(await maybeFilter(jq_filter, await client.senders.retrieve(senderId)));
46
- } catch (error) {
47
- if (error instanceof Zavudev.APIError || isJqError(error)) {
48
- return asErrorResult(error.message);
49
- }
50
- throw error;
51
- }
52
- };
53
-
54
- export default { metadata, tool, handler };
@@ -1,107 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'senders',
11
- operation: 'write',
12
- tags: [],
13
- httpMethod: 'patch',
14
- httpPath: '/v1/senders/{senderId}/profile',
15
- operationId: 'updateSenderProfile',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'update_profile_senders',
20
- description:
21
- "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:
58
- '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/).',
59
- },
60
- },
61
- required: ['senderId'],
62
- $defs: {
63
- whatsapp_business_profile_vertical: {
64
- type: 'string',
65
- description: 'Business category for WhatsApp Business profile.',
66
- enum: [
67
- 'UNDEFINED',
68
- 'OTHER',
69
- 'AUTO',
70
- 'BEAUTY',
71
- 'APPAREL',
72
- 'EDU',
73
- 'ENTERTAIN',
74
- 'EVENT_PLAN',
75
- 'FINANCE',
76
- 'GROCERY',
77
- 'GOVT',
78
- 'HOTEL',
79
- 'HEALTH',
80
- 'NONPROFIT',
81
- 'PROF_SERVICES',
82
- 'RETAIL',
83
- 'TRAVEL',
84
- 'RESTAURANT',
85
- 'NOT_A_BIZ',
86
- ],
87
- },
88
- },
89
- },
90
- annotations: {},
91
- };
92
-
93
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
94
- const { senderId, jq_filter, ...body } = args as any;
95
- try {
96
- return asTextContentResult(
97
- await maybeFilter(jq_filter, await client.senders.updateProfile(senderId, body)),
98
- );
99
- } catch (error) {
100
- if (error instanceof Zavudev.APIError || isJqError(error)) {
101
- return asErrorResult(error.message);
102
- }
103
- throw error;
104
- }
105
- };
106
-
107
- export default { metadata, tool, handler };
@@ -1,90 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'senders',
11
- operation: 'write',
12
- tags: [],
13
- httpMethod: 'patch',
14
- httpPath: '/v1/senders/{senderId}',
15
- operationId: 'updateSender',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'update_senders',
20
- description:
21
- "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
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- senderId: {
26
- type: 'string',
27
- },
28
- name: {
29
- type: 'string',
30
- },
31
- setAsDefault: {
32
- type: 'boolean',
33
- },
34
- webhookActive: {
35
- type: 'boolean',
36
- description: 'Whether the webhook is active.',
37
- },
38
- webhookEvents: {
39
- type: 'array',
40
- description: 'Events to subscribe to.',
41
- items: {
42
- $ref: '#/$defs/webhook_event',
43
- },
44
- },
45
- webhookUrl: {
46
- type: 'string',
47
- description: 'HTTPS URL for webhook events. Set to null to remove webhook.',
48
- },
49
- jq_filter: {
50
- type: 'string',
51
- title: 'jq Filter',
52
- description:
53
- '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/).',
54
- },
55
- },
56
- required: ['senderId'],
57
- $defs: {
58
- webhook_event: {
59
- type: 'string',
60
- description:
61
- "Type of event that triggers the webhook. Note: Reactions are delivered as message.inbound with messageType='reaction'.",
62
- enum: [
63
- 'message.queued',
64
- 'message.sent',
65
- 'message.delivered',
66
- 'message.failed',
67
- 'message.inbound',
68
- 'message.unsupported',
69
- 'conversation.new',
70
- 'template.status_changed',
71
- ],
72
- },
73
- },
74
- },
75
- annotations: {},
76
- };
77
-
78
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
79
- const { senderId, jq_filter, ...body } = args as any;
80
- try {
81
- return asTextContentResult(await maybeFilter(jq_filter, await client.senders.update(senderId, body)));
82
- } catch (error) {
83
- if (error instanceof Zavudev.APIError || isJqError(error)) {
84
- return asErrorResult(error.message);
85
- }
86
- throw error;
87
- }
88
- };
89
-
90
- export default { metadata, tool, handler };
@@ -1,63 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'senders',
11
- operation: 'write',
12
- tags: [],
13
- httpMethod: 'post',
14
- httpPath: '/v1/senders/{senderId}/profile/picture',
15
- operationId: 'uploadSenderProfilePicture',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'upload_profile_picture_senders',
20
- description:
21
- "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:
41
- '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/).',
42
- },
43
- },
44
- required: ['senderId', 'imageUrl', 'mimeType'],
45
- },
46
- annotations: {},
47
- };
48
-
49
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
50
- const { senderId, jq_filter, ...body } = args as any;
51
- try {
52
- return asTextContentResult(
53
- await maybeFilter(jq_filter, await client.senders.uploadProfilePicture(senderId, body)),
54
- );
55
- } catch (error) {
56
- if (error instanceof Zavudev.APIError || isJqError(error)) {
57
- return asErrorResult(error.message);
58
- }
59
- throw error;
60
- }
61
- };
62
-
63
- export default { metadata, tool, handler };
@@ -1,74 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'templates',
11
- operation: 'write',
12
- tags: [],
13
- httpMethod: 'post',
14
- httpPath: '/v1/templates',
15
- operationId: 'createTemplate',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'create_templates',
20
- description:
21
- "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\nCreate a WhatsApp message template. Note: Templates must be approved by Meta before use.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/template',\n $defs: {\n template: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n body: {\n type: 'string',\n description: 'Template body with variables: {{1}}, {{2}}, etc.'\n },\n category: {\n $ref: '#/$defs/whatsapp_category'\n },\n language: {\n type: 'string',\n description: 'Language code.'\n },\n name: {\n type: 'string',\n description: 'Template name (must match WhatsApp template name).'\n },\n buttons: {\n type: 'array',\n description: 'Template buttons.',\n items: {\n type: 'object',\n properties: {\n phoneNumber: {\n type: 'string'\n },\n text: {\n type: 'string'\n },\n type: {\n type: 'string'\n },\n url: {\n type: 'string'\n }\n }\n }\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n footer: {\n type: 'string',\n description: 'Footer text for the template.'\n },\n headerContent: {\n type: 'string',\n description: 'Header content (text or media URL).'\n },\n headerType: {\n type: 'string',\n description: 'Type of header (text, image, video, document).'\n },\n status: {\n type: 'string',\n enum: [ 'draft',\n 'pending',\n 'approved',\n 'rejected'\n ]\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n variables: {\n type: 'array',\n description: 'List of variable names for documentation.',\n items: {\n type: 'string'\n }\n },\n whatsapp: {\n type: 'object',\n description: 'WhatsApp-specific template information.',\n properties: {\n namespace: {\n type: 'string',\n description: 'WhatsApp Business Account namespace.'\n },\n status: {\n type: 'string',\n description: 'WhatsApp approval status.'\n },\n templateName: {\n type: 'string',\n description: 'WhatsApp template name.'\n }\n }\n }\n },\n required: [ 'id',\n 'body',\n 'category',\n 'language',\n 'name'\n ]\n },\n whatsapp_category: {\n type: 'string',\n description: 'WhatsApp template category.',\n enum: [ 'UTILITY',\n 'MARKETING',\n 'AUTHENTICATION'\n ]\n }\n }\n}\n```",
22
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- body: {
26
- type: 'string',
27
- },
28
- language: {
29
- type: 'string',
30
- },
31
- name: {
32
- type: 'string',
33
- },
34
- variables: {
35
- type: 'array',
36
- items: {
37
- type: 'string',
38
- },
39
- },
40
- whatsappCategory: {
41
- $ref: '#/$defs/whatsapp_category',
42
- },
43
- jq_filter: {
44
- type: 'string',
45
- title: 'jq Filter',
46
- description:
47
- '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/).',
48
- },
49
- },
50
- required: ['body', 'language', 'name'],
51
- $defs: {
52
- whatsapp_category: {
53
- type: 'string',
54
- description: 'WhatsApp template category.',
55
- enum: ['UTILITY', 'MARKETING', 'AUTHENTICATION'],
56
- },
57
- },
58
- },
59
- annotations: {},
60
- };
61
-
62
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
63
- const { jq_filter, ...body } = args as any;
64
- try {
65
- return asTextContentResult(await maybeFilter(jq_filter, await client.templates.create(body)));
66
- } catch (error) {
67
- if (error instanceof Zavudev.APIError || isJqError(error)) {
68
- return asErrorResult(error.message);
69
- }
70
- throw error;
71
- }
72
- };
73
-
74
- export default { metadata, tool, handler };
@@ -1,40 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { Metadata, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
4
-
5
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
6
- import Zavudev from '@zavudev/sdk';
7
-
8
- export const metadata: Metadata = {
9
- resource: 'templates',
10
- operation: 'write',
11
- tags: [],
12
- httpMethod: 'delete',
13
- httpPath: '/v1/templates/{templateId}',
14
- operationId: 'deleteTemplate',
15
- };
16
-
17
- export const tool: Tool = {
18
- name: 'delete_templates',
19
- description: 'Delete template',
20
- inputSchema: {
21
- type: 'object',
22
- properties: {
23
- templateId: {
24
- type: 'string',
25
- },
26
- },
27
- required: ['templateId'],
28
- },
29
- annotations: {
30
- idempotentHint: true,
31
- },
32
- };
33
-
34
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
35
- const { templateId, ...body } = args as any;
36
- const response = await client.templates.delete(templateId).asResponse();
37
- return asTextContentResult(await response.text());
38
- };
39
-
40
- export default { metadata, tool, handler };
@@ -1,58 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'templates',
11
- operation: 'read',
12
- tags: [],
13
- httpMethod: 'get',
14
- httpPath: '/v1/templates',
15
- operationId: 'listTemplates',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'list_templates',
20
- description:
21
- "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\nList WhatsApp message templates for this project.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n items: {\n type: 'array',\n items: {\n $ref: '#/$defs/template'\n }\n },\n nextCursor: {\n type: 'string'\n }\n },\n required: [ 'items'\n ],\n $defs: {\n template: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n body: {\n type: 'string',\n description: 'Template body with variables: {{1}}, {{2}}, etc.'\n },\n category: {\n $ref: '#/$defs/whatsapp_category'\n },\n language: {\n type: 'string',\n description: 'Language code.'\n },\n name: {\n type: 'string',\n description: 'Template name (must match WhatsApp template name).'\n },\n buttons: {\n type: 'array',\n description: 'Template buttons.',\n items: {\n type: 'object',\n properties: {\n phoneNumber: {\n type: 'string'\n },\n text: {\n type: 'string'\n },\n type: {\n type: 'string'\n },\n url: {\n type: 'string'\n }\n }\n }\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n footer: {\n type: 'string',\n description: 'Footer text for the template.'\n },\n headerContent: {\n type: 'string',\n description: 'Header content (text or media URL).'\n },\n headerType: {\n type: 'string',\n description: 'Type of header (text, image, video, document).'\n },\n status: {\n type: 'string',\n enum: [ 'draft',\n 'pending',\n 'approved',\n 'rejected'\n ]\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n variables: {\n type: 'array',\n description: 'List of variable names for documentation.',\n items: {\n type: 'string'\n }\n },\n whatsapp: {\n type: 'object',\n description: 'WhatsApp-specific template information.',\n properties: {\n namespace: {\n type: 'string',\n description: 'WhatsApp Business Account namespace.'\n },\n status: {\n type: 'string',\n description: 'WhatsApp approval status.'\n },\n templateName: {\n type: 'string',\n description: 'WhatsApp template name.'\n }\n }\n }\n },\n required: [ 'id',\n 'body',\n 'category',\n 'language',\n 'name'\n ]\n },\n whatsapp_category: {\n type: 'string',\n description: 'WhatsApp template category.',\n enum: [ 'UTILITY',\n 'MARKETING',\n 'AUTHENTICATION'\n ]\n }\n }\n}\n```",
22
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- cursor: {
26
- type: 'string',
27
- },
28
- limit: {
29
- type: 'integer',
30
- },
31
- jq_filter: {
32
- type: 'string',
33
- title: 'jq Filter',
34
- description:
35
- '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/).',
36
- },
37
- },
38
- required: [],
39
- },
40
- annotations: {
41
- readOnlyHint: true,
42
- },
43
- };
44
-
45
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
46
- const { jq_filter, ...body } = args as any;
47
- const response = await client.templates.list(body).asResponse();
48
- try {
49
- return asTextContentResult(await maybeFilter(jq_filter, await response.json()));
50
- } catch (error) {
51
- if (error instanceof Zavudev.APIError || isJqError(error)) {
52
- return asErrorResult(error.message);
53
- }
54
- throw error;
55
- }
56
- };
57
-
58
- export default { metadata, tool, handler };
@@ -1,54 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- import { isJqError, maybeFilter } from '@zavudev/sdk-mcp/filtering';
4
- import { Metadata, asErrorResult, asTextContentResult } from '@zavudev/sdk-mcp/tools/types';
5
-
6
- import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
- import Zavudev from '@zavudev/sdk';
8
-
9
- export const metadata: Metadata = {
10
- resource: 'templates',
11
- operation: 'read',
12
- tags: [],
13
- httpMethod: 'get',
14
- httpPath: '/v1/templates/{templateId}',
15
- operationId: 'getTemplate',
16
- };
17
-
18
- export const tool: Tool = {
19
- name: 'retrieve_templates',
20
- description:
21
- "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\nGet template\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/template',\n $defs: {\n template: {\n type: 'object',\n properties: {\n id: {\n type: 'string'\n },\n body: {\n type: 'string',\n description: 'Template body with variables: {{1}}, {{2}}, etc.'\n },\n category: {\n $ref: '#/$defs/whatsapp_category'\n },\n language: {\n type: 'string',\n description: 'Language code.'\n },\n name: {\n type: 'string',\n description: 'Template name (must match WhatsApp template name).'\n },\n buttons: {\n type: 'array',\n description: 'Template buttons.',\n items: {\n type: 'object',\n properties: {\n phoneNumber: {\n type: 'string'\n },\n text: {\n type: 'string'\n },\n type: {\n type: 'string'\n },\n url: {\n type: 'string'\n }\n }\n }\n },\n createdAt: {\n type: 'string',\n format: 'date-time'\n },\n footer: {\n type: 'string',\n description: 'Footer text for the template.'\n },\n headerContent: {\n type: 'string',\n description: 'Header content (text or media URL).'\n },\n headerType: {\n type: 'string',\n description: 'Type of header (text, image, video, document).'\n },\n status: {\n type: 'string',\n enum: [ 'draft',\n 'pending',\n 'approved',\n 'rejected'\n ]\n },\n updatedAt: {\n type: 'string',\n format: 'date-time'\n },\n variables: {\n type: 'array',\n description: 'List of variable names for documentation.',\n items: {\n type: 'string'\n }\n },\n whatsapp: {\n type: 'object',\n description: 'WhatsApp-specific template information.',\n properties: {\n namespace: {\n type: 'string',\n description: 'WhatsApp Business Account namespace.'\n },\n status: {\n type: 'string',\n description: 'WhatsApp approval status.'\n },\n templateName: {\n type: 'string',\n description: 'WhatsApp template name.'\n }\n }\n }\n },\n required: [ 'id',\n 'body',\n 'category',\n 'language',\n 'name'\n ]\n },\n whatsapp_category: {\n type: 'string',\n description: 'WhatsApp template category.',\n enum: [ 'UTILITY',\n 'MARKETING',\n 'AUTHENTICATION'\n ]\n }\n }\n}\n```",
22
- inputSchema: {
23
- type: 'object',
24
- properties: {
25
- templateId: {
26
- type: 'string',
27
- },
28
- jq_filter: {
29
- type: 'string',
30
- title: 'jq Filter',
31
- description:
32
- '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/).',
33
- },
34
- },
35
- required: ['templateId'],
36
- },
37
- annotations: {
38
- readOnlyHint: true,
39
- },
40
- };
41
-
42
- export const handler = async (client: Zavudev, args: Record<string, unknown> | undefined) => {
43
- const { templateId, jq_filter, ...body } = args as any;
44
- try {
45
- return asTextContentResult(await maybeFilter(jq_filter, await client.templates.retrieve(templateId)));
46
- } catch (error) {
47
- if (error instanceof Zavudev.APIError || isJqError(error)) {
48
- return asErrorResult(error.message);
49
- }
50
- throw error;
51
- }
52
- };
53
-
54
- export default { metadata, tool, handler };