@mcp-z/mcp-gmail 1.0.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 (321) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +167 -0
  3. package/bin/server.js +5 -0
  4. package/dist/cjs/constants.d.cts +11 -0
  5. package/dist/cjs/constants.d.ts +11 -0
  6. package/dist/cjs/constants.js +39 -0
  7. package/dist/cjs/constants.js.map +1 -0
  8. package/dist/cjs/email/composition/rfc822-builder.d.cts +11 -0
  9. package/dist/cjs/email/composition/rfc822-builder.d.ts +11 -0
  10. package/dist/cjs/email/composition/rfc822-builder.js +24 -0
  11. package/dist/cjs/email/composition/rfc822-builder.js.map +1 -0
  12. package/dist/cjs/email/messages/fetch-message.d.cts +24 -0
  13. package/dist/cjs/email/messages/fetch-message.d.ts +24 -0
  14. package/dist/cjs/email/messages/fetch-message.js +367 -0
  15. package/dist/cjs/email/messages/fetch-message.js.map +1 -0
  16. package/dist/cjs/email/messages/messages.d.cts +7 -0
  17. package/dist/cjs/email/messages/messages.d.ts +7 -0
  18. package/dist/cjs/email/messages/messages.js +146 -0
  19. package/dist/cjs/email/messages/messages.js.map +1 -0
  20. package/dist/cjs/email/parsing/header-parsing.d.cts +1 -0
  21. package/dist/cjs/email/parsing/header-parsing.d.ts +1 -0
  22. package/dist/cjs/email/parsing/header-parsing.js +20 -0
  23. package/dist/cjs/email/parsing/header-parsing.js.map +1 -0
  24. package/dist/cjs/email/parsing/headers-utils.d.cts +5 -0
  25. package/dist/cjs/email/parsing/headers-utils.d.ts +5 -0
  26. package/dist/cjs/email/parsing/headers-utils.js +46 -0
  27. package/dist/cjs/email/parsing/headers-utils.js.map +1 -0
  28. package/dist/cjs/email/parsing/html-processing.d.cts +8 -0
  29. package/dist/cjs/email/parsing/html-processing.d.ts +8 -0
  30. package/dist/cjs/email/parsing/html-processing.js +72 -0
  31. package/dist/cjs/email/parsing/html-processing.js.map +1 -0
  32. package/dist/cjs/email/parsing/message-extraction.d.cts +2 -0
  33. package/dist/cjs/email/parsing/message-extraction.d.ts +2 -0
  34. package/dist/cjs/email/parsing/message-extraction.js +25 -0
  35. package/dist/cjs/email/parsing/message-extraction.js.map +1 -0
  36. package/dist/cjs/email/querying/execute-query.d.cts +17 -0
  37. package/dist/cjs/email/querying/execute-query.d.ts +17 -0
  38. package/dist/cjs/email/querying/execute-query.js +265 -0
  39. package/dist/cjs/email/querying/execute-query.js.map +1 -0
  40. package/dist/cjs/email/querying/pagination.d.cts +27 -0
  41. package/dist/cjs/email/querying/pagination.d.ts +27 -0
  42. package/dist/cjs/email/querying/pagination.js +533 -0
  43. package/dist/cjs/email/querying/pagination.js.map +1 -0
  44. package/dist/cjs/email/querying/query-builder.d.cts +47 -0
  45. package/dist/cjs/email/querying/query-builder.d.ts +47 -0
  46. package/dist/cjs/email/querying/query-builder.js +387 -0
  47. package/dist/cjs/email/querying/query-builder.js.map +1 -0
  48. package/dist/cjs/email/querying/search-execution.d.cts +29 -0
  49. package/dist/cjs/email/querying/search-execution.d.ts +29 -0
  50. package/dist/cjs/email/querying/search-execution.js +190 -0
  51. package/dist/cjs/email/querying/search-execution.js.map +1 -0
  52. package/dist/cjs/index.d.cts +8 -0
  53. package/dist/cjs/index.d.ts +8 -0
  54. package/dist/cjs/index.js +314 -0
  55. package/dist/cjs/index.js.map +1 -0
  56. package/dist/cjs/labels/gmail-labels.d.cts +2 -0
  57. package/dist/cjs/labels/gmail-labels.d.ts +2 -0
  58. package/dist/cjs/labels/gmail-labels.js +206 -0
  59. package/dist/cjs/labels/gmail-labels.js.map +1 -0
  60. package/dist/cjs/lib/base64-encoding.d.cts +2 -0
  61. package/dist/cjs/lib/base64-encoding.d.ts +2 -0
  62. package/dist/cjs/lib/base64-encoding.js +32 -0
  63. package/dist/cjs/lib/base64-encoding.js.map +1 -0
  64. package/dist/cjs/lib/create-store.d.cts +2 -0
  65. package/dist/cjs/lib/create-store.d.ts +2 -0
  66. package/dist/cjs/lib/create-store.js +166 -0
  67. package/dist/cjs/lib/create-store.js.map +1 -0
  68. package/dist/cjs/lib/date-conversion.d.cts +1 -0
  69. package/dist/cjs/lib/date-conversion.d.ts +1 -0
  70. package/dist/cjs/lib/date-conversion.js +16 -0
  71. package/dist/cjs/lib/date-conversion.js.map +1 -0
  72. package/dist/cjs/lib/messages-to-row.d.cts +61 -0
  73. package/dist/cjs/lib/messages-to-row.d.ts +61 -0
  74. package/dist/cjs/lib/messages-to-row.js +243 -0
  75. package/dist/cjs/lib/messages-to-row.js.map +1 -0
  76. package/dist/cjs/mcp/index.d.cts +3 -0
  77. package/dist/cjs/mcp/index.d.ts +3 -0
  78. package/dist/cjs/mcp/index.js +66 -0
  79. package/dist/cjs/mcp/index.js.map +1 -0
  80. package/dist/cjs/mcp/prompts/draft-email.d.cts +30 -0
  81. package/dist/cjs/mcp/prompts/draft-email.d.ts +30 -0
  82. package/dist/cjs/mcp/prompts/draft-email.js +184 -0
  83. package/dist/cjs/mcp/prompts/draft-email.js.map +1 -0
  84. package/dist/cjs/mcp/prompts/index.d.cts +2 -0
  85. package/dist/cjs/mcp/prompts/index.d.ts +2 -0
  86. package/dist/cjs/mcp/prompts/index.js +26 -0
  87. package/dist/cjs/mcp/prompts/index.js.map +1 -0
  88. package/dist/cjs/mcp/prompts/query-syntax.d.cts +19 -0
  89. package/dist/cjs/mcp/prompts/query-syntax.d.ts +19 -0
  90. package/dist/cjs/mcp/prompts/query-syntax.js +169 -0
  91. package/dist/cjs/mcp/prompts/query-syntax.js.map +1 -0
  92. package/dist/cjs/mcp/resources/email.d.cts +11 -0
  93. package/dist/cjs/mcp/resources/email.d.ts +11 -0
  94. package/dist/cjs/mcp/resources/email.js +256 -0
  95. package/dist/cjs/mcp/resources/email.js.map +1 -0
  96. package/dist/cjs/mcp/resources/index.d.cts +1 -0
  97. package/dist/cjs/mcp/resources/index.d.ts +1 -0
  98. package/dist/cjs/mcp/resources/index.js +17 -0
  99. package/dist/cjs/mcp/resources/index.js.map +1 -0
  100. package/dist/cjs/mcp/tools/categories-list.d.cts +58 -0
  101. package/dist/cjs/mcp/tools/categories-list.d.ts +58 -0
  102. package/dist/cjs/mcp/tools/categories-list.js +298 -0
  103. package/dist/cjs/mcp/tools/categories-list.js.map +1 -0
  104. package/dist/cjs/mcp/tools/index.d.cts +11 -0
  105. package/dist/cjs/mcp/tools/index.d.ts +11 -0
  106. package/dist/cjs/mcp/tools/index.js +62 -0
  107. package/dist/cjs/mcp/tools/index.js.map +1 -0
  108. package/dist/cjs/mcp/tools/label-add.d.cts +61 -0
  109. package/dist/cjs/mcp/tools/label-add.d.ts +61 -0
  110. package/dist/cjs/mcp/tools/label-add.js +280 -0
  111. package/dist/cjs/mcp/tools/label-add.js.map +1 -0
  112. package/dist/cjs/mcp/tools/label-delete.d.cts +71 -0
  113. package/dist/cjs/mcp/tools/label-delete.d.ts +71 -0
  114. package/dist/cjs/mcp/tools/label-delete.js +476 -0
  115. package/dist/cjs/mcp/tools/label-delete.js.map +1 -0
  116. package/dist/cjs/mcp/tools/labels-list.d.cts +75 -0
  117. package/dist/cjs/mcp/tools/labels-list.d.ts +75 -0
  118. package/dist/cjs/mcp/tools/labels-list.js +298 -0
  119. package/dist/cjs/mcp/tools/labels-list.js.map +1 -0
  120. package/dist/cjs/mcp/tools/message-get.d.cts +146 -0
  121. package/dist/cjs/mcp/tools/message-get.d.ts +146 -0
  122. package/dist/cjs/mcp/tools/message-get.js +317 -0
  123. package/dist/cjs/mcp/tools/message-get.js.map +1 -0
  124. package/dist/cjs/mcp/tools/message-mark-read.d.cts +50 -0
  125. package/dist/cjs/mcp/tools/message-mark-read.d.ts +50 -0
  126. package/dist/cjs/mcp/tools/message-mark-read.js +254 -0
  127. package/dist/cjs/mcp/tools/message-mark-read.js.map +1 -0
  128. package/dist/cjs/mcp/tools/message-move-to-trash.d.cts +71 -0
  129. package/dist/cjs/mcp/tools/message-move-to-trash.d.ts +71 -0
  130. package/dist/cjs/mcp/tools/message-move-to-trash.js +450 -0
  131. package/dist/cjs/mcp/tools/message-move-to-trash.js.map +1 -0
  132. package/dist/cjs/mcp/tools/message-respond.d.cts +60 -0
  133. package/dist/cjs/mcp/tools/message-respond.d.ts +60 -0
  134. package/dist/cjs/mcp/tools/message-respond.js +367 -0
  135. package/dist/cjs/mcp/tools/message-respond.js.map +1 -0
  136. package/dist/cjs/mcp/tools/message-search.d.cts +182 -0
  137. package/dist/cjs/mcp/tools/message-search.d.ts +182 -0
  138. package/dist/cjs/mcp/tools/message-search.js +405 -0
  139. package/dist/cjs/mcp/tools/message-search.js.map +1 -0
  140. package/dist/cjs/mcp/tools/message-send.d.cts +87 -0
  141. package/dist/cjs/mcp/tools/message-send.d.ts +87 -0
  142. package/dist/cjs/mcp/tools/message-send.js +288 -0
  143. package/dist/cjs/mcp/tools/message-send.js.map +1 -0
  144. package/dist/cjs/mcp/tools/messages-export-csv.d.cts +84 -0
  145. package/dist/cjs/mcp/tools/messages-export-csv.d.ts +84 -0
  146. package/dist/cjs/mcp/tools/messages-export-csv.js +530 -0
  147. package/dist/cjs/mcp/tools/messages-export-csv.js.map +1 -0
  148. package/dist/cjs/package.json +1 -0
  149. package/dist/cjs/schemas/gmail-query-schema.d.cts +36 -0
  150. package/dist/cjs/schemas/gmail-query-schema.d.ts +36 -0
  151. package/dist/cjs/schemas/gmail-query-schema.js +117 -0
  152. package/dist/cjs/schemas/gmail-query-schema.js.map +1 -0
  153. package/dist/cjs/schemas/index.d.cts +1 -0
  154. package/dist/cjs/schemas/index.d.ts +1 -0
  155. package/dist/cjs/schemas/index.js +19 -0
  156. package/dist/cjs/schemas/index.js.map +1 -0
  157. package/dist/cjs/setup/config.d.cts +48 -0
  158. package/dist/cjs/setup/config.d.ts +48 -0
  159. package/dist/cjs/setup/config.js +217 -0
  160. package/dist/cjs/setup/config.js.map +1 -0
  161. package/dist/cjs/setup/http.d.cts +8 -0
  162. package/dist/cjs/setup/http.d.ts +8 -0
  163. package/dist/cjs/setup/http.js +267 -0
  164. package/dist/cjs/setup/http.js.map +1 -0
  165. package/dist/cjs/setup/index.d.cts +5 -0
  166. package/dist/cjs/setup/index.d.ts +5 -0
  167. package/dist/cjs/setup/index.js +46 -0
  168. package/dist/cjs/setup/index.js.map +1 -0
  169. package/dist/cjs/setup/oauth-google.d.cts +54 -0
  170. package/dist/cjs/setup/oauth-google.d.ts +54 -0
  171. package/dist/cjs/setup/oauth-google.js +332 -0
  172. package/dist/cjs/setup/oauth-google.js.map +1 -0
  173. package/dist/cjs/setup/runtime.d.cts +12 -0
  174. package/dist/cjs/setup/runtime.d.ts +12 -0
  175. package/dist/cjs/setup/runtime.js +489 -0
  176. package/dist/cjs/setup/runtime.js.map +1 -0
  177. package/dist/cjs/setup/stdio.d.cts +7 -0
  178. package/dist/cjs/setup/stdio.d.ts +7 -0
  179. package/dist/cjs/setup/stdio.js +239 -0
  180. package/dist/cjs/setup/stdio.js.map +1 -0
  181. package/dist/cjs/types.d.cts +54 -0
  182. package/dist/cjs/types.d.ts +54 -0
  183. package/dist/cjs/types.js +5 -0
  184. package/dist/cjs/types.js.map +1 -0
  185. package/dist/esm/constants.d.ts +11 -0
  186. package/dist/esm/constants.js +14 -0
  187. package/dist/esm/constants.js.map +1 -0
  188. package/dist/esm/email/composition/rfc822-builder.d.ts +11 -0
  189. package/dist/esm/email/composition/rfc822-builder.js +13 -0
  190. package/dist/esm/email/composition/rfc822-builder.js.map +1 -0
  191. package/dist/esm/email/messages/fetch-message.d.ts +24 -0
  192. package/dist/esm/email/messages/fetch-message.js +123 -0
  193. package/dist/esm/email/messages/fetch-message.js.map +1 -0
  194. package/dist/esm/email/messages/messages.d.ts +7 -0
  195. package/dist/esm/email/messages/messages.js +91 -0
  196. package/dist/esm/email/messages/messages.js.map +1 -0
  197. package/dist/esm/email/parsing/header-parsing.d.ts +1 -0
  198. package/dist/esm/email/parsing/header-parsing.js +1 -0
  199. package/dist/esm/email/parsing/header-parsing.js.map +1 -0
  200. package/dist/esm/email/parsing/headers-utils.d.ts +5 -0
  201. package/dist/esm/email/parsing/headers-utils.js +25 -0
  202. package/dist/esm/email/parsing/headers-utils.js.map +1 -0
  203. package/dist/esm/email/parsing/html-processing.d.ts +8 -0
  204. package/dist/esm/email/parsing/html-processing.js +39 -0
  205. package/dist/esm/email/parsing/html-processing.js.map +1 -0
  206. package/dist/esm/email/parsing/message-extraction.d.ts +2 -0
  207. package/dist/esm/email/parsing/message-extraction.js +3 -0
  208. package/dist/esm/email/parsing/message-extraction.js.map +1 -0
  209. package/dist/esm/email/querying/execute-query.d.ts +17 -0
  210. package/dist/esm/email/querying/execute-query.js +45 -0
  211. package/dist/esm/email/querying/execute-query.js.map +1 -0
  212. package/dist/esm/email/querying/pagination.d.ts +27 -0
  213. package/dist/esm/email/querying/pagination.js +152 -0
  214. package/dist/esm/email/querying/pagination.js.map +1 -0
  215. package/dist/esm/email/querying/query-builder.d.ts +47 -0
  216. package/dist/esm/email/querying/query-builder.js +306 -0
  217. package/dist/esm/email/querying/query-builder.js.map +1 -0
  218. package/dist/esm/email/querying/search-execution.d.ts +29 -0
  219. package/dist/esm/email/querying/search-execution.js +35 -0
  220. package/dist/esm/email/querying/search-execution.js.map +1 -0
  221. package/dist/esm/index.d.ts +8 -0
  222. package/dist/esm/index.js +34 -0
  223. package/dist/esm/index.js.map +1 -0
  224. package/dist/esm/labels/gmail-labels.d.ts +2 -0
  225. package/dist/esm/labels/gmail-labels.js +43 -0
  226. package/dist/esm/labels/gmail-labels.js.map +1 -0
  227. package/dist/esm/lib/base64-encoding.d.ts +2 -0
  228. package/dist/esm/lib/base64-encoding.js +13 -0
  229. package/dist/esm/lib/base64-encoding.js.map +1 -0
  230. package/dist/esm/lib/create-store.d.ts +2 -0
  231. package/dist/esm/lib/create-store.js +6 -0
  232. package/dist/esm/lib/create-store.js.map +1 -0
  233. package/dist/esm/lib/date-conversion.d.ts +1 -0
  234. package/dist/esm/lib/date-conversion.js +5 -0
  235. package/dist/esm/lib/date-conversion.js.map +1 -0
  236. package/dist/esm/lib/messages-to-row.d.ts +61 -0
  237. package/dist/esm/lib/messages-to-row.js +188 -0
  238. package/dist/esm/lib/messages-to-row.js.map +1 -0
  239. package/dist/esm/mcp/index.d.ts +3 -0
  240. package/dist/esm/mcp/index.js +6 -0
  241. package/dist/esm/mcp/index.js.map +1 -0
  242. package/dist/esm/mcp/prompts/draft-email.d.ts +30 -0
  243. package/dist/esm/mcp/prompts/draft-email.js +37 -0
  244. package/dist/esm/mcp/prompts/draft-email.js.map +1 -0
  245. package/dist/esm/mcp/prompts/index.d.ts +2 -0
  246. package/dist/esm/mcp/prompts/index.js +2 -0
  247. package/dist/esm/mcp/prompts/index.js.map +1 -0
  248. package/dist/esm/mcp/prompts/query-syntax.d.ts +19 -0
  249. package/dist/esm/mcp/prompts/query-syntax.js +74 -0
  250. package/dist/esm/mcp/prompts/query-syntax.js.map +1 -0
  251. package/dist/esm/mcp/resources/email.d.ts +11 -0
  252. package/dist/esm/mcp/resources/email.js +92 -0
  253. package/dist/esm/mcp/resources/email.js.map +1 -0
  254. package/dist/esm/mcp/resources/index.d.ts +1 -0
  255. package/dist/esm/mcp/resources/index.js +1 -0
  256. package/dist/esm/mcp/resources/index.js.map +1 -0
  257. package/dist/esm/mcp/tools/categories-list.d.ts +58 -0
  258. package/dist/esm/mcp/tools/categories-list.js +124 -0
  259. package/dist/esm/mcp/tools/categories-list.js.map +1 -0
  260. package/dist/esm/mcp/tools/index.d.ts +11 -0
  261. package/dist/esm/mcp/tools/index.js +11 -0
  262. package/dist/esm/mcp/tools/index.js.map +1 -0
  263. package/dist/esm/mcp/tools/label-add.d.ts +61 -0
  264. package/dist/esm/mcp/tools/label-add.js +101 -0
  265. package/dist/esm/mcp/tools/label-add.js.map +1 -0
  266. package/dist/esm/mcp/tools/label-delete.d.ts +71 -0
  267. package/dist/esm/mcp/tools/label-delete.js +186 -0
  268. package/dist/esm/mcp/tools/label-delete.js.map +1 -0
  269. package/dist/esm/mcp/tools/labels-list.d.ts +75 -0
  270. package/dist/esm/mcp/tools/labels-list.js +122 -0
  271. package/dist/esm/mcp/tools/labels-list.js.map +1 -0
  272. package/dist/esm/mcp/tools/message-get.d.ts +146 -0
  273. package/dist/esm/mcp/tools/message-get.js +145 -0
  274. package/dist/esm/mcp/tools/message-get.js.map +1 -0
  275. package/dist/esm/mcp/tools/message-mark-read.d.ts +50 -0
  276. package/dist/esm/mcp/tools/message-mark-read.js +80 -0
  277. package/dist/esm/mcp/tools/message-mark-read.js.map +1 -0
  278. package/dist/esm/mcp/tools/message-move-to-trash.d.ts +71 -0
  279. package/dist/esm/mcp/tools/message-move-to-trash.js +167 -0
  280. package/dist/esm/mcp/tools/message-move-to-trash.js.map +1 -0
  281. package/dist/esm/mcp/tools/message-respond.d.ts +60 -0
  282. package/dist/esm/mcp/tools/message-respond.js +152 -0
  283. package/dist/esm/mcp/tools/message-respond.js.map +1 -0
  284. package/dist/esm/mcp/tools/message-search.d.ts +182 -0
  285. package/dist/esm/mcp/tools/message-search.js +180 -0
  286. package/dist/esm/mcp/tools/message-search.js.map +1 -0
  287. package/dist/esm/mcp/tools/message-send.d.ts +87 -0
  288. package/dist/esm/mcp/tools/message-send.js +115 -0
  289. package/dist/esm/mcp/tools/message-send.js.map +1 -0
  290. package/dist/esm/mcp/tools/messages-export-csv.d.ts +84 -0
  291. package/dist/esm/mcp/tools/messages-export-csv.js +261 -0
  292. package/dist/esm/mcp/tools/messages-export-csv.js.map +1 -0
  293. package/dist/esm/package.json +1 -0
  294. package/dist/esm/schemas/gmail-query-schema.d.ts +36 -0
  295. package/dist/esm/schemas/gmail-query-schema.js +72 -0
  296. package/dist/esm/schemas/gmail-query-schema.js.map +1 -0
  297. package/dist/esm/schemas/index.d.ts +1 -0
  298. package/dist/esm/schemas/index.js +1 -0
  299. package/dist/esm/schemas/index.js.map +1 -0
  300. package/dist/esm/setup/config.d.ts +48 -0
  301. package/dist/esm/setup/config.js +175 -0
  302. package/dist/esm/setup/config.js.map +1 -0
  303. package/dist/esm/setup/http.d.ts +8 -0
  304. package/dist/esm/setup/http.js +61 -0
  305. package/dist/esm/setup/http.js.map +1 -0
  306. package/dist/esm/setup/index.d.ts +5 -0
  307. package/dist/esm/setup/index.js +5 -0
  308. package/dist/esm/setup/index.js.map +1 -0
  309. package/dist/esm/setup/oauth-google.d.ts +54 -0
  310. package/dist/esm/setup/oauth-google.js +142 -0
  311. package/dist/esm/setup/oauth-google.js.map +1 -0
  312. package/dist/esm/setup/runtime.d.ts +12 -0
  313. package/dist/esm/setup/runtime.js +115 -0
  314. package/dist/esm/setup/runtime.js.map +1 -0
  315. package/dist/esm/setup/stdio.d.ts +7 -0
  316. package/dist/esm/setup/stdio.js +38 -0
  317. package/dist/esm/setup/stdio.js.map +1 -0
  318. package/dist/esm/types.d.ts +54 -0
  319. package/dist/esm/types.js +1 -0
  320. package/dist/esm/types.js.map +1 -0
  321. package/package.json +110 -0
@@ -0,0 +1,298 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return createTool;
9
+ }
10
+ });
11
+ var _oauthgoogle = require("@mcp-z/oauth-google");
12
+ var _types = require("@modelcontextprotocol/sdk/types.js");
13
+ var _googleapis = require("googleapis");
14
+ var _zod = require("zod");
15
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
16
+ try {
17
+ var info = gen[key](arg);
18
+ var value = info.value;
19
+ } catch (error) {
20
+ reject(error);
21
+ return;
22
+ }
23
+ if (info.done) {
24
+ resolve(value);
25
+ } else {
26
+ Promise.resolve(value).then(_next, _throw);
27
+ }
28
+ }
29
+ function _async_to_generator(fn) {
30
+ return function() {
31
+ var self = this, args = arguments;
32
+ return new Promise(function(resolve, reject) {
33
+ var gen = fn.apply(self, args);
34
+ function _next(value) {
35
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
36
+ }
37
+ function _throw(err) {
38
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
39
+ }
40
+ _next(undefined);
41
+ });
42
+ };
43
+ }
44
+ function _instanceof(left, right) {
45
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
46
+ return !!right[Symbol.hasInstance](left);
47
+ } else {
48
+ return left instanceof right;
49
+ }
50
+ }
51
+ function _ts_generator(thisArg, body) {
52
+ var f, y, t, _ = {
53
+ label: 0,
54
+ sent: function() {
55
+ if (t[0] & 1) throw t[1];
56
+ return t[1];
57
+ },
58
+ trys: [],
59
+ ops: []
60
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
61
+ return d(g, "next", {
62
+ value: verb(0)
63
+ }), d(g, "throw", {
64
+ value: verb(1)
65
+ }), d(g, "return", {
66
+ value: verb(2)
67
+ }), typeof Symbol === "function" && d(g, Symbol.iterator, {
68
+ value: function() {
69
+ return this;
70
+ }
71
+ }), g;
72
+ function verb(n) {
73
+ return function(v) {
74
+ return step([
75
+ n,
76
+ v
77
+ ]);
78
+ };
79
+ }
80
+ function step(op) {
81
+ if (f) throw new TypeError("Generator is already executing.");
82
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
83
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
84
+ if (y = 0, t) op = [
85
+ op[0] & 2,
86
+ t.value
87
+ ];
88
+ switch(op[0]){
89
+ case 0:
90
+ case 1:
91
+ t = op;
92
+ break;
93
+ case 4:
94
+ _.label++;
95
+ return {
96
+ value: op[1],
97
+ done: false
98
+ };
99
+ case 5:
100
+ _.label++;
101
+ y = op[1];
102
+ op = [
103
+ 0
104
+ ];
105
+ continue;
106
+ case 7:
107
+ op = _.ops.pop();
108
+ _.trys.pop();
109
+ continue;
110
+ default:
111
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
112
+ _ = 0;
113
+ continue;
114
+ }
115
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
116
+ _.label = op[1];
117
+ break;
118
+ }
119
+ if (op[0] === 6 && _.label < t[1]) {
120
+ _.label = t[1];
121
+ t = op;
122
+ break;
123
+ }
124
+ if (t && _.label < t[2]) {
125
+ _.label = t[2];
126
+ _.ops.push(op);
127
+ break;
128
+ }
129
+ if (t[2]) _.ops.pop();
130
+ _.trys.pop();
131
+ continue;
132
+ }
133
+ op = body.call(thisArg, _);
134
+ } catch (e) {
135
+ op = [
136
+ 6,
137
+ e
138
+ ];
139
+ y = 0;
140
+ } finally{
141
+ f = t = 0;
142
+ }
143
+ if (op[0] & 5) throw op[1];
144
+ return {
145
+ value: op[0] ? op[1] : void 0,
146
+ done: true
147
+ };
148
+ }
149
+ }
150
+ var AuthRequiredBranchSchema = _oauthgoogle.schemas.AuthRequiredBranchSchema;
151
+ // Schema for individual category items
152
+ var CategorySchema = _zod.z.object({
153
+ id: _zod.z.string().describe('Gmail category ID (e.g., CATEGORY_PERSONAL)'),
154
+ name: _zod.z.string().describe('Human-readable category name'),
155
+ description: _zod.z.string().describe('Description of what emails belong in this category')
156
+ });
157
+ var inputSchema = _zod.z.object({});
158
+ // Success branch schema
159
+ var successBranchSchema = _zod.z.object({
160
+ type: _zod.z.literal('success'),
161
+ items: _zod.z.array(CategorySchema)
162
+ });
163
+ // Output schema with auth_required support
164
+ var outputSchema = _zod.z.discriminatedUnion('type', [
165
+ successBranchSchema,
166
+ AuthRequiredBranchSchema
167
+ ]);
168
+ var config = {
169
+ description: 'List Gmail category labels (CATEGORY_*) with IDs and descriptions.',
170
+ inputSchema: inputSchema,
171
+ outputSchema: _zod.z.object({
172
+ result: outputSchema
173
+ })
174
+ };
175
+ function handler(_args, extra) {
176
+ return _async_to_generator(function() {
177
+ var logger, gmail, started, response, labels, categories, durationMs, result, error, message;
178
+ return _ts_generator(this, function(_state) {
179
+ switch(_state.label){
180
+ case 0:
181
+ logger = extra.logger;
182
+ logger.info('gmail.categories.list called');
183
+ _state.label = 1;
184
+ case 1:
185
+ _state.trys.push([
186
+ 1,
187
+ 3,
188
+ ,
189
+ 4
190
+ ]);
191
+ gmail = _googleapis.google.gmail({
192
+ version: 'v1',
193
+ auth: extra.authContext.auth
194
+ });
195
+ started = Date.now();
196
+ return [
197
+ 4,
198
+ gmail.users.labels.list({
199
+ userId: 'me'
200
+ })
201
+ ];
202
+ case 2:
203
+ response = _state.sent();
204
+ labels = response.data.labels || [];
205
+ // Filter for CATEGORY_* system labels and map to our schema
206
+ categories = labels.filter(function(label) {
207
+ var _label_id;
208
+ return (_label_id = label.id) === null || _label_id === void 0 ? void 0 : _label_id.startsWith('CATEGORY_');
209
+ }).map(function(label) {
210
+ var id = label.id;
211
+ var name = label.name || id;
212
+ var description = '';
213
+ // Map known category types to user-friendly names and descriptions
214
+ switch(id){
215
+ case 'CATEGORY_PERSONAL':
216
+ name = 'Primary';
217
+ description = 'Important emails from people you know';
218
+ break;
219
+ case 'CATEGORY_SOCIAL':
220
+ name = 'Social';
221
+ description = 'Social networks and social websites';
222
+ break;
223
+ case 'CATEGORY_PROMOTIONS':
224
+ name = 'Promotions';
225
+ description = 'Deals, offers, and marketing emails';
226
+ break;
227
+ case 'CATEGORY_UPDATES':
228
+ name = 'Updates';
229
+ description = 'Confirmations, receipts, bills, and statements';
230
+ break;
231
+ case 'CATEGORY_FORUMS':
232
+ name = 'Forums';
233
+ description = 'Online groups, discussion boards, mailing lists';
234
+ break;
235
+ default:
236
+ // For any unknown CATEGORY_* labels, use the label name as-is
237
+ name = label.name || id.replace('CATEGORY_', '');
238
+ description = "Gmail category: ".concat(name);
239
+ }
240
+ return {
241
+ id: id,
242
+ name: name,
243
+ description: description
244
+ };
245
+ }).sort(function(a, b) {
246
+ return a.name.localeCompare(b.name);
247
+ }); // Sort alphabetically by name
248
+ durationMs = Date.now() - started;
249
+ logger.info('gmail.categories.list results', {
250
+ categoryCount: categories.length,
251
+ totalLabels: labels.length
252
+ });
253
+ logger.info('gmail.categories.list metrics', {
254
+ durationMs: durationMs
255
+ });
256
+ result = {
257
+ type: 'success',
258
+ items: categories
259
+ };
260
+ return [
261
+ 2,
262
+ {
263
+ content: [
264
+ {
265
+ type: 'text',
266
+ text: JSON.stringify(result)
267
+ }
268
+ ],
269
+ structuredContent: {
270
+ result: result
271
+ }
272
+ }
273
+ ];
274
+ case 3:
275
+ error = _state.sent();
276
+ message = _instanceof(error, Error) ? error.message : String(error);
277
+ logger.error('gmail.categories.list error', {
278
+ error: message
279
+ });
280
+ throw new _types.McpError(_types.ErrorCode.InternalError, "Error listing categories: ".concat(message), {
281
+ stack: _instanceof(error, Error) ? error.stack : undefined
282
+ });
283
+ case 4:
284
+ return [
285
+ 2
286
+ ];
287
+ }
288
+ });
289
+ })();
290
+ }
291
+ function createTool() {
292
+ return {
293
+ name: 'categories-list',
294
+ config: config,
295
+ handler: handler
296
+ };
297
+ }
298
+ /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/Projects/ai/mcp-z/servers/mcp-gmail/src/mcp/tools/categories-list.ts"],"sourcesContent":["import type { EnrichedExtra } from '@mcp-z/oauth-google';\nimport { schemas } from '@mcp-z/oauth-google';\n\nconst { AuthRequiredBranchSchema } = schemas;\n\nimport type { ToolModule } from '@mcp-z/server';\nimport { ErrorCode, McpError } from '@modelcontextprotocol/sdk/types.js';\nimport { google } from 'googleapis';\nimport { z } from 'zod';\n\n// Schema for individual category items\nconst CategorySchema = z.object({\n id: z.string().describe('Gmail category ID (e.g., CATEGORY_PERSONAL)'),\n name: z.string().describe('Human-readable category name'),\n description: z.string().describe('Description of what emails belong in this category'),\n});\n\nconst inputSchema = z.object({});\n\n// Success branch schema\nconst successBranchSchema = z.object({\n type: z.literal('success'),\n items: z.array(CategorySchema),\n});\n\n// Output schema with auth_required support\nconst outputSchema = z.discriminatedUnion('type', [successBranchSchema, AuthRequiredBranchSchema]);\n\nconst config = {\n description: 'List Gmail category labels (CATEGORY_*) with IDs and descriptions.',\n inputSchema: inputSchema,\n outputSchema: z.object({\n result: outputSchema,\n }),\n} as const;\n\nexport type Input = z.infer<typeof inputSchema>;\nexport type Output = z.infer<typeof outputSchema>;\n\nasync function handler(_args: Input, extra: EnrichedExtra) {\n const logger = extra.logger;\n logger.info('gmail.categories.list called');\n\n try {\n const gmail = google.gmail({ version: 'v1', auth: extra.authContext.auth });\n const started = Date.now();\n\n // Fetch all labels from Gmail API\n const response = await gmail.users.labels.list({ userId: 'me' });\n const labels = response.data.labels || [];\n\n // Filter for CATEGORY_* system labels and map to our schema\n const categories = labels\n .filter((label) => label.id?.startsWith('CATEGORY_'))\n .map((label) => {\n const id = label.id as string;\n let name = label.name || id;\n let description = '';\n\n // Map known category types to user-friendly names and descriptions\n switch (id) {\n case 'CATEGORY_PERSONAL':\n name = 'Primary';\n description = 'Important emails from people you know';\n break;\n case 'CATEGORY_SOCIAL':\n name = 'Social';\n description = 'Social networks and social websites';\n break;\n case 'CATEGORY_PROMOTIONS':\n name = 'Promotions';\n description = 'Deals, offers, and marketing emails';\n break;\n case 'CATEGORY_UPDATES':\n name = 'Updates';\n description = 'Confirmations, receipts, bills, and statements';\n break;\n case 'CATEGORY_FORUMS':\n name = 'Forums';\n description = 'Online groups, discussion boards, mailing lists';\n break;\n default:\n // For any unknown CATEGORY_* labels, use the label name as-is\n name = label.name || id.replace('CATEGORY_', '');\n description = `Gmail category: ${name}`;\n }\n\n return {\n id,\n name,\n description,\n };\n })\n .sort((a, b) => a.name.localeCompare(b.name)); // Sort alphabetically by name\n\n const durationMs = Date.now() - started;\n\n logger.info('gmail.categories.list results', { categoryCount: categories.length, totalLabels: labels.length });\n logger.info('gmail.categories.list metrics', { durationMs });\n\n const result: Output = {\n type: 'success' as const,\n items: categories,\n };\n\n return {\n content: [\n {\n type: 'text' as const,\n text: JSON.stringify(result),\n },\n ],\n structuredContent: { result },\n };\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n logger.error('gmail.categories.list error', { error: message });\n\n throw new McpError(ErrorCode.InternalError, `Error listing categories: ${message}`, {\n stack: error instanceof Error ? error.stack : undefined,\n });\n }\n}\n\nexport default function createTool() {\n return {\n name: 'categories-list',\n config,\n handler,\n } satisfies ToolModule;\n}\n"],"names":["createTool","AuthRequiredBranchSchema","schemas","CategorySchema","z","object","id","string","describe","name","description","inputSchema","successBranchSchema","type","literal","items","array","outputSchema","discriminatedUnion","config","result","handler","_args","extra","logger","gmail","started","response","labels","categories","durationMs","error","message","info","google","version","auth","authContext","Date","now","users","list","userId","data","filter","label","startsWith","map","replace","sort","a","b","localeCompare","categoryCount","length","totalLabels","content","text","JSON","stringify","structuredContent","Error","String","McpError","ErrorCode","InternalError","stack","undefined"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export { default as categoriesList } from './categories-list.js';
2
+ export { default as labelAdd } from './label-add.js';
3
+ export { default as labelDelete } from './label-delete.js';
4
+ export { default as labelsList } from './labels-list.js';
5
+ export { default as messageGet } from './message-get.js';
6
+ export { default as messageMarkRead } from './message-mark-read.js';
7
+ export { default as messageMoveToTrash } from './message-move-to-trash.js';
8
+ export { default as messageRespond } from './message-respond.js';
9
+ export { default as messageSearch } from './message-search.js';
10
+ export { default as messageSend } from './message-send.js';
11
+ export { default as messagesExportCsv } from './messages-export-csv.js';
@@ -0,0 +1,11 @@
1
+ export { default as categoriesList } from './categories-list.js';
2
+ export { default as labelAdd } from './label-add.js';
3
+ export { default as labelDelete } from './label-delete.js';
4
+ export { default as labelsList } from './labels-list.js';
5
+ export { default as messageGet } from './message-get.js';
6
+ export { default as messageMarkRead } from './message-mark-read.js';
7
+ export { default as messageMoveToTrash } from './message-move-to-trash.js';
8
+ export { default as messageRespond } from './message-respond.js';
9
+ export { default as messageSearch } from './message-search.js';
10
+ export { default as messageSend } from './message-send.js';
11
+ export { default as messagesExportCsv } from './messages-export-csv.js';
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get categoriesList () {
13
+ return _categorieslist.default;
14
+ },
15
+ get labelAdd () {
16
+ return _labeladd.default;
17
+ },
18
+ get labelDelete () {
19
+ return _labeldelete.default;
20
+ },
21
+ get labelsList () {
22
+ return _labelslist.default;
23
+ },
24
+ get messageGet () {
25
+ return _messageget.default;
26
+ },
27
+ get messageMarkRead () {
28
+ return _messagemarkread.default;
29
+ },
30
+ get messageMoveToTrash () {
31
+ return _messagemovetotrash.default;
32
+ },
33
+ get messageRespond () {
34
+ return _messagerespond.default;
35
+ },
36
+ get messageSearch () {
37
+ return _messagesearch.default;
38
+ },
39
+ get messageSend () {
40
+ return _messagesend.default;
41
+ },
42
+ get messagesExportCsv () {
43
+ return _messagesexportcsv.default;
44
+ }
45
+ });
46
+ var _categorieslist = /*#__PURE__*/ _interop_require_default(require("./categories-list.js"));
47
+ var _labeladd = /*#__PURE__*/ _interop_require_default(require("./label-add.js"));
48
+ var _labeldelete = /*#__PURE__*/ _interop_require_default(require("./label-delete.js"));
49
+ var _labelslist = /*#__PURE__*/ _interop_require_default(require("./labels-list.js"));
50
+ var _messageget = /*#__PURE__*/ _interop_require_default(require("./message-get.js"));
51
+ var _messagemarkread = /*#__PURE__*/ _interop_require_default(require("./message-mark-read.js"));
52
+ var _messagemovetotrash = /*#__PURE__*/ _interop_require_default(require("./message-move-to-trash.js"));
53
+ var _messagerespond = /*#__PURE__*/ _interop_require_default(require("./message-respond.js"));
54
+ var _messagesearch = /*#__PURE__*/ _interop_require_default(require("./message-search.js"));
55
+ var _messagesend = /*#__PURE__*/ _interop_require_default(require("./message-send.js"));
56
+ var _messagesexportcsv = /*#__PURE__*/ _interop_require_default(require("./messages-export-csv.js"));
57
+ function _interop_require_default(obj) {
58
+ return obj && obj.__esModule ? obj : {
59
+ default: obj
60
+ };
61
+ }
62
+ /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/Projects/ai/mcp-z/servers/mcp-gmail/src/mcp/tools/index.ts"],"sourcesContent":["export { default as categoriesList } from './categories-list.js';\nexport { default as labelAdd } from './label-add.js';\nexport { default as labelDelete } from './label-delete.js';\nexport { default as labelsList } from './labels-list.js';\nexport { default as messageGet } from './message-get.js';\nexport { default as messageMarkRead } from './message-mark-read.js';\nexport { default as messageMoveToTrash } from './message-move-to-trash.js';\nexport { default as messageRespond } from './message-respond.js';\nexport { default as messageSearch } from './message-search.js';\nexport { default as messageSend } from './message-send.js';\nexport { default as messagesExportCsv } from './messages-export-csv.js';\n"],"names":["categoriesList","labelAdd","labelDelete","labelsList","messageGet","messageMarkRead","messageMoveToTrash","messageRespond","messageSearch","messageSend","messagesExportCsv"],"mappings":";;;;;;;;;;;QAAoBA;eAAAA,uBAAc;;QACdC;eAAAA,iBAAQ;;QACRC;eAAAA,oBAAW;;QACXC;eAAAA,mBAAU;;QACVC;eAAAA,mBAAU;;QACVC;eAAAA,wBAAe;;QACfC;eAAAA,2BAAkB;;QAClBC;eAAAA,uBAAc;;QACdC;eAAAA,sBAAa;;QACbC;eAAAA,oBAAW;;QACXC;eAAAA,0BAAiB;;;qEAVK;+DACN;kEACG;iEACD;iEACA;sEACK;yEACG;qEACJ;oEACD;kEACF;wEACM"}
@@ -0,0 +1,61 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-google';
2
+ import { z } from 'zod';
3
+ declare const inputSchema: z.ZodObject<{
4
+ id: z.ZodCoercedString<unknown>;
5
+ label: z.ZodCoercedString<unknown>;
6
+ }, z.core.$strip>;
7
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8
+ type: z.ZodLiteral<"success">;
9
+ item: z.ZodObject<{
10
+ id: z.ZodString;
11
+ label: z.ZodString;
12
+ }, z.core.$strip>;
13
+ }, z.core.$strip>, z.ZodObject<{
14
+ type: z.ZodLiteral<"auth_required">;
15
+ provider: z.ZodString;
16
+ message: z.ZodString;
17
+ url: z.ZodOptional<z.ZodString>;
18
+ }, z.core.$strip>], "type">;
19
+ export type Input = z.infer<typeof inputSchema>;
20
+ export type Output = z.infer<typeof outputSchema>;
21
+ declare function handler({ id, label }: Input, extra: EnrichedExtra): Promise<{
22
+ content: {
23
+ type: "text";
24
+ text: string;
25
+ }[];
26
+ structuredContent: {
27
+ result: {
28
+ type: "success";
29
+ item: {
30
+ id: string;
31
+ label: string;
32
+ };
33
+ };
34
+ };
35
+ }>;
36
+ export default function createTool(): {
37
+ name: string;
38
+ config: {
39
+ readonly description: "Add a label to a Gmail message";
40
+ readonly inputSchema: z.ZodObject<{
41
+ id: z.ZodCoercedString<unknown>;
42
+ label: z.ZodCoercedString<unknown>;
43
+ }, z.core.$strip>;
44
+ readonly outputSchema: z.ZodObject<{
45
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
46
+ type: z.ZodLiteral<"success">;
47
+ item: z.ZodObject<{
48
+ id: z.ZodString;
49
+ label: z.ZodString;
50
+ }, z.core.$strip>;
51
+ }, z.core.$strip>, z.ZodObject<{
52
+ type: z.ZodLiteral<"auth_required">;
53
+ provider: z.ZodString;
54
+ message: z.ZodString;
55
+ url: z.ZodOptional<z.ZodString>;
56
+ }, z.core.$strip>], "type">;
57
+ }, z.core.$strip>;
58
+ };
59
+ handler: typeof handler;
60
+ };
61
+ export {};
@@ -0,0 +1,61 @@
1
+ import type { EnrichedExtra } from '@mcp-z/oauth-google';
2
+ import { z } from 'zod';
3
+ declare const inputSchema: z.ZodObject<{
4
+ id: z.ZodCoercedString<unknown>;
5
+ label: z.ZodCoercedString<unknown>;
6
+ }, z.core.$strip>;
7
+ declare const outputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8
+ type: z.ZodLiteral<"success">;
9
+ item: z.ZodObject<{
10
+ id: z.ZodString;
11
+ label: z.ZodString;
12
+ }, z.core.$strip>;
13
+ }, z.core.$strip>, z.ZodObject<{
14
+ type: z.ZodLiteral<"auth_required">;
15
+ provider: z.ZodString;
16
+ message: z.ZodString;
17
+ url: z.ZodOptional<z.ZodString>;
18
+ }, z.core.$strip>], "type">;
19
+ export type Input = z.infer<typeof inputSchema>;
20
+ export type Output = z.infer<typeof outputSchema>;
21
+ declare function handler({ id, label }: Input, extra: EnrichedExtra): Promise<{
22
+ content: {
23
+ type: "text";
24
+ text: string;
25
+ }[];
26
+ structuredContent: {
27
+ result: {
28
+ type: "success";
29
+ item: {
30
+ id: string;
31
+ label: string;
32
+ };
33
+ };
34
+ };
35
+ }>;
36
+ export default function createTool(): {
37
+ name: string;
38
+ config: {
39
+ readonly description: "Add a label to a Gmail message";
40
+ readonly inputSchema: z.ZodObject<{
41
+ id: z.ZodCoercedString<unknown>;
42
+ label: z.ZodCoercedString<unknown>;
43
+ }, z.core.$strip>;
44
+ readonly outputSchema: z.ZodObject<{
45
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
46
+ type: z.ZodLiteral<"success">;
47
+ item: z.ZodObject<{
48
+ id: z.ZodString;
49
+ label: z.ZodString;
50
+ }, z.core.$strip>;
51
+ }, z.core.$strip>, z.ZodObject<{
52
+ type: z.ZodLiteral<"auth_required">;
53
+ provider: z.ZodString;
54
+ message: z.ZodString;
55
+ url: z.ZodOptional<z.ZodString>;
56
+ }, z.core.$strip>], "type">;
57
+ }, z.core.$strip>;
58
+ };
59
+ handler: typeof handler;
60
+ };
61
+ export {};